[Yt-svn] yt-commit r608 - in branches/yt-generalization/yt: lagos raven
mturk at wrangler.dreamhost.com
mturk at wrangler.dreamhost.com
Mon Jun 23 06:27:11 PDT 2008
Author: mturk
Date: Mon Jun 23 06:27:09 2008
New Revision: 608
URL: http://yt.spacepope.org/changeset/608
Log:
Added a mask. Images for Orion now look broadly correct, but projections are
still not mathematically correct.
Modified:
branches/yt-generalization/yt/lagos/BaseDataTypes.py
branches/yt-generalization/yt/lagos/PointCombine.c
branches/yt-generalization/yt/raven/PlotTypes.py
Modified: branches/yt-generalization/yt/lagos/BaseDataTypes.py
==============================================================================
--- branches/yt-generalization/yt/lagos/BaseDataTypes.py (original)
+++ branches/yt-generalization/yt/lagos/BaseDataTypes.py Mon Jun 23 06:27:09 2008
@@ -823,7 +823,6 @@
% (level, self._max_level), len(grids_to_project))
for pi, grid in enumerate(grids_to_project):
g_coords, g_fields = self._project_grid(grid, fields, zero_out)
- print "FIGHTIN'", na.where(g_coords[0]<0)[0].size
self.__retval_coords[grid.id] = g_coords
self.__retval_fields[grid.id] = g_fields
for fi in range(len(fields)): g_fields[fi] *= dls[fi]
@@ -887,8 +886,9 @@
args += self.__retval_coords[grid2.id] + [self.__retval_fields[grid2.id]]
args += self.__retval_coords[grid1.id] + [self.__retval_fields[grid1.id]]
args.append(1) # Refinement factor
+ args.append(na.ones(args[0].shape, dtype='int64'))
kk = PointCombine.CombineGrids(*args)
- goodI = na.where(self.__retval_coords[grid2.id][0] > -1)
+ goodI = args[-1].astype('bool')
self.__retval_coords[grid2.id] = \
[coords[goodI] for coords in self.__retval_coords[grid2.id]]
self.__retval_fields[grid2.id] = \
@@ -909,8 +909,9 @@
args += self.__retval_coords[grid2.id] + [self.__retval_fields[grid2.id]]
args += self.__retval_coords[grid1.id] + [self.__retval_fields[grid1.id]]
args.append(int(grid2.dx / grid1.dx))
+ args.append(na.ones(args[0].shape, dtype='int64'))
kk = PointCombine.CombineGrids(*args)
- goodI = (self.__retval_coords[grid2.id][0] > -1)
+ goodI = args[-1].astype('bool')
self.__retval_coords[grid2.id] = \
[coords[goodI] for coords in self.__retval_coords[grid2.id]]
self.__retval_fields[grid2.id] = \
@@ -931,7 +932,6 @@
dxs = []
for level in range(0, self._max_level+1):
my_coords, my_dx, my_fields = self.__project_level(level, fields)
- print "MID COORDS", level, na.where(my_coords[0,:] < 0)[0].size
coord_data.append(my_coords)
field_data.append(my_fields)
dxs.append(my_dx * na.ones(my_coords.shape[1], dtype='float64'))
@@ -950,8 +950,6 @@
# We now convert to half-widths and center-points
self.data['pdx'] = dxs
xax, yax = x_dict[self.axis], y_dict[self.axis]
- print "FINAL COORDS", na.where(coord_data[0,:]<0)[0].size,\
- na.where(coord_data[1,:]<0)[0].size
self.data['px'] = (coord_data[0,:]+0.5) * self['pdx']
self.data['py'] = (coord_data[1,:]+0.5) * self['pdx']
self.data['pdx'] *= 0.5
@@ -987,7 +985,6 @@
start_index = grid.get_global_startindex()
xpoints = (xind + (start_index[x_dict[self.axis]])).astype('int64')
ypoints = (yind + (start_index[y_dict[self.axis]])).astype('int64')
- print "FUCK", grid.id, na.where(xpoints < 0)[0].size, na.where(ypoints < 0)[0].size
return ([xpoints, ypoints,
subgrid_mask[used_points].ravel(),
weight_proj[used_points].ravel()],
Modified: branches/yt-generalization/yt/lagos/PointCombine.c
==============================================================================
--- branches/yt-generalization/yt/lagos/PointCombine.c (original)
+++ branches/yt-generalization/yt/lagos/PointCombine.c Mon Jun 23 06:27:09 2008
@@ -43,23 +43,29 @@
Py_CombineGrids(PyObject *obj, PyObject *args)
{
PyObject *ogrid_src_x, *ogrid_src_y, *ogrid_src_vals,
- *ogrid_src_mask, *ogrid_src_wgt;
+ *ogrid_src_mask, *ogrid_src_wgt, *ogrid_used_mask;
PyObject *ogrid_dst_x, *ogrid_dst_y, *ogrid_dst_vals,
*ogrid_dst_mask, *ogrid_dst_wgt;
PyArrayObject *grid_src_x, *grid_src_y, **grid_src_vals,
- *grid_src_mask, *grid_src_wgt;
+ *grid_src_mask, *grid_src_wgt, *grid_used_mask;
PyArrayObject *grid_dst_x, *grid_dst_y, **grid_dst_vals,
*grid_dst_mask, *grid_dst_wgt;
+ grid_src_x = grid_src_y = //grid_src_vals =
+ grid_src_mask = grid_src_wgt = grid_used_mask =
+ grid_dst_x = grid_dst_y = //grid_dst_vals =
+ grid_dst_mask = grid_dst_wgt = NULL;
+
int NumArrays, src_len, dst_len, refinement_factor;
+ NumArrays = 0;
- if (!PyArg_ParseTuple(args, "OOOOOOOOOOi",
+ if (!PyArg_ParseTuple(args, "OOOOOOOOOOiO",
&ogrid_src_x, &ogrid_src_y,
&ogrid_src_mask, &ogrid_src_wgt, &ogrid_src_vals,
&ogrid_dst_x, &ogrid_dst_y,
&ogrid_dst_mask, &ogrid_dst_wgt, &ogrid_dst_vals,
- &refinement_factor))
+ &refinement_factor, &ogrid_used_mask))
return PyErr_Format(_combineGridsError,
"CombineGrids: Invalid parameters.");
@@ -97,6 +103,15 @@
goto _fail;
}
+ grid_used_mask = (PyArrayObject *) PyArray_FromAny(ogrid_used_mask,
+ PyArray_DescrFromType(NPY_INT64), 1, 1,
+ NPY_INOUT_ARRAY | NPY_UPDATEIFCOPY, NULL);
+ if((grid_used_mask == NULL) || (PyArray_SIZE(grid_used_mask) != src_len)) {
+ PyErr_Format(_combineGridsError,
+ "CombineGrids: src_x and used_mask must be the same shape.");
+ goto _fail;
+ }
+
grid_dst_x = (PyArrayObject *) PyArray_FromAny(ogrid_dst_x,
PyArray_DescrFromType(NPY_INT64), 1, 1,
NPY_INOUT_ARRAY | NPY_UPDATEIFCOPY, NULL);
@@ -172,6 +187,7 @@
npy_int64 *src_y = (npy_int64 *) PyArray_GETPTR1(grid_src_y,0);
npy_float64 *src_wgt = (npy_float64 *) PyArray_GETPTR1(grid_src_wgt,0);
npy_int64 *src_mask = (npy_int64 *) PyArray_GETPTR1(grid_src_mask,0);
+ npy_int64 *src_used_mask = (npy_int64 *) PyArray_GETPTR1(grid_used_mask,0);
npy_int64 *dst_x = (npy_int64 *) PyArray_GETPTR1(grid_dst_x,0);
npy_int64 *dst_y = (npy_int64 *) PyArray_GETPTR1(grid_dst_y,0);
@@ -200,7 +216,7 @@
((refinement_factor != 1) && (dst_mask[di])));
// So if they are on the same level, then take the logical and
// otherwise, set it to the destination mask
- src_x[si] = -2;
+ src_used_mask[si] = 0;
for (i = 0; i < NumArrays; i++) {
dst_vals[i][di] += src_vals[i][si];
}
@@ -215,6 +231,7 @@
Py_DECREF(grid_src_y);
Py_DECREF(grid_src_mask);
Py_DECREF(grid_src_wgt);
+ Py_DECREF(grid_used_mask);
Py_DECREF(grid_dst_x);
Py_DECREF(grid_dst_y);
@@ -241,6 +258,7 @@
Py_XDECREF(grid_src_y);
Py_XDECREF(grid_src_wgt);
Py_XDECREF(grid_src_mask);
+ Py_XDECREF(grid_used_mask);
Py_XDECREF(grid_dst_x);
Py_XDECREF(grid_dst_y);
Modified: branches/yt-generalization/yt/raven/PlotTypes.py
==============================================================================
--- branches/yt-generalization/yt/raven/PlotTypes.py (original)
+++ branches/yt-generalization/yt/raven/PlotTypes.py Mon Jun 23 06:27:09 2008
@@ -259,7 +259,6 @@
def _get_buff(self, width=None):
x0, x1 = self.xlim
y0, y1 = self.ylim
- print "LIMITS BITCHES", x0, x1, y0, y1
if width is None:
l, b, width, height = self._axes.bbox.get_bounds()
else:
More information about the yt-svn
mailing list