Difference between revisions of "MHD development"

From Einstein Toolkit Documentation
Jump to: navigation, search
Line 6: Line 6:
 
*** Save initial state in all Con2Prim routines, check results before overwriting
 
*** Save initial state in all Con2Prim routines, check results before overwriting
 
*** Pass ideal & acceptable tolerances, have end C2P tolerance GF
 
*** Pass ideal & acceptable tolerances, have end C2P tolerance GF
 +
** Test cases from MHD paper examples (~0.5-1.5 minutes tops)
 
* Paper updates and progress
 
* Paper updates and progress
 
* Issues with current MHD methods
 
* Issues with current MHD methods
Line 26: Line 27:
 
This was partially implemented in the last development workshop, but removed again within the last year. We had agreed to implement the algebraic gauge first with a view towards the Lorenz gauge. Initial implementation had been of cell-centered vector potential, though we should now be able to support staggered grid vector potential.
 
This was partially implemented in the last development workshop, but removed again within the last year. We had agreed to implement the algebraic gauge first with a view towards the Lorenz gauge. Initial implementation had been of cell-centered vector potential, though we should now be able to support staggered grid vector potential.
  
=== Matters to Discuss ===
+
=== Discussion ===
  
* Staggered vs unstaggered A^i
+
* A^\mu should live in HydroBase so initial data doesn't have to depend on GRHydro
* Prolongation operators given the location on the cell ( for staggered A only )
+
* Want to apply proper staggered A^i so need to extend appropriate prolongation operators
* Scheduling for reconstructing B from the vector potential
 
  
 
=== Coding Tasks ===
 
=== Coding Tasks ===
Line 36: Line 36:
 
As this workshop will take place during the pre-release phase, this development should take place in Zelmani.
 
As this workshop will take place during the pre-release phase, this development should take place in Zelmani.
  
* Storage and evolution (simpler now that E^i has been implemented and tested for the constraint transport)
+
* Storage and interface (done)
* B-field construction from A^mu
+
* Evolution equations
* Initial Prim2Con support for A^mu
+
* Bvec construction from A^mu
 +
* Prim2Con/Con2Prim support for A^mu
 
* Reconstruction support for A^mu
 
* Reconstruction support for A^mu
 
* Riemannsolver support for A^mu
 
* Riemannsolver support for A^mu
 
* Recovery point-wise support for A^mu
 
* Recovery point-wise support for A^mu

Revision as of 19:23, 23 October 2012

MHD Development Agenda

List of Potential Topics

  • Pre-Release Points: Need a publishable version of MHD
    • Con2Prim failures
      • Save initial state in all Con2Prim routines, check results before overwriting
      • Pass ideal & acceptable tolerances, have end C2P tolerance GF
    • Test cases from MHD paper examples (~0.5-1.5 minutes tops)
  • Paper updates and progress
  • Issues with current MHD methods
    • Divergence cleaning and mesh refinement
    • Combining constraint transport and divergence cleaning
  • New methods
    • Con2Prim Inversion -- Force-free
    • Vector Potential implementation

Con2Prim Inverter

  • add code to transition into force-free inversion (no force free evolution) if magnetic pressure starts to dominate gas pressure (done in SpEC, seems robust)

Vector Potential

Evolving the vector potential allows for better control of the B-field divergence and better behavior around a puncture. Evolving the vector potential is also better behaved surrounding puncture BHs.

Current State

This was partially implemented in the last development workshop, but removed again within the last year. We had agreed to implement the algebraic gauge first with a view towards the Lorenz gauge. Initial implementation had been of cell-centered vector potential, though we should now be able to support staggered grid vector potential.

Discussion

  • A^\mu should live in HydroBase so initial data doesn't have to depend on GRHydro
  • Want to apply proper staggered A^i so need to extend appropriate prolongation operators

Coding Tasks

As this workshop will take place during the pre-release phase, this development should take place in Zelmani.

  • Storage and interface (done)
  • Evolution equations
  • Bvec construction from A^mu
  • Prim2Con/Con2Prim support for A^mu
  • Reconstruction support for A^mu
  • Riemannsolver support for A^mu
  • Recovery point-wise support for A^mu