dune-localfunctions 2.10
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// SPDX-FileCopyrightInfo: Copyright © DUNE Project contributors, see file LICENSE.md in module root
4// SPDX-License-Identifier: LicenseRef-GPL-2.0-only-with-DUNE-exception
5#ifndef DUNE_REFINED_P0_LOCALFINITEELEMENT_HH
6#define DUNE_REFINED_P0_LOCALFINITEELEMENT_HH
7
8#include <dune/geometry/type.hh>
9
12
16
20namespace Dune
21{
22
27 template<class D, class R, int dim>
29 {
31
32 public:
33 // We steal the p0 traits since they exist for all dim.
34 // This allows to instantiate the type and access the Traits.
36 };
37
42 template<class D, class R>
44 {
45 public:
52
57
60 const typename Traits::LocalBasisType& localBasis () const
61 {
62 return basis_;
63 }
64
68 {
69 return coefficients_;
70 }
71
75 {
76 return interpolation_;
77 }
78
80 unsigned int size () const
81 {
82 return basis_.size();
83 }
84
87 static constexpr GeometryType type ()
88 {
89 return GeometryTypes::line;
90 }
91
92 private:
96 };
97
102 template<class D, class R>
104 {
105 public:
112
117
120 const typename Traits::LocalBasisType& localBasis () const
121 {
122 return basis_;
123 }
124
128 {
129 return coefficients_;
130 }
131
135 {
136 return interpolation_;
137 }
138
140 unsigned int size () const
141 {
142 return basis_.size();
143 }
144
147 static constexpr GeometryType type ()
148 {
149 return GeometryTypes::triangle;
150 }
151
152 private:
154 RefinedP0LocalCoefficients<2> coefficients_;
156 };
157
162 template<class D, class R>
164 {
165 public:
172
177
180 const typename Traits::LocalBasisType& localBasis () const
181 {
182 return basis_;
183 }
184
188 {
189 return coefficients_;
190 }
191
195 {
196 return interpolation_;
197 }
198
200 unsigned int size () const
201 {
202 return basis_.size();
203 }
204
207 static constexpr GeometryType type ()
208 {
209 return GeometryTypes::tetrahedron;
210 }
211
212 private:
214 RefinedP0LocalCoefficients<3> coefficients_;
216 };
217
218
219}
220
221#endif
Definition bdfmcube.hh:18
traits helper struct
Definition localfiniteelementtraits.hh:13
LB LocalBasisType
Definition localfiniteelementtraits.hh:16
LC LocalCoefficientsType
Definition localfiniteelementtraits.hh:20
LI LocalInterpolationType
Definition localfiniteelementtraits.hh:24
Local finite element that is piecewise P0 on a once uniformly refined reference geometry.
Definition refinedp0.hh:29
P0LocalFiniteElement< D, R, dim >::Traits Traits
Definition refinedp0.hh:35
const Traits::LocalBasisType & localBasis() const
Definition refinedp0.hh:60
static constexpr GeometryType type()
Definition refinedp0.hh:87
RefinedP0LocalFiniteElement()
Definition refinedp0.hh:55
const Traits::LocalInterpolationType & localInterpolation() const
Definition refinedp0.hh:74
const Traits::LocalCoefficientsType & localCoefficients() const
Definition refinedp0.hh:67
LocalFiniteElementTraits< RefinedP0LocalBasis< D, R, 1 >, RefinedP0LocalCoefficients< 1 >, RefinedP0LocalInterpolation< RefinedP0LocalBasis< D, R, 1 > > > Traits
Definition refinedp0.hh:51
unsigned int size() const
Number of shape functions in this finite element.
Definition refinedp0.hh:80
unsigned int size() const
Number of shape functions in this finite element.
Definition refinedp0.hh:140
RefinedP0LocalFiniteElement()
Definition refinedp0.hh:115
static constexpr GeometryType type()
Definition refinedp0.hh:147
LocalFiniteElementTraits< RefinedP0LocalBasis< D, R, 2 >, RefinedP0LocalCoefficients< 2 >, RefinedP0LocalInterpolation< RefinedP0LocalBasis< D, R, 2 > > > Traits
Definition refinedp0.hh:111
const Traits::LocalCoefficientsType & localCoefficients() const
Definition refinedp0.hh:127
const Traits::LocalInterpolationType & localInterpolation() const
Definition refinedp0.hh:134
const Traits::LocalBasisType & localBasis() const
Definition refinedp0.hh:120
RefinedP0LocalFiniteElement()
Definition refinedp0.hh:175
const Traits::LocalBasisType & localBasis() const
Definition refinedp0.hh:180
const Traits::LocalInterpolationType & localInterpolation() const
Definition refinedp0.hh:194
static constexpr GeometryType type()
Definition refinedp0.hh:207
unsigned int size() const
Number of shape functions in this finite element.
Definition refinedp0.hh:200
const Traits::LocalCoefficientsType & localCoefficients() const
Definition refinedp0.hh:187
LocalFiniteElementTraits< RefinedP0LocalBasis< D, R, 3 >, RefinedP0LocalCoefficients< 3 >, RefinedP0LocalInterpolation< RefinedP0LocalBasis< D, R, 3 > > > Traits
Definition refinedp0.hh:171
Uniformly refined constant shape functions on a unit simplex in R^dim.
Definition refinedp0localbasis.hh:41
Layout map for RefinedP0 elements.
Definition refinedp0localcoefficients.hh:26
Definition refinedp0localinterpolation.hh:17