|
| 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...
|
|
template<typename EG , typename LFSU , typename X , typename LFSV , typename R > |
void | alpha_volume (const EG &eg, const LFSU &lfsu, const X &x, const LFSV &lfsv, R &r) const |
|
template<typename EG , typename LFSU , typename X , typename LFSV , typename Y > |
void | jacobian_apply_volume (const EG &eg, const LFSU &lfsu, const X &x, const LFSV &lfsv, Y &y) const |
|
template<typename EG , typename LFSU , typename X , typename LFSV , typename M > |
void | jacobian_volume (const EG &eg, const LFSU &lfsu, const X &x, const LFSV &lfsv, M &mat) const |
|
template<typename IG , typename LFSU , typename X , typename LFSV , typename R > |
void | alpha_skeleton (const IG &ig, const LFSU &lfsu_s, const X &x_s, const LFSV &lfsv_s, const LFSU &lfsu_n, const X &x_n, const LFSV &lfsv_n, R &r_s, R &r_n) const |
|
template<typename IG , typename LFSU , typename X , typename LFSV , typename Y > |
void | jacobian_apply_skeleton (const IG &ig, const LFSU &lfsu_s, const X &x_s, const LFSV &lfsv_s, const LFSU &lfsu_n, const X &x_n, const LFSV &lfsv_n, Y &y_s, Y &y_n) const |
|
template<typename IG , typename LFSU , typename X , typename LFSV , typename M > |
void | jacobian_skeleton (const IG &ig, const LFSU &lfsu_s, const X &x_s, const LFSV &lfsv_s, const LFSU &lfsu_n, const X &x_n, const LFSV &lfsv_n, M &mat_ss, M &mat_sn, M &mat_ns, M &mat_nn) const |
|
template<typename IG , typename LFSU , typename X , typename LFSV , typename R > |
void | residual_boundary_integral (const IG &ig, const LFSU &lfsu_s, const X &x_s, const LFSV &lfsv_s, R &r_s, bool jacobian_apply=false) const |
|
template<typename IG , typename LFSU , typename X , typename LFSV , typename R > |
void | alpha_boundary (const IG &ig, const LFSU &lfsu_s, const X &x_s, const LFSV &lfsv_s, R &r_s) const |
|
template<typename IG , typename LFSU , typename X , typename LFSV , typename Y > |
void | jacobian_apply_boundary (const IG &ig, const LFSU &lfsu_s, const X &x_s, const LFSV &lfsv_s, Y &y_s) const |
|
template<typename IG , typename LFSU , typename X , typename LFSV , typename M > |
void | jacobian_boundary (const IG &ig, const LFSU &lfsu_s, const X &x_s, const LFSV &lfsv_s, M &mat_ss) const |
|
template<typename EG , typename LFSV , typename R > |
void | lambda_volume (const EG &eg, const LFSV &lfsv, R &r) const |
|
void | setTime (Real t) |
| set time in parameter class More...
|
|
template<typename LFSU , typename LFSV , typename LocalPattern > |
void | pattern_skeleton (const LFSU &lfsu_s, const LFSV &lfsv_s, const LFSU &lfsu_n, const LFSV &lfsv_n, LocalPattern &pattern_sn, LocalPattern &pattern_ns) const |
|
template<typename LFSU , typename LFSV , typename LocalPattern > |
void | pattern_volume (const LFSU &lfsu, const LFSV &lfsv, LocalPattern &pattern) const |
|
void | setTime (T::Traits::RangeFieldType t_) |
| set time for subsequent evaluation More...
|
|
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 More...
|
|
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
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 |