Class documentation of Concepts

Loading...
Searching...
No Matches
bilinearForm2D.hh
Go to the documentation of this file.
1
6#ifndef bilinearLinFEM_hh
7#define bilinearLinFEM_hh
8
9#include "basics/typedefs.hh"
12#include "toolbox/array.hh"
13
14namespace linearFEM {
15
16 using concepts::Real;
17
18 class Quad;
19 class Triangle;
20
21 // ************************************************************* Laplace2d **
22
30 class Laplace2d : public concepts::BilinearForm<Real> {
31 public:
32 virtual void operator()(const concepts::Element<Real>& elmX,
33 const concepts::Element<Real>& elmY,
39 void operator()(const linearFEM::Quad& elmX,
40 const linearFEM::Quad& elmY,
46 const linearFEM::Triangle& elmY,
48 virtual Laplace2d* clone() const { return new Laplace2d(); }
49 private:
52 };
53
54 // ************************************************************ Identity2d **
55
63 class Identity2d : public concepts::BilinearForm<Real> {
64 public:
65 virtual void operator()(const concepts::Element<Real>& elmX,
66 const concepts::Element<Real>& elmY,
72 void operator()(const linearFEM::Quad& elmX,
73 const linearFEM::Quad& elmY,
79 const linearFEM::Triangle& elmY,
81 virtual Identity2d* clone() const { return new Identity2d(); }
82 private:
84 mutable concepts::Array<Real> shpfct_;
85 };
86
87} // namespace linearFEM
88
89#endif // bilinearLinFEM_hh
virtual Identity2d * clone() const
void operator()(const linearFEM::Quad &elmX, const linearFEM::Quad &elmY, concepts::ElementMatrix< Real > &em) const
void operator()(const linearFEM::Triangle &elmX, const linearFEM::Triangle &elmY, concepts::ElementMatrix< Real > &em) const
void operator()(const linearFEM::Triangle &elmX, const linearFEM::Triangle &elmY, concepts::ElementMatrix< Real > &em) const
virtual Laplace2d * clone() const
void operator()(const linearFEM::Quad &elmX, const linearFEM::Quad &elmY, concepts::ElementMatrix< Real > &em) const
double Real
Definition typedefs.hh:39