[yt-svn] commit/yt: 9 new changesets

commits-noreply at bitbucket.org commits-noreply at bitbucket.org
Sat Feb 23 03:24:41 PST 2013


9 new commits in yt:

https://bitbucket.org/yt_analysis/yt/commits/e2c4ed03b884/
changeset:   e2c4ed03b884
branch:      yt
user:        xarthisius
date:        2013-02-18 14:27:07
summary:     [AMRHierarchy:get_smallest_dx] Don't assume that cell has equal edges
affected #:  1 file

diff -r 9823f77dfcbbb2c286da9cc872d63d06a1791a6a -r e2c4ed03b8842726fa5981bd31d7d1093371ef39 yt/data_objects/hierarchy.py
--- a/yt/data_objects/hierarchy.py
+++ b/yt/data_objects/hierarchy.py
@@ -209,7 +209,7 @@
         pf = self.parameter_file
         if find_max: c = self.find_max("Density")[1]
         else: c = (pf.domain_right_edge + pf.domain_left_edge)/2.0
-        return self.region(c, 
+        return self.region(c,
             pf.domain_left_edge, pf.domain_right_edge)
 
     def clear_all_data(self):
@@ -308,7 +308,7 @@
             self.save_data = self._save_data
         else:
             self.save_data = parallel_splitter(self._save_data, self._reload_data_file)
-    
+
     save_data = parallel_splitter(_save_data, _reload_data_file)
 
     def save_object(self, obj, name):
@@ -367,7 +367,7 @@
         """
         Returns (in code units) the smallest cell size in the simulation.
         """
-        return self.select_grids(self.grid_levels.max())[0].dds[0]
+        return self.select_grids(self.grid_levels.max())[0].dds[:].min()
 
     def _add_object_class(self, name, class_name, base, dd):
         self.object_types.append(name)


https://bitbucket.org/yt_analysis/yt/commits/a1ffc0400a3d/
changeset:   a1ffc0400a3d
branch:      yt
user:        xarthisius
date:        2013-02-18 14:30:33
summary:     [ObjectFindingMixin:get_box_grids] avoid roundoff error while finding all grids between left and right edge
affected #:  1 file

diff -r e2c4ed03b8842726fa5981bd31d7d1093371ef39 -r a1ffc0400a3d66c0a8ea033ed44ac2af3698f4cc yt/data_objects/object_finding_mixin.py
--- a/yt/data_objects/object_finding_mixin.py
+++ b/yt/data_objects/object_finding_mixin.py
@@ -198,8 +198,9 @@
         """
         Gets back all the grids between a left edge and right edge
         """
-        grid_i = np.where((np.all(self.grid_right_edge > left_edge, axis=1)
-                         & np.all(self.grid_left_edge < right_edge, axis=1)) == True)
+        dx = self.get_smallest_dx() * 0.5
+        grid_i = np.where((np.all(self.grid_right_edge > (left_edge + dx), axis=1)
+                         & np.all(self.grid_left_edge < (right_edge - dx), axis=1)) == True)
         return self.grids[grid_i], grid_i
 
     def get_periodic_box_grids(self, left_edge, right_edge):


https://bitbucket.org/yt_analysis/yt/commits/3ce8e627fe27/
changeset:   3ce8e627fe27
branch:      yt
user:        xarthisius
date:        2013-02-18 14:50:29
summary:     Remove duplicated code
affected #:  1 file

diff -r a1ffc0400a3d66c0a8ea033ed44ac2af3698f4cc -r 3ce8e627fe27b93e7f9f4b408d2c3328740e2071 yt/utilities/lib/geometry_utils.pyx
--- a/yt/utilities/lib/geometry_utils.pyx
+++ b/yt/utilities/lib/geometry_utils.pyx
@@ -183,7 +183,7 @@
 @cython.wraparound(False)
 @cython.cdivision(True)
 def cutting_plane_cells(dobj, gobj):
-    cdef np.ndarray[np.uint8_t, ndim=3] mask 
+    cdef np.ndarray[np.uint8_t, ndim=3] mask
     cdef np.ndarray[np.float64_t, ndim=1] left_edge = gobj.LeftEdge
     cdef np.ndarray[np.float64_t, ndim=1] dds = gobj.dds
     cdef int i, j, k
@@ -205,58 +205,6 @@
             y += dds[1]
         x += dds[0]
     return mask
-                
- at cython.boundscheck(False)
- at cython.wraparound(False)
- at cython.cdivision(True)
-def get_box_grids_level(np.ndarray[np.float64_t, ndim=1] left_edge,
-                        np.ndarray[np.float64_t, ndim=1] right_edge,
-                        int level,
-                        np.ndarray[np.float64_t, ndim=2] left_edges,
-                        np.ndarray[np.float64_t, ndim=2] right_edges,
-                        np.ndarray[np.int32_t, ndim=2] levels,
-                        np.ndarray[np.int32_t, ndim=1] mask,
-                        int min_index = 0):
-    cdef int i, n
-    cdef int nx = left_edges.shape[0]
-    cdef int inside 
-    for i in range(nx):
-        if i < min_index or levels[i,0] != level:
-            mask[i] = 0
-            continue
-        inside = 1
-        for n in range(3):
-            if left_edge[n] >= right_edges[i,n] or \
-               right_edge[n] <= left_edges[i,n]:
-                inside = 0
-                break
-        if inside == 1: mask[i] = 1
-        else: mask[i] = 0
-
- at cython.boundscheck(False)
- at cython.wraparound(False)
- at cython.cdivision(True)
-def get_box_grids_below_level(
-                        np.ndarray[np.float64_t, ndim=1] left_edge,
-                        np.ndarray[np.float64_t, ndim=1] right_edge,
-                        int level,
-                        np.ndarray[np.float64_t, ndim=2] left_edges,
-                        np.ndarray[np.float64_t, ndim=2] right_edges,
-                        np.ndarray[np.int32_t, ndim=2] levels,
-                        np.ndarray[np.int32_t, ndim=1] mask):
-    cdef int i, n
-    cdef int nx = left_edges.shape[0]
-    cdef int inside 
-    for i in range(nx):
-        mask[i] = 0
-        if levels[i,0] <= level:
-            inside = 1
-            for n in range(3):
-                if left_edge[n] >= right_edges[i,n] or \
-                   right_edge[n] <= left_edges[i,n]:
-                    inside = 0
-                    break
-            if inside == 1: mask[i] = 1
 
 # Finally, miscellaneous routines.
 


https://bitbucket.org/yt_analysis/yt/commits/b75ef9a60432/
changeset:   b75ef9a60432
branch:      yt
user:        xarthisius
date:        2013-02-18 14:56:38
summary:     [get_box_grids_*] avoid roundoff error while finding all grids between left and right edges
affected #:  1 file

diff -r 3ce8e627fe27b93e7f9f4b408d2c3328740e2071 -r b75ef9a60432c772c49b3fc54aa587b37807821f yt/utilities/lib/misc_utilities.pyx
--- a/yt/utilities/lib/misc_utilities.pyx
+++ b/yt/utilities/lib/misc_utilities.pyx
@@ -117,16 +117,16 @@
 @cython.boundscheck(False)
 @cython.wraparound(False)
 @cython.cdivision(True)
-def lines(np.ndarray[np.float64_t, ndim=3] image, 
+def lines(np.ndarray[np.float64_t, ndim=3] image,
           np.ndarray[np.int64_t, ndim=1] xs,
           np.ndarray[np.int64_t, ndim=1] ys,
           np.ndarray[np.float64_t, ndim=2] colors,
           int points_per_color=1):
-    
+
     cdef int nx = image.shape[0]
     cdef int ny = image.shape[1]
     cdef int nl = xs.shape[0]
-    cdef np.float64_t alpha[3], nalpha 
+    cdef np.float64_t alpha[3], nalpha
     cdef int i, j
     cdef int dx, dy, sx, sy, e2, err
     cdef np.int64_t x0, x1, y0, y1
@@ -139,7 +139,7 @@
         for i in range(3):
             alpha[i] = colors[j/points_per_color,3]*colors[j/points_per_color,i]
         nalpha = 1.0-colors[j/points_per_color,3]
-        if x0 < x1: 
+        if x0 < x1:
             sx = 1
         else:
             sx = -1
@@ -147,7 +147,7 @@
             sy = 1
         else:
             sy = -1
-        while(1): 
+        while(1):
             if (x0 < 0 and sx == -1): break
             elif (x0 >= nx and sx == 1): break
             elif (y0 < 0 and sy == -1): break
@@ -164,13 +164,13 @@
             if e2 < dx :
                 err = err + dx
                 y0 += sy
-    return 
+    return
 
 def rotate_vectors(np.ndarray[np.float64_t, ndim=3] vecs,
         np.ndarray[np.float64_t, ndim=2] R):
     cdef int nx = vecs.shape[0]
     cdef int ny = vecs.shape[1]
-    rotated = np.empty((nx,ny,3),dtype='float64') 
+    rotated = np.empty((nx,ny,3),dtype='float64')
     for i in range(nx):
         for j in range(ny):
             for k in range(3):
@@ -216,18 +216,19 @@
                         np.ndarray[np.float64_t, ndim=2] right_edges,
                         np.ndarray[np.int32_t, ndim=2] levels,
                         np.ndarray[np.int32_t, ndim=1] mask,
-                        int min_index = 0):
+                        int min_index = 0,
+                        np.float64_t dx = 0.0):
     cdef int i, n
     cdef int nx = left_edges.shape[0]
-    cdef int inside 
+    cdef int inside
     for i in range(nx):
         if i < min_index or levels[i,0] != level:
             mask[i] = 0
             continue
         inside = 1
         for n in range(3):
-            if left_edge[n] >= right_edges[i,n] or \
-               right_edge[n] <= left_edges[i,n]:
+            if left_edge[n] >= (right_edges[i,n] - dx) or \
+               right_edge[n] <= (left_edges[i,n] + dx):
                 inside = 0
                 break
         if inside == 1: mask[i] = 1
@@ -244,17 +245,18 @@
                         np.ndarray[np.float64_t, ndim=2] right_edges,
                         np.ndarray[np.int32_t, ndim=2] levels,
                         np.ndarray[np.int32_t, ndim=1] mask,
-                        int min_level = 0):
+                        int min_level = 0,
+                        np.float64_t dx = 0.0):
     cdef int i, n
     cdef int nx = left_edges.shape[0]
-    cdef int inside 
+    cdef int inside
     for i in range(nx):
         mask[i] = 0
         if levels[i,0] <= level and levels[i,0] >= min_level:
             inside = 1
             for n in range(3):
-                if left_edge[n] >= right_edges[i,n] or \
-                   right_edge[n] <= left_edges[i,n]:
+                if left_edge[n] >= (right_edges[i,n] - dx) or \
+                   right_edge[n] <= (left_edges[i,n] + dx):
                     inside = 0
                     break
             if inside == 1: mask[i] = 1


https://bitbucket.org/yt_analysis/yt/commits/da0cb8e6f4e2/
changeset:   da0cb8e6f4e2
branch:      yt
user:        xarthisius
date:        2013-02-18 14:57:52
summary:     [gdf] avoid roundoff error while finding grids on the same refinement level
affected #:  1 file
Diff not available.

https://bitbucket.org/yt_analysis/yt/commits/063382670849/
changeset:   063382670849
branch:      yt
user:        xarthisius
date:        2013-02-19 14:07:22
summary:     Convert all previously modified 'a >< b' relations to '(a-b) <> eps' and use internal constant for machine precision
affected #:  3 files
Diff not available.

https://bitbucket.org/yt_analysis/yt/commits/f0a1c7eacf13/
changeset:   f0a1c7eacf13
branch:      yt
user:        xarthisius
date:        2013-02-19 15:02:58
summary:     [test_slice] Add tests for slices along grid boundaries
affected #:  1 file
Diff not available.

https://bitbucket.org/yt_analysis/yt/commits/35d26ba1fc45/
changeset:   35d26ba1fc45
branch:      yt
user:        xarthisius
date:        2013-02-22 12:46:33
summary:     merging
affected #:  17 files
Diff not available.

https://bitbucket.org/yt_analysis/yt/commits/381684014a1a/
changeset:   381684014a1a
branch:      yt
user:        MatthewTurk
date:        2013-02-23 12:24:33
summary:     Merged in xarthisius/yt (pull request #436)

Avoid roundoff errors while determining whether grid lies between two points
affected #:  6 files
Diff not available.

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