Hi All, I'm finding myself dealing with n-dimensional grids quite a lot, and trying to do some 'tricky' index manipulation. The main problem is manipulating arrays when I don't know a priori the number of dimensions; in essence I need to be able to iterate across dimensions.
first, I've got three arrays of lower-bounds (param_min), upper-bounds (param_max) and numbers of steps (nstep). I'm using the following incantations to produce the association mgrid an ogrid arrays: args = tuple(slice(p1, p2, n*1j) for p1,p2,n in zip(param_min, param_max, nstep)) param_grid = N.mgrid.__getitem__(args) Is this the easiest way to do this? Second, from the mgrid object, param_grid, I want to recover the step sizes (assume I've thrown away the args so I can't make an ogrid object). This seems to work: deltas = numpy.empty(npar) for i in xrange(npar): idxtup = (i,)+(0,)*i + (1,) + (0,)*(npar-1-i) deltas[i] = param_grid[idxtup] - param_grid[((i,)+(0,)*npar )] (Or I could compress this into a single somewhat complicated list comprehension). Again, this seems a bit overly complicated. Any ideas for simplifying it? But at least I can work out how to do these things. Finally, however, I need to reconstruct the individual param_min:param_max:(nstep*1j) 1-d arrays (i.e., the flattened versions of the ogrid output). These are effectively param_grid[i,0,,,,:,,,,] where ':' is in slot i. But I don't know how to emulate ':' in either a slice object or tuple-indexing notation. Obviously I could just do a more complicated version of the deltas[] calculation, or direct manipulation on param_grid.flat, but both seem like too much work on my part... Thanks in advance! Andrew p.s. thanks to travis for all his hard work, especially in the run-up to 1.0b (although test() crashes on my PPC Mac... more on that later when I've had time to play). ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Numpy-discussion mailing list Numpy-discussion@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/numpy-discussion