RecoilPressurePhenomenologicalModel< number > Class Template Reference

Developer Documentation: MeltPoolDG::Evaporation::RecoilPressurePhenomenologicalModel< number > Class Template Reference
Developer Documentation
MeltPoolDG::Evaporation::RecoilPressurePhenomenologicalModel< number > Class Template Reference

#include <recoil_pressure_operation.hpp>

Inheritance diagram for MeltPoolDG::Evaporation::RecoilPressurePhenomenologicalModel< number >:
[legend]
Collaboration diagram for MeltPoolDG::Evaporation::RecoilPressurePhenomenologicalModel< number >:
[legend]

Public Member Functions

 RecoilPressurePhenomenologicalModel (const RecoilPressureData< number > &recoil_data, const number boiling_temperature, const number molar_mass, const number latent_heat_evaporation)
 
number compute_recoil_pressure_coefficient (const number T) const final
 
dealii::VectorizedArray< number > compute_recoil_pressure_coefficient (const dealii::VectorizedArray< number > &T) const final
 
- Public Member Functions inherited from MeltPoolDG::Evaporation::RecoilPressureModelBase< number >
virtual ~RecoilPressureModelBase ()=default
 
virtual number compute_recoil_pressure_coefficient (const number, const number, const number) const
 
virtual dealii::VectorizedArray< number > compute_recoil_pressure_coefficient (const dealii::VectorizedArray< number > &, const dealii::VectorizedArray< number > &, const dealii::VectorizedArray< number > &) const
 

Private Attributes

const RecoilPressureData< number > & recoil_data
 
const number boiling_temperature
 
const number molar_mass
 
const number latent_heat_evaporation
 
number activation_ramp_derivative
 

Detailed Description

template<typename number>
class MeltPoolDG::Evaporation::RecoilPressurePhenomenologicalModel< number >

This class implements the phenomenological recoil pressure model according to

Anisimov, S. I., & Khokhlov, V. A. (1995). Instabilities in laser-matter interaction. CRC press.

Constructor & Destructor Documentation

◆ RecoilPressurePhenomenologicalModel()

template<typename number >
MeltPoolDG::Evaporation::RecoilPressurePhenomenologicalModel< number >::RecoilPressurePhenomenologicalModel ( const RecoilPressureData< number > &  recoil_data,
const number  boiling_temperature,
const number  molar_mass,
const number  latent_heat_evaporation 
)

Member Function Documentation

◆ compute_recoil_pressure_coefficient() [1/2]

template<typename number >
dealii::VectorizedArray< number > MeltPoolDG::Evaporation::RecoilPressurePhenomenologicalModel< number >::compute_recoil_pressure_coefficient ( const dealii::VectorizedArray< number > &  T) const
inlinefinalvirtual

◆ compute_recoil_pressure_coefficient() [2/2]

template<typename number >
number MeltPoolDG::Evaporation::RecoilPressurePhenomenologicalModel< number >::compute_recoil_pressure_coefficient ( const number  T) const
inlinefinalvirtual

Compute the recoil pressure p_v(T) in terms of the temperature T

                     /       /  1       1  \\

p_v(T) = s * c_p * exp|-c_T * | — - — || \ \ T T_v //

with a scaling factor s (0<=s<=1), the recoil pressure constant c_p, the temperature constant c_T and the boiling temperature T_v.

The scaling factor is introduced to potentially smoothly activate the recoil pressure and avoid a sharp activation. It is computed depending on the activation temperature T_ac of the recoil pressure

   -
  |     0         if T <= T_ac
  |
  |  T - T_ac

s = | -----— if T_ac < T < T_v | T_v - T_ac | | 1 if T >= T_v

  • whereas the T_ac<=T_v.

Reimplemented from MeltPoolDG::Evaporation::RecoilPressureModelBase< number >.

Member Data Documentation

◆ activation_ramp_derivative

template<typename number >
number MeltPoolDG::Evaporation::RecoilPressurePhenomenologicalModel< number >::activation_ramp_derivative
private

◆ boiling_temperature

template<typename number >
const number MeltPoolDG::Evaporation::RecoilPressurePhenomenologicalModel< number >::boiling_temperature
private

◆ latent_heat_evaporation

template<typename number >
const number MeltPoolDG::Evaporation::RecoilPressurePhenomenologicalModel< number >::latent_heat_evaporation
private

◆ molar_mass

template<typename number >
const number MeltPoolDG::Evaporation::RecoilPressurePhenomenologicalModel< number >::molar_mass
private

◆ recoil_data

template<typename number >
const RecoilPressureData<number>& MeltPoolDG::Evaporation::RecoilPressurePhenomenologicalModel< number >::recoil_data
private

The documentation for this class was generated from the following files: