dune-localfunctions  2.11
cubeq1bubble.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_LOCALFUNCTIONS_ENRICHED_CUBEQ1BUBBLE_HH
6 #define DUNE_LOCALFUNCTIONS_ENRICHED_CUBEQ1BUBBLE_HH
7 
8 #include <dune/geometry/type.hh>
9 
14 
15 
16 namespace Dune
17 {
41  template<class D, class R, int dim>
43  {
44  public:
47 
50 
53 
56 
57 
59  const LocalBasisType& localBasis () const
60  {
61  return basis_;
62  }
63 
66  {
67  return coefficients_;
68  }
69 
72  {
73  return interpolation_;
74  }
75 
77  static constexpr std::size_t size () noexcept
78  {
79  return LocalBasisType::size();
80  }
81 
83  static constexpr GeometryType type () noexcept
84  {
85  return GeometryTypes::simplex(dim);
86  }
87 
88  private:
89  LocalCoefficientsType coefficients_{};
90  [[no_unique_address]] LocalBasisType basis_{};
91  [[no_unique_address]] LocalInterpolationType interpolation_{};
92  };
93 
94 } // end namespace Dune
95 
96 #endif // DUNE_LOCALFUNCTIONS_ENRICHED_CUBEQ1BUBBLE_HH
static constexpr std::size_t size() noexcept
Returns number of shape functions.
Definition: enriched/cubeq1bubble/localbasis.hh:59
traits helper struct
Definition: localfiniteelementtraits.hh:12
static constexpr GeometryType type() noexcept
Returns the type of the geometry the finite-element is attached to.
Definition: cubeq1bubble.hh:83
CubeQ1BubbleLocalCoefficients< dim > LocalCoefficientsType
Type of the local coefficients.
Definition: cubeq1bubble.hh:49
const LocalBasisType & localBasis() const
Returns the local basis, i.e., the set of shape functions.
Definition: cubeq1bubble.hh:59
The Local keys associated to the dim-d local basis functions.
Definition: enriched/cubeq1bubble/localcoefficients.hh:23
Definition: bdfmcube.hh:17
const LocalInterpolationType & localInterpolation() const
Returns object that evaluates degrees of freedom.
Definition: cubeq1bubble.hh:71
CubeQ1BubbleLocalBasis< D, R, dim > LocalBasisType
Type of the local basis.
Definition: cubeq1bubble.hh:46
Linear Lagrange functions enriched with an element bubble function.
Definition: cubeq1bubble.hh:42
Q1 basis in dim-d enriched by an (order 2) element bubble function.
Definition: enriched/cubeq1bubble/localbasis.hh:35
const LocalCoefficientsType & localCoefficients() const
Returns the assignment of the degrees of freedom to the element subentities.
Definition: cubeq1bubble.hh:65
CubeQ1BubbleLocalInterpolation< LocalBasisType > LocalInterpolationType
Type of the local interpolation.
Definition: cubeq1bubble.hh:52
static constexpr std::size_t size() noexcept
Returns the number of shape functions in this finite-element.
Definition: cubeq1bubble.hh:77