The new Region<T> infrastructure gives us a very powerful interface for iterating over parts of Fields.
We have analogues for the following old REGIONs currently:
enum REGION {RGN_ALL, RGN_NOBNDRY, RGN_NOX, RGN_NOY, RGN_NOZ};
as well as RGN_GUARDS which is just the guard cells. BoutMesh also adds variations on RGN_UPPER_INNER_Y for separate y boundary regions.
What other regions would be useful to have? And how should they be named?
Personally, I really want to make the distinction between guard and boundary regions, so at some point we should rename RGN_NOBNDRY to RGN_NOGUARDS. I'm not sure everything but the boundary would see much use, so we could just keep the old name but prefer the new one.
Do we want things like RGN_X_GUARDS/RGN_X_GUARDS_LOWER/RGN_NO_X_GUARDS?
It would be nice if the different parts of the mesh could be labelled. Perhaps in the input, or for the current mesh specialised for tokamaks e.g. CORE, SOL, PF,....
The new
Region<T>
infrastructure gives us a very powerful interface for iterating over parts of Fields.We have analogues for the following old
REGION
s currently:as well as
RGN_GUARDS
which is just the guard cells.BoutMesh
also adds variations onRGN_UPPER_INNER_Y
for separate y boundary regions.What other regions would be useful to have? And how should they be named?
Personally, I really want to make the distinction between guard and boundary regions, so at some point we should rename
RGN_NOBNDRY
toRGN_NOGUARDS
. I'm not sure everything but the boundary would see much use, so we could just keep the old name but prefer the new one.Do we want things like
RGN_X_GUARDS
/RGN_X_GUARDS_LOWER
/RGN_NO_X_GUARDS
?