[Yt-svn] yt-commit r692 - branches/yt-generalization/yt/lagos
joishi at wrangler.dreamhost.com
joishi at wrangler.dreamhost.com
Mon Jul 21 16:36:06 PDT 2008
Author: joishi
Date: Mon Jul 21 16:36:06 2008
New Revision: 692
URL: http://yt.spacepope.org/changeset/692
Log:
* more cleanup from the merge
* PointCombine.c -- generalized periodic BCs for non [0,1] domains.
Modified:
branches/yt-generalization/yt/lagos/BaseDataTypes.py
branches/yt-generalization/yt/lagos/HierarchyType.py
branches/yt-generalization/yt/lagos/PointCombine.c
Modified: branches/yt-generalization/yt/lagos/BaseDataTypes.py
==============================================================================
--- branches/yt-generalization/yt/lagos/BaseDataTypes.py (original)
+++ branches/yt-generalization/yt/lagos/BaseDataTypes.py Mon Jul 21 16:36:06 2008
@@ -1471,6 +1471,7 @@
na.any(self.right_edge > self.pf["DomainRightEdge"]):
grids,ind = self.pf.hierarchy.get_periodic_box_grids(
self.left_edge, self.right_edge)
+ ind = slice(None)
else:
grids,ind = self.pf.hierarchy.get_box_grids(
self.left_edge, self.right_edge)
@@ -1510,7 +1511,7 @@
if na.any(self[field] == -999):# and self.dx < self.hierarchy.grids[0].dx:
print "COVERING PROBLEM", na.where(self[field]==-999)[0].size
print na.where(self[field]==-999)
- return
+# return
raise KeyError
def flush_data(self, field=None):
Modified: branches/yt-generalization/yt/lagos/HierarchyType.py
==============================================================================
--- branches/yt-generalization/yt/lagos/HierarchyType.py (original)
+++ branches/yt-generalization/yt/lagos/HierarchyType.py Mon Jul 21 16:36:06 2008
@@ -94,29 +94,6 @@
return
self.cpu_map[grid.filename].append(grid)
- def __setup_classes(self):
- dd = { 'readDataFast' : _data_style_funcs[self.data_style][0],
- 'readAllData' : _data_style_funcs[self.data_style][1],
- 'getFields' : _data_style_funcs[self.data_style][2],
- 'readDataSlice' : _data_style_funcs[self.data_style][3],
- '_read_data' : _data_style_funcs[self.data_style][0],
- '_read_all_data' : _data_style_funcs[self.data_style][1],
- '_read_field_names' : _data_style_funcs[self.data_style][2],
- '_read_data_slice' : _data_style_funcs[self.data_style][3],
- '_read_exception' : _data_style_funcs[self.data_style][4](),
- 'pf' : self.parameter_file, # Already weak
- 'hierarchy': weakref.proxy(self) }
- self.grid = classobj("EnzoGrid",(EnzoGridBase,), dd)
- self.proj = classobj("EnzoProj",(EnzoProjBase,), dd)
- self.slice = classobj("EnzoSlice",(EnzoSliceBase,), dd)
- self.region = classobj("EnzoRegion",(EnzoRegionBase,), dd)
- self.covering_grid = classobj("EnzoCoveringGrid",(EnzoCoveringGrid,), dd)
- self.smoothed_covering_grid = classobj("EnzoSmoothedCoveringGrid",(EnzoSmoothedCoveringGrid,), dd)
- self.sphere = classobj("EnzoSphere",(EnzoSphereBase,), dd)
- self.cutting = classobj("EnzoCuttingPlane",(EnzoCuttingPlaneBase,), dd)
- self.ray = classobj("EnzoOrthoRay",(EnzoOrthoRayBase,), dd)
- self.disk = classobj("EnzoCylinder",(EnzoCylinderBase,), dd)
-
def _initialize_data_file(self):
if not ytcfg.getboolean('lagos','serialize'): return
fn = os.path.join(self.directory,"%s.yt" % self["CurrentTimeIdentifier"])
@@ -416,24 +393,6 @@
mask[gi] = True
return self.grids[mask], na.where(mask)
- def get_periodic_box_grids(self, left_edge, right_edge):
- mask = na.zeros(self.grids.shape, dtype='bool')
- dl = self.parameters["DomainLeftEdge"]
- dr = self.parameters["DomainRightEdge"]
- db = right_edge - left_edge
- for off_x in [-1, 0, 1]:
- nle = left_edge.copy()
- nre = left_edge.copy()
- nle[0] = dl[0] + (dr[0]-dl[0])*off_x + left_edge[0]
- for off_y in [-1, 0, 1]:
- nle[1] = dl[1] + (dr[1]-dl[1])*off_y + left_edge[1]
- for off_z in [-1, 0, 1]:
- nle[2] = dl[2] + (dr[2]-dl[2])*off_z + left_edge[2]
- nre = nle + db
- g, gi = self.get_box_grids(nle, nre)
- mask[gi] = True
- return self.grids[mask], na.where(mask)
-
@time_execution
def find_max(self, field, finestLevels = True):
"""
@@ -524,6 +483,12 @@
self.gridLeftEdge[i,1], self.gridRightEdge[i,1],
self.gridLeftEdge[i,2], self.gridRightEdge[i,2]))
+ def _select_level(self, level):
+ # We return a numarray of the indices of all the grids on a given level
+ indices = na.where(self.gridLevels[:,0] == level)[0]
+ return indices
+
+
class EnzoHierarchy(AMRHierarchy):
eiTopGrid = None
_strip_path = False
@@ -863,12 +828,6 @@
if field not in self.derived_field_list:
self.derived_field_list.append(field)
- def _select_level(self, level):
- # We return a numarray of the indices of all the grids on a given level
- indices = na.where(self.gridLevels[:,0] == level)[0]
- return indices
-
-
scanf_regex = {}
scanf_regex['e'] = r"[-+]?\d+\.?\d*?|\.\d+[eE][-+]?\d+?"
scanf_regex['g'] = scanf_regex['e']
Modified: branches/yt-generalization/yt/lagos/PointCombine.c
==============================================================================
--- branches/yt-generalization/yt/lagos/PointCombine.c (original)
+++ branches/yt-generalization/yt/lagos/PointCombine.c Mon Jul 21 16:36:06 2008
@@ -720,22 +720,21 @@
for(i=0;i<3;i++) {
itc = 1;
if (ac_le[i] < adl_edge[i]) {
- ac_le_p[i][itc ] = adr_edge[i] + ac_le[i];
- ac_re_p[i][itc++] = adr_edge[i] + ac_re[i];
- //fprintf(stderr, "le axis: %d (%d) le: %0.5f re: %0.5f\n",
- // i, itc-1, ac_le_p[i][itc-1], ac_re_p[i][itc-1]);
+ ac_le_p[i][itc ] = adr_edge[i] - (adl_edge[i] - ac_le[i]);
+ ac_re_p[i][itc++] = adr_edge[i] + (ac_re[i] - adl_edge[i]);
+/* fprintf(stderr, "le axis: %d (%d) le: %0.5e re: %0.5e\n", */
+/* i, itc-1, ac_le_p[i][itc-1], ac_re_p[i][itc-1]); */
}
if (ac_re[i] > adr_edge[i]) {
- ac_le_p[i][itc ] = adl_edge[i] - (adr_edge[i]-adl_edge[i])
- + ac_le[i];
- ac_re_p[i][itc++] = adl_edge[i] - (adr_edge[i]-adl_edge[i])
- + ac_re[i];
- //fprintf(stderr, "re axis: %d (%d) le: %0.5f re: %0.5f\n",
- // i, itc-1, ac_le_p[i][itc-1], ac_re_p[i][itc-1]);
+ ac_le_p[i][itc ] = ac_le[i] - (adr_edge[i] - adl_edge[i]);
+ ac_re_p[i][itc++] = adl_edge[i] + (ac_re[i] - adr_edge[i]);
+
+/* fprintf(stderr, "re axis: %d (%d) le: %0.5e re: %0.5e\n", */
+/* i, itc-1, ac_le_p[i][itc-1], ac_re_p[i][itc-1]); */
}
p_niter[i] = itc;
- //fprintf(stderr, "Iterating on %d %d (%d) times\n",
- // i, itc, p_niter[i]);
+/* fprintf(stderr, "Iterating on %d %d (%d) times\n", */
+/* i, itc, p_niter[i]); */
}
for (xg = 0; xg < g_data[0]->dimensions[0]; xg++) {
More information about the yt-svn
mailing list