EvaporationModelKnight< number, number_2 > Class Template Reference
|
Developer Documentation
|
This class implements the evaporative mass flux and temperature jump for rapid evaporation according to Knight's theory. More...
#include <evaporation_model_knight.hpp>
Public Member Functions | |
| EvaporationModelKnight (const number atmospheric_pressure, const number boiling_temperature_at_atmospheric_pressure, const number latent_heat_of_evaporation, const number specific_gas_constant, const number specific_heat_ratio_vapor) | |
| Constructor. | |
| void | reinit (const number_2 &T_liquid, const number_2 &Ma_gas, const unsigned int n_active_lanes=dealii::VectorizedArray< number >::size()) |
| Use Knight's theory to evaluate the current evaporative mass flux and temperature jump T_liquid - T_gas. | |
| number_2 | get_evaporative_mass_flux () const |
| Getter function for the evaporative mass flux. | |
| number_2 | get_temperature_jump () const |
| Getter function for the temperature jump T_liquid - T_gas. | |
Private Member Functions | |
| number_2 | compute_temperature_ratio (const number_2 &m_g) const |
| Calculate the temperature ratio T_gas/T_sat according to Knight's theory. | |
| number_2 | compute_density_ratio (const number_2 &T_gas_over_T_sat, const number_2 &m_g, const number_2 &exp_m_g_2, const number_2 &erfc_m_g) const |
| Calculate the density ratio rho_gas/rho_sat according to Knight's theory. | |
| number_2 | compute_factor_beta (const number_2 &T_gas_over_T_sat, const number_2 &rho_gas_over_rho_sat, const number_2 &m_g, const number_2 &exp_m_g_2) const |
| Calculate the factor beta according to Knight's theory. | |
| void | apply_boiling_threshold (const number_2 &T_sat) |
| Restrict evaporation to liquid temperatures above the boiling temperature. | |
Private Attributes | |
| const number | atmospheric_pressure |
| Atmospheric pressure in the gas phase (gas chamber pressure) | |
| const number | boiling_temperature_at_atmospheric_pressure |
| Boiling temperature of the considered material at atmospheric pressure conditions. | |
| const number | latent_heat_of_evaporation |
| Latent heat of evaporation. | |
| const number | specific_gas_constant |
| Specific gas constant. | |
| const number | specific_heat_ratio_vapor |
| Ratio of specific heats for the vapor phase. | |
| const number | temperature_constant |
| Temperature constant for Clausius-Clapeyron equation. | |
| const number | helper_mass_flux |
| Precomputed helper variable for the mass flux computation. | |
| const number | helper_temperature_ratio |
| Precomputed helper variable for the temperature ratio computation. | |
| number_2 | evaporative_mass_flux {} |
| Evaporative mass flux from Knight's theory. | |
| number_2 | temperature_jump {} |
| Temperature jump from Knight's theory. | |
Detailed Description
class MeltPoolDG::Evaporation::EvaporationModelKnight< number, number_2 >
This class implements the evaporative mass flux and temperature jump for rapid evaporation according to Knight's theory.
Knight, C. J. (1979). Theoretical modeling of rapid surface vaporization with back pressure. AIAA journal, 17(5), 519-523. DOI: 10.2514/3.61164
It is derived from kinetic gas theory and couples the liquid and gaseous phase in a thermodynamically consistent way.
- Template Parameters
-
number Floating point type. number_2 A vectorized array data type can be passed as second template parameter, that is used for vectorized computation.
- Note
- By default,
number_2is set to the given floating point typenumber. - Currently, a monoatomic ideal gas is assumed. In addition, the material is assumed to consist of one species with averaged material properties. No component-wise evaporation behavior is considered for alloys.
Constructor & Destructor Documentation
◆ EvaporationModelKnight()
|
explicit |
Constructor.
- Parameters
-
atmospheric_pressure Atmospheric pressure in the gas phase (gas chamber pressure). boiling_temperature_at_atmospheric_pressure Boiling temperature of the considered material at atmospheric pressure conditions. latent_heat_of_evaporation Latent heat of evaporation. specific_gas_constant Specific gas constant. specific_heat_ratio_vapor Ratio of specific heats for the vapor phase.
Member Function Documentation
◆ apply_boiling_threshold()
|
private |
Restrict evaporation to liquid temperatures above the boiling temperature.
This function simply sets the evaporative_mass_flux and temperature_jump to zero, if the liquid surface temperature T_sat is below the boiling temperature.
- Parameters
-
T_sat Saturated vapor temperature at liquid surface (=liquid surface temperature).
◆ compute_density_ratio()
|
private |
Calculate the density ratio rho_gas/rho_sat according to Knight's theory.
- Parameters
-
T_gas_over_T_sat Temperature ratio T_gas/T_sat. m_g Dimensionless gas velocity. exp_m_g_2 Precomputed exponential of the squared dimensionless gas velocity m_g.erfc_m_g Precomputed complementary error function of the dimensionless gas velocity m_g.
- Returns
- Density ratio rho_gas/rho_sat.
◆ compute_factor_beta()
|
private |
Calculate the factor beta according to Knight's theory.
This factor corresponds to the amount of back-scattered atoms in the Knudsen layer. It can be determined from kinetic gas theory.
- Parameters
-
T_gas_over_T_sat Temperature ratio T_gas/T_sat. rho_gas_over_rho_sat Density ratio rho_gas/rho_sat. m_g Dimensionless velocity. exp_m_g_2 Precomputed exponential of the squared dimensionless velocity m_g.
- Returns
- Factor beta.
◆ compute_temperature_ratio()
|
private |
Calculate the temperature ratio T_gas/T_sat according to Knight's theory.
- Parameters
-
m_g Dimensionless gas velocity.
- Returns
- Temperature ratio T_gas/T_sat.
◆ get_evaporative_mass_flux()
|
inline |
Getter function for the evaporative mass flux.
- Returns
- Evaporative mass flux.
◆ get_temperature_jump()
|
inline |
Getter function for the temperature jump T_liquid - T_gas.
- Returns
- Temperature jump T_liquid - T_gas.
◆ reinit()
| void MeltPoolDG::Evaporation::EvaporationModelKnight< number, number_2 >::reinit | ( | const number_2 & | T_liquid, |
| const number_2 & | Ma_gas, | ||
| const unsigned int | n_active_lanes = dealii::VectorizedArray<number>::size() |
||
| ) |
Use Knight's theory to evaluate the current evaporative mass flux and temperature jump T_liquid - T_gas.
- Parameters
-
T_liquid Current liquid surface temperature. Ma_gas Current Mach number in the gas phase at interface position. n_active_lanes Number of active lanes in the VectorizedArray.
- Note
- This function just updates the current values for the evaporative mass flux and temperature jump. Use the provided getter functions for access. Make sure to properly call this function before you apply the getter functions for mass flux and temperature jump.
Member Data Documentation
◆ atmospheric_pressure
|
private |
Atmospheric pressure in the gas phase (gas chamber pressure)
◆ boiling_temperature_at_atmospheric_pressure
|
private |
Boiling temperature of the considered material at atmospheric pressure conditions.
◆ evaporative_mass_flux
|
private |
Evaporative mass flux from Knight's theory.
◆ helper_mass_flux
|
private |
Precomputed helper variable for the mass flux computation.
◆ helper_temperature_ratio
|
private |
Precomputed helper variable for the temperature ratio computation.
◆ latent_heat_of_evaporation
|
private |
Latent heat of evaporation.
◆ specific_gas_constant
|
private |
Specific gas constant.
◆ specific_heat_ratio_vapor
|
private |
Ratio of specific heats for the vapor phase.
◆ temperature_constant
|
private |
Temperature constant for Clausius-Clapeyron equation.
◆ temperature_jump
|
private |
Temperature jump from Knight's theory.
The documentation for this class was generated from the following files:
- include/meltpooldg/phase_change/evaporation_model_knight.hpp
- source/phase_change/evaporation_model_knight.cpp
Generated by