Dune::BasisTraits< Imp > Struct Template Reference

Traits for basis implementations. More...

#include <dune/localfunctions/common/basis.hh>

List of all members.

Public Types

typedef
Imp::Traits::DomainFieldType 
DomainFieldType
 Type used for single coordinate components.
typedef Imp::Traits::DomainType DomainType
 Type used for complete coordinates.
typedef Imp::Traits::RangeFieldType RangeFieldType
 Type used for one component of the function value.
typedef Imp::Traits::RangeType RangeType
 Type used for the complete function value.
typedef Imp::Traits::JacobianType JacobianType
 The type of the jacobian.

Public Member Functions

 dune_static_assert (AlwaysFalse< Imp >::value,"If you get this error you the compiler tried to ""instantiate the non-specialized version of ""BasisTraits, which should never happen. Maybe you ""forgot to provide a specialization for your basis?")

Static Public Attributes

static const unsigned dimDomain = Imp::Traits::dimDomain
 Dimension of the domain, number of components per coordinate.
static const unsigned dimRange = Imp::Traits::dimRange
 Dimension or number of components of the function value.
static const unsigned diffOrder = Imp::Traits::diffOrder
 How many times this function may be differentiated.

Detailed Description

template<typename Imp>
struct Dune::BasisTraits< Imp >

Traits for basis implementations.

Each basis should either have its own specialization of this class or provide a traits class conforming to this interface in some other way.

Note:
Defining the traits inside the basis class is impossible if the basis is derived from C0BasisInterface or C1BasisInterface since those require the traits class as an (implicit or explicit) template parameter.
Template Parameters:
Imp The type of the basis implementation.

Member Typedef Documentation

template<typename Imp >
typedef Imp::Traits::DomainFieldType Dune::BasisTraits< Imp >::DomainFieldType

Type used for single coordinate components.

template<typename Imp >
typedef Imp::Traits::DomainType Dune::BasisTraits< Imp >::DomainType

Type used for complete coordinates.

template<typename Imp >
typedef Imp::Traits::JacobianType Dune::BasisTraits< Imp >::JacobianType

The type of the jacobian.

Note:
This typedef is not required for a basis that implements the C0BasisInterface only
template<typename Imp >
typedef Imp::Traits::RangeFieldType Dune::BasisTraits< Imp >::RangeFieldType

Type used for one component of the function value.

template<typename Imp >
typedef Imp::Traits::RangeType Dune::BasisTraits< Imp >::RangeType

Type used for the complete function value.


Member Function Documentation

template<typename Imp >
Dune::BasisTraits< Imp >::dune_static_assert ( AlwaysFalse< Imp >::value  ,
"If you get this error you the compiler tried to ""instantiate the non-specialized version of ""  BasisTraits,
which should never happen.Maybe you""forgot to provide a specialization for your basis?"   
)

Member Data Documentation

template<typename Imp >
const unsigned Dune::BasisTraits< Imp >::diffOrder = Imp::Traits::diffOrder [static]

How many times this function may be differentiated.

This should be 0 if the basis provides only the interface of C0BasisInterface and 1 if it provides the interface of C1BasisInterface.

template<typename Imp >
const unsigned Dune::BasisTraits< Imp >::dimDomain = Imp::Traits::dimDomain [static]

Dimension of the domain, number of components per coordinate.

template<typename Imp >
const unsigned Dune::BasisTraits< Imp >::dimRange = Imp::Traits::dimRange [static]

Dimension or number of components of the function value.


The documentation for this struct was generated from the following file:
Generated on Sat Apr 24 11:15:35 2010 for dune-localfunctions by  doxygen 1.6.3