|
MFC: Post-Process
High-fidelity multiphase flow simulation
|
energies (6-eqn to 4-eqn) equilibrium through an infinitely fast (algebraic) procedure. More...
Functions/Subroutines | |
| impure subroutine, public | s_relaxation_solver (q_cons_vf) |
| This subroutine should dispatch to the correct relaxation solver based some parameter. It replaces the procedure pointer, which CCE is breaking on. | |
| impure subroutine, public | s_initialize_phasechange_module |
| The purpose of this subroutine is to initialize the phase change module by setting the parameters needed for phase change and selecting the phase change module that will be used (pT- or pTg-equilibrium). | |
| subroutine, public | s_infinite_relaxation_k (q_cons_vf) |
| This subroutine is created to activate either the pT- (N fluids) or the pTg-equilibrium (2 fluids for g-equilibrium) model, also considering mass depletion, depending on the incoming state conditions. | |
| subroutine | s_infinite_pt_relaxation_k (j, k, l, mfl, ps, p_infpt, q_cons_vf, rhoe, ts) |
| This auxiliary subroutine is created to activate the pT-equilibrium for N fluids. | |
| subroutine | s_infinite_ptg_relaxation_k (j, k, l, ps, p_infpt, rhoe, q_cons_vf, ts) |
| This auxiliary subroutine is created to activate the pTg-equilibrium for N fluids under pT and 2 fluids under pTg-equilibrium. There is a final common p and T during relaxation. | |
| elemental subroutine | s_tsat (psat, tsat, tsin) |
| This auxiliary subroutine finds the Saturation temperature for a given saturation pressure through a newton solver. | |
| impure subroutine, public | s_finalize_relaxation_solver_module |
| This subroutine finalizes the phase change module. | |
Variables | |
Parameters for the first order transition phase change | |
| integer, parameter | max_iter = 1e8_wp |
| max # of iterations | |
| real(wp), parameter | pcr = 4.94e7_wp |
| Critical water pressure. | |
| real(wp), parameter | tcr = 385.05_wp + 273.15_wp |
| Critical water temperature. | |
| real(wp), parameter | mixm = 1.0e-8_wp |
| threshold for 'mixture cell'. If Y < mixM, phase change does not happen | |
| integer, parameter | lp = 1 |
| index for the liquid phase of the reacting fluid | |
| integer, parameter | vp = 2 |
| index for the vapor phase of the reacting fluid | |
Gibbs free energy phase change parameters | |
| real(wp) | a |
| real(wp) | b |
| real(wp) | c |
| real(wp) | d |
energies (6-eqn to 4-eqn) equilibrium through an infinitely fast (algebraic) procedure.
| impure subroutine, public m_phase_change::s_finalize_relaxation_solver_module |
This subroutine finalizes the phase change module.
| subroutine m_phase_change::s_infinite_pt_relaxation_k | ( | integer, intent(in) | j, |
| integer, intent(in) | k, | ||
| integer, intent(in) | l, | ||
| integer, intent(in) | mfl, | ||
| real(wp), intent(out) | ps, | ||
| real(wp), dimension(1:), intent(out) | p_infpt, | ||
| type(scalar_field), dimension(sys_size), intent(in) | q_cons_vf, | ||
| real(wp), intent(in) | rhoe, | ||
| real(wp), intent(out) | ts ) |
This auxiliary subroutine is created to activate the pT-equilibrium for N fluids.
| j | generic loop iterator for x direction |
| k | generic loop iterator for y direction |
| l | generic loop iterator for z direction |
| MFL | flag that tells whether the fluid is gas (0), liquid (1), or a mixture (2) |
| pS | equilibrium pressure at the interface |
| p_infpT | stiffness for the participating fluids under pT-equilibrium |
| rM | sum of the reacting masses |
| q_cons_vf | Cell-average conservative variables |
| rhoe | mixture energy |
| TS | equilibrium temperature at the interface |
| subroutine m_phase_change::s_infinite_ptg_relaxation_k | ( | integer, intent(in) | j, |
| integer, intent(in) | k, | ||
| integer, intent(in) | l, | ||
| real(wp), intent(inout) | ps, | ||
| real(wp), dimension(1:), intent(in) | p_infpt, | ||
| real(wp), intent(in) | rhoe, | ||
| type(scalar_field), dimension(sys_size), intent(inout) | q_cons_vf, | ||
| real(wp), intent(inout) | ts ) |
This auxiliary subroutine is created to activate the pTg-equilibrium for N fluids under pT and 2 fluids under pTg-equilibrium. There is a final common p and T during relaxation.
| j | generic loop iterator for x direction |
| k | generic loop iterator for y direction |
| l | generic loop iterator for z direction |
| pS | equilibrium pressure at the interface |
| p_infpT | stiffness for the participating fluids under pT-equilibrium |
| rhoe | mixture energy |
| q_cons_vf | Cell-average conservative variables |
| TS | equilibrium temperature at the interface |
| subroutine, public m_phase_change::s_infinite_relaxation_k | ( | type(scalar_field), dimension(sys_size), intent(inout) | q_cons_vf | ) |
This subroutine is created to activate either the pT- (N fluids) or the pTg-equilibrium (2 fluids for g-equilibrium) model, also considering mass depletion, depending on the incoming state conditions.
| q_cons_vf | Cell-average conservative variables |
| impure subroutine, public m_phase_change::s_initialize_phasechange_module |
The purpose of this subroutine is to initialize the phase change module by setting the parameters needed for phase change and selecting the phase change module that will be used (pT- or pTg-equilibrium).
| impure subroutine, public m_phase_change::s_relaxation_solver | ( | type(scalar_field), dimension(sys_size), intent(inout) | q_cons_vf | ) |
This subroutine should dispatch to the correct relaxation solver based some parameter. It replaces the procedure pointer, which CCE is breaking on.
| elemental subroutine m_phase_change::s_tsat | ( | real(wp), intent(in) | psat, |
| real(wp), intent(out) | tsat, | ||
| real(wp), intent(in) | tsin ) |
This auxiliary subroutine finds the Saturation temperature for a given saturation pressure through a newton solver.
| pSat | Saturation Pressure |
| TSat | Saturation Temperature |
| TSIn | equilibrium Temperature |
| real(wp) m_phase_change::a |
| real(wp) m_phase_change::b |
| real(wp) m_phase_change::c |
| real(wp) m_phase_change::d |
| integer, parameter m_phase_change::lp = 1 |
index for the liquid phase of the reacting fluid
| integer, parameter m_phase_change::max_iter = 1e8_wp |
max # of iterations
| real(wp), parameter m_phase_change::mixm = 1.0e-8_wp |
threshold for 'mixture cell'. If Y < mixM, phase change does not happen
| real(wp), parameter m_phase_change::pcr = 4.94e7_wp |
Critical water pressure.
| real(wp), parameter m_phase_change::tcr = 385.05_wp + 273.15_wp |
Critical water temperature.
| integer, parameter m_phase_change::vp = 2 |
index for the vapor phase of the reacting fluid