bilinearForm.hh

Go to the documentation of this file.
1 
6 #ifndef linDG1DbilinearForm_hh
7 #define linDG1DbilinearForm_hh
8 
9 #include "basics/typedefs.hh"
10 #include "operator/bilinearForm.hh"
12 
13 namespace linDG1D {
14 
15  using concepts::Real;
16 
17  // *********************************************************** BoundaryInt **
18 
27  class BoundaryInt : public concepts::BilinearForm<Real> {
28  public:
30  virtual void operator()(const concepts::Element<Real>& elmX,
31  const concepts::Element<Real>& elmY,
33  virtual void operator()(const concepts::Element<Real>& elmX,
34  const concepts::Element<Real>& elmY,
36  const concepts::ElementPair<Real>& ep) const;
37  virtual BoundaryInt* clone() const { return new BoundaryInt(bc_); }
38  private:
40  };
41 
42  // ******************************************************* BoundaryIntStab **
43 
49  class BoundaryIntStab : public concepts::BilinearForm<Real> {
50  public:
51  virtual void operator()(const concepts::Element<Real>& elmX,
52  const concepts::Element<Real>& elmY,
55  }
56  virtual void operator()(const concepts::Element<Real>& elmX,
57  const concepts::Element<Real>& elmY,
59  const concepts::ElementPair<Real>& ep) const;
60  virtual BoundaryIntStab* clone() const { return new BoundaryIntStab(); }
61  };
62 
63 } // namespace linDG1D
64 
65 #endif // linDG1DbilinearForm_hh
virtual void operator()(const concepts::Element< Real > &elmX, const concepts::Element< Real > &elmY, concepts::ElementMatrix< Real > &em, const concepts::ElementPair< Real > &ep) const
BoundaryInt(concepts::BoundaryConditions *bc=0)
Definition: bilinearForm.hh:29
virtual BoundaryInt * clone() const
Virtual constructor.
Definition: bilinearForm.hh:37
#define conceptsAssert(cond, exc)
Assert that a certain condition is fulfilled.
Definition: exceptions.hh:394
Boundary integral for the DG FEM in 1D.
Definition: bilinearForm.hh:27
Abstract function class to evaluate a bilinear form.
Definition: bilinearForm.hh:33
concepts::BoundaryConditions * bc_
Definition: bilinearForm.hh:39
Exception class for assertions.
Definition: exceptions.hh:258
virtual void operator()(const concepts::Element< Real > &elmX, const concepts::Element< Real > &elmY, concepts::ElementMatrix< Real > &em) const
Definition: bilinearForm.hh:51
virtual void operator()(const concepts::Element< Real > &elmX, const concepts::Element< Real > &elmY, concepts::ElementMatrix< Real > &em, const concepts::ElementPair< Real > &ep) const
virtual BoundaryIntStab * clone() const
Virtual constructor.
Definition: bilinearForm.hh:60
DG FEM for 1D problems using piecewise linear shape functions.
Definition: bilinearForm.hh:13
Stabilizing boundary integral for the DG FEM in 1D.
Definition: bilinearForm.hh:49
virtual void operator()(const concepts::Element< Real > &elmX, const concepts::Element< Real > &elmY, concepts::ElementMatrix< Real > &em) const
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