MFC: Pre-Process
High-fidelity multiphase flow simulation
Loading...
Searching...
No Matches
m_variables_conversion Module Reference

This module consists of subroutines used in the conversion of the conservative variables into the primitive ones and vice versa. In addition, the module also contains the subroutines used to obtain the mixture variables and the subroutines used to compute pressure. More...

Functions/Subroutines

subroutine, public s_convert_to_mixture_variables (q_vf, i, j, k, rho, gamma, pi_inf, qv, re_k, g_k, g)
 Dispatch to the s_convert_mixture_to_mixture_variables and s_convert_species_to_mixture_variables subroutines. Replaces a procedure pointer.
 
subroutine, public s_compute_pressure (energy, alf, dyn_p, pi_inf, gamma, rho, qv, rhoyks, pres, t, stress, mom, g, pres_mag)
 This procedure conditionally calculates the appropriate pressure.
 
subroutine, public s_convert_mixture_to_mixture_variables (q_vf, i, j, k, rho, gamma, pi_inf, qv)
 This subroutine is designed for the gamma/pi_inf model and provided a set of either conservative or primitive variables, transfers the density, specific heat ratio function and the liquid stiffness function from q_vf to rho, gamma and pi_inf.
 
subroutine, public s_convert_species_to_mixture_variables (q_vf, k, l, r, rho, gamma, pi_inf, qv, re_k, g_k, g)
 This subroutine is designed for the volume fraction model and provided a set of either conservative or primitive variables, computes the density, the specific heat ratio function and the liquid stiffness function from q_vf and stores the results into rho, gamma and pi_inf.
 
subroutine, public s_convert_species_to_mixture_variables_acc (rho_k, gamma_k, pi_inf_k, qv_k, alpha_k, alpha_rho_k, re_k, g_k, g)
 
impure subroutine, public s_initialize_variables_conversion_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.
 
subroutine, public s_initialize_mv (qk_cons_vf, mv)
 
subroutine, public s_initialize_pb (qk_cons_vf, mv, pb)
 
subroutine, public s_convert_conservative_to_primitive_variables (qk_cons_vf, q_t_sf, qk_prim_vf, ibounds)
 The following procedure handles the conversion between the conservative variables and the primitive variables.
 
impure subroutine, public s_convert_primitive_to_conservative_variables (q_prim_vf, q_cons_vf)
 The following procedure handles the conversion between the primitive variables and the conservative variables.
 
subroutine, public s_convert_primitive_to_flux_variables (qk_prim_vf, fk_vf, fk_src_vf, is1, is2, is3, s2b, s3b)
 The following subroutine handles the conversion between the primitive variables and the Eulerian flux variables.
 
subroutine, public s_compute_species_fraction (q_vf, k, l, r, alpha_rho_k, alpha_k)
 This subroutine computes partial densities and volume fractions.
 
impure subroutine s_finalize_variables_conversion_module ()
 
subroutine s_compute_speed_of_sound (pres, rho, gamma, pi_inf, h, adv, vel_sum, c_c, c, qv)
 
subroutine s_compute_fast_magnetosonic_speed (rho, c, b, norm, c_fast, h)
 

Variables

real(wp), dimension(:), allocatable, public gammas
 
real(wp), dimension(:), allocatable, public gs_min
 
real(wp), dimension(:), allocatable, public pi_infs
 
real(wp), dimension(:), allocatable, public ps_inf
 
real(wp), dimension(:), allocatable, public cvs
 
real(wp), dimension(:), allocatable, public qvs
 
real(wp), dimension(:), allocatable, public qvps
 
real(wp), dimension(:), allocatable gs_vc
 
integer, dimension(:), allocatable bubrs_vc
 
real(wp), dimension(:, :), allocatable res_vc
 
integer is1b
 
integer is2b
 
integer is3b
 
integer is1e
 
integer is2e
 
integer is3e
 
real(wp), dimension(:, :, :), allocatable, public rho_sf
 Scalar density function.
 
real(wp), dimension(:, :, :), allocatable, public gamma_sf
 Scalar sp. heat ratio function.
 
real(wp), dimension(:, :, :), allocatable, public pi_inf_sf
 Scalar liquid stiffness function.
 
real(wp), dimension(:, :, :), allocatable, public qv_sf
 Scalar liquid energy reference function.
 

Detailed Description

This module consists of subroutines used in the conversion of the conservative variables into the primitive ones and vice versa. In addition, the module also contains the subroutines used to obtain the mixture variables and the subroutines used to compute pressure.

Function/Subroutine Documentation

◆ s_compute_fast_magnetosonic_speed()

subroutine m_variables_conversion::s_compute_fast_magnetosonic_speed ( real(wp), intent(in) rho,
real(wp), intent(in) c,
real(wp), dimension(3), intent(in) b,
integer, intent(in) norm,
real(wp), intent(out) c_fast,
real(wp), intent(in) h )

◆ s_compute_pressure()

subroutine, public m_variables_conversion::s_compute_pressure ( real(stp), intent(in) energy,
real(stp), intent(in) alf,
real(wp), intent(in) dyn_p,
real(wp), intent(in) pi_inf,
real(wp), intent(in) gamma,
real(wp), intent(in) rho,
real(wp), intent(in) qv,
real(wp), dimension(1:num_species), intent(in) rhoyks,
real(wp), intent(out) pres,
real(wp), intent(inout) t,
real(stp), intent(in), optional stress,
real(stp), intent(in), optional mom,
real(wp), intent(in), optional g,
real(wp), intent(in), optional pres_mag )

This procedure conditionally calculates the appropriate pressure.

Parameters
energyEnergy
alfVoid Fraction
dyn_pDynamic Pressure
pi_infLiquid Stiffness
gammaSpecific Heat Ratio
rhoDensity
qvfluid reference energy
presPressure to calculate
stressShear Stress
momMomentum
Here is the caller graph for this function:

◆ s_compute_species_fraction()

subroutine, public m_variables_conversion::s_compute_species_fraction ( type(scalar_field), dimension(sys_size), intent(in) q_vf,
integer, intent(in) k,
integer, intent(in) l,
integer, intent(in) r,
real(wp), dimension(num_fluids), intent(out) alpha_rho_k,
real(wp), dimension(num_fluids), intent(out) alpha_k )

This subroutine computes partial densities and volume fractions.

Here is the caller graph for this function:

◆ s_compute_speed_of_sound()

subroutine m_variables_conversion::s_compute_speed_of_sound ( real(wp), intent(in) pres,
real(wp), intent(in) rho,
real(wp), intent(in) gamma,
real(wp), intent(in) pi_inf,
real(wp), intent(in) h,
real(wp), dimension(num_fluids), intent(in) adv,
real(wp), intent(in) vel_sum,
real(wp), intent(in) c_c,
real(wp), intent(out) c,
real(wp), intent(in) qv )

◆ s_convert_conservative_to_primitive_variables()

subroutine, public m_variables_conversion::s_convert_conservative_to_primitive_variables ( type(scalar_field), dimension(sys_size), intent(in) qk_cons_vf,
type(scalar_field), intent(inout) q_t_sf,
type(scalar_field), dimension(sys_size), intent(inout) qk_prim_vf,
type(int_bounds_info), dimension(1:3), intent(in) ibounds )

The following procedure handles the conversion between the conservative variables and the primitive variables.

Parameters
qK_cons_vfConservative variables
qK_prim_vfPrimitive variables
gm_alphaK_vfGradient magnitude of the volume fraction
ixIndex bounds in first coordinate direction
iyIndex bounds in second coordinate direction
izIndex bounds in third coordinate direction
Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_convert_mixture_to_mixture_variables()

subroutine, public m_variables_conversion::s_convert_mixture_to_mixture_variables ( type(scalar_field), dimension(sys_size), intent(in) q_vf,
integer, intent(in) i,
integer, intent(in) j,
integer, intent(in) k,
real(wp), intent(out), target rho,
real(wp), intent(out), target gamma,
real(wp), intent(out), target pi_inf,
real(wp), intent(out), target qv )

This subroutine is designed for the gamma/pi_inf model and provided a set of either conservative or primitive variables, transfers the density, specific heat ratio function and the liquid stiffness function from q_vf to rho, gamma and pi_inf.

Parameters
q_vfconservative or primitive variables
icell index to transfer mixture variables
jcell index to transfer mixture variables
kcell index to transfer mixture variables
rhodensity
gammaspecific heat ratio function
pi_infliquid stiffness
qvfluid reference energy
Here is the caller graph for this function:

◆ s_convert_primitive_to_conservative_variables()

impure subroutine, public m_variables_conversion::s_convert_primitive_to_conservative_variables ( type(scalar_field), dimension(sys_size), intent(in) q_prim_vf,
type(scalar_field), dimension(sys_size), intent(inout) q_cons_vf )

The following procedure handles the conversion between the primitive variables and the conservative variables.

Parameters
qK_prim_vfPrimitive variables
qK_cons_vfConservative variables
gm_alphaK_vfGradient magnitude of the volume fractions
ixIndex bounds in the first coordinate direction
iyIndex bounds in the second coordinate direction
izIndex bounds in the third coordinate direction
Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_convert_primitive_to_flux_variables()

subroutine, public m_variables_conversion::s_convert_primitive_to_flux_variables ( real(wp), dimension(0:, s2b:, s3b:, 1:), intent(in) qk_prim_vf,
real(wp), dimension(0:, s2b:, s3b:, 1:), intent(inout) fk_vf,
real(wp), dimension(0:, s2b:, s3b:, advxb:), intent(inout) fk_src_vf,
type(int_bounds_info), intent(in) is1,
type(int_bounds_info), intent(in) is2,
type(int_bounds_info), intent(in) is3,
integer, intent(in) s2b,
integer, intent(in) s3b )

The following subroutine handles the conversion between the primitive variables and the Eulerian flux variables.

Parameters
qK_prim_vfPrimitive variables
FK_vfFlux variables
FK_src_vfFlux source variables
ixIndex bounds in the first coordinate direction
iyIndex bounds in the second coordinate direction
izIndex bounds in the third coordinate direction
Here is the call graph for this function:

◆ s_convert_species_to_mixture_variables()

subroutine, public m_variables_conversion::s_convert_species_to_mixture_variables ( type(scalar_field), dimension(sys_size), intent(in) q_vf,
integer, intent(in) k,
integer, intent(in) l,
integer, intent(in) r,
real(wp), intent(out), target rho,
real(wp), intent(out), target gamma,
real(wp), intent(out), target pi_inf,
real(wp), intent(out), target qv,
real(wp), dimension(2), intent(out), optional re_k,
real(wp), intent(out), optional g_k,
real(wp), dimension(num_fluids), intent(in), optional g )

This subroutine is designed for the volume fraction model and provided a set of either conservative or primitive variables, computes the density, the specific heat ratio function and the liquid stiffness function from q_vf and stores the results into rho, gamma and pi_inf.

Parameters
q_vfprimitive variables
kCell index
lCell index
rCell index
rhodensity
gammaspecific heat ratio
pi_infliquid stiffness
qvfluid reference energy
Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_convert_species_to_mixture_variables_acc()

subroutine, public m_variables_conversion::s_convert_species_to_mixture_variables_acc ( real(wp), intent(out) rho_k,
real(wp), intent(out) gamma_k,
real(wp), intent(out) pi_inf_k,
real(wp), intent(out) qv_k,
real(wp), dimension(num_fluids), intent(inout) alpha_k,
real(wp), dimension(num_fluids), intent(inout) alpha_rho_k,
real(wp), dimension(2), intent(out) re_k,
real(wp), intent(out), optional g_k,
real(wp), dimension(num_fluids), intent(in), optional g )
Here is the caller graph for this function:

◆ s_convert_to_mixture_variables()

subroutine, public m_variables_conversion::s_convert_to_mixture_variables ( type(scalar_field), dimension(sys_size), intent(in) q_vf,
integer, intent(in) i,
integer, intent(in) j,
integer, intent(in) k,
real(wp), intent(out), target rho,
real(wp), intent(out), target gamma,
real(wp), intent(out), target pi_inf,
real(wp), intent(out), target qv,
real(wp), dimension(2), intent(out), optional re_k,
real(wp), intent(out), optional g_k,
real(wp), dimension(num_fluids), intent(in), optional g )

Dispatch to the s_convert_mixture_to_mixture_variables and s_convert_species_to_mixture_variables subroutines. Replaces a procedure pointer.

Parameters
q_vfConservative or primitive variables
iFirst-coordinate cell index
jFirst-coordinate cell index
kFirst-coordinate cell index
rhoDensity
gammaSpecific heat ratio function
pi_infLiquid stiffness function
qvFluid reference energy
Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_finalize_variables_conversion_module()

impure subroutine m_variables_conversion::s_finalize_variables_conversion_module
Here is the caller graph for this function:

◆ s_initialize_mv()

subroutine, public m_variables_conversion::s_initialize_mv ( type(scalar_field), dimension(sys_size), intent(in) qk_cons_vf,
real(stp), dimension(idwint(1)%beg:, idwint(2)%beg:, idwint(3)%beg:, 1:, 1:), intent(inout) mv )
Here is the caller graph for this function:

◆ s_initialize_pb()

subroutine, public m_variables_conversion::s_initialize_pb ( type(scalar_field), dimension(sys_size), intent(in) qk_cons_vf,
real(stp), dimension(idwint(1)%beg:, idwint(2)%beg:, idwint(3)%beg:, 1:, 1:), intent(in) mv,
real(stp), dimension(idwint(1)%beg:, idwint(2)%beg:, idwint(3)%beg:, 1:, 1:), intent(inout) pb )
Here is the caller graph for this function:

◆ s_initialize_variables_conversion_module()

impure subroutine, public m_variables_conversion::s_initialize_variables_conversion_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.

Here is the caller graph for this function:

Variable Documentation

◆ bubrs_vc

integer, dimension(:), allocatable m_variables_conversion::bubrs_vc

◆ cvs

real(wp), dimension(:), allocatable, public m_variables_conversion::cvs

◆ gamma_sf

real(wp), dimension(:, :, :), allocatable, public m_variables_conversion::gamma_sf

Scalar sp. heat ratio function.

◆ gammas

real(wp), dimension(:), allocatable, public m_variables_conversion::gammas

◆ gs_min

real(wp), dimension(:), allocatable, public m_variables_conversion::gs_min

◆ gs_vc

real(wp), dimension(:), allocatable m_variables_conversion::gs_vc

◆ is1b

integer m_variables_conversion::is1b

◆ is1e

integer m_variables_conversion::is1e

◆ is2b

integer m_variables_conversion::is2b

◆ is2e

integer m_variables_conversion::is2e

◆ is3b

integer m_variables_conversion::is3b

◆ is3e

integer m_variables_conversion::is3e

◆ pi_inf_sf

real(wp), dimension(:, :, :), allocatable, public m_variables_conversion::pi_inf_sf

Scalar liquid stiffness function.

◆ pi_infs

real(wp), dimension(:), allocatable, public m_variables_conversion::pi_infs

◆ ps_inf

real(wp), dimension(:), allocatable, public m_variables_conversion::ps_inf

◆ qv_sf

real(wp), dimension(:, :, :), allocatable, public m_variables_conversion::qv_sf

Scalar liquid energy reference function.

◆ qvps

real(wp), dimension(:), allocatable, public m_variables_conversion::qvps

◆ qvs

real(wp), dimension(:), allocatable, public m_variables_conversion::qvs

◆ res_vc

real(wp), dimension(:, :), allocatable m_variables_conversion::res_vc

◆ rho_sf

real(wp), dimension(:, :, :), allocatable, public m_variables_conversion::rho_sf

Scalar density function.