dune-pdelab 2.7-git
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
Dune::PDELab::Pk1dLocalFiniteElementMap< D, R > Class Template Reference

FiniteElementMap for the Pk basis in 1d. More...

#include <dune/pdelab/finiteelementmap/pk1d.hh>

Inheritance diagram for Dune::PDELab::Pk1dLocalFiniteElementMap< D, R >:
Inheritance graph

Public Types

typedef LocalFiniteElementMapTraits< LagrangeLocalFiniteElement< EquidistantPointSet, 1, D, R > > Traits
 export type of the signature
 

Public Member Functions

 Pk1dLocalFiniteElementMap (std::size_t k)
 
bool hasDOFs (int codim) const
 
std::size_t size (GeometryType gt) const
 
std::size_t maxLocalSize () const
 
const Traits::FiniteElementType & find (const EntityType &e) const
 get local basis functions for entity
 

Static Public Member Functions

static constexpr bool fixedSize ()
 
static constexpr bool hasDOFs (int codim)=delete
 return if FiniteElementMap has degrees of freedom for given codimension
 
static constexpr std::size_t maxLocalSize ()=delete
 compute an upper bound for the local number of DOFs.
 
Size calculation

The FiniteElementMap provides different methods to compute the size of the GridFunctionSpace (if possible) without iterating the grid. The approach is as follows (pseudo code):

computeNumberOfDofs(GridView, FEM):
if(FEM.fixedSize()):
sum(FEM.size(gt)*GridView.size(gt) for gt in GeometryTypes)
else
sum(FEM.find(E).basis().size() for E in GridView.entities<0>())
static constexpr bool fixedSize()=delete
a FiniteElementMap is fixedSize iif the size of the local functions space for each GeometryType is fi...
const Traits::FiniteElementType & find(const EntityType &e) const =delete
Return local basis for the given entity.
static constexpr std::size_t size(GeometryType gt)=delete
if the FiniteElementMap is fixedSize, the size methods computes the number of DOFs for given Geometry...
static constexpr std::size_t size (GeometryType gt)=delete
 if the FiniteElementMap is fixedSize, the size methods computes the number of DOFs for given GeometryType.
 

Static Public Attributes

static constexpr int dimension
 

Detailed Description

template<class D, class R>
class Dune::PDELab::Pk1dLocalFiniteElementMap< D, R >

FiniteElementMap for the Pk basis in 1d.

Note
k is a runtime variable.
Template Parameters
DType to represent domain.
RType to represent range.

Member Typedef Documentation

◆ Traits

typedef LocalFiniteElementMapTraits<LagrangeLocalFiniteElement< EquidistantPointSet, 1, D, R > > Dune::PDELab::SimpleLocalFiniteElementMap< LagrangeLocalFiniteElement< EquidistantPointSet, 1, D, R > , dim_ >::Traits
inherited

export type of the signature

Constructor & Destructor Documentation

◆ Pk1dLocalFiniteElementMap()

template<class D , class R >
Dune::PDELab::Pk1dLocalFiniteElementMap< D, R >::Pk1dLocalFiniteElementMap ( std::size_t  k)
inline

Member Function Documentation

◆ find()

const Traits::FiniteElementType & Dune::PDELab::SimpleLocalFiniteElementMap< LagrangeLocalFiniteElement< EquidistantPointSet, 1, D, R > , dim_ >::find ( const EntityType &  e) const
inlineinherited

get local basis functions for entity

◆ fixedSize()

template<class D , class R >
static constexpr bool Dune::PDELab::Pk1dLocalFiniteElementMap< D, R >::fixedSize ( )
inlinestaticconstexpr

◆ hasDOFs() [1/2]

template<class D , class R >
bool Dune::PDELab::Pk1dLocalFiniteElementMap< D, R >::hasDOFs ( int  codim) const
inline

◆ hasDOFs() [2/2]

template<class T , class Imp >
static constexpr bool Dune::PDELab::LocalFiniteElementMapInterface< T, Imp >::hasDOFs ( int  codim)
staticconstexprdeleteinherited

return if FiniteElementMap has degrees of freedom for given codimension

◆ maxLocalSize() [1/2]

template<class D , class R >
std::size_t Dune::PDELab::Pk1dLocalFiniteElementMap< D, R >::maxLocalSize ( ) const
inline

◆ maxLocalSize() [2/2]

template<class T , class Imp >
static constexpr std::size_t Dune::PDELab::LocalFiniteElementMapInterface< T, Imp >::maxLocalSize ( )
staticconstexprdeleteinherited

compute an upper bound for the local number of DOFs.

this upper bound is used to avoid reallocations in std::vectors used during the assembly.

◆ size() [1/2]

template<class D , class R >
std::size_t Dune::PDELab::Pk1dLocalFiniteElementMap< D, R >::size ( GeometryType  gt) const
inline

◆ size() [2/2]

template<class T , class Imp >
static constexpr std::size_t Dune::PDELab::LocalFiniteElementMapInterface< T, Imp >::size ( GeometryType  gt)
staticconstexprdeleteinherited

if the FiniteElementMap is fixedSize, the size methods computes the number of DOFs for given GeometryType.

Member Data Documentation

◆ dimension

constexpr int Dune::PDELab::SimpleLocalFiniteElementMap< LagrangeLocalFiniteElement< EquidistantPointSet, 1, D, R > , dim_ >::dimension
staticconstexprinherited

The documentation for this class was generated from the following file: