linearForm.hh

Go to the documentation of this file.
1 
6 #ifndef dgLinearForms_hh
7 #define dgLinearForms_hh
8 
9 #include "basics/typedefs.hh"
10 #include "formula/formula.hh"
11 #include "formula/boundary.hh"
13 #include "timestepping/vectors.hh"
14 #include "element.hh"
15 
16 #include <vector>
17 
18 #define DEBUG_FILLDATA 0
19 
20 namespace linDG3D {
21  using concepts::Real;
22 
23  // ************************************************************** ConstRhs **
24 
31  public:
32  ConstRhs(Real c = 1.0) : c_(c) {}
38  virtual void operator()(const concepts::Element<Real>& elm,
44  void operator()(const FvdgElement& elm,
46  private:
48  };
49 
50  // *********************************************************** FvdgTimeRhs **
53  public:
60  frm_(frm) {}
65  void operator() (const concepts::Element<Real> &elmBase,
67  private:
69  };
70 
71  //******************************************************** FvdgTimeRhsDiff **
74  public:
83  concepts::BoundaryConditions* bc, bool symm = false) :
84  timestepping::TimeLinearForm(), frm_(frm), eps_(eps), bc_(bc) {
85  symm_ = symm ? -1 : 1;
86  }
91  void operator() (const concepts::Element<Real> &elmBase,
93  private:
95  const Real eps_;
97  int symm_;
98  };
99 
100 } // namespace linDG3D
101 
102 #endif //dgLinearForms_hh
void operator()(const concepts::Element< Real > &elmBase, concepts::ElementMatrix< Real > &em)
Application operator.
const concepts::Formula< Real > & frm_
Definition: linearForm.hh:68
FvdgTimeRhs(concepts::Formula< Real > &frm)
Constructor.
Definition: linearForm.hh:58
ConstRhs(Real c=1.0)
Definition: linearForm.hh:32
const concepts::Formula< Real > & frm_
Definition: linearForm.hh:94
Timestepping methods used to solve PDEs in time and space.
Definition: alpha.hh:18
Generic tetrahedral element for FV/DG method.
Definition: element.hh:31
FvdgTimeRhsDiff(concepts::Formula< Real > &frm, Real eps, concepts::BoundaryConditions *bc, bool symm=false)
Constructor.
Definition: linearForm.hh:82
Fvdg right hand side for time dependent problems.
Definition: linearForm.hh:52
void operator()(const FvdgElement &elm, concepts::ElementMatrix< Real > &em)
Application operator.
TimeLinearForm for constant right hand side.
Definition: linearForm.hh:30
Abstract class implementing time dependent linear forms.
Definition: vectors.hh:35
Fvdg right hand side for time dependent problems with diffusion.
Definition: linearForm.hh:73
void operator()(const concepts::Element< Real > &elmBase, concepts::ElementMatrix< Real > &em)
Application operator.
virtual void operator()(const concepts::Element< Real > &elm, concepts::ElementMatrix< Real > &em)
Application operator.
DG-FEM methods to solve elliptic and hyperbolic PDE's.
Definition: bilinearForm.hh:18
const concepts::BoundaryConditions * bc_
Definition: linearForm.hh:96
double Real
Type normally used for a floating point number.
Definition: typedefs.hh:36
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich