Integrate MHD equations using 2D version of the directionally unsplit MUSCL-Hancock (VL) integrator. More...
Go to the source code of this file.
Functions | |
static void | integrate_emf3_corner (GridS *pG) |
Integrates face centered B-fluxes to compute corner EMFs. | |
static void | FixCell (GridS *pG, Int3Vect) |
Uses first order fluxes to fix negative d,P or superluminal v. | |
void | integrate_2d_vl (DomainS *pD) |
Van Leer unsplit integrator in 2D. | |
void | integrate_init_2d (MeshS *pM) |
Allocate temporary integration arrays. | |
void | integrate_destruct_2d (void) |
Free temporary integration arrays. | |
Variables | |
static Prim1DS ** | Wl_x1Face = NULL |
static Prim1DS ** | Wr_x1Face = NULL |
static Prim1DS ** | Wl_x2Face = NULL |
static Prim1DS ** | Wr_x2Face = NULL |
static Cons1DS ** | x1Flux = NULL |
static Cons1DS ** | x2Flux = NULL |
static Cons1DS ** | x1FluxP = NULL |
static Cons1DS ** | x2FluxP = NULL |
static Real ** | emf3P = NULL |
static Real ** | S = NULL |
static Real ** | Shalf = NULL |
static Real ** | x1FluxS = NULL |
static Real ** | x2FluxS = NULL |
static Real ** | x1FluxSP = NULL |
static Real ** | x2FluxSP = NULL |
static Real ** | B1_x1Face = NULL |
static Real ** | B2_x2Face = NULL |
static Real ** | emf3 = NULL |
static Real ** | emf3_cc = NULL |
static Real * | Bxc = NULL |
static Real * | Bxi = NULL |
static Prim1DS * | W1d = NULL |
static Prim1DS * | Wl = NULL |
static Prim1DS * | Wr = NULL |
static Cons1DS * | U1d = NULL |
static Cons1DS * | Ul = NULL |
static Cons1DS * | Ur = NULL |
static PrimS ** | W = NULL |
static ConsS ** | Uhalf = NULL |
static PrimS ** | Whalf = NULL |
Real | etah |
static Real ** | eta1 = NULL |
static Real ** | eta2 = NULL |
Integrate MHD equations using 2D version of the directionally unsplit MUSCL-Hancock (VL) integrator.
PURPOSE: Integrate MHD equations using 2D version of the directionally unsplit MUSCL-Hancock (VL) integrator. The variables updated are:
REFERENCE:
CONTAINS PUBLIC FUNCTIONS:
Definition in file integrate_2d_vl_sr.c.
Uses first order fluxes to fix negative d,P or superluminal v.
Definition at line 1449 of file integrate_2d_vl_sr.c.
References ConsS::B1c, GridS::B1i, ConsS::B2c, GridS::B2i, ConsS::B3c, Cons1DS::By, Cons1DS::Bz, ConsS::d, Cons1DS::d, GridS::dt, GridS::dx1, GridS::dx2, ConsS::E, Cons1DS::E, emf3, emf3P, Int3Vect::i, GridS::ie, GridS::is, Int3Vect::j, GridS::je, GridS::js, GridS::ks, ConsS::M1, ConsS::M2, ConsS::M3, Cons1DS::Mx, Cons1DS::My, Cons1DS::Mz, GridS::U, x2Flux, and x2FluxP.
Referenced by integrate_2d_vl().
void integrate_2d_vl | ( | DomainS * | pD | ) |
Van Leer unsplit integrator in 2D.
van Leer unsplit integrator in 2D.
The numbering of steps follows the numbering in the 3D version. NOT ALL STEPS ARE NEEDED IN 2D.
Definition at line 106 of file integrate_2d_vl_sr.c.
References ath_error(), B1_x1Face, PrimS::B1c, ConsS::B1c, GridS::B1i, B2_x2Face, PrimS::B2c, ConsS::B2c, GridS::B2i, PrimS::B3c, ConsS::B3c, Bxc, Bxi, Prim1DS::By, Cons1DS::By, Prim1DS::Bz, Bz(), Cons1DS::Bz, cc_pos(), cfast(), GridS::CGrid, check_Prim(), Cons1D_to_Prim1D(), Cons_to_Prim(), Prim1DS::d, PrimS::d, d(), ConsS::d, Cons1DS::d, dim, GridS::dt, GridS::dx1, GridS::dx2, E, ConsS::E, Cons1DS::E, emf3, emf3_cc, emf3P, entropy_fix(), entropy_flux(), eta1, eta2, etah, fix_vsq(), FixCell(), fluxes(), four_pi_G, Gamma, grav_mean_rho, DomainS::Grid, Int3Vect::i, GridS::ie, GridOvrlpS::ijke, GridOvrlpS::ijks, il, integrate_emf3_corner(), GridS::is, iu, Int3Vect::j, GridS::je, jl, GridS::js, ju, Int3Vect::k, GridS::ks, lr_states(), ConsS::M1, ConsS::M2, ConsS::M3, Cons1DS::Mx, Cons1DS::My, GridOvrlpS::myEMF3, GridOvrlpS::myFlx, Cons1DS::Mz, n, GridS::NCGrid, GridS::NPGrid, Prim1DS::P, PrimS::P, GridS::PGrid, GridS::Phi, Prim1D_to_Cons1D(), Prim_to_Cons(), S, Cons1DS::s, ConsS::s, s, Shalf, StaticGravPot, GridS::U, Ul, Ul_x1Face, Ul_x2Face, Ur, Ur_x1Face, Ur_x2Face, PrimS::V1, PrimS::V2, PrimS::V3, Prim1DS::Vx, Prim1DS::Vy, Vz(), Prim1DS::Vz, W, Whalf, Wl, Wr, Wr_x1Face, Wr_x2Face, x1FluxS, x1FluxSP, GridS::x1MassFlux, x2Flux, x2FluxP, x2FluxS, x2FluxSP, and GridS::x2MassFlux.
void integrate_destruct_2d | ( | void | ) |
Free temporary integration arrays.
Definition at line 1302 of file integrate_2d_vl_sr.c.
References B1_x1Face, B2_x2Face, Bxc, Bxi, dhalf, emf3, emf3_cc, emf3P, eta1, eta2, free_2d_array(), geom_src, phalf, S, Shalf, Ul, Ur, Ur_x1Face, Ur_x2Face, Wl, Wr, Wr_x1Face, Wr_x2Face, x1FluxS, x1FluxSP, x2Flux, x2FluxP, x2FluxS, and x2FluxSP.
static void integrate_emf3_corner | ( | GridS * | pG | ) | [static] |
Integrates face centered B-fluxes to compute corner EMFs.
Note:
Definition at line 1371 of file integrate_2d_vl_sr.c.
References Cons1DS::By, Cons1DS::Bz, d(), emf3, emf3_cc, GridS::ie, il, GridS::is, iu, GridS::je, jl, GridS::js, ju, and x2Flux.
Referenced by integrate_2d_vl().
void integrate_init_2d | ( | MeshS * | pM | ) |
Allocate temporary integration arrays.
Definition at line 1196 of file integrate_2d_vl_sr.c.
References ath_error(), B1_x1Face, B2_x2Face, Bxc, Bxi, calloc_2d_array(), CoolingFunc, dhalf, MeshS::Domain, MeshS::DomainsPerLevel, emf3, emf3_cc, emf3P, eta1, eta2, geom_src, DomainS::Grid, integrate_destruct(), MeshS::NLevels, GridS::Nx, phalf, S, Shalf, StaticGravPot, Ul, Ur, Ur_x1Face, Ur_x2Face, Wl, Wr, Wr_x1Face, Wr_x2Face, x1FluxS, x1FluxSP, x2Flux, x2FluxP, x2FluxS, and x2FluxSP.
Definition at line 64 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 64 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 69 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 69 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 65 of file integrate_2d_vl_sr.c.
Definition at line 65 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), integrate_emf3_corner(), and integrate_init_2d().
Definition at line 52 of file integrate_2d_vl_sr.c.
Referenced by FixCell(), integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 83 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 83 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 55 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 55 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 71 of file integrate_2d_vl_sr.c.
Definition at line 77 of file integrate_2d_vl_sr.c.
Definition at line 71 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 71 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 74 of file integrate_2d_vl_sr.c.
Definition at line 70 of file integrate_2d_vl_sr.c.
Definition at line 78 of file integrate_2d_vl_sr.c.
Definition at line 70 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 47 of file integrate_2d_vl_sr.c.
Definition at line 48 of file integrate_2d_vl_sr.c.
Definition at line 70 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 47 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 48 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 49 of file integrate_2d_vl_sr.c.
Definition at line 51 of file integrate_2d_vl_sr.c.
Definition at line 56 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 58 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 49 of file integrate_2d_vl_sr.c.
Definition at line 51 of file integrate_2d_vl_sr.c.
Referenced by FixCell(), integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 56 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().
Definition at line 58 of file integrate_2d_vl_sr.c.
Referenced by integrate_2d_vl(), integrate_destruct_2d(), and integrate_init_2d().