MPI-AMRVAC 3.1
The MPI - Adaptive Mesh Refinement - Versatile Advection Code (development version)
Loading...
Searching...
No Matches
Modules | Functions/Subroutines | Variables
mod_rmhd_phys.t File Reference

Go to the source code of this file.

Modules

module  mod_rmhd_phys
 Radiation-magneto-hydrodynamics module.
 

Functions/Subroutines

subroutine, public mod_rmhd_phys::rmhd_phys_init ()
 
subroutine, public mod_rmhd_phys::rmhd_set_mg_bounds
 Set the boundaries for the diffusion of E.
 
subroutine, public mod_rmhd_phys::rmhd_ei_to_e (ixil, ixol, w, x)
 Transform internal energy to total energy.
 
subroutine, public mod_rmhd_phys::rmhd_e_to_ei (ixil, ixol, w, x)
 Transform total energy to internal energy.
 
subroutine, public mod_rmhd_phys::rmhd_get_v (w, x, ixil, ixol, v)
 Calculate v vector.
 
subroutine, public mod_rmhd_phys::rmhd_get_pradiation (w, x, ixil, ixol, prad, nth)
 Calculate radiation pressure within ixO^L.
 
subroutine, public mod_rmhd_phys::rmhd_get_pthermal_plus_pradiation (w, x, ixil, ixol, pth_plus_prad)
 Calculates the sum of the gas pressure and the max Prad tensor element.
 
subroutine, public mod_rmhd_phys::rmhd_get_tgas (w, x, ixil, ixol, tgas)
 Calculates gas temperature.
 
subroutine, public mod_rmhd_phys::rmhd_get_trad (w, x, ixil, ixol, trad)
 Calculates radiation temperature.
 
subroutine, public mod_rmhd_phys::rmhd_get_rho (w, x, ixil, ixol, rho)
 
subroutine, public mod_rmhd_phys::get_normalized_divb (w, ixil, ixol, divb)
 get dimensionless div B = |divB| * volume / area / |B|
 
subroutine, public mod_rmhd_phys::get_current (w, ixil, ixol, idirmin, current)
 Calculate idirmin and the idirmin:3 components of the common current array make sure that dxlevel(^D) is set correctly.
 
double precision function, dimension(ixo^s), public mod_rmhd_phys::rmhd_mag_en_all (w, ixil, ixol)
 Compute 2 times total magnetic energy.
 
subroutine, public mod_rmhd_phys::rmhd_clean_divb_multigrid (qdt, qt, active)
 
subroutine, public mod_rmhd_phys::rmhd_face_to_center (ixol, s)
 calculate cell-center values from face-center values
 
subroutine, public mod_rmhd_phys::b_from_vector_potential (ixisl, ixil, ixol, ws, x)
 calculate magnetic field from vector potential
 

Variables

double precision, public mod_rmhd_phys::rmhd_gamma = 5.d0/3.0d0
 The adiabatic index.
 
double precision, public mod_rmhd_phys::rmhd_adiab = 1.0d0
 The adiabatic constant.
 
double precision, public mod_rmhd_phys::rmhd_eta = 0.0d0
 The MHD resistivity.
 
double precision, public mod_rmhd_phys::rmhd_eta_hyper = 0.0d0
 The MHD hyper-resistivity.
 
double precision, public mod_rmhd_phys::rmhd_etah = 0.0d0
 Hall resistivity.
 
double precision, public, protected mod_rmhd_phys::small_r_e = 0.d0
 The smallest allowed radiation energy.
 
double precision, public, protected mod_rmhd_phys::rmhd_trac_mask = 0.d0
 Height of the mask used in the TRAC method.
 
double precision, public mod_rmhd_phys::rmhd_glm_alpha = 0.5d0
 GLM-MHD parameter: ratio of the diffusive and advective time scales for div b taking values within [0, 1].
 
double precision, public mod_rmhd_phys::hypertc_kappa
 The thermal conductivity kappa in hyperbolic thermal conduction.
 
double precision, public, protected mod_rmhd_phys::he_abundance =0.1d0
 Helium abundance over Hydrogen.
 
double precision, public, protected mod_rmhd_phys::h_ion_fr =1d0
 Ionization fraction of H H_ion_fr = H+/(H+ + H)
 
double precision, public, protected mod_rmhd_phys::he_ion_fr =1d0
 Ionization fraction of He He_ion_fr = (He2+ + He+)/(He2+ + He+ + He)
 
double precision, public, protected mod_rmhd_phys::he_ion_fr2 =1d0
 Ratio of number He2+ / number He+ + He2+ He_ion_fr2 = He2+/(He2+ + He+)
 
double precision, public, protected mod_rmhd_phys::rr =1d0
 
integer, public mod_rmhd_phys::equi_rho0_ = -1
 equi vars indices in the stateequi_vars array
 
integer, public mod_rmhd_phys::equi_pe0_ = -1
 
integer, public, protected mod_rmhd_phys::rmhd_n_tracer = 0
 Number of tracer species.
 
integer, public, protected mod_rmhd_phys::rho_
 Index of the density (in the w array)
 
integer, dimension(:), allocatable, public, protected mod_rmhd_phys::mom
 Indices of the momentum density.
 
integer, public, protected mod_rmhd_phys::c
 Indices of the momentum density for the form of better vectorization.
 
integer, public, protected mod_rmhd_phys::m
 
integer, public, protected mod_rmhd_phys::c_
 
integer, public, protected mod_rmhd_phys::e_
 Index of the energy density (-1 if not present)
 
integer, public, protected mod_rmhd_phys::r_e
 Index of the radiation energy.
 
integer, public, protected mod_rmhd_phys::b
 
integer, public, protected mod_rmhd_phys::p_
 Index of the gas pressure (-1 if not present) should equal e_.
 
integer, public, protected mod_rmhd_phys::q_
 Index of the heat flux q.
 
integer, public, protected mod_rmhd_phys::psi_
 Indices of the GLM psi.
 
integer, public, protected mod_rmhd_phys::te_
 Indices of temperature.
 
integer, public, protected mod_rmhd_phys::tcoff_
 Index of the cutoff temperature for the TRAC method.
 
integer, public, protected mod_rmhd_phys::tweight_
 
integer, dimension(:), allocatable, public, protected mod_rmhd_phys::tracer
 Indices of the tracers.
 
integer, dimension(2 *^nd), public, protected mod_rmhd_phys::boundary_divbfix_skip =0
 To skip * layer of ghost cells during divB=0 fix for boundary.
 
logical, public, protected mod_rmhd_phys::rmhd_energy = .true.
 Whether an energy equation is used.
 
logical, public, protected mod_rmhd_phys::rmhd_thermal_conduction = .false.
 Whether thermal conduction is used.
 
logical, public, protected mod_rmhd_phys::rmhd_hyperbolic_thermal_conduction = .false.
 Whether thermal conduction is used.
 
logical, public, protected mod_rmhd_phys::rmhd_viscosity = .false.
 Whether viscosity is added.
 
logical, public, protected mod_rmhd_phys::rmhd_gravity = .false.
 Whether gravity is added.
 
logical, public, protected mod_rmhd_phys::rmhd_particles = .false.
 Whether particles module is added.
 
logical, public, protected mod_rmhd_phys::rmhd_glm = .false.
 Whether GLM-MHD is used to control div B.
 
logical, public, protected mod_rmhd_phys::rmhd_glm_extended = .true.
 Whether extended GLM-MHD is used with additional sources.
 
logical, public, protected mod_rmhd_phys::rmhd_trac = .false.
 Whether TRAC method is used.
 
integer, public, protected mod_rmhd_phys::rmhd_trac_type =1
 Which TRAC method is used.
 
integer, public, protected mod_rmhd_phys::rmhd_trac_finegrid =4
 Distance between two adjacent traced magnetic field lines (in finest cell size)
 
logical, public, protected mod_rmhd_phys::source_split_divb = .false.
 Whether divB cleaning sources are added splitting from fluid solver.
 
logical, public, protected mod_rmhd_phys::rmhd_partial_ionization = .false.
 Whether plasma is partially ionized.
 
logical, public, protected mod_rmhd_phys::rmhd_cak_force = .false.
 Whether CAK radiation line force is activated.
 
logical, public, protected mod_rmhd_phys::rmhd_4th_order = .false.
 MHD fourth order.
 
logical, public mod_rmhd_phys::has_equi_rho0 = .false.
 whether split off equilibrium density
 
logical, public mod_rmhd_phys::has_equi_pe0 = .false.
 whether split off equilibrium thermal pressure
 
logical, public mod_rmhd_phys::rmhd_equi_thermal = .false.
 
logical, public, protected mod_rmhd_phys::rmhd_dump_full_vars = .false.
 whether dump full variables (when splitting is used) in a separate dat file
 
integer, public, protected mod_rmhd_phys::rmhd_divb_nth = 1
 Whether divB is computed with a fourth order approximation.
 
logical, public mod_rmhd_phys::divbwave = .true.
 Add divB wave in Roe solver.
 
logical, public mod_rmhd_phys::clean_initial_divb = .false.
 clean initial divB
 
character(len=8), public mod_rmhd_phys::rmhd_radiation_formalism = 'fld'
 Formalism to treat radiation.
 
character(len=8), public mod_rmhd_phys::rmhd_pressure = 'Trad'
 In the case of no rmhd_energy, how to compute pressure.
 
logical, public, protected mod_rmhd_phys::rmhd_radiation_force = .true.
 Treat radiation fld_Rad_force.
 
logical, public, protected mod_rmhd_phys::rmhd_energy_interact = .true.
 Treat radiation-gas energy interaction.
 
logical, public, protected mod_rmhd_phys::rmhd_radiation_diffusion = .true.
 Treat radiation energy diffusion.
 
logical, public, protected mod_rmhd_phys::rmhd_radiation_advection = .true.
 Treat radiation advection.
 
double precision, public mod_rmhd_phys::kbmpmua4
 kb/(m_p mu)* 1/a_rad**4,
 
logical, public, protected mod_rmhd_phys::eq_state_units = .true.
 
logical, dimension(2 *^nd), public, protected mod_rmhd_phys::boundary_divbfix =.true.
 To control divB=0 fix for boundary.
 
logical, public, protected mod_rmhd_phys::b0field_forcefree =.true.
 B0 field is force-free.
 
logical, public mod_rmhd_phys::partial_energy = .false.
 Whether an internal or hydrodynamic energy equation is used.
 
character(len=std_len), public, protected mod_rmhd_phys::typedivbfix = 'linde'
 Method type to clean divergence of B.
 
character(len=std_len), public, protected mod_rmhd_phys::type_ct = 'uct_contact'
 Method type of constrained transport.
 
type(tc_fluid), allocatable, public mod_rmhd_phys::tc_fl
 type of fluid for thermal conduction
 
type(te_fluid), allocatable, public mod_rmhd_phys::te_fl_rmhd
 type of fluid for thermal emission synthesis
 
procedure(sub_convert), pointer, public mod_rmhd_phys::rmhd_to_primitive => null()
 
procedure(sub_convert), pointer, public mod_rmhd_phys::rmhd_to_conserved => null()
 
procedure(sub_get_pthermal), pointer, public mod_rmhd_phys::rmhd_get_pthermal => null()
 
procedure(sub_get_pthermal), pointer, public mod_rmhd_phys::rmhd_get_temperature => null()