dune-fem 2.8.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
Dune::Fem::BasisFunctionSet< Entity, Range > Class Template Reference

Interface class for basis function sets. More...

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

Public Types

typedef Entity EntityType
 entity type
 
typedef FunctionSpace< typename Entity::Geometry::ctype, typename Range::value_type, Entity::Geometry::coorddimension, Range::dimension > FunctionSpaceType
 function space type
 
typedef FunctionSpaceType::DomainType DomainType
 range type
 
typedef FunctionSpaceType::RangeType RangeType
 range type
 
typedef FunctionSpaceType::JacobianRangeType JacobianRangeType
 jacobian range type
 
typedef FunctionSpaceType::HessianRangeType HessianRangeType
 hessian range type
 
typedef Dune::ReferenceElement< typename DomainType::value_type, DomainType::dimension > ReferenceElementType
 type of reference element
 

Public Member Functions

int order () const
 return order of basis function set
 
std::size_t size () const
 return size of basis function set
 
const ReferenceElementTypereferenceElement () const
 return reference element
 
template<class Quadrature , class Vector , class DofVector >
void axpy (const Quadrature &quad, const Vector &values, DofVector &dofs) const
 evaluate all basis function and multiply with given values and add to dofs
 
template<class Quadrature , class VectorA , class VectorB , class DofVector >
void axpy (const Quadrature &quad, const VectorA &valuesA, const VectorB &valuesB, DofVector &dofs) const
 evaluate all basis function and multiply with given values and add to dofs
 
template<class Point , class DofVector >
void axpy (const Point &x, const RangeType &valueFactor, DofVector &dofs) const
 evaluate all basis function and multiply with given values and add to dofs
 
template<class Point , class DofVector >
void axpy (const Point &x, const JacobianRangeType &jacobianFactor, DofVector &dofs) const
 evaluate all basis function and multiply with given values and add to dofs
 
template<class Point , class DofVector >
void axpy (const Point &x, const RangeType &valueFactor, const JacobianRangeType &jacobianFactor, DofVector &dofs) const
 evaluate all basis function and multiply with given values and add to dofs
 
template<class Quadrature , class DofVector , class RangeArray >
void evaluateAll (const Quadrature &quad, const DofVector &dofs, RangeArray &ranges) const
 evaluate all basis functions and store the result in the ranges array
 
template<class Point , class DofVector >
void evaluateAll (const Point &x, const DofVector &dofs, RangeType &value) const
 
template<class Point , class RangeArray >
void evaluateAll (const Point &x, RangeArray &values) const
 
template<class QuadratureType , class DofVector , class JacobianArray >
void jacobianAll (const QuadratureType &quad, const DofVector &dofs, JacobianArray &jacobians) const
 evaluate the jacobian of all basis functions and store the result in the jacobians array
 
template<class Point , class DofVector >
void jacobianAll (const Point &x, const DofVector &dofs, JacobianRangeType &jacobian) const
 
template<class Point , class JacobianRangeArray >
void jacobianAll (const Point &x, JacobianRangeArray &jacobians) const
 
template<class Point , class DofVector >
void hessianAll (const Point &x, const DofVector &dofs, HessianRangeType &hessian) const
 
template<class Point , class HessianRangeArray >
void hessianAll (const Point &x, HessianRangeArray &hessians) const
 
const EntityTypeentity () const
 return entity
 
bool valid () const
 return true if entity was set
 

Detailed Description

template<class Entity, class Range>
class Dune::Fem::BasisFunctionSet< Entity, Range >

Interface class for basis function sets.

This class cannot be used itself, it is for documentation purposes only.

Note
Constructor signatures are explicitly not specified by this interface.

Member Typedef Documentation

◆ DomainType

template<class Entity , class Range >
typedef FunctionSpaceType::DomainType Dune::Fem::BasisFunctionSet< Entity, Range >::DomainType

range type

◆ EntityType

template<class Entity , class Range >
typedef Entity Dune::Fem::BasisFunctionSet< Entity, Range >::EntityType

entity type

◆ FunctionSpaceType

template<class Entity , class Range >
typedef FunctionSpace< typename Entity::Geometry::ctype, typename Range::value_type, Entity::Geometry::coorddimension, Range::dimension > Dune::Fem::BasisFunctionSet< Entity, Range >::FunctionSpaceType

function space type

◆ HessianRangeType

template<class Entity , class Range >
typedef FunctionSpaceType::HessianRangeType Dune::Fem::BasisFunctionSet< Entity, Range >::HessianRangeType

hessian range type

◆ JacobianRangeType

template<class Entity , class Range >
typedef FunctionSpaceType::JacobianRangeType Dune::Fem::BasisFunctionSet< Entity, Range >::JacobianRangeType

jacobian range type

◆ RangeType

template<class Entity , class Range >
typedef FunctionSpaceType::RangeType Dune::Fem::BasisFunctionSet< Entity, Range >::RangeType

range type

◆ ReferenceElementType

template<class Entity , class Range >
typedef Dune::ReferenceElement< typename DomainType::value_type, DomainType::dimension > Dune::Fem::BasisFunctionSet< Entity, Range >::ReferenceElementType

type of reference element

Member Function Documentation

◆ axpy() [1/5]

template<class Entity , class Range >
template<class Point , class DofVector >
void Dune::Fem::BasisFunctionSet< Entity, Range >::axpy ( const Point &  x,
const JacobianRangeType jacobianFactor,
DofVector &  dofs 
) const

evaluate all basis function and multiply with given values and add to dofs

◆ axpy() [2/5]

template<class Entity , class Range >
template<class Point , class DofVector >
void Dune::Fem::BasisFunctionSet< Entity, Range >::axpy ( const Point &  x,
const RangeType valueFactor,
const JacobianRangeType jacobianFactor,
DofVector &  dofs 
) const

evaluate all basis function and multiply with given values and add to dofs

◆ axpy() [3/5]

template<class Entity , class Range >
template<class Point , class DofVector >
void Dune::Fem::BasisFunctionSet< Entity, Range >::axpy ( const Point &  x,
const RangeType valueFactor,
DofVector &  dofs 
) const

evaluate all basis function and multiply with given values and add to dofs

◆ axpy() [4/5]

template<class Entity , class Range >
template<class Quadrature , class Vector , class DofVector >
void Dune::Fem::BasisFunctionSet< Entity, Range >::axpy ( const Quadrature quad,
const Vector &  values,
DofVector &  dofs 
) const

evaluate all basis function and multiply with given values and add to dofs

◆ axpy() [5/5]

template<class Entity , class Range >
template<class Quadrature , class VectorA , class VectorB , class DofVector >
void Dune::Fem::BasisFunctionSet< Entity, Range >::axpy ( const Quadrature quad,
const VectorA &  valuesA,
const VectorB &  valuesB,
DofVector &  dofs 
) const

evaluate all basis function and multiply with given values and add to dofs

◆ entity()

template<class Entity , class Range >
const EntityType & Dune::Fem::BasisFunctionSet< Entity, Range >::entity ( ) const

return entity

◆ evaluateAll() [1/3]

template<class Entity , class Range >
template<class Point , class DofVector >
void Dune::Fem::BasisFunctionSet< Entity, Range >::evaluateAll ( const Point &  x,
const DofVector &  dofs,
RangeType value 
) const
Todo:
please doc me

◆ evaluateAll() [2/3]

template<class Entity , class Range >
template<class Point , class RangeArray >
void Dune::Fem::BasisFunctionSet< Entity, Range >::evaluateAll ( const Point &  x,
RangeArray &  values 
) const
Todo:
please doc me

◆ evaluateAll() [3/3]

template<class Entity , class Range >
template<class Quadrature , class DofVector , class RangeArray >
void Dune::Fem::BasisFunctionSet< Entity, Range >::evaluateAll ( const Quadrature quad,
const DofVector &  dofs,
RangeArray &  ranges 
) const

evaluate all basis functions and store the result in the ranges array

◆ hessianAll() [1/2]

template<class Entity , class Range >
template<class Point , class DofVector >
void Dune::Fem::BasisFunctionSet< Entity, Range >::hessianAll ( const Point &  x,
const DofVector &  dofs,
HessianRangeType hessian 
) const
Todo:
please doc me

◆ hessianAll() [2/2]

template<class Entity , class Range >
template<class Point , class HessianRangeArray >
void Dune::Fem::BasisFunctionSet< Entity, Range >::hessianAll ( const Point &  x,
HessianRangeArray &  hessians 
) const
Todo:
please doc me

◆ jacobianAll() [1/3]

template<class Entity , class Range >
template<class Point , class DofVector >
void Dune::Fem::BasisFunctionSet< Entity, Range >::jacobianAll ( const Point &  x,
const DofVector &  dofs,
JacobianRangeType jacobian 
) const
Todo:
please doc me

◆ jacobianAll() [2/3]

template<class Entity , class Range >
template<class Point , class JacobianRangeArray >
void Dune::Fem::BasisFunctionSet< Entity, Range >::jacobianAll ( const Point &  x,
JacobianRangeArray &  jacobians 
) const
Todo:
please doc me

◆ jacobianAll() [3/3]

template<class Entity , class Range >
template<class QuadratureType , class DofVector , class JacobianArray >
void Dune::Fem::BasisFunctionSet< Entity, Range >::jacobianAll ( const QuadratureType &  quad,
const DofVector &  dofs,
JacobianArray &  jacobians 
) const

evaluate the jacobian of all basis functions and store the result in the jacobians array

◆ order()

template<class Entity , class Range >
int Dune::Fem::BasisFunctionSet< Entity, Range >::order ( ) const

return order of basis function set

◆ referenceElement()

template<class Entity , class Range >
const ReferenceElementType & Dune::Fem::BasisFunctionSet< Entity, Range >::referenceElement ( ) const

return reference element

◆ size()

template<class Entity , class Range >
std::size_t Dune::Fem::BasisFunctionSet< Entity, Range >::size ( ) const

return size of basis function set

◆ valid()

template<class Entity , class Range >
bool Dune::Fem::BasisFunctionSet< Entity, Range >::valid ( ) const

return true if entity was set


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