Integrate MHD equations using 3D version of the directionally unsplit MUSCL-Hancock (VL) integrator. More...
Go to the source code of this file.
Functions | |
static void | integrate_emf1_corner (const GridS *pG) |
Integrates face centered B-fluxes to compute corner EMFs. | |
static void | integrate_emf2_corner (const GridS *pG) |
Integrates face centered B-fluxes to compute corner EMFs. | |
static void | integrate_emf3_corner (const 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_3d_vl (DomainS *pD) |
3D van Leer unsplit integrator for MHD. | |
void | integrate_init_3d (MeshS *pM) |
Allocate temporary integration arrays. | |
void | integrate_destruct_3d (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 Prim1DS *** | Wl_x3Face = NULL |
static Prim1DS *** | Wr_x3Face = NULL |
static Cons1DS *** | x1Flux = NULL |
static Cons1DS *** | x2Flux = NULL |
static Cons1DS *** | x3Flux = NULL |
static Cons1DS *** | x1FluxP = NULL |
static Cons1DS *** | x2FluxP = NULL |
static Cons1DS *** | x3FluxP = NULL |
static Real *** | emf1P = NULL |
static Real *** | emf2P = NULL |
static Real *** | emf3P = NULL |
static Real *** | B1_x1Face = NULL |
static Real *** | B2_x2Face = NULL |
static Real *** | B3_x3Face = NULL |
static Real *** | emf1 = NULL |
static Real *** | emf2 = NULL |
static Real *** | emf3 = NULL |
static Real *** | emf1_cc = NULL |
static Real *** | emf2_cc = 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 ConsS *** | Uhalf = NULL |
Real | etah |
static Real *** | eta1 = NULL |
static Real *** | eta2 = NULL |
static Real *** | eta3 = NULL |
Integrate MHD equations using 3D version of the directionally unsplit MUSCL-Hancock (VL) integrator.
PURPOSE: Integrate MHD equations using 3D version of the directionally unsplit MUSCL-Hancock (VL) integrator. The variables updated are:
For adb hydro, requires (9*Cons1DS + 3*Real + 1*ConsS) = 53 3D arrays
REFERENCE:
CONTAINS PUBLIC FUNCTIONS:
Definition in file integrate_3d_vl.c.
Uses first order fluxes to fix negative d,P or superluminal v.
Definition at line 1995 of file integrate_3d_vl.c.
References ConsS::B1c, GridS::B1i, ConsS::B2c, GridS::B2i, ConsS::B3c, GridS::B3i, ConsS::d, Cons1DS::d, GridS::dt, GridS::dx1, GridS::dx2, GridS::dx3, ConsS::E, Cons1DS::E, emf1, emf1P, emf2, emf2P, emf3, emf3P, Int3Vect::i, GridS::ie, GridS::is, Int3Vect::j, GridS::je, GridS::js, Int3Vect::k, GridS::ke, GridS::ks, ConsS::M1, ConsS::M2, ConsS::M3, Cons1DS::Mx, Cons1DS::My, Cons1DS::Mz, GridS::U, x2Flux, x2FluxP, x3Flux, and x3FluxP.
Referenced by integrate_3d_vl().
void integrate_3d_vl | ( | DomainS * | pD | ) |
3D van Leer unsplit integrator for MHD.
Definition at line 96 of file integrate_3d_vl.c.
void integrate_destruct_3d | ( | void | ) |
Free temporary integration arrays.
Definition at line 1710 of file integrate_3d_vl.c.
References B1_x1Face, B2_x2Face, B3_x3Face, Bxc, Bxi, emf1, emf1_cc, emf1P, emf2, emf2_cc, emf2P, emf3, emf3_cc, emf3P, eta1, eta2, eta3, free_3d_array(), Ul, Ur, Wl, Wr, Wr_x1Face, Wr_x2Face, Wr_x3Face, x2Flux, x2FluxP, x3Flux, and x3FluxP.
static void integrate_emf1_corner | ( | const GridS * | pG | ) | [static] |
Integrates face centered B-fluxes to compute corner EMFs.
Note:
Definition at line 1783 of file integrate_3d_vl.c.
References Cons1DS::By, Cons1DS::Bz, d(), emf1, emf1_cc, GridS::ie, il, GridS::is, iu, GridS::je, jl, GridS::js, ju, GridS::ke, kl, GridS::ks, ku, x2Flux, and x3Flux.
Referenced by integrate_3d_vl().
static void integrate_emf2_corner | ( | const GridS * | pG | ) | [static] |
Integrates face centered B-fluxes to compute corner EMFs.
Note:
Definition at line 1856 of file integrate_3d_vl.c.
References Cons1DS::By, Cons1DS::Bz, d(), emf2, emf2_cc, GridS::ie, il, GridS::is, iu, GridS::je, jl, GridS::js, ju, GridS::ke, kl, GridS::ks, ku, and x3Flux.
Referenced by integrate_3d_vl().
static void integrate_emf3_corner | ( | const GridS * | pG | ) | [static] |
Integrates face centered B-fluxes to compute corner EMFs.
Note:
Definition at line 1929 of file integrate_3d_vl.c.
References Cons1DS::By, Cons1DS::Bz, d(), emf3, emf3_cc, GridS::ie, il, GridS::is, iu, GridS::je, jl, GridS::js, ju, GridS::ke, kl, GridS::ks, ku, and x2Flux.
Referenced by integrate_3d_vl().
void integrate_init_3d | ( | MeshS * | pM | ) |
Allocate temporary integration arrays.
Definition at line 1593 of file integrate_3d_vl.c.
References ath_error(), B1_x1Face, B2_x2Face, B3_x3Face, Bxc, Bxi, calloc_3d_array(), MeshS::Domain, MeshS::DomainsPerLevel, emf1, emf1_cc, emf1P, emf2, emf2_cc, emf2P, emf3, emf3_cc, emf3P, eta1, eta2, eta3, DomainS::Grid, integrate_destruct(), MeshS::NLevels, GridS::Nx, Ul, Ur, Wl, Wr, Wr_x1Face, Wr_x2Face, Wr_x3Face, x2Flux, x2FluxP, x3Flux, and x3FluxP.
Definition at line 56 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 56 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 56 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 62 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 62 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 57 of file integrate_3d_vl.c.
Definition at line 58 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), integrate_emf1_corner(), and integrate_init_3d().
Definition at line 51 of file integrate_3d_vl.c.
Referenced by FixCell(), integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 57 of file integrate_3d_vl.c.
Definition at line 58 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), integrate_emf2_corner(), and integrate_init_3d().
Definition at line 51 of file integrate_3d_vl.c.
Referenced by FixCell(), integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 57 of file integrate_3d_vl.c.
Definition at line 58 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), integrate_emf3_corner(), and integrate_init_3d().
Definition at line 51 of file integrate_3d_vl.c.
Referenced by FixCell(), integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 72 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 72 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 72 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 64 of file integrate_3d_vl.c.
Definition at line 67 of file integrate_3d_vl.c.
Definition at line 64 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 64 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 63 of file integrate_3d_vl.c.
Definition at line 63 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 45 of file integrate_3d_vl.c.
Definition at line 46 of file integrate_3d_vl.c.
Definition at line 47 of file integrate_3d_vl.c.
Definition at line 63 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 45 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 46 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 47 of file integrate_3d_vl.c.
Referenced by integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 48 of file integrate_3d_vl.c.
Definition at line 50 of file integrate_3d_vl.c.
Definition at line 48 of file integrate_3d_vl.c.
Definition at line 50 of file integrate_3d_vl.c.
Referenced by FixCell(), integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().
Definition at line 48 of file integrate_3d_vl.c.
Definition at line 50 of file integrate_3d_vl.c.
Referenced by FixCell(), integrate_3d_vl(), integrate_destruct_3d(), and integrate_init_3d().