|
|
enum | |
| Whether to do selective assembly on the elements, i.e. whether or not skip_entity() should be called.
|
|
enum | |
| Whether to do selective assembly on the intersections, i.e. whether or not skip_intersection() should be called.
|
|
|
enum | |
| Whether to assemble the pattern on the elements, i.e. whether or not pattern_volume() should be called.
|
|
enum | |
| Whether to assemble the pattern on the elements after the skeleton has been handled, i.e. whether or not pattern_volume_post_skeleton() should be called.
|
|
enum | |
| Whether to assemble the pattern on the interior intersections, i.e. whether or not pattern_skeleton() should be called.
|
|
enum | |
| Whether to assemble the pattern on the boundary intersections, i.e. whether or not pattern_boundary() should be called.
|
|
|
enum | |
| Whether to call the local operator's alpha_volume(), jacobian_apply_volume() and jacobian_volume().
|
|
enum | |
| Whether to call the local operator's alpha_volume_post_skeleton(), jacobian_apply_volume_post_skeleton() and jacobian_volume_post_skeleton().
|
|
enum | |
| Whether to call the local operator's alpha_skeleton(), jacobian_apply_skeleton() and jacobian_skeleton().
|
|
enum | |
| Whether to call the local operator's alpha_boundary(), jacobian_apply_boundary() and jacobian_boundary().
|
|
|
enum | |
| Whether to call the local operator's lambda_volume().
|
|
enum | |
| Whether to call the local operator's lambda_volume_post_skeleton().
|
|
enum | |
| Whether to call the local operator's lambda_skeleton().
|
|
enum | |
| Whether to call the local operator's lambda_boundary().
|
|
|
enum | |
| Whether to visit the skeleton methods from both sides.
|
|
enum | |
| Wheter the local operator describes a linear problem.
|
|
|
| ConvectionDiffusionDG (T ¶m_, ConvectionDiffusionDGMethod::Type method_=ConvectionDiffusionDGMethod::SIPG, ConvectionDiffusionDGWeights::Type weights_=ConvectionDiffusionDGWeights::weightsOn, Real alpha_=1.0, int intorderadd_=0) |
| constructor: pass parameter object and define DG-method More...
|
|
void | setTime (Real t) |
| set time in parameter class
|
|
T::Traits::RangeFieldType | getTime () const |
| get current time More...
|
|
void | preStep (RealType time, RealType dt, int stages) |
| to be called once before each time step More...
|
|
void | postStep () |
| to be called once at the end of each time step More...
|
|
void | preStage (RealType time, int r) |
| to be called once before each stage More...
|
|
int | getStage () const |
| get current stage More...
|
|
void | postStage () |
| to be called once at the end of each stage
|
|
RealType | suggestTimestep (RealType dt) const |
| to be called after stage 1 More...
|
|
template<typename T, typename FiniteElementMap>
class Dune::PDELab::ConvectionDiffusionDG< T, FiniteElementMap >
a local operator for solving the convection-diffusion equation with discontinuous Galerkin
\begin{align*} \nabla\cdot(-A(x) \nabla u + b(x) u) + c(x)u &=& f \mbox{ in } \Omega, \\ u &=& g \mbox{ on } \partial\Omega_D \\ (b(x) u - A(x)\nabla u) \cdot n &=& j \mbox{ on } \partial\Omega_N \\ -(A(x)\nabla u) \cdot n &=& o \mbox{ on } \partial\Omega_O \end{align*}
Note:
- This formulation is valid for velocity fields which are non-divergence free.
- Outflow boundary conditions should only be set on the outflow boundary
- This implementiation does not work with polynomial degree 0. Use ConvectionDiffusionCCFV in this case.
- Template Parameters
-
T | model of ConvectionDiffusionParameterInterface |