MFC: Simulation
High-fidelity multiphase flow simulation
Loading...
Searching...
No Matches
m_global_parameters.fpp.f90 File Reference

Modules

module  m_global_parameters
 The module contains all of the parameters describing the program logistics, the computational domain and the simulation algorithm. Additionally, for the volume fraction model, physical parameters of each of the fluids present in the flow are located here. They include stiffened gas equation of state parameters, the Reynolds numbers and the Weber numbers.
 

Functions/Subroutines

impure subroutine m_global_parameters::s_assign_default_values_to_user_inputs
 Assigns default values to the user inputs before reading them in. This enables for an easier consistency check of these parameters once they are read from the input file.
 
impure subroutine m_global_parameters::s_initialize_global_parameters_module
 The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other procedures that are necessary to setup the module.
 
impure subroutine m_global_parameters::s_initialize_parallel_io
 Initializes parallel infrastructure.
 
impure subroutine m_global_parameters::s_finalize_global_parameters_module
 Module deallocation and/or disassociation procedures.
 

Variables

real(wpm_global_parameters::wall_time = 0
 
real(wpm_global_parameters::wall_time_avg = 0
 
integer m_global_parameters::num_procs
 Number of processors.
 
character(len=path_lenm_global_parameters::case_dir
 Case folder location.
 
logical m_global_parameters::run_time_info
 Run-time output flag.
 
integer m_global_parameters::t_step_old
 Existing IC/grid folder.
 
integer m_global_parameters::proc_rank
 Rank of the local processor.
 
real(wpm_global_parameters::dt
 Size of the time-step.
 
logical m_global_parameters::cfl_adap_dt
 
logical m_global_parameters::cfl_const_dt
 
logical m_global_parameters::cfl_dt
 
integer m_global_parameters::t_step_print
 Number of time-steps between printouts.
 
integer m_global_parameters::model_eqns
 Multicomponent flow model.
 
integer m_global_parameters::num_dims
 Number of spatial dimensions.
 
integer m_global_parameters::num_vels
 Number of velocity components (different from num_dims for mhd)
 
logical m_global_parameters::mpp_lim
 Mixture physical parameters (MPP) limits.
 
integer m_global_parameters::time_stepper
 Time-stepper algorithm.
 
logical m_global_parameters::prim_vars_wrt
 
integer m_global_parameters::recon_type
 Reconstruction Type.
 
integer m_global_parameters::weno_polyn
 Degree of the WENO polynomials (polyn)
 
integer m_global_parameters::muscl_polyn
 Degree of the MUSCL polynomials (polyn)i.
 
integer m_global_parameters::weno_order
 Order of the WENO reconstruction.
 
integer m_global_parameters::muscl_order
 Order of the MUSCL reconstruction.
 
integer m_global_parameters::weno_num_stencils
 Number of stencils for WENO reconstruction (only different from weno_polyn for TENO(>5))
 
integer m_global_parameters::muscl_lim
 MUSCL Limiter.
 
integer m_global_parameters::num_fluids
 number of fluids in the simulation
 
logical m_global_parameters::wenojs
 WENO-JS (default)
 
logical m_global_parameters::mapped_weno
 WENO-M (WENO with mapping of nonlinear weights)
 
logical m_global_parameters::wenoz
 WENO-Z.
 
logical m_global_parameters::teno
 TENO (Targeted ENO)
 
real(wpm_global_parameters::wenoz_q
 Power constant for WENO-Z.
 
logical m_global_parameters::mhd
 Magnetohydrodynamics.
 
logical m_global_parameters::relativity
 Relativity (only for MHD)
 
integer m_global_parameters::igr_iter_solver
 IGR elliptic solver.
 
integer m_global_parameters::igr_order
 Reconstruction order for IGR.
 
logical m_global_parameters::igr
 Use information geometric regularization.
 
logical m_global_parameters::igr_pres_lim
 Limit to positive pressures for IGR.
 
logical m_global_parameters::viscous
 Viscous effects.
 
real(wpm_global_parameters::weno_eps
 Binding for the WENO nonlinear weights.
 
real(wpm_global_parameters::teno_ct
 Smoothness threshold for TENO.
 
logical m_global_parameters::mp_weno
 Monotonicity preserving (MP) WENO.
 
logical m_global_parameters::weno_avg
 
logical m_global_parameters::weno_re_flux
 WENO reconstruct velocity gradients for viscous stress tensor.
 
integer m_global_parameters::riemann_solver
 Riemann solver algorithm.
 
integer m_global_parameters::low_mach
 Low Mach number fix to HLLC Riemann solver.
 
integer m_global_parameters::wave_speeds
 Wave speeds estimation method.
 
integer m_global_parameters::avg_state
 Average state evaluation method.
 
logical m_global_parameters::alt_soundspeed
 Alternate mixture sound speed.
 
logical m_global_parameters::null_weights
 Null undesired WENO weights.
 
logical m_global_parameters::mixture_err
 Mixture properties correction.
 
logical m_global_parameters::hypoelasticity
 hypoelasticity modeling
 
logical m_global_parameters::hyperelasticity
 hyperelasticity modeling
 
logical m_global_parameters::int_comp
 THINC interface compression.
 
real(wpm_global_parameters::ic_eps
 THINC Epsilon to compress on surface cells.
 
real(wpm_global_parameters::ic_beta
 THINC Sharpness Parameter.
 
integer m_global_parameters::hyper_model
 hyperelasticity solver algorithm
 
logical m_global_parameters::elasticity
 elasticity modeling, true for hyper or hypo
 
logical, parameter m_global_parameters::chemistry = .False.
 Chemistry modeling.
 
logical m_global_parameters::shear_stress
 Shear stresses.
 
logical m_global_parameters::bulk_stress
 Bulk stresses.
 
logical m_global_parameters::cont_damage
 Continuum damage modeling.
 
integer m_global_parameters::num_igr_iters
 number of iterations for elliptic solve
 
integer m_global_parameters::num_igr_warm_start_iters
 number of warm start iterations for elliptic solve
 
real(wpm_global_parameters::alf_factor
 alpha factor for IGR
 
logical m_global_parameters::bodyforces
 
logical m_global_parameters::bf_x
 
logical m_global_parameters::bf_y
 
logical m_global_parameters::bf_z
 body force toggle in three directions amplitude, frequency, and phase shift sinusoid in each direction
 
real(wpm_global_parameters::k_x
 
real(wpm_global_parameters::w_x
 
real(wpm_global_parameters::p_x
 
real(wpm_global_parameters::g_x
 
real(wpm_global_parameters::k_y
 
real(wpm_global_parameters::w_y
 
real(wpm_global_parameters::p_y
 
real(wpm_global_parameters::g_y
 
real(wpm_global_parameters::k_z
 
real(wpm_global_parameters::w_z
 
real(wpm_global_parameters::p_z
 
real(wpm_global_parameters::g_z
 
real(wp), dimension(3) m_global_parameters::accel_bf
 
integer m_global_parameters::cpu_start
 
integer m_global_parameters::cpu_end
 
integer m_global_parameters::cpu_rate
 
logical m_global_parameters::relax
 activate phase change
 
integer m_global_parameters::relax_model
 Relaxation model.
 
real(wpm_global_parameters::palpha_eps
 trigger parameter for the p relaxation procedure, phase change model
 
real(wpm_global_parameters::ptgalpha_eps
 trigger parameter for the pTg relaxation procedure, phase change model
 
integer m_global_parameters::num_bc_patches
 
logical m_global_parameters::bc_io
 
type(bounds_infom_global_parameters::x_domain
 
type(bounds_infom_global_parameters::y_domain
 
type(bounds_infom_global_parameters::z_domain
 
real(wpm_global_parameters::x_a
 
real(wpm_global_parameters::y_a
 
real(wpm_global_parameters::z_a
 
real(wpm_global_parameters::x_b
 
real(wpm_global_parameters::y_b
 
real(wpm_global_parameters::z_b
 
logical m_global_parameters::parallel_io
 Format of the data files.
 
logical m_global_parameters::file_per_process
 shared file or not when using parallel io
 
integer m_global_parameters::precision
 Precision of output files.
 
logical m_global_parameters::down_sample
 down sample the output files
 
integer, dimension(:), allocatable m_global_parameters::proc_coords
 Processor coordinates in MPI_CART_COMM.
 
integer, dimension(:), allocatable m_global_parameters::start_idx
 Starting cell-center index of local processor in global grid.
 
type(mpi_io_var), public m_global_parameters::mpi_io_data
 
type(mpi_io_ib_var), public m_global_parameters::mpi_io_ib_data
 
type(mpi_io_airfoil_ib_var), public m_global_parameters::mpi_io_airfoil_ib_data
 
type(mpi_io_levelset_var), public m_global_parameters::mpi_io_levelset_data
 
type(mpi_io_levelset_norm_var), public m_global_parameters::mpi_io_levelsetnorm_data
 
real(wp), dimension(:, :), allocatable, public m_global_parameters::mpi_io_data_lag_bubbles
 
type(int_bounds_info), dimension(1:3) m_global_parameters::idwint
 
type(int_bounds_info), dimension(1:3) m_global_parameters::idwbuff
 
integer m_global_parameters::buff_size
 The number of cells that are necessary to be able to store enough boundary conditions data to march the solution in the physical computational domain to the next time-step.
 
integer m_global_parameters::shear_num
 
integer, dimension(3) m_global_parameters::shear_indices
 Indices of the stress components that represent shear stress.
 
integer m_global_parameters::shear_bc_flip_num
 Number of shear stress components to reflect for boundary conditions.
 
integer, dimension(3, 2) m_global_parameters::shear_bc_flip_indices
 Indices of shear stress components to reflect for boundary conditions. Size: (1:3, 1:shear_BC_flip_num) for (x/y/z, [indices])
 
type(physical_parameters), dimension(num_fluids_maxm_global_parameters::fluid_pp
 Database of the physical parameters of each of the fluids that is present in the flow. These include the stiffened gas equation of state parameters, the Reynolds numbers and the Weber numbers.
 
integer m_global_parameters::fd_order
 The order of the finite-difference (fd) approximations of the first-order derivatives that need to be evaluated when the CoM or flow probe data files are to be written at each time step.
 
integer m_global_parameters::fd_number
 The finite-difference number is given by MAX(1, fd_order/2). Essentially, it is a measure of the half-size of the finite-difference stencil for the selected order of accuracy.
 
logical m_global_parameters::probe_wrt
 
logical m_global_parameters::integral_wrt
 
integer m_global_parameters::num_probes
 
integer m_global_parameters::num_integrals
 
type(vec3_dt), dimension(num_probes_maxm_global_parameters::probe
 
type(integral_parameters), dimension(num_probes_maxm_global_parameters::integral
 
type(chemistry_parametersm_global_parameters::chem_params
 
integer m_global_parameters::momxb
 
integer m_global_parameters::momxe
 
integer m_global_parameters::advxb
 
integer m_global_parameters::advxe
 
integer m_global_parameters::contxb
 
integer m_global_parameters::contxe
 
integer m_global_parameters::intxb
 
integer m_global_parameters::intxe
 
integer m_global_parameters::bubxb
 
integer m_global_parameters::bubxe
 
integer m_global_parameters::strxb
 
integer m_global_parameters::strxe
 
integer m_global_parameters::chemxb
 
integer m_global_parameters::chemxe
 
integer m_global_parameters::xibeg
 
integer m_global_parameters::xiend
 
real(wp), dimension(:), allocatable m_global_parameters::gammas
 
real(wp), dimension(:), allocatable m_global_parameters::gs_min
 
real(wp), dimension(:), allocatable m_global_parameters::pi_infs
 
real(wp), dimension(:), allocatable m_global_parameters::ps_inf
 
real(wp), dimension(:), allocatable m_global_parameters::cvs
 
real(wp), dimension(:), allocatable m_global_parameters::qvs
 
real(wp), dimension(:), allocatable m_global_parameters::qvps
 
real(wpm_global_parameters::mytime
 Current simulation time.
 
real(wpm_global_parameters::finaltime
 Final simulation time.
 
logical m_global_parameters::rdma_mpi
 
type(pres_field), dimension(:), allocatable m_global_parameters::pb_ts
 
type(pres_field), dimension(:), allocatable m_global_parameters::mv_ts
 
real(wpm_global_parameters::bx0
 Constant magnetic field in the x-direction (1D)
 
logical m_global_parameters::powell
 Powell‐correction for div B = 0.
 
logical m_global_parameters::fft_wrt
 
Number of cells in the x-, y- and z-directions, respectively
integer m_global_parameters::m
 
integer m_global_parameters::n
 
integer m_global_parameters::p
 
Max and min number of cells in a direction of each combination of x-,y-, and z-
type(cell_num_boundsm_global_parameters::cells_bounds
 
Global number of cells in each direction
integer m_global_parameters::m_glb
 
integer m_global_parameters::n_glb
 
integer m_global_parameters::p_glb
 
Cylindrical coordinates (either axisymmetric or full 3D)
logical m_global_parameters::cyl_coord
 
integer m_global_parameters::grid_geometry
 
Cell-boundary (CB) locations in the x-, y- and z-directions, respectively
real(wp), dimension(:), allocatable, target m_global_parameters::x_cb
 
real(wp), dimension(:), allocatable, target m_global_parameters::y_cb
 
real(wp), dimension(:), allocatable, target m_global_parameters::z_cb
 
Cell-center (CC) locations in the x-, y- and z-directions, respectively
real(wp), dimension(:), allocatable, target m_global_parameters::x_cc
 
real(wp), dimension(:), allocatable, target m_global_parameters::y_cc
 
real(wp), dimension(:), allocatable, target m_global_parameters::z_cc
 
Cell-width distributions in the x-, y- and z-directions, respectively
real(wp), dimension(:), allocatable, target m_global_parameters::dx
 
real(wp), dimension(:), allocatable, target m_global_parameters::dy
 
real(wp), dimension(:), allocatable, target m_global_parameters::dz
 
Starting time-step iteration, stopping time-step iteration and the number

of time-step iterations between successive solution backups, respectively

integer m_global_parameters::t_step_start
 
integer m_global_parameters::t_step_stop
 
integer m_global_parameters::t_step_save
 
Starting time, stopping time, and time between backups, simulation time,

and prescribed cfl respectively

real(wpm_global_parameters::t_stop
 
real(wpm_global_parameters::t_save
 
real(wpm_global_parameters::cfl_target
 
integer m_global_parameters::n_start
 
Variables for our of core IGR computation on NVIDIA
logical m_global_parameters::nv_uvm_out_of_core
 
integer m_global_parameters::nv_uvm_igr_temps_on_gpu
 
logical m_global_parameters::nv_uvm_pref_gpu
 
Boundary conditions (BC) in the x-, y- and z-directions, respectively
type(int_bounds_infom_global_parameters::bc_x
 
type(int_bounds_infom_global_parameters::bc_y
 
type(int_bounds_infom_global_parameters::bc_z
 
MPI info for parallel IO with Lustre file systems
character(len=name_lenm_global_parameters::mpiiofs
 
integer m_global_parameters::mpi_info_int
 
Annotations of the structure of the state and flux vectors in terms of the

size and the configuration of the system of equations to which they belong

integer m_global_parameters::sys_size
 Number of unknowns in system of eqns.
 
type(int_bounds_infom_global_parameters::cont_idx
 Indexes of first & last continuity eqns.
 
type(int_bounds_infom_global_parameters::mom_idx
 Indexes of first & last momentum eqns.
 
integer m_global_parameters::e_idx
 Index of energy equation.
 
integer m_global_parameters::n_idx
 Index of number density.
 
type(int_bounds_infom_global_parameters::adv_idx
 Indexes of first & last advection eqns.
 
type(int_bounds_infom_global_parameters::internalenergies_idx
 Indexes of first & last internal energy eqns.
 
type(bub_bounds_infom_global_parameters::bub_idx
 Indexes of first & last bubble variable eqns.
 
integer m_global_parameters::alf_idx
 Index of void fraction.
 
integer m_global_parameters::gamma_idx
 Index of specific heat ratio func. eqn.
 
integer m_global_parameters::pi_inf_idx
 Index of liquid stiffness func. eqn.
 
type(int_bounds_infom_global_parameters::b_idx
 Indexes of first and last magnetic field eqns.
 
type(int_bounds_infom_global_parameters::stress_idx
 Indexes of first and last shear stress eqns.
 
type(int_bounds_infom_global_parameters::xi_idx
 Indexes of first and last reference map eqns.
 
integer m_global_parameters::b_size
 Number of elements in the symmetric b tensor, plus one.
 
integer m_global_parameters::tensor_size
 Number of elements in the full tensor plus one.
 
type(int_bounds_infom_global_parameters::species_idx
 Indexes of first & last concentration eqns.
 
integer m_global_parameters::c_idx
 Index of color function.
 
integer m_global_parameters::damage_idx
 Index of damage state variable (D) for continuum damage model.
 
The number of fluids, along with their identifying indexes, respectively,

for which viscous effects, e.g. the shear and/or the volume Reynolds (Re) numbers, will be non-negligible.

integer, dimension(2) m_global_parameters::re_size
 
integer m_global_parameters::re_size_max
 
integer, dimension(:, :), allocatable m_global_parameters::re_idx
 
real(wpm_global_parameters::wa_flg
 
The coordinate direction indexes and flags (flg), respectively, for which

the configurations will be determined with respect to a working direction and that will be used to isolate the contributions, in that direction, in the dimensionally split system of equations.

integer, dimension(3) m_global_parameters::dir_idx
 
real(wp), dimension(3) m_global_parameters::dir_flg
 
integer, dimension(3) m_global_parameters::dir_idx_tau
 
Reference density and pressure for Tait EOS
real(wpm_global_parameters::rhoref
 
real(wpm_global_parameters::pref
 
Immersed Boundaries
logical m_global_parameters::ib
 
integer m_global_parameters::num_ibs
 
type(ib_patch_parameters), dimension(num_patches_maxm_global_parameters::patch_ib
 
type(vec3_dt), dimension(:), allocatable m_global_parameters::airfoil_grid_u
 
type(vec3_dt), dimension(:), allocatable m_global_parameters::airfoil_grid_l
 
integer m_global_parameters::np
 
Bubble modeling
integer m_global_parameters::nb
 Number of eq. bubble sizes.
 
real(wpm_global_parameters::r0ref
 Reference bubble size.
 
real(wpm_global_parameters::ca
 Cavitation number.
 
real(wpm_global_parameters::web
 Weber number.
 
real(wpm_global_parameters::re_inv
 Inverse Reynolds number.
 
real(wp), dimension(:), allocatable m_global_parameters::weight
 Simpson quadrature weights.
 
real(wp), dimension(:), allocatable m_global_parameters::r0
 Bubble sizes.
 
logical m_global_parameters::bubbles_euler
 Bubbles euler on/off.
 
logical m_global_parameters::polytropic
 Polytropic switch.
 
logical m_global_parameters::polydisperse
 Polydisperse bubbles.
 
logical m_global_parameters::adv_n
 Solve the number density equation and compute alpha from number density.
 
logical m_global_parameters::adap_dt
 Adaptive step size control.
 
real(wpm_global_parameters::adap_dt_tol
 Tolerance to control adaptive step size.
 
integer m_global_parameters::adap_dt_max_iters
 Maximum number of iterations.
 
integer m_global_parameters::bubble_model
 Gilmore or Keller–Miksis bubble model.
 
integer m_global_parameters::thermal
 Thermal behavior. 1 = adiabatic, 2 = isotherm, 3 = transfer.
 
real(wp), dimension(:, :, :), allocatable m_global_parameters::ptil
 Pressure modification.
 
real(wpm_global_parameters::poly_sigma
 log normal sigma for polydisperse PDF
 
logical m_global_parameters::qbmm
 Quadrature moment method.
 
integer, parameter m_global_parameters::nmom = 6
 Number of carried moments per R0 location.
 
integer m_global_parameters::nmomsp
 Number of moments required by ensemble-averaging.
 
integer m_global_parameters::nmomtot
 Total number of carried moments moments/transport equations.
 
real(wpm_global_parameters::pi_fac
 Factor for artificial pi_inf.
 
type(scalar_field), dimension(:), allocatable m_global_parameters::mom_sp
 
type(scalar_field), dimension(:, :, :), allocatable m_global_parameters::mom_3d
 
Physical bubble parameters (see Ando 2010, Preston 2007)
real(wpm_global_parameters::r_n
 
real(wpm_global_parameters::r_v
 
real(wpm_global_parameters::phi_vn
 
real(wpm_global_parameters::phi_nv
 
real(wpm_global_parameters::pe_c
 
real(wpm_global_parameters::tw
 
real(wpm_global_parameters::pv
 
real(wpm_global_parameters::m_n
 
real(wpm_global_parameters::m_v
 
real(wpm_global_parameters::k_vl
 
real(wpm_global_parameters::k_nl
 
real(wpm_global_parameters::cp_n
 
real(wpm_global_parameters::cp_v
 
real(wp), dimension(:), allocatable m_global_parameters::k_n
 
real(wp), dimension(:), allocatable m_global_parameters::k_v
 
real(wp), dimension(:), allocatable m_global_parameters::pb0
 
real(wp), dimension(:), allocatable m_global_parameters::mass_n0
 
real(wp), dimension(:), allocatable m_global_parameters::mass_v0
 
real(wp), dimension(:), allocatable m_global_parameters::pe_t
 
real(wp), dimension(:), allocatable m_global_parameters::re_trans_t
 
real(wp), dimension(:), allocatable m_global_parameters::re_trans_c
 
real(wp), dimension(:), allocatable m_global_parameters::im_trans_t
 
real(wp), dimension(:), allocatable m_global_parameters::im_trans_c
 
real(wp), dimension(:), allocatable m_global_parameters::omegan
 
real(wpm_global_parameters::mul0
 
real(wpm_global_parameters::ss
 
real(wpm_global_parameters::gamma_v
 
real(wpm_global_parameters::mu_v
 
real(wpm_global_parameters::gamma_m
 
real(wpm_global_parameters::gamma_n
 
real(wpm_global_parameters::mu_n
 
real(wpm_global_parameters::gam
 
Acoustic acoustic_source parameters
logical m_global_parameters::acoustic_source
 Acoustic source switch.
 
type(acoustic_parameters), dimension(num_probes_maxm_global_parameters::acoustic
 Acoustic source parameters.
 
integer m_global_parameters::num_source
 Number of acoustic sources.
 
Surface tension parameters
real(wpm_global_parameters::sigma
 
logical m_global_parameters::surface_tension
 
lagrangian subgrid bubble parameters

!

logical m_global_parameters::bubbles_lagrange
 Lagrangian subgrid bubble model switch.
 
type(bubbles_lagrange_parametersm_global_parameters::lag_params
 Lagrange bubbles' parameters.
 
Continuum damage model parameters

!

real(wpm_global_parameters::tau_star
 Stress threshold for continuum damage modeling.
 
real(wpm_global_parameters::cont_damage_s
 Exponent s for continuum damage modeling.
 
real(wpm_global_parameters::alpha_bar
 Damage rate factor for continuum damage modeling.