dune-fem  2.4.1-rc
Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets > Class Template Reference

#include </local/tomalk/somewhere/tmp/dune-fem/dune/fem/space/shapefunctionset/tuple.hh>

Public Types

typedef tuple< ShapeFunctionSets... > ShapeFunctionSetTupleType
 
typedef ToNewDimRangeFunctionSpace< typename tuple_element< 0, ShapeFunctionSetTupleType >::type::FunctionSpaceType, dimRange >::Type FunctionSpaceType
 
typedef FunctionSpaceType::DomainType DomainType
 
typedef FunctionSpaceType::RangeType RangeType
 
typedef FunctionSpaceType::JacobianRangeType JacobianRangeType
 
typedef FunctionSpaceType::HessianRangeType HessianRangeType
 

Public Member Functions

 TupleShapeFunctionSet (GeometryType type)
 
template<class... Args>
 TupleShapeFunctionSet (Args &&...args)
 
 TupleShapeFunctionSet (const ShapeFunctionSetTupleType &shapeFunctionSetTuple=ShapeFunctionSetTupleType())
 
int order () const
 
std::size_t size () const
 
template<class Point , class Functor >
void evaluateEach (const Point &x, Functor functor) const
 
template<class Point , class Functor >
void jacobianEach (const Point &x, Functor functor) const
 
template<class Point , class Functor >
void hessianEach (const Point &x, Functor functor) const
 

Static Public Attributes

static const int numShapeFunctions = Std::sum( static_cast< int >( ShapeFunctionSets::numShapeFunctions ) ... )
 

Protected Member Functions

template<std::size_t... I>
int order (Std::index_sequence< I... >) const
 
template<std::size_t... I>
std::size_t size (Std::index_sequence< I... >) const
 

Static Protected Member Functions

template<int >
static GeometryType makeGeometryType (GeometryType type)
 
template<std::size_t... I>
static tuple< decltype(makeGeometryType< I > std::declval< GeometryType >)))... > makeGeometryTypeTuple (GeometryType type, Std::index_sequence< I... >)
 

Protected Attributes

ShapeFunctionSetTupleType shapeFunctionSetTuple_
 
Offset offset_
 

Member Typedef Documentation

template<class... ShapeFunctionSets>
typedef FunctionSpaceType::DomainType Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::DomainType
template<class... ShapeFunctionSets>
typedef ToNewDimRangeFunctionSpace< typename tuple_element< 0, ShapeFunctionSetTupleType >::type::FunctionSpaceType, dimRange >::Type Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::FunctionSpaceType
template<class... ShapeFunctionSets>
typedef FunctionSpaceType::HessianRangeType Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::HessianRangeType
template<class... ShapeFunctionSets>
typedef FunctionSpaceType::JacobianRangeType Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::JacobianRangeType
template<class... ShapeFunctionSets>
typedef FunctionSpaceType::RangeType Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::RangeType
template<class... ShapeFunctionSets>
typedef tuple< ShapeFunctionSets ... > Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::ShapeFunctionSetTupleType

Constructor & Destructor Documentation

template<class... ShapeFunctionSets>
Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::TupleShapeFunctionSet ( GeometryType  type)
inline
template<class... ShapeFunctionSets>
template<class... Args>
Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::TupleShapeFunctionSet ( Args &&...  args)
inline
template<class... ShapeFunctionSets>
Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::TupleShapeFunctionSet ( const ShapeFunctionSetTupleType shapeFunctionSetTuple = ShapeFunctionSetTupleType())
inlineexplicit

Member Function Documentation

template<class... ShapeFunctionSets>
template<class Point , class Functor >
void Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::evaluateEach ( const Point &  x,
Functor  functor 
) const
inline
template<class... ShapeFunctionSets>
template<class Point , class Functor >
void Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::hessianEach ( const Point &  x,
Functor  functor 
) const
inline
template<class... ShapeFunctionSets>
template<class Point , class Functor >
void Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::jacobianEach ( const Point &  x,
Functor  functor 
) const
inline
template<class... ShapeFunctionSets>
template<int >
static GeometryType Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::makeGeometryType ( GeometryType  type)
inlinestaticprotected
template<class... ShapeFunctionSets>
template<std::size_t... I>
static tuple< decltype( makeGeometryType< I > std::declval< GeometryType >) ) ) ... > Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::makeGeometryTypeTuple ( GeometryType  type,
Std::index_sequence< I... >   
)
inlinestaticprotected
template<class... ShapeFunctionSets>
int Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::order ( ) const
inline
template<class... ShapeFunctionSets>
template<std::size_t... I>
int Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::order ( Std::index_sequence< I... >  ) const
inlineprotected
template<class... ShapeFunctionSets>
std::size_t Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::size ( ) const
inline
template<class... ShapeFunctionSets>
template<std::size_t... I>
std::size_t Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::size ( Std::index_sequence< I... >  ) const
inlineprotected

Member Data Documentation

template<class... ShapeFunctionSets>
const int Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::numShapeFunctions = Std::sum( static_cast< int >( ShapeFunctionSets::numShapeFunctions ) ... )
static
template<class... ShapeFunctionSets>
Offset Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::offset_
protected
template<class... ShapeFunctionSets>
ShapeFunctionSetTupleType Dune::Fem::TupleShapeFunctionSet< ShapeFunctionSets >::shapeFunctionSetTuple_
protected

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