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

joishi at wrangler.dreamhost.com joishi at wrangler.dreamhost.com
Wed Sep 9 17:09:44 PDT 2009


Author: joishi
Date: Wed Sep  9 17:09:43 2009
New Revision: 1440
URL: http://yt.spacepope.org/changeset/1440

Log:
fixed integer covering grid for orion data; also, a patch from Matt to make sure that FillRegion in PointCombine gives an error rather than a segfault on improper typed input

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

Modified: trunk/yt/lagos/BaseDataTypes.py
==============================================================================
--- trunk/yt/lagos/BaseDataTypes.py	(original)
+++ trunk/yt/lagos/BaseDataTypes.py	Wed Sep  9 17:09:43 2009
@@ -2397,11 +2397,11 @@
         self.left_edge = na.array(left_edge)
         self.level = level
         self.dds = self.pf.h.select_grids(self.level)[0].dds.copy()
-        self.ActiveDimensions = na.array(dims)
+        self.ActiveDimensions = na.array(dims,dtype='int32')
         self.right_edge = self.left_edge + self.ActiveDimensions*self.dds
         self._num_ghost_zones = num_ghost_zones
         self._use_pbar = use_pbar
-        self.global_startindex = na.rint(self.left_edge/self.dds).astype('int64')
+        self.global_startindex = na.rint((self.pf["DomainLeftEdge"]-self.left_edge)/self.dds).astype('int64')
         self.domain_width = na.rint((self.pf["DomainRightEdge"] -
                     self.pf["DomainLeftEdge"])/self.dds).astype('int64')
         self._refresh_data()

Modified: trunk/yt/lagos/BaseGridType.py
==============================================================================
--- trunk/yt/lagos/BaseGridType.py	(original)
+++ trunk/yt/lagos/BaseGridType.py	Wed Sep  9 17:09:43 2009
@@ -492,7 +492,7 @@
         self._paranoid = paranoia
         
         # should error check this
-        self.ActiveDimensions = dimensions.copy()#.transpose()
+        self.ActiveDimensions = (dimensions.copy()).astype('int32')#.transpose()
         self.start = start.copy()#.transpose()
         self.stop = stop.copy()#.transpose()
         self.LeftEdge  = LeftEdge.copy()
@@ -501,7 +501,7 @@
         self.Level = level
 
     def get_global_startindex(self):
-        return self.start + na.rint(self.pf["DomainLeftEdge"]/self.dds)
+        return self.start
 
     def _prepare_grid(self):
         """

Modified: trunk/yt/lagos/PointCombine.c
==============================================================================
--- trunk/yt/lagos/PointCombine.c	(original)
+++ trunk/yt/lagos/PointCombine.c	Wed Sep  9 17:09:43 2009
@@ -875,6 +875,7 @@
     PyArrayObject **g_data, **c_data, *mask,
                   *g_start, *c_start, *c_dims, *g_dims, *dwa;
     mask = g_start = c_start = c_dims = g_dims = NULL;
+    g_data = c_data = NULL;
     int refratio, ll, direction, n;
     npy_int64 gxs, gys, gzs, gxe, gye, gze;
     npy_int64 cxs, cys, czs, cxe, cye, cze;
@@ -1057,10 +1058,10 @@
     Py_XDECREF(g_dims);
     Py_XDECREF(c_dims);
     Py_XDECREF(mask);
-    for(n=0;n<n_fields;n++) {
-        if(g_data[n]!=NULL){Py_XDECREF(g_data[n]);}
-        if(c_data[n]!=NULL){Py_XDECREF(c_data[n]);}
-    }
+    if(g_data != NULL)
+      for(n=0;n<n_fields;n++)if(g_data[n]!=NULL){Py_XDECREF(g_data[n]);}
+    if(c_data != NULL)
+      for(n=0;n<n_fields;n++)if(c_data[n]!=NULL){Py_XDECREF(c_data[n]);}
     if(g_data!=NULL)free(g_data);
     if(c_data!=NULL)free(c_data);
     return NULL;



More information about the yt-svn mailing list