MPI-AMRVAC  3.1
The MPI - Adaptive Mesh Refinement - Versatile Advection Code
Modules | Functions/Subroutines | Variables
mod_rhd_phys.t File Reference

Go to the source code of this file.

Modules

module  mod_rhd_phys
 Radiation-Hydrodynamics physics module Module aims at solving the Hydrodynamic equations toghether with the zeroth moment of the radiative transfer equation. A closure is provided by the flux limited diffusion (FLD)-approximation in the mod_fld.t module. See [1]Moens, N., Sundqvist, J. O., El Mellah, I., Poniatowski, L., Teunissen, J., and Keppens, R., “Radiation-hydrodynamics with MPI-AMRVAC . Flux-limited diffusion”, Astronomy and Astrophysics, vol. 657, 2022. doi:10.1051/0004-6361/202141023. For more information. Another possible closure in the works is the anisotropic flux limited diffusion approximation (AFLD) described in mod_afld.t.
 

Functions/Subroutines

subroutine mod_rhd_phys::rhd_write_info (fh)
 Write this module's parameters to a snapsoht. More...
 
subroutine, public mod_rhd_phys::rhd_phys_init ()
 Initialize the module. More...
 
subroutine mod_rhd_phys::rhd_te_images ()
 
subroutine mod_rhd_phys::rhd_sts_set_source_tc_rhd (ixIL, ixOL, w, x, wres, fix_conserve_at_step, my_dt, igrid, nflux)
 
double precision function mod_rhd_phys::rhd_get_tc_dt_rhd (w, ixIL, ixOL, dxD, x)
 
subroutine mod_rhd_phys::rhd_tc_handle_small_e (w, x, ixIL, ixOL, step)
 
subroutine mod_rhd_phys::tc_params_read_rhd (fl)
 
subroutine mod_rhd_phys::rhd_get_rho (w, x, ixIL, ixOL, rho)
 
subroutine mod_rhd_phys::rc_params_read (fl)
 
subroutine, public mod_rhd_phys::rhd_check_params
 
subroutine, public mod_rhd_phys::rhd_set_mg_bounds
 Set the boundaries for the diffusion of E. More...
 
subroutine mod_rhd_phys::rhd_physical_units
 
subroutine, public mod_rhd_phys::rhd_check_w (primitive, ixIL, ixOL, w, flag)
 Returns logical argument flag where values are ok. More...
 
subroutine, public mod_rhd_phys::rhd_to_conserved (ixIL, ixOL, w, x)
 Transform primitive variables into conservative ones. More...
 
subroutine, public mod_rhd_phys::rhd_to_primitive (ixIL, ixOL, w, x)
 Transform conservative variables into primitive ones. More...
 
subroutine mod_rhd_phys::rhd_ei_to_e (ixIL, ixOL, w, x)
 Transform internal energy to total energy. More...
 
subroutine mod_rhd_phys::rhd_e_to_ei (ixIL, ixOL, w, x)
 Transform total energy to internal energy. More...
 
subroutine mod_rhd_phys::e_to_rhos (ixIL, ixOL, w, x)
 
subroutine mod_rhd_phys::rhos_to_e (ixIL, ixOL, w, x)
 
subroutine mod_rhd_phys::rhd_get_v (w, x, ixIL, ixOL, idim, v)
 Calculate v_i = m_i / rho within ixO^L. More...
 
subroutine mod_rhd_phys::rhd_get_cmax (w, x, ixIL, ixOL, idim, cmax)
 Calculate cmax_idim = csound + abs(v_idim) within ixO^L. More...
 
subroutine mod_rhd_phys::rhd_get_a2max (w, x, ixIL, ixOL, a2max)
 
subroutine mod_rhd_phys::rhd_get_tcutoff (ixIL, ixOL, w, x, tco_local, Tmax_local)
 get adaptive cutoff temperature for TRAC (Johnston 2019 ApJL, 873, L22) More...
 
subroutine mod_rhd_phys::rhd_get_cbounds (wLC, wRC, wLp, wRp, x, ixIL, ixOL, idim, Hspeed, cmax, cmin)
 Calculate cmax_idim = csound + abs(v_idim) within ixO^L. More...
 
subroutine, public mod_rhd_phys::rhd_get_csound2 (w, x, ixIL, ixOL, csound2)
 Calculate the square of the thermal sound speed csound2 within ixO^L. csound2=gamma*p/rho. More...
 
subroutine, public mod_rhd_phys::rhd_get_pthermal (w, x, ixIL, ixOL, pth)
 Calculate thermal pressure=(gamma-1)*(e-0.5*m**2/rho) within ixO^L. More...
 
subroutine, public mod_rhd_phys::rhd_get_pradiation (w, x, ixIL, ixOL, prad)
 Calculate radiation pressure within ixO^L. More...
 
subroutine, public mod_rhd_phys::rhd_get_ptot (w, x, ixIL, ixOL, ptot)
 calculates the sum of the gas pressure and max Prad tensor element More...
 
subroutine mod_rhd_phys::rhd_radio_acoustic_filter (x, ixIL, ixOL, prad_max)
 Filter peaks in cmax due to radiation energy density, used for debugging. More...
 
subroutine mod_rhd_phys::rhd_get_temperature_from_etot (w, x, ixIL, ixOL, res)
 Calculate temperature=p/rho when in e_ the total energy is stored. More...
 
subroutine mod_rhd_phys::rhd_get_temperature_from_eint (w, x, ixIL, ixOL, res)
 Calculate temperature=p/rho when in e_ the internal energy is stored. More...
 
subroutine, public mod_rhd_phys::rhd_get_tgas (w, x, ixIL, ixOL, tgas)
 Calculates gas temperature. More...
 
subroutine, public mod_rhd_phys::rhd_get_trad (w, x, ixIL, ixOL, trad)
 Calculates radiation temperature. More...
 
subroutine mod_rhd_phys::rhd_ei_to_e1 (ixIL, ixOL, w, x)
 
subroutine mod_rhd_phys::rhd_e_to_ei1 (ixIL, ixOL, w, x)
 Transform total energy to internal energy. More...
 
subroutine mod_rhd_phys::rhd_get_flux_cons (w, x, ixIL, ixOL, idim, f)
 
subroutine mod_rhd_phys::rhd_get_flux (wC, w, x, ixIL, ixOL, idim, f)
 
subroutine mod_rhd_phys::rhd_add_source_geom (qdt, dtfactor, ixIL, ixOL, wCT, w, x)
 Add geometrical source terms to w. More...
 
subroutine mod_rhd_phys::rhd_add_source (qdt, dtfactor, ixIL, ixOL, wCT, wCTprim, w, x, qsourcesplit, active)
 
subroutine mod_rhd_phys::rhd_add_radiation_source (qdt, ixIL, ixOL, wCT, w, x, qsourcesplit, active)
 
subroutine mod_rhd_phys::rhd_get_dt (w, ixIL, ixOL, dtnew, dxD, x)
 
double precision function, dimension(ixo^s), public mod_rhd_phys::rhd_kin_en (w, ixIL, ixOL, inv_rho)
 
double precision function, dimension(ixo^s) mod_rhd_phys::rhd_inv_rho (w, ixIL, ixOL)
 
subroutine mod_rhd_phys::rhd_handle_small_values (primitive, w, x, ixIL, ixOL, subname)
 
subroutine mod_rhd_phys::rfactor_from_temperature_ionization (w, x, ixIL, ixOL, Rfactor)
 
subroutine mod_rhd_phys::rfactor_from_constant_ionization (w, x, ixIL, ixOL, Rfactor)
 
subroutine mod_rhd_phys::rhd_update_temperature (ixIL, ixOL, wCT, w, x)
 

Variables

logical, public, protected mod_rhd_phys::rhd_energy = .true.
 Whether an energy equation is used. More...
 
logical, public, protected mod_rhd_phys::rhd_thermal_conduction = .false.
 Whether thermal conduction is added. More...
 
type(tc_fluid), allocatable, public mod_rhd_phys::tc_fl
 
type(te_fluid), allocatable, public mod_rhd_phys::te_fl_rhd
 
logical, public, protected mod_rhd_phys::rhd_radiative_cooling = .false.
 Whether radiative cooling is added. More...
 
type(rc_fluid), allocatable, public mod_rhd_phys::rc_fl
 
logical, public, protected mod_rhd_phys::rhd_dust = .false.
 Whether dust is added. More...
 
logical, public, protected mod_rhd_phys::rhd_viscosity = .false.
 Whether viscosity is added. More...
 
logical, public, protected mod_rhd_phys::rhd_gravity = .false.
 Whether gravity is added. More...
 
logical, public, protected mod_rhd_phys::rhd_particles = .false.
 Whether particles module is added. More...
 
logical, public, protected mod_rhd_phys::rhd_rotating_frame = .false.
 Whether rotating frame is activated. More...
 
integer, public, protected mod_rhd_phys::rhd_n_tracer = 0
 Number of tracer species. More...
 
integer, public, protected mod_rhd_phys::rho_
 Index of the density (in the w array) More...
 
integer, dimension(:), allocatable, public, protected mod_rhd_phys::mom
 Indices of the momentum density. More...
 
integer, dimension(:), allocatable, public, protected mod_rhd_phys::tracer
 Indices of the tracers. More...
 
integer, public, protected mod_rhd_phys::e_
 Index of the energy density (-1 if not present) More...
 
integer, public, protected mod_rhd_phys::p_
 Index of the gas pressure (-1 if not present) should equal e_. More...
 
integer, public, protected mod_rhd_phys::r_e
 Index of the radiation energy. More...
 
integer, public, protected mod_rhd_phys::te_
 Indices of temperature. More...
 
integer, public, protected mod_rhd_phys::tcoff_
 Index of the cutoff temperature for the TRAC method. More...
 
double precision, public mod_rhd_phys::rhd_gamma = 5.d0/3.0d0
 The adiabatic index. More...
 
double precision, public mod_rhd_phys::rhd_adiab = 1.0d0
 The adiabatic constant. More...
 
double precision, public, protected mod_rhd_phys::small_r_e = 0.d0
 The smallest allowed radiation energy. More...
 
logical, public, protected mod_rhd_phys::rhd_trac = .false.
 Whether TRAC method is used. More...
 
integer, public, protected mod_rhd_phys::rhd_trac_type = 1
 
logical, public, protected mod_rhd_phys::rhd_force_diagonal = .false.
 Allows overruling default corner filling (for debug mode, since otherwise corner primitives fail) More...
 
double precision, public, protected mod_rhd_phys::he_abundance =0.1d0
 Helium abundance over Hydrogen. More...
 
character(len=8), public mod_rhd_phys::rhd_radiation_formalism = 'fld'
 Formalism to treat radiation. More...
 
character(len=8), public mod_rhd_phys::rhd_pressure = 'Trad'
 In the case of no rhd_energy, how to compute pressure. More...
 
logical, public, protected mod_rhd_phys::rhd_radiation_force = .true.
 Treat radiation fld_Rad_force. More...
 
logical, public, protected mod_rhd_phys::rhd_energy_interact = .true.
 Treat radiation-gas energy interaction. More...
 
logical, public, protected mod_rhd_phys::rhd_radiation_diffusion = .true.
 Treat radiation energy diffusion. More...
 
logical, public, protected mod_rhd_phys::rhd_radiation_advection = .true.
 Treat radiation advection. More...
 
logical, public, protected mod_rhd_phys::rhd_partial_ionization = .false.
 Whether plasma is partially ionized. More...
 
double precision, public mod_rhd_phys::kbmpmua4
 kb/(m_p mu)* 1/a_rad**4, More...
 
double precision, public, protected mod_rhd_phys::h_ion_fr =1d0
 Ionization fraction of H H_ion_fr = H+/(H+ + H) More...
 
double precision, public, protected mod_rhd_phys::he_ion_fr =1d0
 Ionization fraction of He He_ion_fr = (He2+ + He+)/(He2+ + He+ + He) More...
 
double precision, public, protected mod_rhd_phys::he_ion_fr2 =1d0
 Ratio of number He2+ / number He+ + He2+ He_ion_fr2 = He2+/(He2+ + He+) More...
 
double precision, public, protected mod_rhd_phys::rr =1d0
 
logical, public, protected mod_rhd_phys::eq_state_units = .true.