spatial reconstruction, initialization and Boundary conditions #406
Replies: 1 comment
-
The "c" actually stands for "characteristic." With this selected, the reconstruction algorithms branch off after computing differences in primitives, projecting the vector of differences onto characteristics of the linearized equations, using these differences instead for slope limiting, and then later projecting back to primitive space from characteristic space. See Section 3.2.1 of the Athena++ paper, or Section 4.2.2 of the Athena paper. All reconstruction simply interpolates the fluid state to faces in order to define a Riemann problem and calculate fluxes. The reconstructed states are not used beyond this. For problem generators, only the conserved variables and face-centered fields in the active zone need to be initialized. You are free to set primitives, cell-centered fields, or ghost zones for convenience, but these values will generally be overwritten once the code starts. The boundary functions you enroll must set primitives and face-centered fields in the ghost zones. When they are called, the active zone primitives and conserved values and face-centered fields (and maybe cell-centered fields, but I don't remember off the top of my head) are all synced to the latest time, so you can use any of them to inform how the ghost zones are set. |
Beta Was this translation helpful? Give feedback.
-
What is the difference between spatial reconstruction with primitive versus conservative variables?
I would assume it means for given method e.g. PPM the spatial reconstruction is performed on the primitive variables if xorder=3 and on the conservative variables if xorder=3c.
for xorder=3 Does that mean that after the reconstruction the conservative variables are updated from the reconstructed primitive variables? and vice versa for xorder=3c or something else?
For problem generators:
for initialization and boundary conditions does it matter which variables you set, primitive or conservative? does it have to be consistent, .e.g.can one set conservative variables in initialization and primitive variables in the boundary conditions? or does it matter?
is there a specific order to set the boundary conditions in the problem generators? I don't clearly see a pattern in the current pgen problems.
I think that you set conservative variables on initialization and primitive variables for boundary conditions, but I am not sure.
Beta Was this translation helpful? Give feedback.
All reactions