[yt-svn] commit/yt: ngoldbaum: Merged in xarthisius/yt (pull request #1738)
commits-noreply at bitbucket.org
commits-noreply at bitbucket.org
Wed Sep 9 09:39:14 PDT 2015
1 new commit in yt:
https://bitbucket.org/yt_analysis/yt/commits/415b19e3578b/
Changeset: 415b19e3578b
Branch: yt
User: ngoldbaum
Date: 2015-09-09 16:39:02+00:00
Summary: Merged in xarthisius/yt (pull request #1738)
Make sure that fields passed to 'process_octree' during smoothing are contiguous.
Affected #: 1 file
diff -r 8cd86c7bb679591ca26c8380f26657b7152a0654 -r 415b19e3578b9ad05adab2b94edded8ec57d9ede yt/data_objects/octree_subset.py
--- a/yt/data_objects/octree_subset.py
+++ b/yt/data_objects/octree_subset.py
@@ -159,7 +159,7 @@
indexed octree will be constructed on these particles.
fields : list of arrays
All the necessary fields for computing the particle operation. For
- instance, this might include mass, velocity, etc.
+ instance, this might include mass, velocity, etc.
method : string
This is the "method name" which will be looked up in the
`particle_deposit` namespace as `methodname_deposit`. Current
@@ -212,7 +212,7 @@
indexed octree will be constructed on these particles.
fields : list of arrays
All the necessary fields for computing the particle operation. For
- instance, this might include mass, velocity, etc.
+ instance, this might include mass, velocity, etc.
index_fields : list of arrays
All of the fields defined on the mesh that may be used as input to
the operation.
@@ -265,11 +265,14 @@
op.initialize()
mylog.debug("Smoothing %s particles into %s Octs",
positions.shape[0], nvals[-1])
- op.process_octree(self.oct_handler, mdom_ind, positions,
+ # Pointer operations within 'process_octree' require arrays to be
+ # contiguous cf. https://bitbucket.org/yt_analysis/yt/issues/1079
+ fields = [np.ascontiguousarray(f, dtype="float64") for f in fields]
+ op.process_octree(self.oct_handler, mdom_ind, positions,
self.fcoords, fields,
self.domain_id, self._domain_offset, self.ds.periodicity,
index_fields, particle_octree, pdom_ind, self.ds.geometry)
- # If there are 0s in the smoothing field this will not throw an error,
+ # If there are 0s in the smoothing field this will not throw an error,
# but silently return nans for vals where dividing by 0
# Same as what is currently occurring, but suppressing the div by zero
# error.
@@ -342,7 +345,7 @@
op.initialize()
mylog.debug("Smoothing %s particles into %s Octs",
positions.shape[0], nvals[-1])
- op.process_particles(particle_octree, pdom_ind, positions,
+ op.process_particles(particle_octree, pdom_ind, positions,
fields, self.domain_id, self._domain_offset, self.ds.periodicity,
self.ds.geometry)
vals = op.finalize()
@@ -494,7 +497,7 @@
LE -= np.abs(LE) * eps
RE = self.max(axis=0)
RE += np.abs(RE) * eps
- octree = ParticleOctreeContainer(dims, LE, RE,
+ octree = ParticleOctreeContainer(dims, LE, RE,
over_refine = over_refine_factor)
octree.n_ref = n_ref
octree.add(mi)
Repository URL: https://bitbucket.org/yt_analysis/yt/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
More information about the yt-svn
mailing list