[yt-svn] commit/yt: 3 new changesets
commits-noreply at bitbucket.org
commits-noreply at bitbucket.org
Tue Mar 25 11:26:43 PDT 2014
3 new commits in yt:
https://bitbucket.org/yt_analysis/yt/commits/3c5d8751fe67/
Changeset: 3c5d8751fe67
Branch: yt-3.0
User: MatthewTurk
Date: 2014-03-25 17:56:36
Summary: Make it possible to pass an always_descend parameter to octree saving.
Affected #: 2 files
diff -r bc7abe74aa1e1bc01d6cbf0697733fd70ffe9cdd -r 3c5d8751fe67bb9ecb2bcb11f898100702c3f9b4 yt/geometry/oct_container.pyx
--- a/yt/geometry/oct_container.pyx
+++ b/yt/geometry/oct_container.pyx
@@ -492,7 +492,7 @@
coords[:,i] += self.DLE[i]
return coords
- def save_octree(self):
+ def save_octree(self, always_descend = False):
# Get the header
header = dict(dims = (self.nn[0], self.nn[1], self.nn[2]),
left_edge = (self.DLE[0], self.DLE[1], self.DLE[2]),
@@ -507,10 +507,14 @@
data.nz = 8
cdef np.ndarray[np.uint8_t, ndim=1] ref_mask
ref_mask = np.zeros(self.nocts * 8, dtype="uint8") - 1
- data.array = <void *> ref_mask.data
+ cdef void *p[2]
+ cdef np.uint8_t ad = int(always_descend)
+ p[0] = <void *> &ad
+ p[1] = ref_mask.data
+ data.array = p
# Enforce partial_coverage here
self.visit_all_octs(selector, oct_visitors.store_octree, &data, 1)
- header['octree'] = ref_mask
+ header['octree'] = ref_mask[:data.index-1]
return header
def selector_fill(self, SelectorObject selector,
diff -r bc7abe74aa1e1bc01d6cbf0697733fd70ffe9cdd -r 3c5d8751fe67bb9ecb2bcb11f898100702c3f9b4 yt/geometry/oct_visitors.pyx
--- a/yt/geometry/oct_visitors.pyx
+++ b/yt/geometry/oct_visitors.pyx
@@ -176,9 +176,14 @@
arr[o.domain - 1] += 1
cdef void store_octree(Oct *o, OctVisitorData *data, np.uint8_t selected):
- cdef np.uint8_t *arr, res, ii
+ cdef np.uint8_t *arr, res, ii, *always_descend
ii = cind(data.ind[0], data.ind[1], data.ind[2])
- arr = <np.uint8_t *> data.array
+ cdef void **p = <void **> data.array
+ always_descend = <np.uint8_t *> p[0]
+ arr = <np.uint8_t *> p[1]
+ if always_descend[0] == 1 and data.last == o.domain_ind:
+ return
+ data.last = o.domain_ind
if o.children == NULL or o.children[ii] == NULL:
res = 0
else:
https://bitbucket.org/yt_analysis/yt/commits/1f612e67b936/
Changeset: 1f612e67b936
Branch: yt-3.0
User: MatthewTurk
Date: 2014-03-25 18:14:06
Summary: Fixing a test failure.
Affected #: 1 file
diff -r 3c5d8751fe67bb9ecb2bcb11f898100702c3f9b4 -r 1f612e67b936b6f4fa1bdeb4204a28db2514d4f5 yt/geometry/oct_container.pyx
--- a/yt/geometry/oct_container.pyx
+++ b/yt/geometry/oct_container.pyx
@@ -514,7 +514,9 @@
data.array = p
# Enforce partial_coverage here
self.visit_all_octs(selector, oct_visitors.store_octree, &data, 1)
- header['octree'] = ref_mask[:data.index-1]
+ if always_descend:
+ ref_mask = ref_mask[:data.index-1]
+ header['octree'] = ref_mask
return header
def selector_fill(self, SelectorObject selector,
https://bitbucket.org/yt_analysis/yt/commits/9594ac19008f/
Changeset: 9594ac19008f
Branch: yt-3.0
User: ngoldbaum
Date: 2014-03-25 19:26:34
Summary: Merged in MatthewTurk/yt/yt-3.0 (pull request #759)
Make it possible to pass an always_descend parameter to octree saving.
Affected #: 2 files
diff -r dd346818141e863da09333691c2ba0bff9b52b85 -r 9594ac19008f7f6b936538bea4f109926a073e74 yt/geometry/oct_container.pyx
--- a/yt/geometry/oct_container.pyx
+++ b/yt/geometry/oct_container.pyx
@@ -492,7 +492,7 @@
coords[:,i] += self.DLE[i]
return coords
- def save_octree(self):
+ def save_octree(self, always_descend = False):
# Get the header
header = dict(dims = (self.nn[0], self.nn[1], self.nn[2]),
left_edge = (self.DLE[0], self.DLE[1], self.DLE[2]),
@@ -507,9 +507,15 @@
data.nz = 8
cdef np.ndarray[np.uint8_t, ndim=1] ref_mask
ref_mask = np.zeros(self.nocts * 8, dtype="uint8") - 1
- data.array = <void *> ref_mask.data
+ cdef void *p[2]
+ cdef np.uint8_t ad = int(always_descend)
+ p[0] = <void *> &ad
+ p[1] = ref_mask.data
+ data.array = p
# Enforce partial_coverage here
self.visit_all_octs(selector, oct_visitors.store_octree, &data, 1)
+ if always_descend:
+ ref_mask = ref_mask[:data.index-1]
header['octree'] = ref_mask
return header
diff -r dd346818141e863da09333691c2ba0bff9b52b85 -r 9594ac19008f7f6b936538bea4f109926a073e74 yt/geometry/oct_visitors.pyx
--- a/yt/geometry/oct_visitors.pyx
+++ b/yt/geometry/oct_visitors.pyx
@@ -176,9 +176,14 @@
arr[o.domain - 1] += 1
cdef void store_octree(Oct *o, OctVisitorData *data, np.uint8_t selected):
- cdef np.uint8_t *arr, res, ii
+ cdef np.uint8_t *arr, res, ii, *always_descend
ii = cind(data.ind[0], data.ind[1], data.ind[2])
- arr = <np.uint8_t *> data.array
+ cdef void **p = <void **> data.array
+ always_descend = <np.uint8_t *> p[0]
+ arr = <np.uint8_t *> p[1]
+ if always_descend[0] == 1 and data.last == o.domain_ind:
+ return
+ data.last = o.domain_ind
if o.children == NULL or o.children[ii] == NULL:
res = 0
else:
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