MHD implementation details and discussions
Random bits and pieces
Reuse parts of Harm3D
- Used Harm3d as a reference, but the only parts of Harm3d directly included were for the Con2PrimM routines.
Conventions / Variable names etc.
- Principally follow the Valencia formulation as out-lined in Anton et al. (2006)
- HydroBase's Bvec[1-3] GF will be identified with Valencia's B^i vector
- Bvec will be used both as an evolved quantity and a primitive variable
- During the Carpet workshop, we concluded it is easier to define B^i to be the undensitized magnetic field; this requires some care, since psi^6 B^i is the quantity that appears in the evolution equation, but simplifies the rest of the code
- Only use locally calculated "comoving magnetic tensor" b^a when needed
- In general, but especially for MHD, it seems worthwhile to promote sqrt(gamma)=psi^6 to an independent gridfunction
- See Josh Faber's notes here , or check out the code (still a work in progress!!!) here .
- Josh Faber
will commithas committed the routines mentioned in these notes soon.
- Scott Noble and Josh Faber worked on Con2PrimM and have committed.
|Riemann Problem||Faber||HLLE done|
|Con2Prim||Noble, Faber||from Harm3D||done, except for general EOS|
|Constraint transport||?||from Harm3D||still on drawing board|
|Failure Recovery Procedure||?||just using old tools for now|
|Carpet Refluxing||Erik Schnetter||Finished?|
|EMF Restriction/Prolongation||?||Needed for CT only|
|Constraint Damping?||Faber, Mundim, Noble||SR case done||GR derived, not implemented yet|
|Tests and debugging||Mundim, Faber, Noble||In progress|
During the Cactus workshop, some progress was made on implementing MHD within GRHydro by reimplementing various subroutines with alternate versions for MHD and calling them out with the MHD flag in the scheduler. Basically, instead of GRHydro_filename.F90, we will have GRHydro_filenameM.F90.
Most of these *M.F90 files have generated and are part of ET already.