dune-pdelab  2.5-dev
Public Types | Public Member Functions | List of all members
Dune::PDELab::LocalFiniteElementMapInterface< T, Imp > Class Template Reference

interface for a finite element map More...

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

Inheritance diagram for Dune::PDELab::LocalFiniteElementMapInterface< T, Imp >:
Inheritance graph

Public Types

typedef T Traits
 Export traits. More...
 

Public Member Functions

template<class EntityType >
const Traits::FiniteElementType & find (const EntityType &e) const =delete
 Return local basis for the given entity. More...
 
bool hasDOFs (int codim) const =delete
 return if FiniteElementMap has degrees of freedom for given codimension More...
 
std::size_t maxLocalSize () const =delete
 compute an upper bound for the local number of DOFs. More...
 
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>())
bool fixedSize () const =delete
 a FiniteElementMap is fixedSize iif the size of the local functions space for each GeometryType is fixed. More...
 
std::size_t size (GeometryType gt) const =delete
 if the FiniteElementMap is fixedSize, the size methods computes the number of DOFs for given GeometryType. More...
 

Detailed Description

template<class T, class Imp>
class Dune::PDELab::LocalFiniteElementMapInterface< T, Imp >

interface for a finite element map

Member Typedef Documentation

◆ Traits

template<class T, class Imp>
typedef T Dune::PDELab::LocalFiniteElementMapInterface< T, Imp >::Traits

Export traits.

Member Function Documentation

◆ find()

template<class T, class Imp>
template<class EntityType >
const Traits::FiniteElementType& Dune::PDELab::LocalFiniteElementMapInterface< T, Imp >::find ( const EntityType &  e) const
delete

Return local basis for the given entity.

The return value is a reference to Traits::LocalBasisType. If there is a different local basis for two elements then this type must be polymorphic.

◆ fixedSize()

template<class T, class Imp>
bool Dune::PDELab::LocalFiniteElementMapInterface< T, Imp >::fixedSize ( ) const
delete

a FiniteElementMap is fixedSize iif the size of the local functions space for each GeometryType is fixed.

◆ hasDOFs()

template<class T, class Imp>
bool Dune::PDELab::LocalFiniteElementMapInterface< T, Imp >::hasDOFs ( int  codim) const
delete

return if FiniteElementMap has degrees of freedom for given codimension

◆ maxLocalSize()

template<class T, class Imp>
std::size_t Dune::PDELab::LocalFiniteElementMapInterface< T, Imp >::maxLocalSize ( ) const
delete

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()

template<class T, class Imp>
std::size_t Dune::PDELab::LocalFiniteElementMapInterface< T, Imp >::size ( GeometryType  gt) const
delete

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


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