dune-localfunctions  2.9.0
brezzidouglasmarini1cube3d.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 (C) 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_LOCALFUNCTIONS_BREZZIDOUGLASMARINI1_QUBE3D_LOCALFINITEELEMENT_HH
6 #define DUNE_LOCALFUNCTIONS_BREZZIDOUGLASMARINI1_QUBE3D_LOCALFINITEELEMENT_HH
7 
8 #include <dune/geometry/type.hh>
9 
10 #include "../common/localfiniteelementtraits.hh"
14 
15 namespace Dune
16 {
25  template<class D, class R>
27  {
28 
29  public:
34 
37  {}
38 
45  : basis(s)
46  , interpolation(s)
47  {}
48 
49  const typename Traits::LocalBasisType& localBasis() const
50  {
51  return basis;
52  }
53 
55  {
56  return coefficients;
57  }
58 
60  {
61  return interpolation;
62  }
63 
65  unsigned int size () const
66  {
67  return basis.size();
68  }
69 
70  static constexpr GeometryType type()
71  {
72  return GeometryTypes::hexahedron;
73  }
74 
75  private:
77  BDM1Cube3DLocalCoefficients coefficients;
79  };
80 } // end namespace Dune
81 #endif // DUNE_LOCALFUNCTIONS_BREZZIDOUGLASMARINI1_QUBE3D_LOCALFINITEELEMENT_HH
Definition: bdfmcube.hh:18
First order Brezzi-Douglas-Marini shape functions on the reference hexahedron.
Definition: brezzidouglasmarini1cube3dlocalbasis.hh:31
Layout map for Brezzi-Douglas-Marini-1 elements on hexahedra.
Definition: brezzidouglasmarini1cube3dlocalcoefficients.hh:24
First order Brezzi-Douglas-Marini shape functions on the reference hexahedron.
Definition: brezzidouglasmarini1cube3dlocalinterpolation.hh:26
First order Brezzi-Douglas-Marini shape functions on hexahedron.
Definition: brezzidouglasmarini1cube3d.hh:27
BDM1Cube3DLocalFiniteElement()
Standard constructor.
Definition: brezzidouglasmarini1cube3d.hh:36
const Traits::LocalCoefficientsType & localCoefficients() const
Definition: brezzidouglasmarini1cube3d.hh:54
unsigned int size() const
Number of shape functions in this finite element.
Definition: brezzidouglasmarini1cube3d.hh:65
static constexpr GeometryType type()
Definition: brezzidouglasmarini1cube3d.hh:70
const Traits::LocalBasisType & localBasis() const
Definition: brezzidouglasmarini1cube3d.hh:49
const Traits::LocalInterpolationType & localInterpolation() const
Definition: brezzidouglasmarini1cube3d.hh:59
LocalFiniteElementTraits< BDM1Cube3DLocalBasis< D, R >, BDM1Cube3DLocalCoefficients, BDM1Cube3DLocalInterpolation< BDM1Cube3DLocalBasis< D, R > > > Traits
Definition: brezzidouglasmarini1cube3d.hh:33
BDM1Cube3DLocalFiniteElement(int s)
Make set number s, where 0 <= s < 64.
Definition: brezzidouglasmarini1cube3d.hh:44
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