You are here:
Concepts
>
Concepts Web
>
Class documentation
Class documentation of Concepts
Loading...
Searching...
No Matches
linearFEM
bilinearForm1D.hh
Go to the documentation of this file.
1
6
#ifndef bilinearLinFEM1d_hh
7
#define bilinearLinFEM1d_hh
8
9
#include <memory>
10
#include "
basics/typedefs.hh
"
11
#include "
basics/vectorsMatrices.hh
"
12
#include "
formula/formula.hh
"
13
#include "
operator/bilinearForm.hh
"
14
#include "
integration/quadrature.hh
"
15
16
17
namespace
linearFEM
{
18
19
using
concepts::Real
;
20
21
class
Line;
22
23
// ************************************************************* Laplace1d **
24
32
class
Laplace1d
:
public
concepts::BilinearForm
<Real> {
33
public
:
34
virtual
void
operator()(
const
concepts::Element<Real>
& elmX,
35
const
concepts::Element<Real>
& elmY,
36
concepts::ElementMatrix<Real>
& em)
const
;
37
virtual
Laplace1d
*
clone
()
const
{
return
new
Laplace1d
(); }
38
};
39
40
// ************************************************************ Identity1d **
41
49
class
Identity1d
:
public
concepts::BilinearForm
<Real> {
50
public
:
51
virtual
void
operator()(
const
concepts::Element<Real>
& elmX,
52
const
concepts::Element<Real>
& elmY,
53
concepts::ElementMatrix<Real>
& em)
const
;
54
virtual
Identity1d
*
clone
()
const
{
return
new
Identity1d
(); }
55
};
56
57
// *********************************************************** CIdentity1d **
58
67
class
CIdentity1d
:
public
concepts::BilinearForm
<Real> {
68
public
:
73
CIdentity1d
(
const
concepts::Formula<Real>
& frm,
74
const
uint gauss_p = 1) :
75
frm_(frm.
clone
()), quad_(gauss_p) {}
76
virtual
void
operator()(
const
concepts::Element<Real>
& elmX,
77
const
concepts::Element<Real>
& elmY,
78
concepts::ElementMatrix<Real>
& em)
const
;
79
virtual
CIdentity1d
*
clone
()
const
{
80
return
new
CIdentity1d
(*frm_.get(), quad_.
n
()); }
81
private
:
83
std::unique_ptr<const concepts::Formula<Real> > frm_;
85
const
concepts::Quadrature<4>
quad_;
86
};
87
88
}
// namespace linearFEM
89
90
#endif
// bilinearLinFEM1d_hh
concepts::BilinearForm
Definition
bilinearForm.hh:33
concepts::ElementMatrix
Definition
element.hh:206
concepts::Element
Definition
element.hh:52
concepts::Formula
Definition
formula.hh:34
concepts::Quadrature
Definition
quadrature.hh:97
concepts::Quadrature::n
uint n() const
Returns the number of quadrature points.
Definition
quadrature.hh:109
linearFEM::CIdentity1d
Definition
bilinearForm1D.hh:67
linearFEM::CIdentity1d::clone
virtual CIdentity1d * clone() const
Definition
bilinearForm1D.hh:79
linearFEM::CIdentity1d::CIdentity1d
CIdentity1d(const concepts::Formula< Real > &frm, const uint gauss_p=1)
Definition
bilinearForm1D.hh:73
linearFEM::Identity1d
Definition
bilinearForm1D.hh:49
linearFEM::Identity1d::clone
virtual Identity1d * clone() const
Definition
bilinearForm1D.hh:54
linearFEM::Laplace1d
Definition
bilinearForm1D.hh:32
linearFEM::Laplace1d::clone
virtual Laplace1d * clone() const
Definition
bilinearForm1D.hh:37
formula.hh
concepts::Real
double Real
Definition
typedefs.hh:39
linearFEM
Definition
spaceTraits.hh:19
bilinearForm.hh
quadrature.hh
typedefs.hh
vectorsMatrices.hh
Generated on Wed Sep 13 2023 21:06:22 for Concepts by
1.9.8