DUNE-FEM (unstable)

localrieszprojection.hh
1#ifndef DUNE_FEM_OPERATOR_PROJECTION_LOCAL_RIESZ_LOCALRIESZPROJECTION_HH
2#define DUNE_FEM_OPERATOR_PROJECTION_LOCAL_RIESZ_LOCALRIESZPROJECTION_HH
3
5
6namespace Dune
7{
8
9 namespace Fem
10 {
11
12 // LocalRieszProjection
13 // --------------------
14
21 template< class BasisFunctionSet, class Implementation >
23 {
24 public:
27
28 protected:
29#ifndef DOXYGEN
30
31 LocalRieszProjection () = default;
32
33#endif // #ifndef DOXYGEN
34
41
44
47
50
59 {
60 CHECK_INTERFACE_IMPLEMENTATION( impl().basisFunctionSet() );
61 return impl().basisFunctionSet();
62 }
63
71 template< class F, class LocalDofVector >
72 void operator() ( const F &f, LocalDofVector &localDofVector ) const
73 {
74 impl()( f, localDofVector );
75 }
76
84 template< class F, class LocalDofVector >
85 void apply ( const F &f, LocalDofVector &localDofVector ) const
86 {
87 CHECK_INTERFACE_IMPLEMENTATION( impl().apply( f, localDofVector ) );
88 impl().apply( f, localDofVector );
89 }
90
93 protected:
94 const Implementation &impl () const
95 {
96 return static_cast< const Implementation & >( *this );
97 }
98 };
99
100 } // namespace Fem
101
102} // namepsace Dune
103
104#endif // #ifndef DUNE_FEM_OPERATOR_PROJECTION_LOCAL_RIESZ_LOCALRIESZPROJECTION_HH
Provides check for implementation of interface methods when using static polymorphism,...
Interface class for basis function sets.
Definition: basisfunctionset.hh:32
interface documentation of a local Riesz projection
Definition: localrieszprojection.hh:23
LocalRieszProjection(const LocalRieszProjection &)=default
copy constructor
BasisFunctionSet basisFunctionSet() const
return basis function set
Definition: localrieszprojection.hh:58
void operator()(const F &f, LocalDofVector &localDofVector) const
compute Riesz representation
Definition: localrieszprojection.hh:72
BasisFunctionSet BasisFunctionSetType
basis function set
Definition: localrieszprojection.hh:26
void apply(const F &f, LocalDofVector &localDofVector) const
compute Riesz representation
Definition: localrieszprojection.hh:85
LocalRieszProjection(LocalRieszProjection &&)
move constructor
Definition: localrieszprojection.hh:43
LocalRieszProjection & operator=(const LocalRieszProjection &)=default
assignment operator
Dune namespace.
Definition: alignedallocator.hh:13
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Nov 22, 23:33, 2024)