HeatDiffuseMultiPhaseOperator< dim, number > Class Template Reference

Developer Documentation: MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number > Class Template Reference
Developer Documentation
MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number > Class Template Reference

#include <heat_diffuse_operator.hpp>

Inheritance diagram for MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >:
[legend]
Collaboration diagram for MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >:
[legend]

Public Member Functions

 HeatDiffuseMultiPhaseOperator (const ScratchData< dim, dim, number > &scratch_data_in, const std::shared_ptr< const BoundaryConditionManager< dim, number > > heat_bc_manager, const HeatData< number > &data_in, const Material< number > &material, const unsigned int heat_dof_idx_in, const unsigned int heat_quad_idx_in, const unsigned int heat_no_bc_dof_idx, const VectorType &temperature_in, const VectorType &temperature_old_in, const VectorType &heat_source_in, const unsigned int vel_dof_idx_in=0, const VectorType *velocity_in=nullptr, const unsigned int ls_dof_idx_in=0, const VectorType *level_set_as_heaviside_in=nullptr, const bool do_solidifiaction_in=false)
 
void register_evaporative_mass_flux (VectorType *evaporative_mass_flux_in, const unsigned int mass_flux_dof_idx_in, const Evaporation::EvaporationData< number > &evapor_data)
 
void register_surface_mesh (const std::vector< std::tuple< const typename dealii::Triangulation< dim, dim >::cell_iterator, std::vector< dealii::Point< dim > >, std::vector< number > > > &surface_mesh_info)
 
void pre () final
 Prepare for computations (e.g. update ghost values). Can be overridden by derived classes.
 
void post () final
 Finalize for computations (e.g. zero out ghost values). Can be overridden by derived classes.
 
void vmult (VectorType &dst, const VectorType &src) const final
 
void tangent_cell_loop (const dealii::MatrixFree< dim, number > &matrix_free, VectorType &dst, const VectorType &src, std::pair< unsigned int, unsigned int > cell_range) const
 
void tangent_boundary_loop (const dealii::MatrixFree< dim, number > &matrix_free, VectorType &dst, const VectorType &src, std::pair< unsigned int, unsigned int > face_range) const
 
void compute_inverse_diagonal_from_matrixfree (VectorType &diagonal) const final
 Compute the inverse diagonal using matrix-free techniques.
 
void compute_system_matrix_from_matrixfree (SparseMatrixType &system_matrix) const final
 Compute a sparse matrix using matrix-free techniques.
 
void rhs_cell_loop (const dealii::MatrixFree< dim, number > &matrix_free, VectorType &dst, const VectorType &src, std::pair< unsigned int, unsigned int > cell_range) const
 
void rhs_boundary_loop (const dealii::MatrixFree< dim, number > &matrix_free, VectorType &dst, const VectorType &src, std::pair< unsigned int, unsigned int > face_range) const
 
void rhs_cut_cell_loop (VectorType &dst) const
 
void create_rhs (VectorType &dst, const VectorType &src) const final
 
void attach_vectors (std::vector< VectorType * > &vectors)
 
void distribute_constraints ()
 
void reinit () final
 Reinitialize data structures. Can be overridden by derived classes.
 
void attach_output_vectors (GenericDataOut< dim, number > &data_out) const
 
- Public Member Functions inherited from MeltPoolDG::OperatorMatrixFree< dim, number >
virtual ~OperatorMatrixFree ()=default
 
virtual void create_rhs (BlockVectorType &, const VectorType &) const
 Compute the right-hand side vector for block vectors dst.
 
virtual void create_rhs (VectorType &, const BlockVectorType &) const
 Compute the right-hand side vector for block vectors src.
 
virtual void vmult (BlockVectorType &, const BlockVectorType &) const
 
virtual void compute_inverse_diagonal_from_matrixfree (BlockVectorType &) const
 Compute the inverse diagonal using matrix-free techniques for block vectors.
 
- Public Member Functions inherited from MeltPoolDG::OperatorBase< number >
virtual ~OperatorBase ()=default
 
void reset_dof_index (const unsigned int dof_idx_in)
 Set the index for the current degrees of freedom (DoF).
 
void reset_time_increment (const number dt)
 Set the time increment for the operator.
 

Private Types

using VectorType = typename OperatorMatrixFree< dim, number >::VectorType
 
using SparseMatrixType = typename OperatorMatrixFree< dim, number >::SparseMatrixType
 

Private Member Functions

void tangent_local_cell_operation (FECellIntegrator< dim, 1, number > &eval, FECellIntegrator< dim, 1, number > &T_new_eval, FECellIntegrator< dim, 1, number > &T_old_eval, FECellIntegrator< dim, dim, number > &vel_eval, FECellIntegrator< dim, 1, number > &heaviside_eval, FECellIntegrator< dim, 1, number > &heaviside_interpolated_eval, const std::unique_ptr< FECellIntegrator< dim, 1, number > > &mass_flux_eval, bool do_reinit_cells) const
 
void tangent_local_boundary_operation (FEFaceIntegrator< dim, 1, number > &face_eval, FEFaceIntegrator< dim, 1, number > &T_face_eval, bool do_reinit_face) const
 
void internal_compute_diagonal_or_system_matrix (VectorType &diagonal, SparseMatrixType &system_matrix, const bool do_diagonal) const
 
std::tuple< dealii::VectorizedArray< number >, dealii::VectorizedArray< number > > get_material_parameters (const FECellIntegrator< dim, 1, number > &T_eval, const FECellIntegrator< dim, 1, number > &heaviside_eval, unsigned int q) const
 
std::tuple< dealii::VectorizedArray< number >, dealii::VectorizedArray< number >, dealii::VectorizedArray< number >, dealii::VectorizedArray< number > > get_material_parameters_and_derivatives (const FECellIntegrator< dim, 1, number > &T_eval, const FECellIntegrator< dim, 1, number > &heaviside_eval, unsigned int q) const
 

Private Attributes

const ScratchData< dim, dim, number > & scratch_data
 
const HeatData< number > & data
 
const Material< number > & material
 
const unsigned int heat_dof_idx
 
const unsigned int heat_quad_idx
 
const unsigned int heat_no_bc_dof_idx
 
const VectorTypetemperature
 
const VectorTypetemperature_old
 
std::map< dealii::types::boundary_id, std::shared_ptr< dealii::Function< dim > > > neumann_bc
 
std::vector< dealii::types::boundary_id > bc_radiation_indices
 
std::vector< dealii::types::boundary_id > bc_convection_indices
 
const VectorTypeheat_source
 
const unsigned int vel_dof_idx = dealii::numbers::invalid_unsigned_int
 
const VectorTypevelocity
 
const unsigned int ls_dof_idx = dealii::numbers::invalid_unsigned_int
 
const VectorTypelevel_set_as_heaviside
 
VectorTypeevaporative_mass_flux = nullptr
 
unsigned int mass_flux_dof_idx = dealii::numbers::invalid_unsigned_int
 
std::unique_ptr< Evaporation::EvaporativeCooling< number > > evaporative_cooling
 
const bool do_solidification
 
dealii::FullMatrix< number > ls_to_heat_grad_interpolation_matrix
 
bool do_level_set_temperature_gradient_interpolation = false
 
VectorType evapor_heat_source
 
VectorType evapor_heat_source_projected
 
dealii::AlignedVector< dealii::VectorizedArray< number > > q_vapor
 
std::unique_ptr< const LevelSet::DeltaApproximationBase< number > > delta_phase_weighted
 
dealii::AlignedVector< dealii::VectorizedArray< number > > conductivity_at_q
 
VectorType conductivity_vec
 
dealii::AlignedVector< dealii::VectorizedArray< number > > rho_cp_at_q
 
VectorType rho_cp_vec
 
std::vector< bool > do_update_ghosts
 
const std::vector< std::tuple< const typename dealii::Triangulation< dim, dim >::cell_iterator, std::vector< dealii::Point< dim > >, std::vector< number > > > * surface_mesh_info = nullptr
 
Evaporation::EvaporCoolingInterfaceFluxType evaporative_cooling_interface_flux_type
 

Additional Inherited Members

- Public Types inherited from MeltPoolDG::OperatorMatrixFree< dim, number >
using VectorType = dealii::LinearAlgebra::distributed::Vector< number >
 
using BlockVectorType = dealii::LinearAlgebra::distributed::BlockVector< number >
 
using SparseMatrixType = dealii::TrilinosWrappers::SparseMatrix
 
- Protected Attributes inherited from MeltPoolDG::OperatorBase< number >
unsigned int dof_idx = dealii::numbers::invalid_unsigned_int
 
number time_increment = numbers::invalid_double
 
number time_increment_inv = numbers::invalid_double
 

Member Typedef Documentation

◆ SparseMatrixType

template<int dim, typename number >
using MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::SparseMatrixType = typename OperatorMatrixFree<dim, number>::SparseMatrixType
private

◆ VectorType

template<int dim, typename number >
using MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::VectorType = typename OperatorMatrixFree<dim, number>::VectorType
private

Constructor & Destructor Documentation

◆ HeatDiffuseMultiPhaseOperator()

template<int dim, typename number >
MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::HeatDiffuseMultiPhaseOperator ( const ScratchData< dim, dim, number > &  scratch_data_in,
const std::shared_ptr< const BoundaryConditionManager< dim, number > >  heat_bc_manager,
const HeatData< number > &  data_in,
const Material< number > &  material,
const unsigned int  heat_dof_idx_in,
const unsigned int  heat_quad_idx_in,
const unsigned int  heat_no_bc_dof_idx,
const VectorType temperature_in,
const VectorType temperature_old_in,
const VectorType heat_source_in,
const unsigned int  vel_dof_idx_in = 0,
const VectorType velocity_in = nullptr,
const unsigned int  ls_dof_idx_in = 0,
const VectorType level_set_as_heaviside_in = nullptr,
const bool  do_solidifiaction_in = false 
)

Member Function Documentation

◆ attach_output_vectors()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::attach_output_vectors ( GenericDataOut< dim, number > &  data_out) const

write conductivity vector to dof vector

write evaporative mass flux to dof vector

◆ attach_vectors()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::attach_vectors ( std::vector< VectorType * > &  vectors)

attach vector for solution transfer for AMR

◆ compute_inverse_diagonal_from_matrixfree()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::compute_inverse_diagonal_from_matrixfree ( VectorType ) const
finalvirtual

Compute the inverse diagonal using matrix-free techniques.

Parameters
diagVector representing the diagonal.

Reimplemented from MeltPoolDG::OperatorMatrixFree< dim, number >.

◆ compute_system_matrix_from_matrixfree()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::compute_system_matrix_from_matrixfree ( SparseMatrixType ) const
finalvirtual

Compute a sparse matrix using matrix-free techniques.

Parameters
matrixSparse matrix to compute.

Reimplemented from MeltPoolDG::OperatorMatrixFree< dim, number >.

◆ create_rhs()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::create_rhs ( VectorType dst,
const VectorType src 
) const
finalvirtual

◆ distribute_constraints()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::distribute_constraints ( )

◆ get_material_parameters()

template<int dim, typename number >
std::tuple< VectorizedArray< number >, VectorizedArray< number > > MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::get_material_parameters ( const FECellIntegrator< dim, 1, number > &  T_eval,
const FECellIntegrator< dim, 1, number > &  heaviside_eval,
unsigned int  q 
) const
private

Determine the material parameters. This function takes two-phase flow and solidification effects into account.

The values of rho_cp and conductivity must be set to the material.gas values initially. This function only modifies their values if necessary. I.e. in case of no two-phase flow and no solidification this function does nothing.

◆ get_material_parameters_and_derivatives()

template<int dim, typename number >
std::tuple< VectorizedArray< number >, VectorizedArray< number >, VectorizedArray< number >, VectorizedArray< number > > MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::get_material_parameters_and_derivatives ( const FECellIntegrator< dim, 1, number > &  T_eval,
const FECellIntegrator< dim, 1, number > &  heaviside_eval,
unsigned int  q 
) const
private

Determine the material parameters and their temperature derivatives. This function takes two-phase flow and solidification effects into account.

The values of rho_cp, conductivity, d_rho_cp_d_T and d_conductivity_dT must be set to the material.gas values initially (0 for the derivatives). This function only modifies their values if necessary. I.e. in case of no two-phase flow and no solidification this function does nothing.

Note
The derivatives d_rho_cp_d_T and d_conductivity_dT are only non-zero in the case of solidification and if the temperature is between the solidus- and liquidus temperature.

◆ internal_compute_diagonal_or_system_matrix()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::internal_compute_diagonal_or_system_matrix ( VectorType diagonal,
SparseMatrixType system_matrix,
const bool  do_diagonal 
) const
private

The setup for dealii::MatrixFreeTools::internal::compute_diagonal and dealii::MatrixFreeTools::internal::compute_matrix is identical. To avoid duplicate code this internal function can handle both operations. Choose which operation to perform using

Parameters
do_diagonaltrue for compute_diagonal and false for compute_matrix.

◆ post()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::post ( )
finalvirtual

Finalize for computations (e.g. zero out ghost values). Can be overridden by derived classes.

Reimplemented from MeltPoolDG::OperatorBase< number >.

◆ pre()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::pre ( )
finalvirtual

Prepare for computations (e.g. update ghost values). Can be overridden by derived classes.

Reimplemented from MeltPoolDG::OperatorBase< number >.

◆ register_evaporative_mass_flux()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::register_evaporative_mass_flux ( VectorType evaporative_mass_flux_in,
const unsigned int  mass_flux_dof_idx_in,
const Evaporation::EvaporationData< number > &  evapor_data 
)

◆ register_surface_mesh()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::register_surface_mesh ( const std::vector< std::tuple< const typename dealii::Triangulation< dim, dim >::cell_iterator, std::vector< dealii::Point< dim > >, std::vector< number > > > &  surface_mesh_info)

◆ reinit()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::reinit ( )
finalvirtual

Reinitialize data structures. Can be overridden by derived classes.

Reimplemented from MeltPoolDG::OperatorBase< number >.

◆ rhs_boundary_loop()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::rhs_boundary_loop ( const dealii::MatrixFree< dim, number > &  matrix_free,
VectorType dst,
const VectorType src,
std::pair< unsigned int, unsigned int >  face_range 
) const

◆ rhs_cell_loop()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::rhs_cell_loop ( const dealii::MatrixFree< dim, number > &  matrix_free,
VectorType dst,
const VectorType src,
std::pair< unsigned int, unsigned int >  cell_range 
) const

◆ rhs_cut_cell_loop()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::rhs_cut_cell_loop ( VectorType dst) const

◆ tangent_boundary_loop()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::tangent_boundary_loop ( const dealii::MatrixFree< dim, number > &  matrix_free,
VectorType dst,
const VectorType src,
std::pair< unsigned int, unsigned int >  face_range 
) const

◆ tangent_cell_loop()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::tangent_cell_loop ( const dealii::MatrixFree< dim, number > &  matrix_free,
VectorType dst,
const VectorType src,
std::pair< unsigned int, unsigned int >  cell_range 
) const

◆ tangent_local_boundary_operation()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::tangent_local_boundary_operation ( FEFaceIntegrator< dim, 1, number > &  face_eval,
FEFaceIntegrator< dim, 1, number > &  T_face_eval,
bool  do_reinit_face 
) const
private

This function executes the local boundary operation for computing the tangent.

Note
The function assumes that face_eval has been already initialized and the dof-values of face_eval are already set a priori. Afterwards, the dof-values held by face_eval can be written back to the global vector via face_eval.distribute_local_to_global(dst).

◆ tangent_local_cell_operation()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::tangent_local_cell_operation ( FECellIntegrator< dim, 1, number > &  eval,
FECellIntegrator< dim, 1, number > &  T_new_eval,
FECellIntegrator< dim, 1, number > &  T_old_eval,
FECellIntegrator< dim, dim, number > &  vel_eval,
FECellIntegrator< dim, 1, number > &  heaviside_eval,
FECellIntegrator< dim, 1, number > &  heaviside_interpolated_eval,
const std::unique_ptr< FECellIntegrator< dim, 1, number > > &  mass_flux_eval,
bool  do_reinit_cells 
) const
private

This function executes the local cell operation for computing the tangent.

Note
The function assumes that eval has been already initialized and the dof-values of eval are already set a priori. Afterwards, the dof-values held by eval can be written back to the global vector via eval.distribute_local_to_global(dst).

◆ vmult()

template<int dim, typename number >
void MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::vmult ( VectorType ,
const VectorType  
) const
finalvirtual

Apply the matrix-free operator to a vector src and store It inside dst. This function is used in the iterative linear solver.

Parameters
srcSource vector.
dstDestination vector.

Reimplemented from MeltPoolDG::OperatorMatrixFree< dim, number >.

Member Data Documentation

◆ bc_convection_indices

template<int dim, typename number >
std::vector<dealii::types::boundary_id> MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::bc_convection_indices
private

◆ bc_radiation_indices

template<int dim, typename number >
std::vector<dealii::types::boundary_id> MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::bc_radiation_indices
private

◆ conductivity_at_q

template<int dim, typename number >
dealii::AlignedVector<dealii::VectorizedArray<number> > MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::conductivity_at_q
mutableprivate

◆ conductivity_vec

template<int dim, typename number >
VectorType MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::conductivity_vec
mutableprivate

◆ data

template<int dim, typename number >
const HeatData<number>& MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::data
private

◆ delta_phase_weighted

template<int dim, typename number >
std::unique_ptr<const LevelSet::DeltaApproximationBase<number> > MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::delta_phase_weighted
private

◆ do_level_set_temperature_gradient_interpolation

template<int dim, typename number >
bool MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::do_level_set_temperature_gradient_interpolation = false
private

◆ do_solidification

template<int dim, typename number >
const bool MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::do_solidification
private

◆ do_update_ghosts

template<int dim, typename number >
std::vector<bool> MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::do_update_ghosts
mutableprivate

◆ evapor_heat_source

template<int dim, typename number >
VectorType MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::evapor_heat_source
mutableprivate

◆ evapor_heat_source_projected

template<int dim, typename number >
VectorType MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::evapor_heat_source_projected
mutableprivate

◆ evaporative_cooling

template<int dim, typename number >
std::unique_ptr<Evaporation::EvaporativeCooling<number> > MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::evaporative_cooling
private

◆ evaporative_cooling_interface_flux_type

template<int dim, typename number >
Evaporation::EvaporCoolingInterfaceFluxType MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::evaporative_cooling_interface_flux_type
private
Initial value:
=
Evaporation::EvaporCoolingInterfaceFluxType::none

◆ evaporative_mass_flux

template<int dim, typename number >
VectorType* MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::evaporative_mass_flux = nullptr
private

◆ heat_dof_idx

template<int dim, typename number >
const unsigned int MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::heat_dof_idx
private

◆ heat_no_bc_dof_idx

template<int dim, typename number >
const unsigned int MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::heat_no_bc_dof_idx
private

◆ heat_quad_idx

template<int dim, typename number >
const unsigned int MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::heat_quad_idx
private

◆ heat_source

template<int dim, typename number >
const VectorType& MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::heat_source
private

◆ level_set_as_heaviside

template<int dim, typename number >
const VectorType* MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::level_set_as_heaviside
private

◆ ls_dof_idx

template<int dim, typename number >
const unsigned int MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::ls_dof_idx = dealii::numbers::invalid_unsigned_int
private

◆ ls_to_heat_grad_interpolation_matrix

template<int dim, typename number >
dealii::FullMatrix<number> MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::ls_to_heat_grad_interpolation_matrix
private

◆ mass_flux_dof_idx

template<int dim, typename number >
unsigned int MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::mass_flux_dof_idx = dealii::numbers::invalid_unsigned_int
private

◆ material

template<int dim, typename number >
const Material<number>& MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::material
private

◆ neumann_bc

template<int dim, typename number >
std::map<dealii::types::boundary_id, std::shared_ptr<dealii::Function<dim> > > MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::neumann_bc
private

◆ q_vapor

template<int dim, typename number >
dealii::AlignedVector<dealii::VectorizedArray<number> > MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::q_vapor
mutableprivate

◆ rho_cp_at_q

template<int dim, typename number >
dealii::AlignedVector<dealii::VectorizedArray<number> > MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::rho_cp_at_q
mutableprivate

◆ rho_cp_vec

template<int dim, typename number >
VectorType MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::rho_cp_vec
mutableprivate

◆ scratch_data

template<int dim, typename number >
const ScratchData<dim, dim, number>& MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::scratch_data
private

◆ surface_mesh_info

template<int dim, typename number >
const std::vector< std::tuple<const typename dealii::Triangulation<dim, dim>::cell_iterator , std::vector<dealii::Point<dim> > , std::vector<number> > >* MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::surface_mesh_info = nullptr
private

◆ temperature

template<int dim, typename number >
const VectorType& MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::temperature
private

◆ temperature_old

template<int dim, typename number >
const VectorType& MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::temperature_old
private

◆ vel_dof_idx

template<int dim, typename number >
const unsigned int MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::vel_dof_idx = dealii::numbers::invalid_unsigned_int
private

◆ velocity

template<int dim, typename number >
const VectorType* MeltPoolDG::Heat::HeatDiffuseMultiPhaseOperator< dim, number >::velocity
private

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