dune-localfunctions 2.8.0
Loading...
Searching...
No Matches
refinedp0.hh
Go to the documentation of this file.
1// -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2// vi: set et ts=4 sw=2 sts=2:
3#ifndef DUNE_REFINED_P0_LOCALFINITEELEMENT_HH
4#define DUNE_REFINED_P0_LOCALFINITEELEMENT_HH
5
6#include <dune/geometry/type.hh>
7
10
14
18namespace Dune
19{
20
23 template<class D, class R, int dim>
25 {
27
28 public:
29 // We steal the p0 traits since they exist for all dim.
30 // This allows to instantiate the type and access the Traits.
32 };
33
36 template<class D, class R>
38 {
39 public:
46
50 {}
51
54 const typename Traits::LocalBasisType& localBasis () const
55 {
56 return basis_;
57 }
58
62 {
63 return coefficients_;
64 }
65
69 {
70 return interpolation_;
71 }
72
74 unsigned int size () const
75 {
76 return basis_.size();
77 }
78
81 static constexpr GeometryType type ()
82 {
83 return GeometryTypes::line;
84 }
85
86 private:
90 };
91
94 template<class D, class R>
96 {
97 public:
104
108 {}
109
112 const typename Traits::LocalBasisType& localBasis () const
113 {
114 return basis_;
115 }
116
120 {
121 return coefficients_;
122 }
123
127 {
128 return interpolation_;
129 }
130
132 unsigned int size () const
133 {
134 return basis_.size();
135 }
136
139 static constexpr GeometryType type ()
140 {
141 return GeometryTypes::triangle;
142 }
143
144 private:
146 RefinedP0LocalCoefficients<2> coefficients_;
148 };
149
152 template<class D, class R>
154 {
155 public:
162
166 {}
167
170 const typename Traits::LocalBasisType& localBasis () const
171 {
172 return basis_;
173 }
174
178 {
179 return coefficients_;
180 }
181
185 {
186 return interpolation_;
187 }
188
190 unsigned int size () const
191 {
192 return basis_.size();
193 }
194
197 static constexpr GeometryType type ()
198 {
199 return GeometryTypes::tetrahedron;
200 }
201
202 private:
204 RefinedP0LocalCoefficients<3> coefficients_;
206 };
207
208
209}
210
211#endif
Definition: bdfmcube.hh:16
traits helper struct
Definition: localfiniteelementtraits.hh:11
LB LocalBasisType
Definition: localfiniteelementtraits.hh:14
LC LocalCoefficientsType
Definition: localfiniteelementtraits.hh:18
LI LocalInterpolationType
Definition: localfiniteelementtraits.hh:22
Local finite element that is piecewise P0 on a once uniformly refined reference geometry.
Definition: refinedp0.hh:25
P0LocalFiniteElement< D, R, dim >::Traits Traits
Definition: refinedp0.hh:31
const Traits::LocalBasisType & localBasis() const
Definition: refinedp0.hh:54
static constexpr GeometryType type()
Definition: refinedp0.hh:81
RefinedP0LocalFiniteElement()
Definition: refinedp0.hh:49
const Traits::LocalInterpolationType & localInterpolation() const
Definition: refinedp0.hh:68
const Traits::LocalCoefficientsType & localCoefficients() const
Definition: refinedp0.hh:61
LocalFiniteElementTraits< RefinedP0LocalBasis< D, R, 1 >, RefinedP0LocalCoefficients< 1 >, RefinedP0LocalInterpolation< RefinedP0LocalBasis< D, R, 1 > > > Traits
Definition: refinedp0.hh:45
unsigned int size() const
Number of shape functions in this finite element.
Definition: refinedp0.hh:74
unsigned int size() const
Number of shape functions in this finite element.
Definition: refinedp0.hh:132
RefinedP0LocalFiniteElement()
Definition: refinedp0.hh:107
static constexpr GeometryType type()
Definition: refinedp0.hh:139
LocalFiniteElementTraits< RefinedP0LocalBasis< D, R, 2 >, RefinedP0LocalCoefficients< 2 >, RefinedP0LocalInterpolation< RefinedP0LocalBasis< D, R, 2 > > > Traits
Definition: refinedp0.hh:103
const Traits::LocalCoefficientsType & localCoefficients() const
Definition: refinedp0.hh:119
const Traits::LocalInterpolationType & localInterpolation() const
Definition: refinedp0.hh:126
const Traits::LocalBasisType & localBasis() const
Definition: refinedp0.hh:112
RefinedP0LocalFiniteElement()
Definition: refinedp0.hh:165
const Traits::LocalBasisType & localBasis() const
Definition: refinedp0.hh:170
const Traits::LocalInterpolationType & localInterpolation() const
Definition: refinedp0.hh:184
static constexpr GeometryType type()
Definition: refinedp0.hh:197
unsigned int size() const
Number of shape functions in this finite element.
Definition: refinedp0.hh:190
const Traits::LocalCoefficientsType & localCoefficients() const
Definition: refinedp0.hh:177
LocalFiniteElementTraits< RefinedP0LocalBasis< D, R, 3 >, RefinedP0LocalCoefficients< 3 >, RefinedP0LocalInterpolation< RefinedP0LocalBasis< D, R, 3 > > > Traits
Definition: refinedp0.hh:161
Uniformly refined constant shape functions on a unit simplex in R^dim.
Definition: refinedp0localbasis.hh:38
Layout map for RefinedP0 elements.
Definition: refinedp0localcoefficients.hh:23
Definition: refinedp0localinterpolation.hh:13