|
| | IncompressibleNewtonianFluidEvaporationMaterial (const ScratchData< dim, dim, number > &scratch_data, const std::function< const dealii::VectorizedArray< number > &(const unsigned int cell, const unsigned int q)> get_viscosity, const BlockVectorType &normal_vector, const dealii::LinearAlgebra::distributed::Vector< number > &heaviside, const unsigned int normal_dof_idx, const unsigned int ls_hanging_nodes_dof_idx, const unsigned int velocity_quad_idx) |
| |
| void | reinit (const dealii::Tensor< 2, dim, dealii::VectorizedArray< number > > &velocity_gradient, const unsigned int cell_idx, const unsigned int quad_idx) final |
| |
| dealii::Tensor< 2, dim, dealii::VectorizedArray< number > > | get_tau () final |
| |
| dealii::Tensor< 2, dim, dealii::VectorizedArray< number > > | get_vmult_d_tau_d_grad_vel () final |
| |
| void | update_ghost_values () final |
| |
| void | zero_out_ghost_values () final |
| |
| virtual | ~IncompressibleMaterialBase ()=default |
| |
|
| const ScratchData< dim, dim, number > & | scratch_data |
| |
| const std::function< const dealii::VectorizedArray< number > &(const unsigned int cell, const unsigned int q)> | get_viscosity |
| |
| const BlockVectorType & | normal_vector |
| |
| const dealii::LinearAlgebra::distributed::Vector< number > & | heaviside |
| |
| const unsigned int | normal_dof_idx |
| |
| const unsigned int | ls_hanging_nodes_dof_idx |
| |
| const unsigned int | velocity_quad_idx |
| |
| FECellIntegrator< dim, dim, number > | normal_vals |
| |
| FECellIntegrator< dim, 1, number > | ls_vals |
| |
| dealii::Tensor< 2, dim, dealii::VectorizedArray< number > > | grad_u |
| |
| dealii::VectorizedArray< number > | div_u |
| |
| dealii::VectorizedArray< number > | viscosity |
| |
| dealii::Tensor< 1, dim, dealii::VectorizedArray< number > > | normal |
| |
| dealii::VectorizedArray< number > | hs |
| |
| unsigned int | cell |
| |
| bool | ls_update_ghosts = true |
| |
| bool | normal_update_ghosts = true |
| |
template<int dim, typename number>
class MeltPoolDG::Evaporation::IncompressibleNewtonianFluidEvaporationMaterial< dim, number >
Class for the shear stress computation of an incompressible vapor/liquid mixture, where the velocity field is not divergence-free in the interfacial region. The intention is to correct the rate-of-deformation tensor to be nearly deviatoric.
It is assumed that the stress computes as follows
σ = -p * I + 2 * μ * (D - tr(D) * n⊗ n)
with the Cauchy stress tensor σ, the pressure p, the second-order identity tensor I, the dynamic viscosity μ, the rate-of-deformation tensor
D = 0.5 * (∇u + (∇u)^T),
the interfacial unit normal vector n and the dyadic product ⊗ .
template<int dim, typename number >
Return 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 and the material tangent written in index notation
∂ τ --— = C = 2 * μ * (δ - δ * n n ) ∂ ∇u ijkl ijkl ij k l
with the Kronecker delta δ.
Implements MeltPoolDG::Flow::IncompressibleMaterialBase< dim, number >.