IncompressibleMaterialBase< dim, number > Class Template Reference

Developer Documentation: MeltPoolDG::Flow::IncompressibleMaterialBase< dim, number > Class Template Reference
Developer Documentation
MeltPoolDG::Flow::IncompressibleMaterialBase< dim, number > Class Template Referenceabstract

Base class for the shear stress computation of an incompressible fluid material. More...

#include <incompressible_flow_material_base.hpp>

Inheritance diagram for MeltPoolDG::Flow::IncompressibleMaterialBase< dim, number >:
[legend]

Public Member Functions

virtual ~IncompressibleMaterialBase ()=default
 
virtual void reinit (const dealii::Tensor< 2, dim, dealii::VectorizedArray< number > > &velocity_gradient, const unsigned int cell_idx, const unsigned int quad_idx)=0
 Reinit function to be used to compute quadrature point variables.
 
virtual dealii::Tensor< 2, dim, dealii::VectorizedArray< number > > get_tau ()=0
 Compute the deviatoric stress τ for the given velocity gradient ∇u, set by reinit().
 
virtual dealii::Tensor< 2, dim, dealii::VectorizedArray< number > > get_vmult_d_tau_d_grad_vel ()=0
 Compute the material tangent of the deviatoric stress and perform a vmult with the gradient of the nodal DoF values δu, set by reinit(),.
 
virtual void update_ghost_values ()
 Update ghost values of the vectors, to be used to compute the deviatoric stress.
 
virtual void zero_out_ghost_values ()
 Zero out ghost values of the vectors, to be used to compute the deviatoric stress.
 

Detailed Description

template<int dim, typename number>
class MeltPoolDG::Flow::IncompressibleMaterialBase< dim, number >

Base class for the shear stress computation of an incompressible fluid material.

It is assumed that the stress computation has the form

σ = -p * I + τ

with the Cauchy stress tensor σ, the pressure p, the second-order Identity tensor I and the deviatoric stress tensor τ.

Note
The pressure p is given from the incompressibility constraint from the flow solver and solely the deviatoric stress τ will be computed herein. Thus, the material law relates solely the deviatoric (shear) stress tensor to the velocity gradient ∇u:

τ(∇u)

Constructor & Destructor Documentation

◆ ~IncompressibleMaterialBase()

template<int dim, typename number >
virtual MeltPoolDG::Flow::IncompressibleMaterialBase< dim, number >::~IncompressibleMaterialBase ( )
virtualdefault

Member Function Documentation

◆ get_tau()

template<int dim, typename number >
virtual dealii::Tensor< 2, dim, dealii::VectorizedArray< number > > MeltPoolDG::Flow::IncompressibleMaterialBase< dim, number >::get_tau ( )
pure virtual

Compute the deviatoric stress τ for the given velocity gradient ∇u, set by reinit().

Returns
Deviatoric stress tensor τ(∇u).

Implemented in MeltPoolDG::Evaporation::IncompressibleNewtonianFluidEvaporationMaterial< dim, number >.

◆ get_vmult_d_tau_d_grad_vel()

template<int dim, typename number >
virtual dealii::Tensor< 2, dim, dealii::VectorizedArray< number > > MeltPoolDG::Flow::IncompressibleMaterialBase< dim, number >::get_vmult_d_tau_d_grad_vel ( )
pure virtual

Compute the material tangent of the deviatoric stress and perform a vmult with the gradient of the nodal DoF values δu, set by reinit(),.

∂ τ ---— * ∇N * δu ∂ ∇u |________| material tangent

with the shape functions N.

Returns
Material tangent of the deviatoric stress tensor multiplied with the gradient of the nodal DoF values δu.

Implemented in MeltPoolDG::Evaporation::IncompressibleNewtonianFluidEvaporationMaterial< dim, number >.

◆ reinit()

template<int dim, typename number >
virtual void MeltPoolDG::Flow::IncompressibleMaterialBase< dim, number >::reinit ( const dealii::Tensor< 2, dim, dealii::VectorizedArray< number > > &  velocity_gradient,
const unsigned int  cell_idx,
const unsigned int  quad_idx 
)
pure virtual

Reinit function to be used to compute quadrature point variables.

Parameters
velocity_gradientGradient of the velocity vector.
cell_idxCurrent cell index.
quad_idxCurrent quadrature point index.

Implemented in MeltPoolDG::Evaporation::IncompressibleNewtonianFluidEvaporationMaterial< dim, number >.

◆ update_ghost_values()

template<int dim, typename number >
virtual void MeltPoolDG::Flow::IncompressibleMaterialBase< dim, number >::update_ghost_values ( )
inlinevirtual

Update ghost values of the vectors, to be used to compute the deviatoric stress.

Default: do nothing

Reimplemented in MeltPoolDG::Evaporation::IncompressibleNewtonianFluidEvaporationMaterial< dim, number >.

◆ zero_out_ghost_values()

template<int dim, typename number >
virtual void MeltPoolDG::Flow::IncompressibleMaterialBase< dim, number >::zero_out_ghost_values ( )
inlinevirtual

Zero out ghost values of the vectors, to be used to compute the deviatoric stress.

Default: do nothing

Reimplemented in MeltPoolDG::Evaporation::IncompressibleNewtonianFluidEvaporationMaterial< dim, number >.


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