DGDiffusionOperator< dim, number, Kernel, VectorizedArrayType > Struct Template Reference
|
Developer Documentation
|
MeltPoolDG::Utils::DGDiffusionOperator< dim, number, Kernel, VectorizedArrayType > Struct Template Reference
#include <dg_generic_convection_diffusion_worker.hpp>
Classes | |
| struct | FaceFlux |
Public Types | |
| using | ValueType = typename Kernel::ValueType |
| using | GradientType = typename Kernel::GradientType |
Static Public Member Functions | |
| static GradientType | cell (const ValueType &u, const GradientType &grad_u, const Kernel &kernel) |
| static FaceFlux | face (const ValueType &u_m, const ValueType &u_p, const GradientType &grad_u_m, const GradientType &grad_u_p, const dealii::Tensor< 1, dim, VectorizedArrayType > &normal, const VectorizedArrayType penalty_parameter, const Kernel &kernel) |
Detailed Description
template<int dim, typename number, DiffusionKernelType Kernel, typename VectorizedArrayType = dealii::VectorizedArray<number>>
struct MeltPoolDG::Utils::DGDiffusionOperator< dim, number, Kernel, VectorizedArrayType >
struct MeltPoolDG::Utils::DGDiffusionOperator< dim, number, Kernel, VectorizedArrayType >
Generic discontinuous Galerkin operator for diffusion problems, based on the symmetric interior penalty method. The physical diffusive flux is defined by a user-provided kernel, which specifies how the flux depends on the local solution value and its gradient.
Member Typedef Documentation
◆ GradientType
template<int dim, typename number , DiffusionKernelType Kernel, typename VectorizedArrayType = dealii::VectorizedArray<number>>
| using MeltPoolDG::Utils::DGDiffusionOperator< dim, number, Kernel, VectorizedArrayType >::GradientType = typename Kernel::GradientType |
◆ ValueType
template<int dim, typename number , DiffusionKernelType Kernel, typename VectorizedArrayType = dealii::VectorizedArray<number>>
| using MeltPoolDG::Utils::DGDiffusionOperator< dim, number, Kernel, VectorizedArrayType >::ValueType = typename Kernel::ValueType |
Member Function Documentation
◆ cell()
template<int dim, typename number , DiffusionKernelType Kernel, typename VectorizedArrayType = dealii::VectorizedArray<number>>
|
inlinestatic |
Compute the diffusive flux contribution at a cell quadrature point using the provided kernel.
- Parameters
-
u Local values of the conserved variables at the quadrature point. grad_u Local gradients of the conserved variables at the quadrature point. kernel User-provided kernel defining how to compute the diffusive flux from the local solution values and gradients.
- Returns
- Diffusive flux contribution for the cell integral.
◆ face()
template<int dim, typename number , DiffusionKernelType Kernel, typename VectorizedArrayType = dealii::VectorizedArray<number>>
|
inlinestatic |
Compute the diffusive flux contribution at a face quadrature point using the symmetric interior penalty method based on the provided kernel.
- Parameters
-
u_m Local values of the conserved variables on the inner face. u_p Local values of the conserved variables on the outer face. grad_u_m Local gradients of the conserved variables on the inner face. grad_u_p Local gradients of the conserved variables on the outer face. normal Outer facing normal vector at the face quadrature point. penalty_parameter Local value of the interior penalty parameter at the face quadrature point. kernel User-provided kernel defining how to compute the diffusive flux from the local solution values and gradients.
- Returns
- Diffusive flux contribution for the face integral, including both inner and outer face values and gradients.
The documentation for this struct was generated from the following file:
- include/meltpooldg/utilities/dg_generic_convection_diffusion_worker.hpp
Generated by