Dune Core Modules (unstable)

dualp1.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_DUALMORTARBASIS_DUALP1_HH
6 #define DUNE_LOCALFUNCTIONS_DUALMORTARBASIS_DUALP1_HH
7 
8 #include <dune/geometry/type.hh>
9 
10 #include <dune/localfunctions/common/localfiniteelementtraits.hh>
11 #include "dualp1/dualp1localbasis.hh"
12 #include "dualp1/dualp1localcoefficients.hh"
13 #include "dualp1/dualp1localinterpolation.hh"
14 
15 namespace Dune
16 {
17 
33  template<class D, class R, int dim, bool faceDual=false>
35  {
36  public:
40  DualP1LocalInterpolation<dim,DualP1LocalBasis<D,R,dim,faceDual> > > Traits;
41 
45  {}
46 
49  const typename Traits::LocalBasisType& localBasis () const
50  {
51  return basis;
52  }
53 
57  {
58  return coefficients;
59  }
60 
64  {
65  return interpolation;
66  }
67 
69  unsigned int size () const
70  {
71  return basis.size();
72  }
73 
76  static constexpr GeometryType type ()
77  {
78  return GeometryTypes::simplex(dim);
79  }
80 
81  private:
83  DualP1LocalCoefficients<dim> coefficients;
84  DualP1LocalInterpolation<dim,DualP1LocalBasis<D,R,dim,faceDual> > interpolation;
85  };
86 
87 
88 
89 }
90 
91 #endif
Dual Lagrange shape functions on the simplex.
Definition: dualp1localbasis.hh:35
Local coefficients for dual simplex P1 elements.
Definition: dualp1localcoefficients.hh:24
The local dual p1 finite element on simplices.
Definition: dualp1.hh:35
DualP1LocalFiniteElement()
Definition: dualp1.hh:44
const Traits::LocalInterpolationType & localInterpolation() const
Definition: dualp1.hh:63
unsigned int size() const
Number of shape functions in this finite element.
Definition: dualp1.hh:69
LocalFiniteElementTraits< DualP1LocalBasis< D, R, dim, faceDual >, DualP1LocalCoefficients< dim >, DualP1LocalInterpolation< dim, DualP1LocalBasis< D, R, dim, faceDual > > > Traits
Definition: dualp1.hh:40
const Traits::LocalCoefficientsType & localCoefficients() const
Definition: dualp1.hh:56
static constexpr GeometryType type()
Definition: dualp1.hh:76
const Traits::LocalBasisType & localBasis() const
Definition: dualp1.hh:49
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
LB LocalBasisType
Definition: localfiniteelementtraits.hh:16
LC LocalCoefficientsType
Definition: localfiniteelementtraits.hh:20
LI LocalInterpolationType
Definition: localfiniteelementtraits.hh:24
A unique label for each type of element that can occur in a grid.
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.80.0 (May 4, 22:30, 2024)