include/meltpooldg/utilities/dg_generic_convection_diffusion_worker.hpp File Reference
|
Developer Documentation
|
#include <deal.II/base/tensor.h>#include <deal.II/base/vectorization.h>#include <meltpooldg/utilities/dealii_tensor.hpp>Go to the source code of this file.
Namespaces | |
| namespace | MeltPoolDG |
| Interface for a general preconditioner. | |
| namespace | MeltPoolDG::Utils |
| Implementation of functions defined by C++23. | |
Concepts | |
| concept | MeltPoolDG::Utils::ConvectionKernelType |
| concept | MeltPoolDG::Utils::DiffusionKernelType |
Detailed Description
This file provides generic discontinuous Galerkin operators for convection–diffusion type problems. The design follows a kernel-based abstraction:
- The operators handle the discretization details, i.e., the evaluation of cell and face contributions at quadrature points.
- The kernels define the physical model by specifying how convective and diffusive fluxes are computed from local solution values and gradients.
By separating discretization logic from flux definitions, the same operator implementation can be reused for different PDE systems simply by supplying different kernel implementations.
The operators are based on a DG formulation using the symmetric interior penalty method for diffusion and a numerical flux formulation for convection. Depending on the selected operator and kernel, this infrastructure can be used for:
- Pure convection problems,
- Pure diffusion problems, or
- Coupled convection-diffusion problems.
The provided operators are intended for matrix-free implementations, where cell and face integrals are evaluated directly at quadrature points. To support this usage, separate interfaces are provided for computing:
- Cell contributions (volume integrals), and
- Face contributions (numerical fluxes across interfaces).
Generated by