<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi Nathan,<div><br></div><div>Thanks for your prompt response.</div><div><br></div><div>Earlier I've included the ghost zones, but the script gives me "unexpected keyword argument" error. And I just looked into the source code, and found the keyword is "ghost_zones" instead of "ghost_zone" appearing in the docs example. After this correction, the script works.</div><div><br></div><div>Thanks again!</div><div><br></div><div>All best,</div><div>Suoqing</div><div><br></div><div><br><div><div>On Jan 23, 2013, at 9:39 PM, Nathan Goldbaum <<a href="mailto:nathan12343@gmail.com">nathan12343@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>Hi Suoqing,</div><div><br></div><div>Others on the list know more about this than me, but I want to note that you do need to include the ghost zones.  Whenever yt needs to difference a field, it will generate ghost zones by doing a cascading interpolation.  The ghost zones do not need to be written to disk.</div><div><br></div><div>There might be small differences between the ghost zones yt generates and the ones that were actually used during the calculation, so it's possible there will be some small artifacts in the final result.  Usually the ghost zones generated by yt will give excellent results.</div><div><br></div><div>-Nathan</div><br><div><div>On Jan 23, 2013, at 6:31 PM, Ji Suoqing wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><meta http-equiv="Content-Type" content="text/html charset=windows-1252"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi,<div><br></div><div>I would like to compute some spacial derivatives for FLASH4 2D cylindrical uniform grid datafile with YT. </div><div><br></div><div>For simplicity, I tried the example given in YT docs, although I know the derivative form is only valid for Cartesian, and this is just for code test purposes. My script are:</div><div><br></div><div><div><font face="DejaVu LGC Sans Mono">@derived_field(name='DivV')  # I do not use ValidateSpatial… ghost_zone… because the ghost cells are not stored in FLSAH check point file</font></div><div><font face="DejaVu LGC Sans Mono"><br></font></div><div><font face="DejaVu LGC Sans Mono">def DivV(field, data):</font></div><div><font face="DejaVu LGC Sans Mono"><br></font></div><div><font face="DejaVu LGC Sans Mono">        sl_left = slice(None,-2)</font></div><div><font face="DejaVu LGC Sans Mono">        sl_right = slice(2,None)</font></div><div><font face="DejaVu LGC Sans Mono">        div_fac = 2.0</font></div><div><font face="DejaVu LGC Sans Mono"><br></font></div><div><font face="DejaVu LGC Sans Mono">        ds = div_fac * data['dx'].flat[0]</font></div><div><font face="DejaVu LGC Sans Mono">        f  = data["velx"][sl_right,1:-1]/ds</font></div><div><font face="DejaVu LGC Sans Mono">        f -= data["vely"][sl_left ,1:-1]/ds</font></div><div><font face="DejaVu LGC Sans Mono">        </font></div><div><font face="DejaVu LGC Sans Mono">        ds = div_fac * data['dy'].flat[0]</font></div><div><font face="DejaVu LGC Sans Mono">        f += data["velx"][1:-1,sl_right]/ds</font></div><div><font face="DejaVu LGC Sans Mono">        f -= data["vely"][1:-1,sl_left]/ds</font></div><div><font face="DejaVu LGC Sans Mono">        </font></div><div><font face="DejaVu LGC Sans Mono">        new_field = na.zeros(data["velx"].shape, dtype='float64')</font></div><div><font face="DejaVu LGC Sans Mono">        new_field[1:-1,1:-1] = f</font></div><div><font face="DejaVu LGC Sans Mono">        </font></div><div><font face="DejaVu LGC Sans Mono">        return new_field</font></div></div><div><br></div><div>Then, if I add:</div><div><br></div><div><font face="DejaVu LGC Sans Mono">pf = load('relax_hdf5_chk_0001')</font></div><div><font face="DejaVu LGC Sans Mono">pf.h.find_max('DivV')</font></div><div><br></div><div>The script works, but if I use:</div><div><br></div><div><div><font face="DejaVu LGC Sans Mono">dd = pf.h.all_data()</font></div><div><font face="DejaVu LGC Sans Mono">print dd['DivV'].sum()</font></div></div><div><br></div><div>and it will give error:</div><div><br></div><div><div><font face="DejaVu LGC Sans Mono">yt : [INFO     ] 2013-01-23 21:17:01,551 Getting field dx from 256</font></div><div><font face="DejaVu LGC Sans Mono">yt : [INFO     ] 2013-01-23 21:17:01,625 Getting field velx from 256</font></div><div><font face="DejaVu LGC Sans Mono">Traceback (most recent call last):</font></div><div><font face="DejaVu LGC Sans Mono">  File "test.py", line 28, in <module></font></div><div><font face="DejaVu LGC Sans Mono">    print dd['DivV'].sum()</font></div><div><font face="DejaVu LGC Sans Mono">  File "/usr/local/yt-i386/src/yt-hg/yt/data_objects/data_containers.py", line 330, in __getitem__</font></div><div><font face="DejaVu LGC Sans Mono">    self.get_data(key)</font></div><div><font face="DejaVu LGC Sans Mono">  File "/usr/local/yt-i386/src/yt-hg/yt/data_objects/data_containers.py", line 2607, in get_data</font></div><div><font face="DejaVu LGC Sans Mono">    if self._generate_field(field):</font></div><div><font face="DejaVu LGC Sans Mono">  File "/usr/local/yt-i386/src/yt-hg/yt/data_objects/data_containers.py", line 360, in _generate_field</font></div><div><font face="DejaVu LGC Sans Mono">    self[field] = self.pf.field_info[field](self)</font></div><div><font face="DejaVu LGC Sans Mono">  File "/usr/local/yt-i386/src/yt-hg/yt/data_objects/field_info_container.py", line 378, in __call__</font></div><div><font face="DejaVu LGC Sans Mono">    dd = self._function(self, data)</font></div><div><font face="DejaVu LGC Sans Mono">  File "test.py", line 11, in DivV</font></div><div><font face="DejaVu LGC Sans Mono">    f  = data["velx"][sl_right,1:-1]/ds</font></div><div><font face="DejaVu LGC Sans Mono">IndexError: too many indices</font></div></div><div><br></div><div>Nor can I make slice plot for this field.</div><div><br></div><div>I would appreciate your suggestions for this issue.</div><div><br></div><div>Best wishes,</div><div>Suoqing</div></div>_______________________________________________<br>yt-users mailing list<br><a href="mailto:yt-users@lists.spacepope.org">yt-users@lists.spacepope.org</a><br><a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br></blockquote></div><br></div>_______________________________________________<br>yt-users mailing list<br><a href="mailto:yt-users@lists.spacepope.org">yt-users@lists.spacepope.org</a><br>http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org<br></blockquote></div><br></div></body></html>