dune-fem 2.12-git
Loading...
Searching...
No Matches
Dune::Fem::BasisFunctionSetStorage< Entity, ShapeFunctionSet > Class Template Reference

#include <dune/fem/space/basisfunctionset/default.hh>

Inheritance diagram for Dune::Fem::BasisFunctionSetStorage< Entity, ShapeFunctionSet >:
Inheritance graph

Public Types

typedef BaseType::EntityType EntityType
 entity type
 
typedef BaseType::Geometry Geometry
 type of geometry
 
typedef ShapeFunctionSet ShapeFunctionSetType
 shape function set type
 
typedef Geometry::ctype ctype
 type of coordinate field
 
typedef std::decay_t< decltype(Dune::ReferenceElements< ctype, Geometry::coorddimension >::general(std::declval< const Dune::GeometryType & >())) > ReferenceElementType
 type of reference element
 

Public Member Functions

 BasisFunctionSetStorage ()
 constructor
 
 BasisFunctionSetStorage (const EntityType &entity, const ShapeFunctionSet &shapeFunctionSet=ShapeFunctionSet())
 constructor
 
 BasisFunctionSetStorage (const BasisFunctionSetStorage &other)
 
BasisFunctionSetStorage & operator= (const BasisFunctionSetStorage &other)
 
const ShapeFunctionSetType & shapeFunctionSet () const
 return shape function set
 
int order () const
 return order of basis function set
 
std::size_t size () const
 return size of basis function set
 
const Entity & entity () const
 return entity
 
bool valid () const
 return true if entity pointer is set
 
const Geometry & geometry () const
 return geometry
 
Dune::GeometryType type () const
 return geometry type
 
const ReferenceElementType & referenceElement () const
 return reference element
 
void bind (const EntityType &entity)
 set new entity object and geometry if enabled
 
void unbind ()
 release entity and geometry object
 

Static Public Attributes

static constexpr bool codegenShapeFunctionSet = detail::IsCodegenShapeFunctionSet< ShapeFunctionSetType >::value
 
static const int pointSetId = detail::SelectPointSetId< ShapeFunctionSetType >::value
 

Protected Types

typedef std::optional< EntityType > EntityStorageType
 
typedef std::conditional< storeGeometry, std::optional< Geometry >, Empty >::type GeometryStorageType
 

Protected Member Functions

void copyGeometry (const EntityGeometryStorageImpl &other)
 

Protected Attributes

ShapeFunctionSetType shapeFunctionSet_
 
EntityStorageType entity_
 
GeometryStorageType geometry_
 

Member Typedef Documentation

◆ ctype

template<class Entity , bool storeGeometry = true>
typedef Geometry::ctype Dune::Fem::EntityGeometryStorageImpl< Entity, storeGeometry >::ctype
inherited

type of coordinate field

◆ EntityStorageType

template<class Entity , bool storeGeometry = true>
typedef std::optional< EntityType > Dune::Fem::EntityGeometryStorageImpl< Entity, storeGeometry >::EntityStorageType
protectedinherited

◆ EntityType

entity type

◆ Geometry

type of geometry

◆ GeometryStorageType

template<class Entity , bool storeGeometry = true>
typedef std::conditional<storeGeometry,std::optional<Geometry>,Empty>::type Dune::Fem::EntityGeometryStorageImpl< Entity, storeGeometry >::GeometryStorageType
protectedinherited

◆ ReferenceElementType

template<class Entity , bool storeGeometry = true>
typedef std::decay_t< decltype( Dune::ReferenceElements< ctype, Geometry::coorddimension >:: general( std::declval< const Dune::GeometryType & >() ) ) > Dune::Fem::EntityGeometryStorageImpl< Entity, storeGeometry >::ReferenceElementType
inherited

type of reference element

◆ ShapeFunctionSetType

template<class Entity , class ShapeFunctionSet >
typedef ShapeFunctionSet Dune::Fem::BasisFunctionSetStorage< Entity, ShapeFunctionSet >::ShapeFunctionSetType

shape function set type

Constructor & Destructor Documentation

◆ BasisFunctionSetStorage() [1/3]

template<class Entity , class ShapeFunctionSet >
Dune::Fem::BasisFunctionSetStorage< Entity, ShapeFunctionSet >::BasisFunctionSetStorage ( )
inline

constructor

◆ BasisFunctionSetStorage() [2/3]

template<class Entity , class ShapeFunctionSet >
Dune::Fem::BasisFunctionSetStorage< Entity, ShapeFunctionSet >::BasisFunctionSetStorage ( const EntityType &  entity,
const ShapeFunctionSet &  shapeFunctionSet = ShapeFunctionSet() 
)
inlineexplicit

constructor

◆ BasisFunctionSetStorage() [3/3]

template<class Entity , class ShapeFunctionSet >
Dune::Fem::BasisFunctionSetStorage< Entity, ShapeFunctionSet >::BasisFunctionSetStorage ( const BasisFunctionSetStorage< Entity, ShapeFunctionSet > &  other)
inline

Member Function Documentation

◆ bind()

template<class Entity , bool storeGeometry = true>
void Dune::Fem::EntityGeometryStorageImpl< Entity, storeGeometry >::bind ( const EntityType &  entity)
inlineinherited

set new entity object and geometry if enabled

◆ copyGeometry()

template<class Entity , bool storeGeometry = true>
void Dune::Fem::EntityGeometryStorageImpl< Entity, storeGeometry >::copyGeometry ( const EntityGeometryStorageImpl< Entity, storeGeometry > &  other)
inlineprotectedinherited

◆ entity()

template<class Entity , bool storeGeometry = true>
const Entity & Dune::Fem::EntityGeometryStorageImpl< Entity, storeGeometry >::entity ( ) const
inlineinherited

return entity

◆ geometry()

template<class Entity , bool storeGeometry = true>
const Geometry & Dune::Fem::EntityGeometryStorageImpl< Entity, storeGeometry >::geometry ( ) const
inlineinherited

return geometry

◆ operator=()

◆ order()

template<class Entity , class ShapeFunctionSet >
int Dune::Fem::BasisFunctionSetStorage< Entity, ShapeFunctionSet >::order ( ) const
inline

return order of basis function set

◆ referenceElement()

template<class Entity , bool storeGeometry = true>
const ReferenceElementType & Dune::Fem::EntityGeometryStorageImpl< Entity, storeGeometry >::referenceElement ( ) const
inlineinherited

return reference element

◆ shapeFunctionSet()

template<class Entity , class ShapeFunctionSet >
const ShapeFunctionSetType & Dune::Fem::BasisFunctionSetStorage< Entity, ShapeFunctionSet >::shapeFunctionSet ( ) const
inline

return shape function set

◆ size()

return size of basis function set

◆ type()

template<class Entity , bool storeGeometry = true>
Dune::GeometryType Dune::Fem::EntityGeometryStorageImpl< Entity, storeGeometry >::type ( ) const
inlineinherited

return geometry type

◆ unbind()

template<class Entity , bool storeGeometry = true>
void Dune::Fem::EntityGeometryStorageImpl< Entity, storeGeometry >::unbind ( )
inlineinherited

release entity and geometry object

◆ valid()

template<class Entity , bool storeGeometry = true>
bool Dune::Fem::EntityGeometryStorageImpl< Entity, storeGeometry >::valid ( ) const
inlineinherited

return true if entity pointer is set

Member Data Documentation

◆ codegenShapeFunctionSet

template<class Entity , class ShapeFunctionSet >
constexpr bool Dune::Fem::BasisFunctionSetStorage< Entity, ShapeFunctionSet >::codegenShapeFunctionSet = detail::IsCodegenShapeFunctionSet< ShapeFunctionSetType >::value
staticconstexpr

◆ entity_

template<class Entity , bool storeGeometry = true>
EntityStorageType Dune::Fem::EntityGeometryStorageImpl< Entity, storeGeometry >::entity_
protectedinherited

◆ geometry_

template<class Entity , bool storeGeometry = true>
GeometryStorageType Dune::Fem::EntityGeometryStorageImpl< Entity, storeGeometry >::geometry_
protectedinherited

◆ pointSetId

template<class Entity , class ShapeFunctionSet >
const int Dune::Fem::BasisFunctionSetStorage< Entity, ShapeFunctionSet >::pointSetId = detail::SelectPointSetId< ShapeFunctionSetType >::value
static

◆ shapeFunctionSet_


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