MFC
Exascale flow solver
Loading...
Searching...
No Matches
m_derived_variables.fpp.f90 File Reference

Contains module m_derived_variables. More...

Go to the source code of this file.

Modules

module  m_derived_variables
 Computes derived flow quantities (sound speed, vorticity, Schlieren, etc.) from conservative and primitive variables.

Functions/Subroutines

impure subroutine, public m_derived_variables::s_initialize_derived_variables_module
 Computation of parameters, allocation procedures, and/or any other tasks needed to properly setup the module.
subroutine, public m_derived_variables::s_derive_specific_heat_ratio (q_sf)
 Derive the specific heat ratio from the specific heat ratio function gamma_sf. The latter is stored in the derived flow quantity storage variable, q_sf.
subroutine, public m_derived_variables::s_derive_liquid_stiffness (q_sf)
 Compute the liquid stiffness from the specific heat ratio function gamma_sf and the liquid stiffness function pi_inf_sf, respectively. These are used to calculate the values of the liquid stiffness, which are stored in the derived flow quantity storage variable, q_sf.
subroutine, public m_derived_variables::s_derive_sound_speed (q_prim_vf, q_sf)
 Compute the speed of sound from the primitive variables, density, specific heat ratio function, and liquid stiffness function. It then computes from those variables the values of the speed of sound, which are stored in the derived flow quantity storage variable, q_sf.
subroutine, public m_derived_variables::s_derive_flux_limiter (i, q_prim_vf, q_sf)
 Derive the flux limiter at cell boundary i+1/2. This is an approximation because the velocity used to determine the upwind direction is the velocity at the cell center i instead of the contact velocity at the cell boundary from the Riemann solver.
subroutine m_derived_variables::s_solve_linear_system (a, b, sol, ndim)
 Solve Ax=b via Gaussian elimination with partial pivoting.
subroutine, public m_derived_variables::s_derive_vorticity_component (i, q_prim_vf, q_sf)
 Compute the specified component of the vorticity from the primitive variables. From those inputs, it proceeds to calculate values of the desired vorticity component, which are subsequently stored in derived flow quantity storage variable, q_sf.
subroutine, public m_derived_variables::s_derive_qm (q_prim_vf, q_sf)
 Compute the Q_M criterion from the primitive variables. The Q_M function, which are subsequently stored in the derived flow quantity storage variable, q_sf.
impure subroutine, public m_derived_variables::s_derive_liutex (q_prim_vf, liutex_mag, liutex_axis)
 Compute the Liutex vector and its magnitude based on Xu et al. (2019).
impure subroutine, public m_derived_variables::s_derive_numerical_schlieren_function (q_cons_vf, q_sf)
 Compute the values of the numerical Schlieren function, which are subsequently stored in the derived flow quantity storage variable, q_sf.
impure subroutine, public m_derived_variables::s_finalize_derived_variables_module
 Deallocation procedures for the module.

Variables

real(wp), dimension(:,:,:), allocatable m_derived_variables::gm_rho_sf
 Density gradient magnitude for numerical Schlieren.
integer, private m_derived_variables::flg
 Dimensionality flag: 1 = 3D dataset, 0 = otherwise.
Finite-difference (fd) coefficients in x-, y- and z-coordinate directions. Note that because sufficient boundary

information is available for all the active coordinate directions, the centered family of the finite-difference schemes is used.

real(wp), dimension(:,:), allocatable, public m_derived_variables::fd_coeff_x
real(wp), dimension(:,:), allocatable, public m_derived_variables::fd_coeff_y
real(wp), dimension(:,:), allocatable, public m_derived_variables::fd_coeff_z

Detailed Description

Contains module m_derived_variables.

Definition in file m_derived_variables.fpp.f90.