here's an example of some simple mapped grids that are used in astro:

http://faculty.washington.edu/rjl/pubs/circles/SIR000723.pdf

it sounds like what you are describing is a restricted version of a general mapped grid.

On Wed, Oct 20, 2021 at 9:31 AM Clément Robert via yt-dev <yt-dev@python.org> wrote:
I don’t know ! Where can I find a definition for these ?

On 20 Oct 2021, at 13:52, Michael Zingale <michael.zingale@stonybrook.edu> wrote:

It's this similar to mapped grids?  

On Wed, Oct 20, 2021, 5:33 AM Clément Robert via yt-dev <yt-dev@python.org> wrote:
Hi folks

As you may be aware, yt’s grid based index classes offer support for patched-based AMR as well octrees, but it’s currently lacking support for so called “stretched gridding scheme”. This is a known limitation in several existing frontends (AMRVAC, BoxLib, Chombo-Pluto are the ones I know of).

For context, what I refer to as “stretched grids” are grids where cell sizes are not simple powers of 1/2 (with respect to a unitary reference) as in classic AMR and octrees, but may be specified by arbitrary rules (such as geometric series). Some hydro code support having parts of the grid following classic AMR scheme and other blocks to be “stretched” along one or several directions at once. This is the case of AMRVAC and Pluto, for instance. BoxLib also has support for complex refinement rules that are not covered by storing a single `refine_by` integer as we’re currently doing in Index classes (this is https://github.com/yt-project/yt/issues/3481).
It seems to me that the “easy” way of supporting these data formats would be to generalise yt’s mechanisms for reconstructing cell position and size (currently it’s using cell index, domain edges, refinement level + a `refine_by` multiplier) so that cell edges can be stored as arrays that frontends would need to somehow retrieve from datafile or reconstruct from parameter files. 

There’s been some effort in the past to get over this limitation led by John and Matt, and we’ve been hitting this wall from time to time in discussions.
Now, I understand that this would most likely not be a trivial change, especially because we don’t want to break existing frontends in the process (or performance !), and at the moment, I don’t have a very clear idea of what exact steps are needed to achieve this goal, and in particular I don’t have enough material to draft a YTEP on the topic.
It seems clear we’d need *some* refactoring/generalisation of Index classes and friend classes and new pixelizer routines would likely be needed. Anything else ?

I however have personal motivation to move forward here since my team is developing an hydro code and running simulations where grid streching is the rule rather than the exception.

What I would like to do to get us rolling is simply collect the existing issues and PRs related to this goal. I know there are a couple, but it’s very easy to loose track of them, and it’s hard to see the big picture.
Can I create a label (“arbitrary grids” ?) and apply it to existing material touching this topic ?
Do you know of existing PRs and issues that are relevant to this topic ?

Here are the ones I know:

Thanks
Clément
_______________________________________________
yt-dev mailing list -- yt-dev@python.org
To unsubscribe send an email to yt-dev-leave@python.org
https://mail.python.org/mailman3/lists/yt-dev.python.org/
Member address: michael.zingale@stonybrook.edu

_______________________________________________
yt-dev mailing list -- yt-dev@python.org
To unsubscribe send an email to yt-dev-leave@python.org
https://mail.python.org/mailman3/lists/yt-dev.python.org/
Member address: michael.zingale@stonybrook.edu


--
Michael Zingale
Professor of Physics and Astronomy

Dept. of Physics & Astronomy • Stony Brook University • Stony Brook, NY 11794-3800
phone:  631-632-8225