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

mturk at wrangler.dreamhost.com mturk at wrangler.dreamhost.com
Thu Jan 24 22:50:13 PST 2008


Author: mturk
Date: Thu Jan 24 22:50:13 2008
New Revision: 369
URL: http://yt.spacepope.org/changeset/369

Log:
Fix for Extracted Region.

Now with functionality!  :)  Previously the na.array()-ification of the indices
was causing too much memory usage and confusion.  Now, it's properly
tuple-ized, and it works!

Additionally, I disabled the extract_region method for CoveringGrid, because it
pretty clearly should not apply there.



Modified:
   trunk/yt/lagos/BaseDataTypes.py

Modified: trunk/yt/lagos/BaseDataTypes.py
==============================================================================
--- trunk/yt/lagos/BaseDataTypes.py	(original)
+++ trunk/yt/lagos/BaseDataTypes.py	Thu Jan 24 22:50:13 2008
@@ -1139,9 +1139,9 @@
         self._indices = {}
         for grid in self._base_region._grids:
             ind_ind = na.where(grid_vals[self._base_indices] == grid.id-1)
-            self._indices[grid.id-1] = na.array([xi[self._base_indices][ind_ind],
-                                                 yi[self._base_indices][ind_ind],
-                                                 zi[self._base_indices][ind_ind]])
+            self._indices[grid.id-1] = ([xi[self._base_indices][ind_ind],
+                                         yi[self._base_indices][ind_ind],
+                                         zi[self._base_indices][ind_ind]])
         self._grids = self._base_region.pf.h.grids[self._indices.keys()]
 
     def _get_point_indices(self, grid):
@@ -1297,6 +1297,9 @@
         sort_ind = na.argsort(self.pf.h.gridLevels.ravel()[ind][level_ind])
         self._grids = self.pf.hierarchy.grids[ind][level_ind][(sort_ind,)]
 
+    def extract_region(self, indices):
+        mylog.error("Sorry, dude, do it yourself, it's already in 3-D.")
+
     def __setup_weave_dict(self, grid):
         return {
             'nx_g': int(grid.ActiveDimensions[0]),
@@ -1341,7 +1344,7 @@
                 self._get_data_from_grid(grid, field)
                 if not na.any(self[field] == -999): break
             if na.any(self[field] == -999) and self.dx < self.hierarchy.grids[0].dx:
-                print na.where(self[field]==-999)[0].size
+                print "COVERING PROBLEM", na.where(self[field]==-999)[0].size
                 raise KeyError
 
     def flush_data(self, field=None):



More information about the yt-svn mailing list