[Yt-svn] yt-commit r485 - trunk/yt/lagos

mturk at wrangler.dreamhost.com mturk at wrangler.dreamhost.com
Fri May 16 17:10:11 PDT 2008


Author: mturk
Date: Fri May 16 17:10:10 2008
New Revision: 485
URL: http://yt.spacepope.org/changeset/485

Log:
Minor speed improvements, mainly be eliminating iterations and na.where calls.



Modified:
   trunk/yt/lagos/BaseDataTypes.py
   trunk/yt/lagos/BaseGridType.py

Modified: trunk/yt/lagos/BaseDataTypes.py
==============================================================================
--- trunk/yt/lagos/BaseDataTypes.py	(original)
+++ trunk/yt/lagos/BaseDataTypes.py	Fri May 16 17:10:10 2008
@@ -554,8 +554,7 @@
             dv = grid[field]
             if dv.size == 1: dv = na.ones(grid.ActiveDimensions)*dv
             dv = dv[sl]
-        cm = na.where(grid.child_mask[sl].ravel() == 1)
-        dataVals = dv.ravel()[cm]
+        dataVals = dv.ravel()[grid.child_mask[sl].ravel() == 1]
         return dataVals
 
 class EnzoCuttingPlaneBase(Enzo2DData):

Modified: trunk/yt/lagos/BaseGridType.py
==============================================================================
--- trunk/yt/lagos/BaseGridType.py	(original)
+++ trunk/yt/lagos/BaseGridType.py	Fri May 16 17:10:10 2008
@@ -427,15 +427,12 @@
         self.__child_mask = na.ones(self.ActiveDimensions, 'int32')
         for child in self.Children:
             # Now let's get our overlap
-            si = [None]*3
-            ei = [None]*3
             startIndex = na.rint((child.LeftEdge - self.LeftEdge)/self.dx)
             endIndex = na.rint((child.RightEdge - self.LeftEdge)/self.dx)
-            for i in xrange(3):
-                si[i] = startIndex[i]
-                ei[i] = endIndex[i]
-            self.__child_mask[si[0]:ei[0], si[1]:ei[1], si[2]:ei[2]] = 0
-        self.__child_indices = na.where(self.__child_mask==0)
+            self.__child_mask[startIndex[0]:endIndex[0],
+                              startIndex[1]:endIndex[1],
+                              startIndex[2]:endIndex[2]] = 0
+        self.__child_indices = (self.__child_mask==0)
 
     def _get_coords(self):
         if self.__coords == None: self._generate_coords()



More information about the yt-svn mailing list