dune-localfunctions
2.2.1
|
Switch for uniform treatment of local and global basis classes. More...
#include <dune/localfunctions/common/interfaceswitch.hh>
Public Types | |
typedef Basis::Traits::DomainField | DomainField |
export field types of the coordinates More... | |
typedef Basis::Traits::DomainLocal | DomainLocal |
export vector type of the local coordinates More... | |
typedef Basis::Traits::RangeField | RangeField |
export field type of the values More... | |
typedef Basis::Traits::Range | Range |
export vector type of the values More... | |
Static Public Member Functions | |
template<typename Geometry > | |
static void | gradient (const Basis &basis, const Geometry &geometry, const DomainLocal &xl, std::vector< FieldMatrix< RangeField, 1, Geometry::coorddimension > > &grad) |
Compute global gradient for scalar valued bases. More... | |
Static Public Attributes | |
static const std::size_t | dimDomainLocal = Basis::Traits::dimDomainLocal |
export dimension of local coordinates More... | |
static const std::size_t | dimRange = Basis::Traits::dimRange |
export dimension of the values More... | |
static const std::size_t | diffOrder = Basis::Traits::diffOrder |
export number of supported differentiations More... | |
Switch for uniform treatment of local and global basis classes.
Basis | Type of the basis to handle. |
Dummy | Dummy parameter for enable_if. This must be left at the default value of void . |
We don't provide any uniform access to the types and constants pertaining to the global domain. Providing this would require the Geometry as template parameter as well, and the user code can build them itself if it needs them with the help of the geometry. The omitted types are DomainGlobal
and Jacobian
, the omitted constant is dimDomainGlobal
.
typedef Basis::Traits::DomainField Dune::BasisInterfaceSwitch< Basis, Dummy >::DomainField |
export field types of the coordinates
typedef Basis::Traits::DomainLocal Dune::BasisInterfaceSwitch< Basis, Dummy >::DomainLocal |
export vector type of the local coordinates
typedef Basis::Traits::Range Dune::BasisInterfaceSwitch< Basis, Dummy >::Range |
export vector type of the values
typedef Basis::Traits::RangeField Dune::BasisInterfaceSwitch< Basis, Dummy >::RangeField |
export field type of the values
|
inlinestatic |
Compute global gradient for scalar valued bases.
basis | The basis to get the derivatives from. |
geometry | The geometry to use to transform the derivatives (for a local basis, unused in the case of a global basis). |
xl | The local coordinates where to evaluate the gradient. |
grad | The result (will be resized to the appropriate number of entries. |
|
static |
export number of supported differentiations
|
static |
export dimension of local coordinates
|
static |
export dimension of the values