-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CarpetX: Change the implementation to Driver. #305
base: main
Are you sure you want to change the base?
Conversation
934cdb7
to
cecee6f
Compare
Will need to add CarpetXRegrid to the thornlist used by the CI testing. |
ff5e7da
to
46874bf
Compare
"This involves adding a parameter "periodic" whose only allowed value is "no."". is that still true? |
not true anymore. It does introduce a parameter |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There should be checkpoint/recovery tests as well. I think the respective checkpoint files need to be regenerated.
BoxInBox/test/levels1.par
Outdated
@@ -3,6 +3,7 @@ ActiveThorns = " | |||
CarpetX | |||
CoordinatesX | |||
IOUtil | |||
CarpetXRegrid |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you sort thorn names alphabetically?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes
CarpetX/configuration.ccl
Outdated
@@ -2,7 +2,7 @@ | |||
|
|||
REQUIRES AMReX IOUtil MPI yaml_cpp zlib | |||
|
|||
REQUIRES Arith Loop | |||
REQUIRES Arith Loop CarpetXRegrid |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you sort requirements alphabetically?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes
IMPLEMENTS: CarpetX | ||
|
||
INHERITS: IO | ||
IMPLEMENTS: Driver |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's it! That's the core of the change! Yay!
|
||
BOOLEAN periodic_y "Periodic" | ||
BOOLEAN periodic_x "Periodic boundary conditions in x-direction" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you add "only takes effect if also periodic = yes
or similar?
CarpetX/param.ccl
Outdated
|
||
PRIVATE: | ||
|
||
#TODO: reliminate in favor of regrid_error being a ture/false field |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Two typos: reliminate
, ture
.
CarpetXRegrid/schedule.ccl
Outdated
@@ -0,0 +1,6 @@ | |||
# Schedule definitions for thorn CarpetXRegrid | |||
SCHEDULE CarpetX_InitError AT basegrid |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The function name prefix should be CarpetXRegrid
.
CarpetX::periodic_x = yes | ||
CarpetX::periodic_y = yes | ||
CarpetX::periodic_z = yes | ||
Driver::periodic_x = yes |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is a Driver::periodic = yes
missing here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's in the output directory. The parfile should be deleted there.
CarpetX::periodic_x = yes | ||
CarpetX::periodic_y = yes | ||
CarpetX::periodic_z = yes | ||
Driver::periodic_x = yes |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is a Driver::periodic = yes
missing here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's in the output directory. The parfile should be deleted there.
Turns out that (see updated description) the "adapt to CarpetX implementation change" commits aren't actually required since the parameter file parser will accept both implementation and thorn names for restricted parameters (and private ones as well, which is a bug...). |
The TestOuptut/recover-openpmd test passes:
Looking at file
which are apparently acceptable (not sure why, http://einsteintoolkit.org/referencemanual/ReferenceManual.html#x1-156000A2 clearly says it needs to be the implementation name "Driver"). The missing |
ca86318
to
0dbe79a
Compare
This involves adding a parameter "periodic" whose default value is "no." It also involves modifying parameter files, file names, and source files where the name "CarpetX" needs to be replaced by "Driver."
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
required due to CarpetX implemting "Driver"
0dbe79a
to
7046df3
Compare
This involves adding a parameter "periodic" whose only allowed value is "no."This involves adding a parameter "periodic" that must be set to "yes" for any periodicity to be active.
It also involves modifying parameter files, file names, and source files
where the name "CarpetX" needs to be replaced by "Driver."to account for the fact that theregrid_error
grid function moved fromCarpetX
toCarpetRegridX
.Parameter files may, but not have to use
Driver::periodic
instead ofCarpetX::periodic
since the parameter file parser accepts both implementation and thorn names for restricted parameters.This picks up the work in #299