Dune Core Modules (unstable)

cubeq1bubble.hh
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
9
10#include <dune/localfunctions/common/localfiniteelementtraits.hh>
11#include <dune/localfunctions/enriched/cubeq1bubble/localbasis.hh>
12#include <dune/localfunctions/enriched/cubeq1bubble/localcoefficients.hh>
13#include <dune/localfunctions/enriched/cubeq1bubble/localinterpolation.hh>
14
15
16namespace 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
Q1 basis in dim-d enriched by an (order 2) element bubble function.
Definition: localbasis.hh:36
static constexpr std::size_t size() noexcept
Returns number of shape functions.
Definition: localbasis.hh:59
The Local keys associated to the dim-d local basis functions.
Definition: localcoefficients.hh:24
Linear Lagrange functions enriched with an element bubble function.
Definition: cubeq1bubble.hh:43
const LocalCoefficientsType & localCoefficients() const
Returns the assignment of the degrees of freedom to the element subentities.
Definition: cubeq1bubble.hh:65
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
static constexpr std::size_t size() noexcept
Returns the number of shape functions in this finite-element.
Definition: cubeq1bubble.hh:77
CubeQ1BubbleLocalCoefficients< dim > LocalCoefficientsType
Type of the local coefficients.
Definition: cubeq1bubble.hh:49
CubeQ1BubbleLocalInterpolation< LocalBasisType > LocalInterpolationType
Type of the local interpolation.
Definition: cubeq1bubble.hh:52
static constexpr GeometryType type() noexcept
Returns the type of the geometry the finite-element is attached to.
Definition: cubeq1bubble.hh:83
const LocalBasisType & localBasis() const
Returns the local basis, i.e., the set of shape functions.
Definition: cubeq1bubble.hh:59
Unique label for each type of entities that can occur in DUNE grids.
Definition: type.hh:114
constexpr GeometryType simplex(unsigned int dim)
Returns a GeometryType representing a simplex of dimension dim.
Definition: type.hh:453
Dune namespace.
Definition: alignedallocator.hh:13
traits helper struct
Definition: localfiniteelementtraits.hh:13
A unique label for each type of element that can occur in a grid.
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden & Uni Heidelberg  |  generated with Hugo v0.111.3 (Sep 21, 22:40, 2025)