3#ifndef DUNE_PK2DLOCALFINITEELEMENT_HH
4#define DUNE_PK2DLOCALFINITEELEMENT_HH
8#include <dune/geometry/type.hh>
21 template<
class D,
class R,
unsigned int k>
33 template<
class Geometry,
class RF, std::
size_t k>
35 typedef typename Geometry::ctype DF;
36 typedef Impl::LagrangeSimplexLocalBasis<DF,RF,2,k> LocalBasis;
37 typedef Impl::LagrangeSimplexLocalInterpolation<LocalBasis> LocalInterpolation;
53 static const GeometryType gt;
54 static const LocalBasis localBasis;
55 static const LocalInterpolation localInterpolation;
76 template<
class VertexOrder>
78 const VertexOrder& vertexOrder) :
79 basis_(localBasis, geometry), interpolation_(localInterpolation),
80 coefficients_(vertexOrder.begin(0, 0))
85 {
return interpolation_; }
87 {
return coefficients_; }
88 const GeometryType &
type()
const {
return gt; }
91 template<
class Geometry,
class RF, std::
size_t k>
93 Pk2DFiniteElement<Geometry, RF, k>::gt(GeometryTypes::simplex(2));
95 template<
class Geometry,
class RF, std::
size_t k>
96 const typename Pk2DFiniteElement<Geometry, RF, k>::LocalBasis
97 Pk2DFiniteElement<Geometry, RF, k>::localBasis = LocalBasis();
99 template<
class Geometry,
class RF, std::
size_t k>
100 const typename Pk2DFiniteElement<Geometry, RF, k>::LocalInterpolation
101 Pk2DFiniteElement<Geometry, RF, k>::localInterpolation =
102 LocalInterpolation();
115 template<
class Geometry,
class RF, std::
size_t k>
134 template<
class VertexOrder>
136 const VertexOrder& vertexOrder)
Definition: bdfmcube.hh:16
Traits class for local-to-global basis adaptors.
Definition: localtoglobaladaptors.hh:28
Convert a simple scalar local basis into a global basis.
Definition: localtoglobaladaptors.hh:63
Convert a local interpolation into a global interpolation.
Definition: localtoglobaladaptors.hh:147
Lagrange finite element for simplices with arbitrary compile-time dimension and polynomial order.
Definition: lagrangesimplex.hh:836
Langrange finite element of arbitrary order on triangles.
Definition: pk2d.hh:34
Pk2DFiniteElement(const Geometry &geometry, const VertexOrder &vertexOrder)
construct a Pk2DFiniteElement
Definition: pk2d.hh:77
const Traits::Interpolation & interpolation() const
Definition: pk2d.hh:84
const Traits::Basis & basis() const
Definition: pk2d.hh:83
const Traits::Coefficients & coefficients() const
Definition: pk2d.hh:86
const GeometryType & type() const
Definition: pk2d.hh:88
ScalarLocalToGlobalBasisAdaptor< LocalBasis, Geometry > Basis
Definition: pk2d.hh:44
Impl::LagrangeSimplexLocalCoefficients< 2, k > Coefficients
Definition: pk2d.hh:49
LocalToGlobalInterpolationAdaptor< LocalInterpolation, typename Basis::Traits > Interpolation
Definition: pk2d.hh:48
Factory for Pk2DFiniteElement objects.
Definition: pk2d.hh:116
Pk2DFiniteElement< Geometry, RF, k > FiniteElement
Definition: pk2d.hh:117
const FiniteElement make(const Geometry &geometry, const VertexOrder &vertexOrder)
construct Pk2DFiniteElementFactory
Definition: pk2d.hh:135