EvaporationModelRecoilPressure< number > Class Template Reference

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

#include <evaporation_model_recoil_pressure.hpp>

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

Public Member Functions

 EvaporationModelRecoilPressure (const RecoilPressureData< number > &recoil_data, const number boiling_temperature, const number molar_mass, const number latent_heat_evaporation)
 
number local_compute_evaporative_mass_flux (const number T) const final
 
dealii::VectorizedArray< number > local_compute_evaporative_mass_flux_vec (const dealii::VectorizedArray< number > &T) const final
 
number local_compute_evaporative_mass_flux_derivative (const number T) const final
 
dealii::VectorizedArray< number > local_compute_evaporative_mass_flux_vec_derivative (const dealii::VectorizedArray< number > &T) const final
 
- Public Member Functions inherited from MeltPoolDG::Evaporation::EvaporationModelBase< number >
virtual ~EvaporationModelBase ()=default
 

Private Attributes

const RecoilPressurePhenomenologicalModel< number > recoil_model
 
const number sticking_constant
 
const number Cm
 
const number temperature_constant
 

Detailed Description

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

This class implements the evaporative mass flux computed from the recoil pressure as presented in, e.g.,

S.A. Khairallah, A.T. Anderson, A. Rubenchik, W.E. King, Laser powder-bed fusion additive manufacturing: Physics of complex melt flow and formation mechanisms of pores, spatter, and denudation zones, Acta Mater. 108 (2016) 36–45. DOI: 10.1016/j.actamat.2016.02.014.

Constructor & Destructor Documentation

◆ EvaporationModelRecoilPressure()

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

Member Function Documentation

◆ local_compute_evaporative_mass_flux()

template<typename number >
number MeltPoolDG::Evaporation::EvaporationModelRecoilPressure< number >::local_compute_evaporative_mass_flux ( const number  T) const
finalvirtual

The evaporative mass flux is computed as

                             ______
                            /  M

. /----— m(T) = 0.82 · c_s · p_v(T) · √ 2πR T

where c_s is the sticking coefficient, p_v(T) the recoil pressure, M the molar mass, R the molar gas constant and T the temperature.

Implements MeltPoolDG::Evaporation::EvaporationModelBase< number >.

◆ local_compute_evaporative_mass_flux_derivative()

template<typename number >
number MeltPoolDG::Evaporation::EvaporationModelRecoilPressure< number >::local_compute_evaporative_mass_flux_derivative ( const number  T) const
finalvirtual

Compute the derivative of the evaporative mass flux as

d m . / c_T 1 \ --— = 0.82 · c_s · m(T) | --— - --— | d T \ T² 2 T /

where it is assumed that the recoil pressure p_v(T) is computed as

                   /       /  1       1  \\

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

according to the phenomenological model by Anisimov and Khokhlov as implemented in RecoilPressurePhenomenologicalModel.

S. Anisimov and V. Khokhlov. Instabilities in Laser-Matter Interaction. CRC Press, Boca Raton, FL, 1995.

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

◆ local_compute_evaporative_mass_flux_vec()

template<typename number >
dealii::VectorizedArray< number > MeltPoolDG::Evaporation::EvaporationModelRecoilPressure< number >::local_compute_evaporative_mass_flux_vec ( const dealii::VectorizedArray< number > &  ) const
finalvirtual
                                               .

Base function to compute the evaporative mass flux m in kg/(m^2 s) for a given temperature value T.

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

◆ local_compute_evaporative_mass_flux_vec_derivative()

template<typename number >
dealii::VectorizedArray< number > MeltPoolDG::Evaporation::EvaporationModelRecoilPressure< number >::local_compute_evaporative_mass_flux_vec_derivative ( const dealii::VectorizedArray< number > &  T) const
finalvirtual

Member Data Documentation

◆ Cm

template<typename number >
const number MeltPoolDG::Evaporation::EvaporationModelRecoilPressure< number >::Cm
private

◆ recoil_model

template<typename number >
const RecoilPressurePhenomenologicalModel<number> MeltPoolDG::Evaporation::EvaporationModelRecoilPressure< number >::recoil_model
private

◆ sticking_constant

template<typename number >
const number MeltPoolDG::Evaporation::EvaporationModelRecoilPressure< number >::sticking_constant
private

◆ temperature_constant

template<typename number >
const number MeltPoolDG::Evaporation::EvaporationModelRecoilPressure< number >::temperature_constant
private

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