[yt-users] RuntimeError: yt attempted to read outside the boundaries

Nathan Goldbaum nathan12343 at gmail.com
Thu Oct 20 09:15:57 PDT 2016


On Thu, Oct 20, 2016 at 10:58 AM, Slavin, Jonathan <jslavin at cfa.harvard.edu>
wrote:

> Hi all,
>
> I have a simulation on a 3D cartesian grid and when trying to get surfaces
> of various types I keep getting the error message:
>
> ​"​
> RuntimeError: Error: yt attempted to read outside the boundaries of a
> non-periodic domain along dimension 0.
> Region left edge = -1.157125e+19 code_length, Region right edge =
> 1.7356875e+19 code_length
> Dataset left edge = 0.0 code_length, Dataset right edge = 9.257e+19
> code_length
>
> This commonly happens when trying to compute ghost cells up to the domain
> boundary. Two possible solutions are to load a smaller region that does not
> border the edge or override the periodicity for this dataset.
> ​"​
>
> ​​So, I don't think I should override the periodicity for the dataset,
> since it is decidedly not periodic.  I could load a smaller region, I
> suppose, but not without significant effort, since I really want to include
> the volume out to some radial distance from the lower left corner (0,0,0).
> I would need to define some slightly smaller octant, I guess.  Anyway,
> shouldn't there be some way to specify to yt that it should calculate ghost
> zones via some given boundary condition?  That is, if it really even needs
> to use ghost zones (which I'm not sure why it does).
>

Yes, it should be possible to fill in ghost zones at domain boundaries
assuming some non-periodic boundary conditions, but it has not yet been
implemented. Adding support for filling in ghost zones at non-periodic
domain boundaries would be an excellent improvement. Right now myself and a
number of others are working on improving support for particle codes, so
that means improvements like this that would mostly benefit grid codes are
not prioritized at the moment. It's definitely on our long-term roadmap,
though. If you would like to work on improving the situation here (either
by making contributions yourself or funding someone to do so) that would be
awesome, and I would be happy to discuss design approaches.

The isocontour machinery does need access to ghost zones, since the
isocontours are generated using data interpolated to the cell faces, so we
need to generate ghost zones beyond the domain boundaries if you want to
access vertex centered data at the domain boundary.

In practice, "faking" periodic boundary conditions does work ok for most
use cases. I admit that relying on this has been a crutch that has allowed
us to avoid fixing this issue, despite its perniciousness.


>
> ​Regards,
> Jon​
>
> --
> ________________________________________________________
> Jonathan D. Slavin                 Harvard-Smithsonian CfA
> jslavin at cfa.harvard.edu       60 Garden Street, MS 83
> phone: (617) 496-7981       Cambridge, MA 02138-1516
> cell: (781) 363-0035             USA
> ________________________________________________________
>
>
> _______________________________________________
> yt-users mailing list
> yt-users at lists.spacepope.org
> http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.spacepope.org/pipermail/yt-users-spacepope.org/attachments/20161020/9fdbbad9/attachment-0001.html>


More information about the yt-users mailing list