MPI-AMRVAC
3.1
The MPI - Adaptive Mesh Refinement - Versatile Advection Code (development version)
|
Magneto-hydrodynamics module. More...
Data Types | |
interface | mask_subroutine2 |
Functions/Subroutines | |
subroutine | twofl_init_hyper (files) |
subroutine | twofl_write_info (fh) |
Write this module's parameters to a snapsoht. More... | |
subroutine, public | twofl_phys_init () |
subroutine | twofl_te_images |
subroutine | twofl_sts_set_source_tc_c_mhd (ixIL, ixOL, w, x, wres, fix_conserve_at_step, my_dt, igrid, nflux) |
subroutine | twofl_sts_set_source_tc_c_hd (ixIL, ixOL, w, x, wres, fix_conserve_at_step, my_dt, igrid, nflux) |
double precision function | twofl_get_tc_dt_mhd_c (w, ixIL, ixOL, dxD, x) |
double precision function | twofl_get_tc_dt_hd_c (w, ixIL, ixOL, dxD, x) |
subroutine | twofl_tc_handle_small_e_c (w, x, ixIL, ixOL, step) |
subroutine | twofl_sts_set_source_tc_n_hd (ixIL, ixOL, w, x, wres, fix_conserve_at_step, my_dt, igrid, nflux) |
subroutine | twofl_tc_handle_small_e_n (w, x, ixIL, ixOL, step) |
double precision function | twofl_get_tc_dt_hd_n (w, ixIL, ixOL, dxD, x) |
subroutine | tc_n_params_read_hd (fl) |
subroutine | rc_params_read_n (fl) |
subroutine | tc_c_params_read_mhd (fl) |
subroutine | tc_c_params_read_hd (fl) |
subroutine | rc_params_read_c (fl) |
subroutine | set_equi_vars_grid_faces (igrid, x, ixIL, ixOL) |
sets the equilibrium variables More... | |
subroutine | set_equi_vars_grid (igrid) |
sets the equilibrium variables More... | |
double precision function, dimension(ixo^s, 1:nwc) | convert_vars_splitting (ixIL, ixOL, w, x, nwc) |
subroutine | grav_params_read (files) |
copied from mod_gravity More... | |
subroutine | associate_dump_hyper () |
subroutine | twofl_check_params |
subroutine | twofl_physical_units () |
subroutine | twofl_check_w (primitive, ixIL, ixOL, w, flag) |
subroutine, public | twofl_to_conserved (ixIL, ixOL, w, x) |
Transform primitive variables into conservative ones. More... | |
subroutine, public | twofl_to_primitive (ixIL, ixOL, w, x) |
Transform conservative variables into primitive ones. More... | |
subroutine | twofl_ei_to_e_c (ixIL, ixOL, w, x) |
Transform internal energy to total energy. More... | |
subroutine | twofl_e_to_ei_c (ixIL, ixOL, w, x) |
Transform total energy to internal energy. More... | |
subroutine | twofl_ei_to_e_n (ixIL, ixOL, w, x) |
subroutine | twofl_e_to_ei_n (ixIL, ixOL, w, x) |
Transform total energy to internal energy. More... | |
subroutine | twofl_handle_small_values (primitive, w, x, ixIL, ixOL, subname) |
subroutine | twofl_get_cmax (w, x, ixIL, ixOL, idim, cmax) |
Calculate cmax_idim=csound+abs(v_idim) within ixO^L. More... | |
subroutine | twofl_get_a2max (w, x, ixIL, ixOL, a2max) |
subroutine | twofl_get_tcutoff_n (ixIL, ixOL, w, x, tco_local, Tmax_local) |
get adaptive cutoff temperature for TRAC (Johnston 2019 ApJL, 873, L22) More... | |
subroutine | twofl_get_tcutoff_c (ixIL, ixOL, w, x, Tco_local, Tmax_local) |
get adaptive cutoff temperature for TRAC (Johnston 2019 ApJL, 873, L22) More... | |
subroutine | twofl_get_h_speed_one (wprim, x, ixIL, ixOL, idim, Hspeed) |
get H speed for H-correction to fix the carbuncle problem at grid-aligned shock front More... | |
subroutine | twofl_get_h_speed_species (wprim, x, ixIL, ixOL, idim, Hspeed) |
get H speed for H-correction to fix the carbuncle problem at grid-aligned shock front More... | |
subroutine | twofl_get_cbounds_one (wLC, wRC, wLp, wRp, x, ixIL, ixOL, idim, Hspeed, cmax, cmin) |
Estimating bounds for the minimum and maximum signal velocities. More... | |
subroutine | twofl_get_csound_prim_c (w, x, ixIL, ixOL, idim, csound) |
Calculate fast magnetosonic wave speed. More... | |
subroutine | twofl_get_csound_prim_n (w, x, ixIL, ixOL, idim, csound) |
Calculate fast magnetosonic wave speed. More... | |
subroutine | twofl_get_cbounds_species (wLC, wRC, wLp, wRp, x, ixIL, ixOL, idim, Hspeed, cmax, cmin) |
Estimating bounds for the minimum and maximum signal velocities. More... | |
subroutine | twofl_get_ct_velocity (vcts, wLp, wRp, ixIL, ixOL, idim, cmax, cmin) |
prepare velocities for ct methods More... | |
subroutine | twofl_get_csound_c_idim (w, x, ixIL, ixOL, idim, csound) |
subroutine | twofl_get_csound_prim (w, x, ixIL, ixOL, idim, csound) |
Calculate fast magnetosonic wave speed when cbounds_species=false. More... | |
subroutine | twofl_get_csound2 (w, x, ixIL, ixOL, csound2) |
subroutine | twofl_get_csound2_adiab (w, x, ixIL, ixOL, csound2) |
subroutine | twofl_get_csound (w, x, ixIL, ixOL, idim, csound) |
subroutine | twofl_get_csound2_from_pthermal (w, x, ixIL, ixOL, pth_c, pth_n, csound2) |
subroutine | twofl_get_csound_n (w, x, ixIL, ixOL, csound) |
subroutine | twofl_get_temperature_from_eint_n (w, x, ixIL, ixOL, res) |
separate routines so that it is faster Calculate temperature=p/rho when in e_ the internal energy is stored More... | |
subroutine | twofl_get_temperature_from_eint_n_with_equi (w, x, ixIL, ixOL, res) |
subroutine | twofl_get_temperature_n_equi (w, x, ixIL, ixOL, res) |
subroutine | twofl_get_rho_n_equi (w, x, ixIL, ixOL, res) |
subroutine | twofl_get_pe_n_equi (w, x, ixIL, ixOL, res) |
subroutine | twofl_get_temperature_from_etot_n (w, x, ixIL, ixOL, res) |
Calculate temperature=p/rho when in e_ the total energy is stored this does not check the values of twofl_energy and twofl_internal_e, twofl_energy = .true. and twofl_internal_e = .false. also check small_values is avoided. More... | |
subroutine | twofl_get_temperature_from_etot_n_with_equi (w, x, ixIL, ixOL, res) |
subroutine | twofl_get_temperature_from_eint_c (w, x, ixIL, ixOL, res) |
separate routines so that it is faster Calculate temperature=p/rho when in e_ the internal energy is stored More... | |
subroutine | twofl_get_temperature_from_eint_c_with_equi (w, x, ixIL, ixOL, res) |
subroutine | twofl_get_temperature_c_equi (w, x, ixIL, ixOL, res) |
subroutine | twofl_get_rho_c_equi (w, x, ixIL, ixOL, res) |
subroutine | twofl_get_pe_c_equi (w, x, ixIL, ixOL, res) |
subroutine | twofl_get_temperature_from_etot_c (w, x, ixIL, ixOL, res) |
Calculate temperature=p/rho when in e_ the total energy is stored this does not check the values of twofl_energy and twofl_internal_e, twofl_energy = .true. and twofl_internal_e = .false. also check small_values is avoided. More... | |
subroutine | twofl_get_temperature_from_eki_c (w, x, ixIL, ixOL, res) |
subroutine | twofl_get_temperature_from_etot_c_with_equi (w, x, ixIL, ixOL, res) |
subroutine | twofl_get_temperature_from_eki_c_with_equi (w, x, ixIL, ixOL, res) |
subroutine | twofl_get_csound2_adiab_n (w, x, ixIL, ixOL, csound2) |
subroutine | twofl_get_csound2_n_from_conserved (w, x, ixIL, ixOL, csound2) |
subroutine | twofl_get_csound2_n_from_primitive (w, x, ixIL, ixOL, csound2) |
subroutine | twofl_get_csound2_adiab_c (w, x, ixIL, ixOL, csound2) |
subroutine, public | twofl_get_csound2_c_from_conserved (w, x, ixIL, ixOL, csound2) |
subroutine | twofl_get_flux (wC, w, x, ixIL, ixOL, idim, f) |
Calculate fluxes within ixO^L. More... | |
subroutine | twofl_add_source (qdt, dtfactor, ixIL, ixOL, wCT, wCTprim, w, x, qsourcesplit, active) |
w[iws]=w[iws]+qdt*S[iws,wCT] where S is the source based on wCT within ixO More... | |
subroutine | add_pe_n0_divv (qdt, ixIL, ixOL, wCT, w, x) |
subroutine | add_pe_c0_divv (qdt, ixIL, ixOL, wCT, w, x) |
subroutine | add_geom_pdivv (qdt, ixIL, ixOL, v, p, w, x, ind) |
subroutine | get_lorentz (ixIL, ixOL, w, JxB) |
Compute the Lorentz force (JxB) More... | |
subroutine | add_source_lorentz_work (qdt, ixIL, ixOL, w, wCT, x) |
subroutine | twofl_get_v_n (w, x, ixIL, ixOL, v) |
Calculate v_n vector. More... | |
subroutine, public | get_rhon_tot (w, x, ixIL, ixOL, rhon) |
subroutine, public | twofl_get_pthermal_n (w, x, ixIL, ixOL, pth) |
subroutine | twofl_get_pthermal_n_primitive (w, x, ixIL, ixOL, pth) |
subroutine, public | twofl_get_v_n_idim (w, x, ixIL, ixOL, idim, v) |
Calculate v component. More... | |
subroutine | internal_energy_add_source_n (qdt, ixIL, ixOL, wCT, w, x) |
subroutine | twofl_get_v_c (w, x, ixIL, ixOL, v) |
Calculate v_c vector. More... | |
subroutine, public | get_rhoc_tot (w, x, ixIL, ixOL, rhoc) |
subroutine, public | twofl_get_pthermal_c (w, x, ixIL, ixOL, pth) |
subroutine | twofl_get_pthermal_c_primitive (w, x, ixIL, ixOL, pth) |
subroutine, public | twofl_get_v_c_idim (w, x, ixIL, ixOL, idim, v) |
Calculate v_c component. More... | |
subroutine | internal_energy_add_source_c (qdt, ixIL, ixOL, wCT, w, x, ie) |
subroutine | twofl_handle_small_ei_c (w, x, ixIL, ixOL, ie, subname) |
handle small or negative internal energy More... | |
subroutine | twofl_handle_small_ei_n (w, x, ixIL, ixOL, ie, subname) |
handle small or negative internal energy More... | |
subroutine | add_source_b0split (qdt, ixIL, ixOL, wCT, w, x) |
Source terms after split off time-independent magnetic field. More... | |
subroutine | add_source_res1 (qdt, ixIL, ixOL, wCT, w, x) |
Add resistive source to w within ixO Uses 3 point stencil (1 neighbour) in each direction, non-conservative. If the fourthorder precompiler flag is set, uses fourth order central difference for the laplacian. Then the stencil is 5 (2 neighbours). More... | |
subroutine | add_source_res2 (qdt, ixIL, ixOL, wCT, w, x) |
Add resistive source to w within ixO Uses 5 point stencil (2 neighbours) in each direction, conservative. More... | |
subroutine | add_source_hyperres (qdt, ixIL, ixOL, wCT, w, x) |
Add Hyper-resistive source to w within ixO Uses 9 point stencil (4 neighbours) in each direction. More... | |
subroutine | add_source_glm (qdt, ixIL, ixOL, wCT, w, x) |
subroutine | add_source_powel (qdt, ixIL, ixOL, wCT, w, x) |
Add divB related sources to w within ixO corresponding to Powel. More... | |
subroutine | add_source_janhunen (qdt, ixIL, ixOL, wCT, w, x) |
subroutine | add_source_linde (qdt, ixIL, ixOL, wCT, w, x) |
subroutine, public | get_normalized_divb (w, ixIL, ixOL, divb) |
get dimensionless div B = |divB| * volume / area / |B| More... | |
subroutine, public | 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. More... | |
subroutine | gravity_add_source (qdt, ixIL, ixOL, wCT, w, x, energy, qsourcesplit, active) |
w[iw]=w[iw]+qdt*S[wCT,qtC,x] where S is the source based on wCT within ixO More... | |
subroutine | gravity_get_dt (w, ixIL, ixOL, dtnew, dxD, x) |
subroutine | twofl_get_dt (w, ixIL, ixOL, dtnew, dxD, x) |
If resistivity is not zero, check diffusion time limit for dt. More... | |
pure logical function | has_collisions () |
subroutine | twofl_add_source_geom (qdt, dtfactor, ixIL, ixOL, wCT, wprim, w, x) |
subroutine | twofl_get_temp_c_pert_from_etot (w, x, ixIL, ixOL, res) |
double precision function, dimension(ixo^s) | twofl_mag_en_all (w, ixIL, ixOL) |
Compute 2 times total magnetic energy. More... | |
double precision function, dimension(ixo^s) | twofl_mag_i_all (w, ixIL, ixOL, idir) |
Compute full magnetic field by direction. More... | |
double precision function, dimension(ixo^s) | twofl_mag_en (w, ixIL, ixOL) |
Compute evolving magnetic energy. More... | |
double precision function, dimension(ixo^s) | twofl_kin_en_n (w, ixIL, ixOL) |
compute kinetic energy of neutrals More... | |
subroutine | twofl_get_temp_n_pert_from_etot (w, x, ixIL, ixOL, res) |
double precision function, dimension(ixo^s) | twofl_kin_en_c (w, ixIL, ixOL) |
compute kinetic energy of charges w are conserved variables More... | |
subroutine | twofl_getv_hall (w, x, ixIL, ixOL, vHall) |
subroutine | twofl_modify_wlr (ixIL, ixOL, qt, wLC, wRC, wLp, wRp, s, idir) |
subroutine | twofl_boundary_adjust (igrid, psb) |
subroutine | fixdivb_boundary (ixGL, ixOL, w, x, iB) |
subroutine, public | twofl_clean_divb_multigrid (qdt, qt, active) |
subroutine | twofl_update_faces (ixIL, ixOL, qt, qdt, wprim, fC, fE, sCT, s, vcts) |
subroutine | update_faces_average (ixIL, ixOL, qt, qdt, fC, fE, sCT, s) |
get electric field though averaging neighors to update faces in CT More... | |
subroutine | update_faces_contact (ixIL, ixOL, qt, qdt, wp, fC, fE, sCT, s, vcts) |
update faces using UCT contact mode by Gardiner and Stone 2005 JCP 205, 509 More... | |
subroutine | update_faces_hll (ixIL, ixOL, qt, qdt, fE, sCT, s, vcts) |
update faces More... | |
subroutine | get_resistive_electric_field (ixIL, ixOL, sCT, s, jce) |
calculate eta J at cell edges More... | |
subroutine, public | twofl_face_to_center (ixOL, s) |
calculate cell-center values from face-center values More... | |
subroutine, public | b_from_vector_potential (ixIsL, ixIL, ixOL, ws, x) |
calculate magnetic field from vector potential More... | |
subroutine | hyperdiffusivity_get_dt (w, ixIL, ixOL, dtnew, dxD, x) |
subroutine | add_source_hyperdiffusive (qdt, ixIL, ixOL, w, wCT, x) |
double precision function, dimension(ixo^s, 1:nwc) | dump_hyperdiffusivity_coef_y (ixIL, ixOL, w, x, nwc) |
double precision function, dimension(ixo^s, 1:nwc) | dump_hyperdiffusivity_coef_z (ixIL, ixOL, w, x, nwc) |
double precision function, dimension(ixop^s, 1:nw) | dump_hyperdiffusivity_coef_dim (ixIL, ixOPL, w, x, ii) |
double precision function, dimension(ixo^s, 1:nwc) | dump_coll_terms (ixIL, ixOL, w, x, nwc) |
subroutine, public | get_gamma_ion_rec (ixIL, ixOL, w, x, gamma_rec, gamma_ion) |
subroutine, public | get_alpha_coll (ixIL, ixOL, w, x, alpha) |
subroutine | get_alpha_coll_plasma (ixIL, ixOL, w, x, alpha) |
subroutine | calc_mult_factor1 (ixIL, ixOL, step_dt, JJ, res) |
subroutine | twofl_implicit_coll_terms_update (dtfactor, qdt, qtC, psb, psa) |
Implicit solve of psb=psa+dtfactor*dt*F_im(psb) More... | |
subroutine | twofl_evaluate_implicit (qtC, psa) |
inplace update of psa==>F_im(psa) More... | |
subroutine | coll_terms (ixIL, ixOL, w, x) |
subroutine | twofl_explicit_coll_terms_update (qdt, ixIL, ixOL, w, wCT, x) |
subroutine | rfactor_c (w, x, ixIL, ixOL, Rfactor) |
Variables | |
integer, parameter, public | eq_energy_tot =2 |
integer, parameter, public | eq_energy_int =1 |
integer, parameter, public | eq_energy_none =0 |
integer, parameter, public | eq_energy_ki =3 |
integer, public, protected | twofl_eq_energy = EQ_ENERGY_TOT |
logical, public, protected | twofl_hyperdiffusivity = .false. |
Whether hyperdiffusivity is used. More... | |
logical, public, protected | twofl_dump_hyperdiffusivity_coef = .false. |
double precision, dimension(:), allocatable, public, protected | c_shk |
double precision, dimension(:), allocatable, public, protected | c_hyp |
logical, public, protected | twofl_thermal_conduction_c = .false. |
Whether thermal conduction is used. More... | |
logical, public, protected | twofl_radiative_cooling_c = .false. |
Whether radiative cooling is added. More... | |
type(rc_fluid), allocatable, public | rc_fl_c |
logical, public, protected | twofl_viscosity = .false. |
Whether viscosity is added. More... | |
logical, public, protected | twofl_gravity = .false. |
Whether gravity is added: common flag for charges and neutrals. More... | |
logical, public, protected | twofl_dump_full_vars = .false. |
whether dump full variables (when splitting is used) in a separate dat file More... | |
logical, public, protected | twofl_hall = .false. |
Whether Hall-MHD is used. More... | |
type(tc_fluid), allocatable, public | tc_fl_c |
type(te_fluid), allocatable, public | te_fl_c |
logical, public, protected | twofl_thermal_conduction_n = .false. |
logical, public, protected | twofl_radiative_cooling_n = .false. |
logical, public, protected | twofl_trac = .false. |
Whether TRAC method is used. More... | |
logical, public, protected | twofl_glm = .false. |
Whether GLM-MHD is used. More... | |
integer, public, protected | twofl_trac_type =1 |
Which TRAC method is used More... | |
double precision, public, protected | twofl_trac_mask = 0.d0 |
Height of the mask used in the TRAC method. More... | |
logical, public, protected | source_split_divb = .false. |
Whether divB cleaning sources are added splitting from fluid solver. More... | |
double precision, public | twofl_glm_alpha = 0.5d0 |
GLM-MHD parameter: ratio of the diffusive and advective time scales for div b taking values within [0, 1]. More... | |
logical, public, protected | twofl_4th_order = .false. |
MHD fourth order. More... | |
integer, public | rho_c_ |
Index of the density (in the w array) More... | |
integer, dimension(:), allocatable, public | mom_c |
Indices of the momentum density. More... | |
integer, public | e_c_ =-1 |
Index of the energy density (-1 if not present) More... | |
integer, public | tcoff_c_ |
Index of the cutoff temperature for the TRAC method. More... | |
integer, public | tweight_c_ |
integer, public, protected | psi_ |
Indices of the GLM psi. More... | |
logical, public | has_equi_rho_c0 = .false. |
equi vars flags More... | |
logical, public | has_equi_pe_c0 = .false. |
integer, public | equi_rho_c0_ = -1 |
equi vars indices in the stateequi_vars array More... | |
integer, public | equi_pe_c0_ = -1 |
logical, public | twofl_equi_thermal_c = .false. |
logical, public | twofl_equi_thermal = .false. |
integer, public | rho_n_ |
integer, dimension(:), allocatable, public | mom_n |
integer, public | e_n_ |
integer, public | tcoff_n_ |
integer, public | tweight_n_ |
logical, public | has_equi_rho_n0 = .false. |
logical, public | has_equi_pe_n0 = .false. |
integer, public | equi_rho_n0_ = -1 |
integer, public | equi_pe_n0_ = -1 |
double precision, public | twofl_alpha_coll = 0d0 |
collisional alpha More... | |
logical, public | twofl_alpha_coll_constant = .true. |
logical, public | twofl_coll_inc_te = .true. |
whether include thermal exchange collisional terms More... | |
logical, public | twofl_coll_inc_ionrec = .false. |
whether include ionization/recombination inelastic collisional terms More... | |
logical, public | twofl_equi_thermal_n = .false. |
double precision, public | dtcollpar = -1d0 |
logical, public, protected | twofl_dump_coll_terms = .false. |
whether dump collisional terms in a separte dat file More... | |
double precision, public, protected | he_abundance = 0d0 |
double precision, public, protected | rc = 2d0 |
double precision, public, protected | rn = 1d0 |
double precision, public | twofl_gamma = 5.d0/3.0d0 |
The adiabatic index. More... | |
double precision, public | twofl_adiab = 1.0d0 |
The adiabatic constant. More... | |
double precision, public | twofl_eta = 0.0d0 |
The MHD resistivity. More... | |
double precision, public | twofl_eta_hyper = 0.0d0 |
The MHD hyper-resistivity. More... | |
double precision, public | twofl_etah = 0.0d0 |
The MHD Hall coefficient. More... | |
character(len=std_len), public, protected | typedivbfix = 'linde' |
Method type to clean divergence of B. More... | |
character(len=std_len), public, protected | type_ct = 'uct_contact' |
Method type of constrained transport. More... | |
logical, public, protected | twofl_divb_4thorder = .false. |
Whether divB is computed with a fourth order approximation. More... | |
logical, public | clean_initial_divb = .false. |
clean initial divB More... | |
logical, public | divbwave = .true. |
Add divB wave in Roe solver. More... | |
logical, dimension(2 *^nd), public, protected | boundary_divbfix =.true. |
To control divB=0 fix for boundary. More... | |
integer, dimension(2 *^nd), public, protected | boundary_divbfix_skip =0 |
To skip * layer of ghost cells during divB=0 fix for boundary. More... | |
logical, public, protected | b0field_forcefree =.true. |
B0 field is force-free. More... | |
procedure(implicit_mult_factor_subroutine), pointer | calc_mult_factor => null() |
procedure(mask_subroutine), pointer, public | usr_mask_alpha => null() |
procedure(mask_subroutine2), pointer, public | usr_mask_gamma_ion_rec => null() |
Magneto-hydrodynamics module.
subroutine mod_twofl_phys::add_geom_pdivv | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:ndir), intent(in) | v, | ||
double precision, dimension(ixi^s), intent(in) | p, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ind | ||
) |
subroutine mod_twofl_phys::add_pe_c0_divv | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
subroutine mod_twofl_phys::add_pe_n0_divv | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
subroutine mod_twofl_phys::add_source_b0split | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
Source terms after split off time-independent magnetic field.
Definition at line 3838 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::add_source_glm | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
subroutine mod_twofl_phys::add_source_hyperdiffusive | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
subroutine mod_twofl_phys::add_source_hyperres | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
Add Hyper-resistive source to w within ixO Uses 9 point stencil (4 neighbours) in each direction.
Definition at line 4062 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::add_source_janhunen | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
subroutine mod_twofl_phys::add_source_linde | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
subroutine mod_twofl_phys::add_source_lorentz_work | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
subroutine mod_twofl_phys::add_source_powel | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
Add divB related sources to w within ixO corresponding to Powel.
Definition at line 4172 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::add_source_res1 | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
Add resistive source to w within ixO Uses 3 point stencil (1 neighbour) in each direction, non-conservative. If the fourthorder precompiler flag is set, uses fourth order central difference for the laplacian. Then the stencil is 5 (2 neighbours).
Definition at line 3891 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::add_source_res2 | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
Add resistive source to w within ixO Uses 5 point stencil (2 neighbours) in each direction, conservative.
Definition at line 3999 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::associate_dump_hyper |
subroutine, public mod_twofl_phys::b_from_vector_potential | ( | integer, intent(in) | ixIs, |
integer, intent(in) | L, | ||
integer, intent(in) | ixI, | ||
L, | |||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixis^s,1:nws), intent(inout) | ws, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
calculate magnetic field from vector potential
Definition at line 6133 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::calc_mult_factor1 | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, intent(in) | step_dt, | ||
double precision, dimension(ixi^s), intent(in) | JJ, | ||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
subroutine mod_twofl_phys::coll_terms | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s, 1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
double precision function, dimension(ixo^s, 1:nwc) mod_twofl_phys::convert_vars_splitting | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s, 1:nw), intent(in) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | nwc | ||
) |
double precision function, dimension(ixo^s, 1:nwc) mod_twofl_phys::dump_coll_terms | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s, 1:nw), intent(in) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | nwc | ||
) |
double precision function, dimension(ixop^s, 1:nw) mod_twofl_phys::dump_hyperdiffusivity_coef_dim | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixOP, | ||
L, | |||
double precision, dimension(ixi^s, 1:nw), intent(in) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ii | ||
) |
double precision function, dimension(ixo^s, 1:nwc) mod_twofl_phys::dump_hyperdiffusivity_coef_y | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s, 1:nw), intent(in) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | nwc | ||
) |
double precision function, dimension(ixo^s, 1:nwc) mod_twofl_phys::dump_hyperdiffusivity_coef_z | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s, 1:nw), intent(in) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | nwc | ||
) |
subroutine mod_twofl_phys::fixdivb_boundary | ( | integer, intent(in) | ixG, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixg^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixg^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | iB | ||
) |
Definition at line 5041 of file mod_twofl_phys.t.
subroutine, public mod_twofl_phys::get_alpha_coll | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
double precision, dimension(ixi^s), intent(out) | alpha | ||
) |
subroutine mod_twofl_phys::get_alpha_coll_plasma | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
double precision, dimension(ixi^s), intent(out) | alpha | ||
) |
subroutine, public mod_twofl_phys::get_current | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(out) | idirmin, | ||
double precision, dimension(ixi^s,7-2*ndir:3) | current | ||
) |
Calculate idirmin and the idirmin:3 components of the common current array make sure that dxlevel(^D) is set correctly.
Definition at line 4341 of file mod_twofl_phys.t.
subroutine, public mod_twofl_phys::get_gamma_ion_rec | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
double precision, dimension(ixi^s), intent(out) | gamma_rec, | ||
double precision, dimension(ixi^s), intent(out) | gamma_ion | ||
) |
subroutine mod_twofl_phys::get_lorentz | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | w, | ||
double precision, dimension(ixi^s,3), intent(inout) | JxB | ||
) |
Compute the Lorentz force (JxB)
Definition at line 3428 of file mod_twofl_phys.t.
subroutine, public mod_twofl_phys::get_normalized_divb | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s) | divb | ||
) |
get dimensionless div B = |divB| * volume / area / |B|
Definition at line 4307 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::get_resistive_electric_field | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
type(state), intent(in) | sCT, | ||
type(state), intent(in) | s, | ||
double precision, dimension(ixi^s,sdim:3) | jce | ||
) |
calculate eta J at cell edges
Definition at line 6004 of file mod_twofl_phys.t.
subroutine, public mod_twofl_phys::get_rhoc_tot | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | rhoc | ||
) |
Definition at line 3620 of file mod_twofl_phys.t.
subroutine, public mod_twofl_phys::get_rhon_tot | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | rhon | ||
) |
Definition at line 3486 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::grav_params_read | ( | character(len=*), dimension(:), intent(in) | files | ) |
copied from mod_gravity
Definition at line 1229 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::gravity_add_source | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
logical, intent(in) | energy, | ||
logical, intent(in) | qsourcesplit, | ||
logical, intent(inout) | active | ||
) |
w[iw]=w[iw]+qdt*S[wCT,qtC,x] where S is the source based on wCT within ixO
Definition at line 4366 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::gravity_get_dt | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, intent(inout) | dtnew, | ||
double precision, intent(in) | dx, | ||
double precision, intent(in) | D, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
Definition at line 4420 of file mod_twofl_phys.t.
pure logical function mod_twofl_phys::has_collisions |
subroutine mod_twofl_phys::hyperdiffusivity_get_dt | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, intent(inout) | dtnew, | ||
double precision, intent(in) | dx, | ||
double precision, intent(in) | D, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
subroutine mod_twofl_phys::internal_energy_add_source_c | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ie | ||
) |
subroutine mod_twofl_phys::internal_energy_add_source_n | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
subroutine mod_twofl_phys::rc_params_read_c | ( | type(rc_fluid), intent(inout) | fl | ) |
Name of cooling curve
Name of cooling method
Fixed temperature not lower than tlow
Lower limit of temperature
Add cooling source in a split way (.true.) or un-split way (.false.)
Definition at line 1083 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::rc_params_read_n | ( | type(rc_fluid), intent(inout) | fl | ) |
Name of cooling curve
Name of cooling method
Fixed temperature not lower than tlow
Lower limit of temperature
Add cooling source in a split way (.true.) or un-split way (.false.)
Definition at line 972 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::rfactor_c | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | Rfactor | ||
) |
Definition at line 7125 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::set_equi_vars_grid | ( | integer, intent(in) | igrid | ) |
sets the equilibrium variables
Definition at line 1174 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::set_equi_vars_grid_faces | ( | integer, intent(in) | igrid, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L | |||
) |
sets the equilibrium variables
Definition at line 1128 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::tc_c_params_read_hd | ( | type(tc_fluid), intent(inout) | fl | ) |
Definition at line 1060 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::tc_c_params_read_mhd | ( | type(tc_fluid), intent(inout) | fl | ) |
Definition at line 1016 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::tc_n_params_read_hd | ( | type(tc_fluid), intent(inout) | fl | ) |
Definition at line 952 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_add_source | ( | double precision, intent(in) | qdt, |
double precision, intent(in) | dtfactor, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(in) | wCTprim, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
logical, intent(in) | qsourcesplit, | ||
logical, intent(inout) | active | ||
) |
w[iws]=w[iws]+qdt*S[iws,wCT] where S is the source based on wCT within ixO
Definition at line 3248 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_add_source_geom | ( | double precision, intent(in) | qdt, |
double precision, intent(in) | dtfactor, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(inout) | wCT, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | wprim, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
subroutine mod_twofl_phys::twofl_boundary_adjust | ( | integer, intent(in) | igrid, |
type(state), dimension(max_blocks), target | psb | ||
) |
subroutine mod_twofl_phys::twofl_check_params |
subroutine mod_twofl_phys::twofl_check_w | ( | logical, intent(in) | primitive, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,nw), intent(in) | w, | ||
logical, dimension(ixi^s,1:nw), intent(inout) | flag | ||
) |
subroutine, public mod_twofl_phys::twofl_clean_divb_multigrid | ( | double precision, intent(in) | qdt, |
double precision, intent(in) | qt, | ||
logical, intent(inout) | active | ||
) |
[in] | qdt | Current time step |
[in] | qt | Current time |
[in,out] | active | Output if the source is active |
Definition at line 5406 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_e_to_ei_c | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s, nw), intent(inout) | w, | ||
double precision, dimension(ixi^s, 1:ndim), intent(in) | x | ||
) |
Transform total energy to internal energy.
Definition at line 1574 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_e_to_ei_n | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s, nw), intent(inout) | w, | ||
double precision, dimension(ixi^s, 1:ndim), intent(in) | x | ||
) |
Transform total energy to internal energy.
Definition at line 1605 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_ei_to_e_c | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s, nw), intent(inout) | w, | ||
double precision, dimension(ixi^s, 1:ndim), intent(in) | x | ||
) |
Transform internal energy to total energy.
Definition at line 1556 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_ei_to_e_n | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s, nw), intent(inout) | w, | ||
double precision, dimension(ixi^s, 1:ndim), intent(in) | x | ||
) |
subroutine mod_twofl_phys::twofl_evaluate_implicit | ( | double precision, intent(in) | qtC, |
type(state), dimension(max_blocks), target | psa | ||
) |
inplace update of psa==>F_im(psa)
Definition at line 6848 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_explicit_coll_terms_update | ( | double precision, intent(in) | qdt, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:nw), intent(in) | wCT, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
subroutine, public mod_twofl_phys::twofl_face_to_center | ( | integer, intent(in) | ixO, |
integer, intent(in) | L, | ||
type(state) | s | ||
) |
calculate cell-center values from face-center values
Definition at line 6073 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_a2max | ( | double precision, dimension(ixi^s, nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ndim), intent(inout) | a2max | ||
) |
4th order
Definition at line 1778 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_cbounds_one | ( | double precision, dimension(ixi^s, nw), intent(in) | wLC, |
double precision, dimension(ixi^s, nw), intent(in) | wRC, | ||
double precision, dimension(ixi^s, nw), intent(in) | wLp, | ||
double precision, dimension(ixi^s, nw), intent(in) | wRp, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idim, | ||
double precision, dimension(ixi^s,1:number_species), intent(in) | Hspeed, | ||
double precision, dimension(ixi^s,number_species), intent(inout) | cmax, | ||
double precision, dimension(ixi^s,number_species), intent(inout), optional | cmin | ||
) |
Estimating bounds for the minimum and maximum signal velocities.
Definition at line 2156 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_cbounds_species | ( | double precision, dimension(ixi^s, nw), intent(in) | wLC, |
double precision, dimension(ixi^s, nw), intent(in) | wRC, | ||
double precision, dimension(ixi^s, nw), intent(in) | wLp, | ||
double precision, dimension(ixi^s, nw), intent(in) | wRp, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idim, | ||
double precision, dimension(ixi^s,1:number_species), intent(in) | Hspeed, | ||
double precision, dimension(ixi^s,1:number_species), intent(inout) | cmax, | ||
double precision, dimension(ixi^s,1:number_species), intent(inout), optional | cmin | ||
) |
Estimating bounds for the minimum and maximum signal velocities.
Definition at line 2324 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_cmax | ( | double precision, dimension(ixi^s, nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idim, | ||
double precision, dimension(ixi^s), intent(inout) | cmax | ||
) |
Calculate cmax_idim=csound+abs(v_idim) within ixO^L.
Definition at line 1759 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_csound | ( | double precision, dimension(ixi^s, nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idim, | ||
double precision, dimension(ixi^s), intent(out) | csound | ||
) |
subroutine mod_twofl_phys::twofl_get_csound2 | ( | double precision, dimension(ixi^s,nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | csound2 | ||
) |
subroutine mod_twofl_phys::twofl_get_csound2_adiab | ( | double precision, dimension(ixi^s,nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | csound2 | ||
) |
subroutine mod_twofl_phys::twofl_get_csound2_adiab_c | ( | double precision, dimension(ixi^s,nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | csound2 | ||
) |
subroutine mod_twofl_phys::twofl_get_csound2_adiab_n | ( | double precision, dimension(ixi^s,nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | csound2 | ||
) |
subroutine, public mod_twofl_phys::twofl_get_csound2_c_from_conserved | ( | double precision, dimension(ixi^s,nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | csound2 | ||
) |
subroutine mod_twofl_phys::twofl_get_csound2_from_pthermal | ( | double precision, dimension(ixi^s,nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(in) | pth_c, | ||
double precision, dimension(ixi^s), intent(in) | pth_n, | ||
double precision, dimension(ixi^s), intent(out) | csound2 | ||
) |
subroutine mod_twofl_phys::twofl_get_csound2_n_from_conserved | ( | double precision, dimension(ixi^s,nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | csound2 | ||
) |
subroutine mod_twofl_phys::twofl_get_csound2_n_from_primitive | ( | double precision, dimension(ixi^s,nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | csound2 | ||
) |
subroutine mod_twofl_phys::twofl_get_csound_c_idim | ( | double precision, dimension(ixi^s, nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idim, | ||
double precision, dimension(ixi^s), intent(out) | csound | ||
) |
subroutine mod_twofl_phys::twofl_get_csound_n | ( | double precision, dimension(ixi^s, nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | csound | ||
) |
subroutine mod_twofl_phys::twofl_get_csound_prim | ( | double precision, dimension(ixi^s, nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idim, | ||
double precision, dimension(ixi^s), intent(out) | csound | ||
) |
Calculate fast magnetosonic wave speed when cbounds_species=false.
Definition at line 2584 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_csound_prim_c | ( | double precision, dimension(ixi^s, nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idim, | ||
double precision, dimension(ixi^s), intent(out) | csound | ||
) |
Calculate fast magnetosonic wave speed.
Definition at line 2254 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_csound_prim_n | ( | double precision, dimension(ixi^s, nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idim, | ||
double precision, dimension(ixi^s), intent(out) | csound | ||
) |
Calculate fast magnetosonic wave speed.
Definition at line 2304 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_ct_velocity | ( | type(ct_velocity), intent(inout) | vcts, |
double precision, dimension(ixi^s, nw), intent(in) | wLp, | ||
double precision, dimension(ixi^s, nw), intent(in) | wRp, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idim, | ||
double precision, dimension(ixi^s), intent(in) | cmax, | ||
double precision, dimension(ixi^s), intent(in), optional | cmin | ||
) |
prepare velocities for ct methods
Definition at line 2482 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_dt | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, intent(inout) | dtnew, | ||
double precision, intent(in) | dx, | ||
double precision, intent(in) | D, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
If resistivity is not zero, check diffusion time limit for dt.
Definition at line 4452 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_flux | ( | double precision, dimension(ixi^s,nw), intent(in) | wC, |
double precision, dimension(ixi^s,nw), intent(in) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idim, | ||
double precision, dimension(ixi^s,nwflux), intent(out) | f | ||
) |
Calculate fluxes within ixO^L.
Definition at line 3044 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_h_speed_one | ( | double precision, dimension(ixi^s, nw), intent(in) | wprim, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idim, | ||
double precision, dimension(ixi^s,1:number_species), intent(out) | Hspeed | ||
) |
get H speed for H-correction to fix the carbuncle problem at grid-aligned shock front
Definition at line 2008 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_h_speed_species | ( | double precision, dimension(ixi^s, nw), intent(in) | wprim, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idim, | ||
double precision, dimension(ixi^s,1:number_species), intent(out) | Hspeed | ||
) |
get H speed for H-correction to fix the carbuncle problem at grid-aligned shock front
Definition at line 2077 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_pe_c_equi | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
Definition at line 2907 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_pe_n_equi | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
Definition at line 2821 of file mod_twofl_phys.t.
subroutine, public mod_twofl_phys::twofl_get_pthermal_c | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | pth | ||
) |
subroutine mod_twofl_phys::twofl_get_pthermal_c_primitive | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | pth | ||
) |
subroutine, public mod_twofl_phys::twofl_get_pthermal_n | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | pth | ||
) |
subroutine mod_twofl_phys::twofl_get_pthermal_n_primitive | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | pth | ||
) |
subroutine mod_twofl_phys::twofl_get_rho_c_equi | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
Definition at line 2898 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_rho_n_equi | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
Definition at line 2812 of file mod_twofl_phys.t.
double precision function mod_twofl_phys::twofl_get_tc_dt_hd_c | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, intent(in) | dx, | ||
double precision, intent(in) | D, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
double precision function mod_twofl_phys::twofl_get_tc_dt_hd_n | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, intent(in) | dx, | ||
double precision, intent(in) | D, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
double precision function mod_twofl_phys::twofl_get_tc_dt_mhd_c | ( | double precision, dimension(ixi^s,1:nw), intent(in) | w, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, intent(in) | dx, | ||
double precision, intent(in) | D, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x | ||
) |
subroutine mod_twofl_phys::twofl_get_tcutoff_c | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
double precision, intent(out) | Tco_local, | ||
double precision, intent(out) | Tmax_local | ||
) |
get adaptive cutoff temperature for TRAC (Johnston 2019 ApJL, 873, L22)
test case, fixed cutoff temperature
iijima et al. 2021, LTRAC method
test case, fixed cutoff temperature
iijima et al. 2021, LTRAC method
do nothing here
Definition at line 1836 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_tcutoff_n | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(in) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
double precision, intent(out) | tco_local, | ||
double precision, intent(out) | Tmax_local | ||
) |
get adaptive cutoff temperature for TRAC (Johnston 2019 ApJL, 873, L22)
Definition at line 1802 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_temp_c_pert_from_etot | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
subroutine mod_twofl_phys::twofl_get_temp_n_pert_from_etot | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
subroutine mod_twofl_phys::twofl_get_temperature_c_equi | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
Definition at line 2888 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_temperature_from_eint_c | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
separate routines so that it is faster Calculate temperature=p/rho when in e_ the internal energy is stored
Definition at line 2858 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_temperature_from_eint_c_with_equi | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
Definition at line 2869 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_temperature_from_eint_n | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
separate routines so that it is faster Calculate temperature=p/rho when in e_ the internal energy is stored
Definition at line 2771 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_temperature_from_eint_n_with_equi | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
Definition at line 2782 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_temperature_from_eki_c | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
subroutine mod_twofl_phys::twofl_get_temperature_from_eki_c_with_equi | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
subroutine mod_twofl_phys::twofl_get_temperature_from_etot_c | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
Calculate temperature=p/rho when in e_ the total energy is stored this does not check the values of twofl_energy and twofl_internal_e, twofl_energy = .true. and twofl_internal_e = .false. also check small_values is avoided.
Definition at line 2920 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_temperature_from_etot_c_with_equi | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
subroutine mod_twofl_phys::twofl_get_temperature_from_etot_n | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
Calculate temperature=p/rho when in e_ the total energy is stored this does not check the values of twofl_energy and twofl_internal_e, twofl_energy = .true. and twofl_internal_e = .false. also check small_values is avoided.
Definition at line 2834 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_temperature_from_etot_n_with_equi | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
subroutine mod_twofl_phys::twofl_get_temperature_n_equi | ( | double precision, dimension(ixi^s, 1:nw), intent(in) | w, |
double precision, dimension(ixi^s, 1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s), intent(out) | res | ||
) |
Definition at line 2802 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_v_c | ( | double precision, dimension(ixi^s,nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,ndir), intent(out) | v | ||
) |
Calculate v_c vector.
Definition at line 3604 of file mod_twofl_phys.t.
subroutine, public mod_twofl_phys::twofl_get_v_c_idim | ( | double precision, dimension(ixi^s,nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idim, | ||
double precision, dimension(ixi^s), intent(out) | v | ||
) |
Calculate v_c component.
Definition at line 3708 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_get_v_n | ( | double precision, dimension(ixi^s,nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,ndir), intent(out) | v | ||
) |
Calculate v_n vector.
Definition at line 3469 of file mod_twofl_phys.t.
subroutine, public mod_twofl_phys::twofl_get_v_n_idim | ( | double precision, dimension(ixi^s,nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idim, | ||
double precision, dimension(ixi^s), intent(out) | v | ||
) |
Calculate v component.
Definition at line 3571 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_getv_hall | ( | double precision, dimension(ixi^s,nw), intent(in) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:3), intent(inout) | vHall | ||
) |
subroutine mod_twofl_phys::twofl_handle_small_ei_c | ( | double precision, dimension(ixi^s,1:nw), intent(inout) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | ie, | ||
character(len=*), intent(in) | subname | ||
) |
handle small or negative internal energy
Definition at line 3740 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_handle_small_ei_n | ( | double precision, dimension(ixi^s,1:nw), intent(inout) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | ie, | ||
character(len=*), intent(in) | subname | ||
) |
handle small or negative internal energy
Definition at line 3790 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_handle_small_values | ( | logical, intent(in) | primitive, |
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
character(len=*), intent(in) | subname | ||
) |
subroutine mod_twofl_phys::twofl_implicit_coll_terms_update | ( | double precision, intent(in) | dtfactor, |
double precision, intent(in) | qdt, | ||
double precision, intent(in) | qtC, | ||
type(state), dimension(max_blocks), target | psb, | ||
type(state), dimension(max_blocks), target | psa | ||
) |
Implicit solve of psb=psa+dtfactor*dt*F_im(psb)
Definition at line 6823 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_init_hyper | ( | character(len=*), dimension(:), intent(in) | files | ) |
double precision function, dimension(ixo^s) mod_twofl_phys::twofl_kin_en_c | ( | double precision, dimension(ixi^s, nw), intent(in) | w, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L | |||
) |
compute kinetic energy of charges w are conserved variables
Definition at line 4879 of file mod_twofl_phys.t.
double precision function, dimension(ixo^s) mod_twofl_phys::twofl_kin_en_n | ( | double precision, dimension(ixi^s, nw), intent(in) | w, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L | |||
) |
compute kinetic energy of neutrals
Definition at line 4839 of file mod_twofl_phys.t.
double precision function, dimension(ixo^s) mod_twofl_phys::twofl_mag_en | ( | double precision, dimension(ixi^s, nw), intent(in) | w, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L | |||
) |
Compute evolving magnetic energy.
Definition at line 4829 of file mod_twofl_phys.t.
double precision function, dimension(ixo^s) mod_twofl_phys::twofl_mag_en_all | ( | double precision, dimension(ixi^s, nw), intent(in) | w, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L | |||
) |
Compute 2 times total magnetic energy.
Definition at line 4801 of file mod_twofl_phys.t.
double precision function, dimension(ixo^s) mod_twofl_phys::twofl_mag_i_all | ( | double precision, dimension(ixi^s, nw), intent(in) | w, |
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | idir | ||
) |
Compute full magnetic field by direction.
Definition at line 4815 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_modify_wlr | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, intent(in) | qt, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | wLC, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | wRC, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | wLp, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | wRp, | ||
type(state) | s, | ||
integer, intent(in) | idir | ||
) |
Definition at line 4948 of file mod_twofl_phys.t.
subroutine, public mod_twofl_phys::twofl_phys_init |
Solve total energy equation or not
Solve internal energy instead of total energy
Definition at line 354 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_physical_units |
Definition at line 1328 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_sts_set_source_tc_c_hd | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | wres, | ||
logical, intent(in) | fix_conserve_at_step, | ||
double precision, intent(in) | my_dt, | ||
integer, intent(in) | igrid, | ||
integer, intent(in) | nflux | ||
) |
subroutine mod_twofl_phys::twofl_sts_set_source_tc_c_mhd | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | wres, | ||
logical, intent(in) | fix_conserve_at_step, | ||
double precision, intent(in) | my_dt, | ||
integer, intent(in) | igrid, | ||
integer, intent(in) | nflux | ||
) |
subroutine mod_twofl_phys::twofl_sts_set_source_tc_n_hd | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s,1:nw), intent(inout) | w, | ||
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
double precision, dimension(ixi^s,1:nw), intent(inout) | wres, | ||
logical, intent(in) | fix_conserve_at_step, | ||
double precision, intent(in) | my_dt, | ||
integer, intent(in) | igrid, | ||
integer, intent(in) | nflux | ||
) |
subroutine mod_twofl_phys::twofl_tc_handle_small_e_c | ( | double precision, dimension(ixi^s,1:nw), intent(inout) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | step | ||
) |
subroutine mod_twofl_phys::twofl_tc_handle_small_e_n | ( | double precision, dimension(ixi^s,1:nw), intent(inout) | w, |
double precision, dimension(ixi^s,1:ndim), intent(in) | x, | ||
integer, intent(in) | ixI, | ||
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
integer, intent(in) | step | ||
) |
subroutine mod_twofl_phys::twofl_te_images |
subroutine, public mod_twofl_phys::twofl_to_conserved | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s, nw), intent(inout) | w, | ||
double precision, dimension(ixi^s, 1:ndim), intent(in) | x | ||
) |
Transform primitive variables into conservative ones.
Definition at line 1464 of file mod_twofl_phys.t.
subroutine, public mod_twofl_phys::twofl_to_primitive | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, dimension(ixi^s, nw), intent(inout) | w, | ||
double precision, dimension(ixi^s, 1:ndim), intent(in) | x | ||
) |
Transform conservative variables into primitive ones.
Definition at line 1508 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::twofl_update_faces | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, intent(in) | qt, | ||
double precision, intent(in) | qdt, | ||
double precision, dimension(ixi^s,1:nw), intent(in) | wprim, | ||
double precision, dimension(ixi^s,1:nwflux,1:ndim), intent(in) | fC, | ||
double precision, dimension(ixi^s,sdim:3), intent(inout) | fE, | ||
type(state) | sCT, | ||
type(state) | s, | ||
type(ct_velocity) | vcts | ||
) |
subroutine mod_twofl_phys::twofl_write_info | ( | integer, intent(in) | fh | ) |
Write this module's parameters to a snapsoht.
Definition at line 337 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::update_faces_average | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, intent(in) | qt, | ||
double precision, intent(in) | qdt, | ||
double precision, dimension(ixi^s,1:nwflux,1:ndim), intent(in) | fC, | ||
double precision, dimension(ixi^s,sdim:3), intent(inout) | fE, | ||
type(state) | sCT, | ||
type(state) | s | ||
) |
get electric field though averaging neighors to update faces in CT
Definition at line 5584 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::update_faces_contact | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, intent(in) | qt, | ||
double precision, intent(in) | qdt, | ||
double precision, dimension(ixi^s,1:nw), intent(in) | wp, | ||
double precision, dimension(ixi^s,1:nwflux,1:ndim), intent(in) | fC, | ||
double precision, dimension(ixi^s,sdim:3), intent(inout) | fE, | ||
type(state) | sCT, | ||
type(state) | s, | ||
type(ct_velocity) | vcts | ||
) |
update faces using UCT contact mode by Gardiner and Stone 2005 JCP 205, 509
Definition at line 5681 of file mod_twofl_phys.t.
subroutine mod_twofl_phys::update_faces_hll | ( | integer, intent(in) | ixI, |
integer, intent(in) | L, | ||
integer, intent(in) | ixO, | ||
L, | |||
double precision, intent(in) | qt, | ||
double precision, intent(in) | qdt, | ||
double precision, dimension(ixi^s,sdim:3), intent(inout) | fE, | ||
type(state) | sCT, | ||
type(state) | s, | ||
type(ct_velocity) | vcts | ||
) |
update faces
Definition at line 5848 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::b0field_forcefree =.true. |
B0 field is force-free.
Definition at line 197 of file mod_twofl_phys.t.
logical, dimension(2*^nd), public, protected mod_twofl_phys::boundary_divbfix =.true. |
To control divB=0 fix for boundary.
Definition at line 191 of file mod_twofl_phys.t.
integer, dimension(2*^nd), public, protected mod_twofl_phys::boundary_divbfix_skip =0 |
To skip * layer of ghost cells during divB=0 fix for boundary.
Definition at line 194 of file mod_twofl_phys.t.
double precision, dimension(:), allocatable, public, protected mod_twofl_phys::c_hyp |
Definition at line 35 of file mod_twofl_phys.t.
double precision, dimension(:), allocatable, public, protected mod_twofl_phys::c_shk |
Definition at line 34 of file mod_twofl_phys.t.
procedure (implicit_mult_factor_subroutine), pointer mod_twofl_phys::calc_mult_factor => null() |
Definition at line 274 of file mod_twofl_phys.t.
logical, public mod_twofl_phys::clean_initial_divb = .false. |
clean initial divB
Definition at line 185 of file mod_twofl_phys.t.
logical, public mod_twofl_phys::divbwave = .true. |
Add divB wave in Roe solver.
Definition at line 188 of file mod_twofl_phys.t.
double precision, public mod_twofl_phys::dtcollpar = -1d0 |
Definition at line 137 of file mod_twofl_phys.t.
integer, public mod_twofl_phys::e_c_ =-1 |
Index of the energy density (-1 if not present)
Definition at line 97 of file mod_twofl_phys.t.
integer, public mod_twofl_phys::e_n_ |
Definition at line 120 of file mod_twofl_phys.t.
integer, parameter, public mod_twofl_phys::eq_energy_int =1 |
Definition at line 21 of file mod_twofl_phys.t.
integer, parameter, public mod_twofl_phys::eq_energy_ki =3 |
Definition at line 27 of file mod_twofl_phys.t.
integer, parameter, public mod_twofl_phys::eq_energy_none =0 |
Definition at line 24 of file mod_twofl_phys.t.
integer, parameter, public mod_twofl_phys::eq_energy_tot =2 |
Definition at line 18 of file mod_twofl_phys.t.
integer, public mod_twofl_phys::equi_pe_c0_ = -1 |
Definition at line 112 of file mod_twofl_phys.t.
integer, public mod_twofl_phys::equi_pe_n0_ = -1 |
Definition at line 126 of file mod_twofl_phys.t.
integer, public mod_twofl_phys::equi_rho_c0_ = -1 |
equi vars indices in the stateequi_vars array
Definition at line 111 of file mod_twofl_phys.t.
integer, public mod_twofl_phys::equi_rho_n0_ = -1 |
Definition at line 125 of file mod_twofl_phys.t.
logical, public mod_twofl_phys::has_equi_pe_c0 = .false. |
Definition at line 108 of file mod_twofl_phys.t.
logical, public mod_twofl_phys::has_equi_pe_n0 = .false. |
Definition at line 124 of file mod_twofl_phys.t.
logical, public mod_twofl_phys::has_equi_rho_c0 = .false. |
equi vars flags
Definition at line 107 of file mod_twofl_phys.t.
logical, public mod_twofl_phys::has_equi_rho_n0 = .false. |
Definition at line 123 of file mod_twofl_phys.t.
double precision, public, protected mod_twofl_phys::he_abundance = 0d0 |
Definition at line 143 of file mod_twofl_phys.t.
integer, dimension(:), allocatable, public mod_twofl_phys::mom_c |
Indices of the momentum density.
Definition at line 94 of file mod_twofl_phys.t.
integer, dimension(:), allocatable, public mod_twofl_phys::mom_n |
Definition at line 119 of file mod_twofl_phys.t.
integer, public, protected mod_twofl_phys::psi_ |
Indices of the GLM psi.
Definition at line 104 of file mod_twofl_phys.t.
double precision, public, protected mod_twofl_phys::rc = 2d0 |
Definition at line 145 of file mod_twofl_phys.t.
type(rc_fluid), allocatable, public mod_twofl_phys::rc_fl_c |
Definition at line 46 of file mod_twofl_phys.t.
integer, public mod_twofl_phys::rho_c_ |
Index of the density (in the w array)
Definition at line 91 of file mod_twofl_phys.t.
integer, public mod_twofl_phys::rho_n_ |
Definition at line 118 of file mod_twofl_phys.t.
double precision, public, protected mod_twofl_phys::rn = 1d0 |
Definition at line 146 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::source_split_divb = .false. |
Whether divB cleaning sources are added splitting from fluid solver.
Definition at line 81 of file mod_twofl_phys.t.
type(tc_fluid), allocatable, public mod_twofl_phys::tc_fl_c |
Definition at line 60 of file mod_twofl_phys.t.
integer, public mod_twofl_phys::tcoff_c_ |
Index of the cutoff temperature for the TRAC method.
Definition at line 100 of file mod_twofl_phys.t.
integer, public mod_twofl_phys::tcoff_n_ |
Definition at line 121 of file mod_twofl_phys.t.
type(te_fluid), allocatable, public mod_twofl_phys::te_fl_c |
Definition at line 61 of file mod_twofl_phys.t.
integer, public mod_twofl_phys::tweight_c_ |
Definition at line 101 of file mod_twofl_phys.t.
integer, public mod_twofl_phys::tweight_n_ |
Definition at line 122 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_4th_order = .false. |
MHD fourth order.
Definition at line 88 of file mod_twofl_phys.t.
double precision, public mod_twofl_phys::twofl_adiab = 1.0d0 |
The adiabatic constant.
Definition at line 152 of file mod_twofl_phys.t.
double precision, public mod_twofl_phys::twofl_alpha_coll = 0d0 |
collisional alpha
Definition at line 130 of file mod_twofl_phys.t.
logical, public mod_twofl_phys::twofl_alpha_coll_constant = .true. |
Definition at line 131 of file mod_twofl_phys.t.
logical, public mod_twofl_phys::twofl_coll_inc_ionrec = .false. |
whether include ionization/recombination inelastic collisional terms
Definition at line 135 of file mod_twofl_phys.t.
logical, public mod_twofl_phys::twofl_coll_inc_te = .true. |
whether include thermal exchange collisional terms
Definition at line 133 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_divb_4thorder = .false. |
Whether divB is computed with a fourth order approximation.
Definition at line 173 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_dump_coll_terms = .false. |
whether dump collisional terms in a separte dat file
Definition at line 139 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_dump_full_vars = .false. |
whether dump full variables (when splitting is used) in a separate dat file
Definition at line 55 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_dump_hyperdiffusivity_coef = .false. |
Definition at line 33 of file mod_twofl_phys.t.
integer, public, protected mod_twofl_phys::twofl_eq_energy = EQ_ENERGY_TOT |
Definition at line 29 of file mod_twofl_phys.t.
logical, public mod_twofl_phys::twofl_equi_thermal = .false. |
Definition at line 115 of file mod_twofl_phys.t.
logical, public mod_twofl_phys::twofl_equi_thermal_c = .false. |
Definition at line 113 of file mod_twofl_phys.t.
logical, public mod_twofl_phys::twofl_equi_thermal_n = .false. |
Definition at line 136 of file mod_twofl_phys.t.
double precision, public mod_twofl_phys::twofl_eta = 0.0d0 |
The MHD resistivity.
Definition at line 155 of file mod_twofl_phys.t.
double precision, public mod_twofl_phys::twofl_eta_hyper = 0.0d0 |
The MHD hyper-resistivity.
Definition at line 158 of file mod_twofl_phys.t.
double precision, public mod_twofl_phys::twofl_etah = 0.0d0 |
The MHD Hall coefficient.
Definition at line 161 of file mod_twofl_phys.t.
double precision, public mod_twofl_phys::twofl_gamma = 5.d0/3.0d0 |
The adiabatic index.
Definition at line 149 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_glm = .false. |
Whether GLM-MHD is used.
Definition at line 72 of file mod_twofl_phys.t.
double precision, public mod_twofl_phys::twofl_glm_alpha = 0.5d0 |
GLM-MHD parameter: ratio of the diffusive and advective time scales for div b taking values within [0, 1].
Definition at line 85 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_gravity = .false. |
Whether gravity is added: common flag for charges and neutrals.
Definition at line 52 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_hall = .false. |
Whether Hall-MHD is used.
Definition at line 58 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_hyperdiffusivity = .false. |
Whether hyperdiffusivity is used.
Definition at line 32 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_radiative_cooling_c = .false. |
Whether radiative cooling is added.
Definition at line 45 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_radiative_cooling_n = .false. |
Definition at line 65 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_thermal_conduction_c = .false. |
Whether thermal conduction is used.
Definition at line 38 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_thermal_conduction_n = .false. |
Definition at line 64 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_trac = .false. |
Whether TRAC method is used.
Definition at line 69 of file mod_twofl_phys.t.
double precision, public, protected mod_twofl_phys::twofl_trac_mask = 0.d0 |
Height of the mask used in the TRAC method.
Definition at line 78 of file mod_twofl_phys.t.
integer, public, protected mod_twofl_phys::twofl_trac_type =1 |
Which TRAC method is used
Definition at line 75 of file mod_twofl_phys.t.
logical, public, protected mod_twofl_phys::twofl_viscosity = .false. |
Whether viscosity is added.
Definition at line 49 of file mod_twofl_phys.t.
character(len=std_len), public, protected mod_twofl_phys::type_ct = 'uct_contact' |
Method type of constrained transport.
Definition at line 170 of file mod_twofl_phys.t.
character(len=std_len), public, protected mod_twofl_phys::typedivbfix = 'linde' |
Method type to clean divergence of B.
Definition at line 167 of file mod_twofl_phys.t.
procedure(mask_subroutine), pointer, public mod_twofl_phys::usr_mask_alpha => null() |
Definition at line 276 of file mod_twofl_phys.t.
procedure(mask_subroutine2), pointer, public mod_twofl_phys::usr_mask_gamma_ion_rec => null() |
Definition at line 277 of file mod_twofl_phys.t.