4#ifndef DUNE_Q1_LOCALFINITEELEMENT_HH
5#define DUNE_Q1_LOCALFINITEELEMENT_HH
7#include <dune/geometry/type.hh>
27#if !defined __GNUC__ || __GNUC__ > 6
28 template<
class D,
class R,
int dim>
32 class Q1LocalCoefficients
36 Q1LocalCoefficients () : li(1<<dim)
38 for (std::size_t i=0; i<(1<<dim); i++)
43 std::size_t size ()
const
49 const LocalKey& localKey (std::size_t i)
const
55 std::vector<LocalKey> li;
58 template<
class D,
class R,
int dim>
69 typedef LocalFiniteElementTraits<Impl::LagrangeCubeLocalBasis<D,R,dim,1>,Q1LocalCoefficients<dim>,
70 Impl::LagrangeCubeLocalInterpolation<Impl::LagrangeCubeLocalBasis<D,R,dim,1> > >
Traits;
94 unsigned int size ()
const
101 static constexpr GeometryType
type ()
103 return GeometryTypes::cube(dim);
107 Impl::LagrangeCubeLocalBasis<D,R,dim,1> basis;
108 Q1LocalCoefficients<dim> coefficients;
109 Impl::LagrangeCubeLocalInterpolation<Impl::LagrangeCubeLocalBasis<D,R,dim,1> > interpolation;
119 template<
class Geometry,
class RF>
122#if !defined __GNUC__ || __GNUC__ > 6
124 typename Geometry::ctype, RF, Geometry::mydimension, 1
128 typename Geometry::ctype, RF, Geometry::mydimension
134#if !defined __GNUC__ || __GNUC__ > 6
136 typename Geometry::ctype, RF, Geometry::mydimension, 1
140 typename Geometry::ctype, RF, Geometry::mydimension
145 static const LFE lfe;
152 template<
class Geometry,
class RF>
153 const typename Q1FiniteElementFactory<Geometry, RF>::LFE
154 Q1FiniteElementFactory<Geometry, RF>::lfe;
Definition: bdfmcube.hh:16
LagrangeCubeLocalFiniteElement< D, R, dim, 1 > Q1LocalFiniteElement
The local Q1 finite element on cubes.
Definition: q1.hh:29
LB LocalBasisType
Definition: localfiniteelementtraits.hh:14
LC LocalCoefficientsType
Definition: localfiniteelementtraits.hh:18
LI LocalInterpolationType
Definition: localfiniteelementtraits.hh:22
Describe position of one degree of freedom.
Definition: localkey.hh:21
Factory for ScalarLocalToGlobalFiniteElementAdaptor objects.
Definition: localtoglobaladaptors.hh:242
Lagrange finite element for cubes with arbitrary compile-time dimension and polynomial order.
Definition: lagrangecube.hh:709
const Traits::LocalBasisType & localBasis() const
Returns the local basis, i.e., the set of shape functions.
Definition: lagrangecube.hh:726
const Traits::LocalInterpolationType & localInterpolation() const
Returns object that evaluates degrees of freedom.
Definition: lagrangecube.hh:740
static constexpr GeometryType type()
The reference element that the local finite element is defined on.
Definition: lagrangecube.hh:753
LocalFiniteElementTraits< Impl::LagrangeCubeLocalBasis< D, R, dim, k >, Impl::LagrangeCubeLocalCoefficients< dim, k >, Impl::LagrangeCubeLocalInterpolation< Impl::LagrangeCubeLocalBasis< D, R, dim, k > > > Traits
Export number types, dimensions, etc.
Definition: lagrangecube.hh:715
static constexpr std::size_t size()
The number of shape functions.
Definition: lagrangecube.hh:746
const Traits::LocalCoefficientsType & localCoefficients() const
Returns the assignment of the degrees of freedom to the element subentities.
Definition: lagrangecube.hh:733
Factory for global-valued Q1 elements.
Definition: q1.hh:133
Q1FiniteElementFactory()
default constructor
Definition: q1.hh:149