EvaporationSourceTermsContinuous< dim, number > Class Template Reference

Developer Documentation: MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number > Class Template Reference
Developer Documentation
MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number > Class Template Reference

#include <evaporation_source_terms_continuous.hpp>

Inheritance diagram for MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >:
[legend]
Collaboration diagram for MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >:
[legend]

Public Member Functions

 EvaporationSourceTermsContinuous (const ScratchData< dim, dim, number > &scratch_data, const EvaporationData< number > &evapor_data, const VectorType &level_set_as_heaviside, const BlockVectorType &normal_vector, const VectorType &evaporative_mass_flux, const unsigned int ls_hanging_nodes_dof_idx, const unsigned int ls_quad_idx, const unsigned int normal_dof_idx, const unsigned int evapor_vel_dof_idx, const unsigned int evapor_vel_quad_idx, const unsigned int evapor_mass_flux_dof_idx, const number tolerance_normal_vector, const number density_vapor, const number density_liquid, const TwoPhaseFluidPropertiesTransitionType &two_phase_properties_transition_type)
 
void compute_evaporation_velocity (VectorType &evaporation_velocity) final
 
void compute_level_set_source_term (VectorType &level_set_source_term, const unsigned int ls_dof_idx, const VectorType &level_set, const unsigned int pressure_dof_idx) final
 
void compute_mass_balance_source_term (VectorType &mass_balance_source_term, const unsigned int pressure_dof_idx, const unsigned int pressure_quad_idx, bool zero_out) final
 
void compute_heat_source_term (VectorType &heat_source_term) final
 
- Public Member Functions inherited from MeltPoolDG::Evaporation::EvaporationSourceTermsBase< dim, number >
virtual ~EvaporationSourceTermsBase ()=default
 

Private Types

using VectorType = dealii::LinearAlgebra::distributed::Vector< number >
 
using BlockVectorType = dealii::LinearAlgebra::distributed::BlockVector< number >
 

Private Member Functions

dealii::Tensor< 1, dim, dealii::VectorizedArray< number > > * begin_evaporation_velocity (const unsigned int macro_cell)
 
const dealii::Tensor< 1, dim, dealii::VectorizedArray< number > > & begin_evaporation_velocity (const unsigned int macro_cell) const
 

Private Attributes

const ScratchData< dim, dim, number > & scratch_data
 
const EvaporationData< number > & evapor_data
 
const VectorTypelevel_set_as_heaviside
 
const BlockVectorTypenormal_vector
 
const VectorTypeevaporative_mass_flux
 
const unsigned int ls_hanging_nodes_dof_idx
 
const unsigned int ls_quad_idx
 
const unsigned int normal_dof_idx
 
const unsigned int evapor_vel_dof_idx
 
const unsigned int evapor_vel_quad_idx
 
const unsigned int evapor_mass_flux_dof_idx
 
const number tolerance_normal_vector
 
const number density_vapor
 
const number density_liquid
 
const TwoPhaseFluidPropertiesTransitionType two_phase_properties_transition_type
 
dealii::FullMatrix< number > ls_to_pressure_grad_interpolation_matrix
 
dealii::AlignedVector< dealii::Tensor< 1, dim, dealii::VectorizedArray< number > > > evaporation_velocities
 

Detailed Description

template<int dim, typename number>
class MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >

TODO: DOCU

Member Typedef Documentation

◆ BlockVectorType

template<int dim, typename number >
using MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::BlockVectorType = dealii::LinearAlgebra::distributed::BlockVector<number>
private

◆ VectorType

template<int dim, typename number >
using MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::VectorType = dealii::LinearAlgebra::distributed::Vector<number>
private

Constructor & Destructor Documentation

◆ EvaporationSourceTermsContinuous()

template<int dim, typename number >
MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::EvaporationSourceTermsContinuous ( const ScratchData< dim, dim, number > &  scratch_data,
const EvaporationData< number > &  evapor_data,
const VectorType level_set_as_heaviside,
const BlockVectorType normal_vector,
const VectorType evaporative_mass_flux,
const unsigned int  ls_hanging_nodes_dof_idx,
const unsigned int  ls_quad_idx,
const unsigned int  normal_dof_idx,
const unsigned int  evapor_vel_dof_idx,
const unsigned int  evapor_vel_quad_idx,
const unsigned int  evapor_mass_flux_dof_idx,
const number  tolerance_normal_vector,
const number  density_vapor,
const number  density_liquid,
const TwoPhaseFluidPropertiesTransitionType &  two_phase_properties_transition_type 
)

TODO: DOCU

Member Function Documentation

◆ begin_evaporation_velocity() [1/2]

template<int dim, typename number >
Tensor< 1, dim, VectorizedArray< number > > * MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::begin_evaporation_velocity ( const unsigned int  macro_cell)
inlineprivate

◆ begin_evaporation_velocity() [2/2]

template<int dim, typename number >
const Tensor< 1, dim, VectorizedArray< number > > & MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::begin_evaporation_velocity ( const unsigned int  macro_cell) const
inlineprivate

◆ compute_evaporation_velocity()

template<int dim, typename number >
void MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::compute_evaporation_velocity ( VectorType evaporation_velocity)
finalvirtual

write interface velocity to dof vector

Implements MeltPoolDG::Evaporation::EvaporationSourceTermsBase< dim, number >.

◆ compute_heat_source_term()

template<int dim, typename number >
void MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::compute_heat_source_term ( VectorType heat_source_term)
finalvirtual

◆ compute_level_set_source_term()

template<int dim, typename number >
void MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::compute_level_set_source_term ( VectorType level_set_source_term,
const unsigned int  ls_dof_idx,
const VectorType level_set,
const unsigned int  pressure_dof_idx 
)
finalvirtual

◆ compute_mass_balance_source_term()

template<int dim, typename number >
void MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::compute_mass_balance_source_term ( VectorType mass_balance_source_term,
const unsigned int  pressure_dof_idx,
const unsigned int  pressure_quad_idx,
bool  zero_out 
)
finalvirtual

Member Data Documentation

◆ density_liquid

template<int dim, typename number >
const number MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::density_liquid
private

◆ density_vapor

template<int dim, typename number >
const number MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::density_vapor
private

◆ evapor_data

template<int dim, typename number >
const EvaporationData<number>& MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::evapor_data
private

◆ evapor_mass_flux_dof_idx

template<int dim, typename number >
const unsigned int MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::evapor_mass_flux_dof_idx
private

◆ evapor_vel_dof_idx

template<int dim, typename number >
const unsigned int MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::evapor_vel_dof_idx
private

◆ evapor_vel_quad_idx

template<int dim, typename number >
const unsigned int MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::evapor_vel_quad_idx
private

◆ evaporation_velocities

template<int dim, typename number >
dealii::AlignedVector<dealii::Tensor<1, dim, dealii::VectorizedArray<number> > > MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::evaporation_velocities
private

evaporation velocity at quadrature points

◆ evaporative_mass_flux

template<int dim, typename number >
const VectorType& MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::evaporative_mass_flux
private

◆ level_set_as_heaviside

template<int dim, typename number >
const VectorType& MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::level_set_as_heaviside
private

references to solutions needed for the computation

◆ ls_hanging_nodes_dof_idx

template<int dim, typename number >
const unsigned int MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::ls_hanging_nodes_dof_idx
private

select the relevant DoFHandlers and quadrature rules

◆ ls_quad_idx

template<int dim, typename number >
const unsigned int MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::ls_quad_idx
private

◆ ls_to_pressure_grad_interpolation_matrix

template<int dim, typename number >
dealii::FullMatrix<number> MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::ls_to_pressure_grad_interpolation_matrix
private

◆ normal_dof_idx

template<int dim, typename number >
const unsigned int MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::normal_dof_idx
private

◆ normal_vector

template<int dim, typename number >
const BlockVectorType& MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::normal_vector
private

◆ scratch_data

template<int dim, typename number >
const ScratchData<dim, dim, number>& MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::scratch_data
private

◆ tolerance_normal_vector

template<int dim, typename number >
const number MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::tolerance_normal_vector
private

◆ two_phase_properties_transition_type

template<int dim, typename number >
const TwoPhaseFluidPropertiesTransitionType MeltPoolDG::Evaporation::EvaporationSourceTermsContinuous< dim, number >::two_phase_properties_transition_type
private

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