wiki:ConstrainedTransport

Version 5 (modified by trac, 12 years ago) ( diff )

Constrained Transport

AstroBear maintains a divergence free magnetic field via the constrained transport (CT) approach. The iDivB flag (specified in physics.data) sets the CT scheme implementation. Details and references on each method can be found in Cunningham et al 2007.

iDivB
Value Method Details
0 No CT Used for pure hydrodynamic calculations, or naturally maintained zero field divergence (1D problems and purely toroidal magnetic field in antisymmetric flows).
1 Ryu, Jones, Miniati & Frank Collates magnetic field components at grid interfaces. Requires "aux" fields to store grid edge magnetic field components.
2 Dai & Woodward Simplifies problem setup by collating magnetic field components at volume centers. May give relatively inaccurate and oscillatory results. i_CT.f90 routines have dramatically changed since this option was coded; method may be unreliable.
3 Balsara & Spicer Similar in construction and performance to Ryu, Jones, Miniati & Frank).

Initialization of problems using cell-face collated magnetic fields

The cell face collated grid of magnetic fields is stored in the aux array. The grid is staggered by ½ grid width to the left in each magnetic field component direction. More explicitly:

The volume averaged magnetic field is set at each time step from a bilinear interpolation of the grid face magnetic field and should be initialized in the same manner. ie)

Multi-Resolution CT

AMR prolongation and restriction operators maintain a divergence free magnetic field at multi-resolution boundaries in an AMR calculation. The operators constrain grid-edge magnetic field components on coarse levels following an area weighted average of finer levels. Multi-resolution simulation initialization must also satisfy this constraint. This is trivially satisfied for uniform initial magnetic fields, but ensuring non-linear initial field profiles maintain the contraint requires a fine-tuned startup procedure.

Note: See TracWiki for help on using the wiki.