Go to the source code of this file.
Functions | |
VDFun_t | integrate_init (MeshS *pM) |
Initialize integrator; VGDFun_t defined in athena.h. | |
void | integrate_destruct (void) |
Free memory. | |
void | integrate_destruct_1d (void) |
Free temporary integration arrays. | |
void | integrate_init_1d (MeshS *pM) |
Allocate temporary integration arrays. | |
void | integrate_1d_ctu (DomainS *pD) |
1D version of CTU unsplit integrator for MHD | |
void | integrate_1d_vl (DomainS *pD) |
1D version of van Leer unsplit integrator for MHD. | |
void | integrate_destruct_2d (void) |
Free temporary integration arrays. | |
void | integrate_init_2d (MeshS *pM) |
Allocate temporary integration arrays. | |
void | integrate_2d_ctu (DomainS *pD) |
CTU integrator in 2D. | |
void | integrate_2d_vl (DomainS *pD) |
Van Leer unsplit integrator in 2D. | |
void | integrate_destruct_3d (void) |
Free temporary integration arrays. | |
void | integrate_init_3d (MeshS *pM) |
Allocate temporary integration arrays. | |
void | integrate_3d_ctu (DomainS *pD) |
3D CTU integrator for MHD using 6-solve method | |
void | integrate_3d_vl (DomainS *pD) |
3D van Leer unsplit integrator for MHD. |
void integrate_1d_ctu | ( | DomainS * | pD | ) |
1D version of CTU unsplit integrator for MHD
The numbering of steps follows the numbering in the 3D version. NOT ALL STEPS ARE NEEDED IN 1D.
Definition at line 60 of file integrate_1d_ctu.c.
References ConsS::B1c, GridS::B1i, ConsS::B2c, GridS::B2i, ConsS::B3c, GridS::B3i, Bxc, Bxi, Prim1DS::By, Cons1DS::By, Prim1DS::Bz, Cons1DS::Bz, cc_pos(), GridS::CGrid, Cons1D_to_Prim1D(), CoolingFunc, GridS::Coup, d(), Prim1DS::d, ConsS::d, Cons1DS::d, d1, dhalf, dim, GridS::dt, GridS::dx1, ConsS::E, Cons1DS::E, GPCouple::Eloss, exchange_feedback(), GPCouple::fb1, GPCouple::fb2, GPCouple::fb3, feedback_predictor(), fluxes(), four_pi_G, Gamma, Gamma_1, geom_src, grav_mean_rho, DomainS::Grid, GPCouple::grid_cs, GPCouple::grid_d, GPCouple::grid_v1, GPCouple::grid_v2, GPCouple::grid_v3, GridS::ie, GridOvrlpS::ijke, GridOvrlpS::ijks, il, Integrate_Particles(), GridS::is, Iso_csound2, iu, GridS::js, GridS::ks, lr_states(), ConsS::M1, ConsS::M2, ConsS::M3, Cons1DS::Mx, Cons1DS::My, GridOvrlpS::myFlx, Cons1DS::Mz, n, GridS::NCGrid, GridS::NPGrid, Prim1DS::P, Cons1DS::Pflux, GridS::PGrid, phalf, GridS::Phi, Prim1D_to_Cons1D(), GridS::r, r, GridS::ri, ri, Cons1DS::s, ConsS::s, s, StaticGravPot, GridS::U, Ur_x1Face, Prim1DS::Vx, Prim1DS::Vy, Prim1DS::Vz, Wl, Wr, x1Flux, GridS::x1MassFlux, and x1vc().
void integrate_1d_vl | ( | DomainS * | pD | ) |
1D version of van Leer unsplit integrator for MHD.
The numbering of steps follows the numbering in the 3D version. NOT ALL STEPS ARE NEEDED IN 1D.
Definition at line 52 of file integrate_1d_vl.c.
References PrimS::B1c, ConsS::B1c, GridS::B1i, PrimS::B2c, ConsS::B2c, GridS::B2i, PrimS::B3c, ConsS::B3c, GridS::B3i, Bxc, Bxi, Prim1DS::By, Cons1DS::By, Prim1DS::Bz, Cons1DS::Bz, cc_pos(), GridS::CGrid, check_Prim(), Cons1D_to_Prim1D(), Cons_to_Prim(), PrimS::d, Prim1DS::d, d(), ConsS::d, Cons1DS::d, dim, GridS::dt, GridS::dx1, ConsS::E, Cons1DS::E, fix_vsq(), FixCell(), fluxes(), four_pi_G, grav_mean_rho, DomainS::Grid, Int3Vect::i, GridS::ie, GridOvrlpS::ijke, GridOvrlpS::ijks, il, GridS::is, iu, Int3Vect::j, GridS::js, Int3Vect::k, GridS::ks, lr_states(), ConsS::M1, ConsS::M2, ConsS::M3, Cons1DS::Mx, Cons1DS::My, GridOvrlpS::myFlx, Cons1DS::Mz, n, GridS::NCGrid, GridS::NPGrid, PrimS::P, Prim1DS::P, GridS::PGrid, GridS::Phi, Prim1D_to_Cons1D(), Prim_to_Cons(), Cons1DS::s, ConsS::s, s, StaticGravPot, U, GridS::U, Ul, Ur, PrimS::V1, PrimS::V2, PrimS::V3, Prim1DS::Vx, Prim1DS::Vy, Vz(), Prim1DS::Vz, Wl, Wr, Wr_x1Face, and GridS::x1MassFlux.
void integrate_2d_ctu | ( | DomainS * | pD | ) |
CTU integrator in 2D.
The numbering of steps follows the numbering in the 3D version. NOT ALL STEPS ARE NEEDED IN 2D.
Definition at line 97 of file integrate_2d_ctu.c.
References B1_x1Face, ConsS::B1c, GridS::B1i, B2_x2Face, ConsS::B2c, GridS::B2i, ConsS::B3c, GridS::B3i, Bxc, Bxi, Prim1DS::By, Cons1DS::By, Prim1DS::Bz, Bz(), Cons1DS::Bz, cc_pos(), cfast(), GridS::CGrid, Cons1D_to_Prim1D(), CoolingFunc, GridS::Coup, d(), Prim1DS::d, ConsS::d, Cons1DS::d, d1, dby, dhalf, dim, GridS::dt, GridS::dx1, GridS::dx2, E, ConsS::E, Cons1DS::E, GPCouple::Eloss, emf3, emf3_cc, eta1, eta2, etah, exchange_feedback(), GPCouple::fb1, GPCouple::fb2, GPCouple::fb3, feedback_predictor(), fluxes(), four_pi_G, Gamma, Gamma_1, geom_src, grav_mean_rho, DomainS::Grid, GPCouple::grid_cs, GPCouple::grid_d, GPCouple::grid_v1, GPCouple::grid_v2, GPCouple::grid_v3, GridS::ie, GridOvrlpS::ijke, GridOvrlpS::ijks, il, integrate_emf3_corner(), Integrate_Particles(), GridS::is, Iso_csound2, iu, GridS::je, jl, GridS::js, ju, 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, Omega_0, Prim1DS::P, Cons1DS::Pflux, GridS::PGrid, phalf, GridS::Phi, Prim1D_to_Cons1D(), qshear, GridS::r, r, GridS::ri, ri, Cons1DS::s, ConsS::s, s, ShBoxCoord, ShearingBoxPot, StaticGravPot, GridS::U, Ur_x1Face, Ur_x2Face, Prim1DS::Vx, Prim1DS::Vy, Prim1DS::Vz, Wl, Wr, GridS::x1MassFlux, x1vc(), x2Flux, and GridS::x2MassFlux.
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 92 of file integrate_2d_vl.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_3d_ctu | ( | DomainS * | pD | ) |
3D CTU integrator for MHD using 6-solve method
Definition at line 110 of file integrate_3d_ctu.c.
References B1_x1Face, ConsS::B1c, GridS::B1i, B2_x2Face, ConsS::B2c, GridS::B2i, B3_x3Face, ConsS::B3c, GridS::B3i, Bxc, Bxi, Prim1DS::By, Cons1DS::By, Prim1DS::Bz, Bz(), Cons1DS::Bz, cc_pos(), cfast(), GridS::CGrid, Cons1D_to_Prim1D(), CoolingFunc, GridS::Coup, d(), Prim1DS::d, ConsS::d, Cons1DS::d, d1, dhalf, dim, GridS::dt, GridS::dx1, GridS::dx2, GridS::dx3, E, ConsS::E, Cons1DS::E, GPCouple::Eloss, emf1, emf1_cc, emf2, emf2_cc, emf3, emf3_cc, eta1, eta2, eta3, etah, exchange_feedback(), GPCouple::fb1, GPCouple::fb2, GPCouple::fb3, feedback_predictor(), fluxes(), four_pi_G, Gamma, Gamma_1, geom_src, get_myGridIndex(), grav_mean_rho, DomainS::Grid, GPCouple::grid_cs, GPCouple::grid_d, GPCouple::grid_v1, GPCouple::grid_v2, GPCouple::grid_v3, GridS::ie, GridOvrlpS::ijke, GridOvrlpS::ijks, il, integrate_emf1_corner(), integrate_emf2_corner(), integrate_emf3_corner(), Integrate_Particles(), GridS::is, Iso_csound2, iu, GridS::je, jl, GridS::js, ju, GridS::ke, kl, GridS::ks, ku, lr_states(), ConsS::M1, ConsS::M2, ConsS::M3, Cons1DS::Mx, Cons1DS::My, my_iproc, my_jproc, my_kproc, GridOvrlpS::myEMF1, GridOvrlpS::myEMF2, GridOvrlpS::myEMF3, GridOvrlpS::myFlx, myID_Comm_world, Cons1DS::Mz, n, GridS::NCGrid, DomainS::NGrid, GridS::NPGrid, Omega_0, OrbitalProfile, Prim1DS::P, Cons1DS::Pflux, GridS::PGrid, phalf, GridS::Phi, Prim1D_to_Cons1D(), qshear, GridS::r, r, RemapEy_ix1(), RemapEy_ox1(), remapEyiib, remapEyoib, GridS::ri, ri, Cons1DS::s, ConsS::s, s, ShearingBoxPot, StaticGravPot, GridS::U, Ur_x1Face, Ur_x2Face, Ur_x3Face, Prim1DS::Vx, Prim1DS::Vy, Prim1DS::Vz, Wl, Wr, GridS::x1MassFlux, x1vc(), x2Flux, GridS::x2MassFlux, x3Flux, and GridS::x3MassFlux.
void integrate_3d_vl | ( | DomainS * | pD | ) |
3D van Leer unsplit integrator for MHD.
Definition at line 96 of file integrate_3d_vl.c.
References ath_error(), B1_x1Face, PrimS::B1c, ConsS::B1c, GridS::B1i, B2_x2Face, PrimS::B2c, ConsS::B2c, GridS::B2i, B3_x3Face, PrimS::B3c, ConsS::B3c, GridS::B3i, 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, GridS::dx3, E, ConsS::E, Cons1DS::E, emf1, emf1_cc, emf1P, emf2, emf2_cc, emf2P, emf3, emf3_cc, emf3P, entropy_fix(), entropy_flux(), eta1, eta2, eta3, etah, fix_vsq(), FixCell(), fluxes(), four_pi_G, Gamma, grav_mean_rho, DomainS::Grid, Int3Vect::i, GridS::ie, GridOvrlpS::ijke, GridOvrlpS::ijks, il, integrate_emf1_corner(), integrate_emf2_corner(), integrate_emf3_corner(), GridS::is, iu, Int3Vect::j, GridS::je, jl, GridS::js, ju, Int3Vect::k, GridS::ke, kl, GridS::ks, ku, lr_states(), ConsS::M1, ConsS::M2, ConsS::M3, Cons1DS::Mx, Cons1DS::My, GridOvrlpS::myEMF1, GridOvrlpS::myEMF2, 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, Ul_x3Face, Ur, Ur_x1Face, Ur_x2Face, Ur_x3Face, PrimS::V1, PrimS::V2, PrimS::V3, Prim1DS::Vx, Prim1DS::Vy, Vz(), Prim1DS::Vz, W, Whalf, Wl, Wr, Wr_x1Face, Wr_x2Face, Wr_x3Face, x1FluxS, x1FluxSP, GridS::x1MassFlux, x2Flux, x2FluxP, x2FluxS, x2FluxSP, GridS::x2MassFlux, x3Flux, x3FluxP, x3FluxS, x3FluxSP, and GridS::x3MassFlux.
void integrate_destruct | ( | void | ) |
Free memory.
Definition at line 93 of file integrate.c.
References ath_error(), dim, integrate_destruct_1d(), integrate_destruct_2d(), and integrate_destruct_3d().
Referenced by integrate_init_1d(), integrate_init_2d(), integrate_init_3d(), and main().
void integrate_destruct_1d | ( | void | ) |
Free temporary integration arrays.
Definition at line 685 of file integrate_1d_ctu.c.
References Bxc, Bxi, dhalf, free_1d_array(), geom_src, phalf, Ul, Ur, Ur_x1Face, Wl, Wr, Wr_x1Face, and x1Flux.
Referenced by integrate_destruct().
void integrate_destruct_2d | ( | void | ) |
Free temporary integration arrays.
Definition at line 1981 of file integrate_2d_ctu.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.
Referenced by integrate_destruct().
void integrate_destruct_3d | ( | void | ) |
Free temporary integration arrays.
Definition at line 3498 of file integrate_3d_ctu.c.
References B1_x1Face, B2_x2Face, B3_x3Face, Bxc, Bxi, dhalf, emf1, emf1_cc, emf1P, emf2, emf2_cc, emf2P, emf3, emf3_cc, emf3P, eta1, eta2, eta3, free_2d_array(), free_3d_array(), geom_src, phalf, remapEyiib, remapEyoib, S, Shalf, Ul, Ur, Ur_x1Face, Ur_x2Face, Ur_x3Face, Wl, Wr, Wr_x1Face, Wr_x2Face, Wr_x3Face, x1FluxS, x1FluxSP, x2Flux, x2FluxP, x2FluxS, x2FluxSP, x3Flux, x3FluxP, x3FluxS, and x3FluxSP.
Referenced by integrate_destruct().
Initialize integrator; VGDFun_t defined in athena.h.
Definition at line 24 of file integrate.c.
References ath_error(), dim, integrate_init_1d(), integrate_init_2d(), integrate_init_3d(), MeshS::Nx, and par_getd().
Referenced by main().
void integrate_init_1d | ( | MeshS * | pM | ) |
Allocate temporary integration arrays.
Definition at line 631 of file integrate_1d_ctu.c.
References ath_error(), Bxc, Bxi, calloc_1d_array(), CoolingFunc, dhalf, MeshS::Domain, MeshS::DomainsPerLevel, geom_src, DomainS::Grid, integrate_destruct(), MeshS::NLevels, GridS::Nx, phalf, StaticGravPot, Ul, Ur, Ur_x1Face, Wl, Wr, Wr_x1Face, and x1Flux.
Referenced by integrate_init().
void integrate_init_2d | ( | MeshS * | pM | ) |
Allocate temporary integration arrays.
Definition at line 1885 of file integrate_2d_ctu.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.
Referenced by integrate_init().
void integrate_init_3d | ( | MeshS * | pM | ) |
Allocate temporary integration arrays.
Definition at line 3374 of file integrate_3d_ctu.c.
References ath_error(), B1_x1Face, B2_x2Face, B3_x3Face, Bxc, Bxi, calloc_2d_array(), calloc_3d_array(), CoolingFunc, dhalf, MeshS::Domain, MeshS::DomainsPerLevel, emf1, emf1_cc, emf1P, emf2, emf2_cc, emf2P, emf3, emf3_cc, emf3P, eta1, eta2, eta3, geom_src, DomainS::Grid, integrate_destruct(), MeshS::NLevels, GridS::Nx, phalf, remapEyiib, remapEyoib, S, Shalf, StaticGravPot, Ul, Ur, Ur_x1Face, Ur_x2Face, Ur_x3Face, Wl, Wr, Wr_x1Face, Wr_x2Face, Wr_x3Face, x1FluxS, x1FluxSP, x2Flux, x2FluxP, x2FluxS, x2FluxSP, x3Flux, x3FluxP, x3FluxS, and x3FluxSP.
Referenced by integrate_init().