dune-fem  2.4.1-rc
localrieszprojection.hh
Go to the documentation of this file.
1 #ifndef DUNE_FEM_OPERATOR_PROJECTION_LOCAL_RIESZ_LOCALRIESZPROJECTION_HH
2 #define DUNE_FEM_OPERATOR_PROJECTION_LOCAL_RIESZ_LOCALRIESZPROJECTION_HH
3 
4 #include <dune/common/bartonnackmanifcheck.hh>
5 
6 namespace 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 
40  LocalRieszProjection ( const LocalRieszProjection & ) = default;
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
void operator()(const F &f, LocalDofVector &localDofVector) const
compute Riesz representation
Definition: localrieszprojection.hh:72
BasisFunctionSet basisFunctionSet() const
return basis function set
Definition: localrieszprojection.hh:58
interface documentation of a local Riesz projection
Definition: localrieszprojection.hh:22
Definition: coordinate.hh:4
LocalRieszProjection(LocalRieszProjection &&)
move constructor
Definition: localrieszprojection.hh:43
const Implementation & impl() const
Definition: localrieszprojection.hh:94
LocalRieszProjection(const LocalRieszProjection &)=default
copy constructor
void apply(const F &f, LocalDofVector &localDofVector) const
compute Riesz representation
Definition: localrieszprojection.hh:85
Definition: basisfunctionset/basisfunctionset.hh:31
LocalRieszProjection & operator=(const LocalRieszProjection &)=default
assignment operator
BasisFunctionSet BasisFunctionSetType
basis function set
Definition: localrieszprojection.hh:26