dune-localfunctions 2.10
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Dune::LocalBasisVirtualImp< T, Imp > Class Template Reference

class for wrapping a basis using the virtual interface More...

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

Inheritance diagram for Dune::LocalBasisVirtualImp< T, Imp >:
Inheritance graph

Public Types

using Traits = T
 

Public Member Functions

unsigned int size () const
 Number of shape functions.
 
unsigned int order () const
 Polynomial order of the shape functions.
 
void evaluateFunction (const typename Traits::DomainType &in, std::vector< typename Traits::RangeType > &out) const
 Evaluate all basis function at given position.
 
void evaluateJacobian (const typename Traits::DomainType &in, std::vector< typename Traits::JacobianType > &out) const
 Evaluate jacobian of all shape functions at given position.
 
void partial (const std::array< unsigned int, Traits::dimDomain > &order, const typename Traits::DomainType &in, std::vector< typename Traits::RangeType > &out) const
 Evaluate partial derivatives of any order of all shape functions.
 

Protected Member Functions

 LocalBasisVirtualImp (const Imp &imp)
 constructor taking an implementation of the interface
 

Protected Attributes

const Imp & impl_
 

Detailed Description

template<class T, class Imp>
class Dune::LocalBasisVirtualImp< T, Imp >

class for wrapping a basis using the virtual interface

Template Parameters
TThe LocalBasisTraits class
ImpLocalBasisInterface implementation

Member Typedef Documentation

◆ Traits

template<class T , class Imp >
using Dune::LocalBasisVirtualImp< T, Imp >::Traits = T

Constructor & Destructor Documentation

◆ LocalBasisVirtualImp()

template<class T , class Imp >
Dune::LocalBasisVirtualImp< T, Imp >::LocalBasisVirtualImp ( const Imp &  imp)
inlineprotected

constructor taking an implementation of the interface

Member Function Documentation

◆ evaluateFunction()

template<class T , class Imp >
void Dune::LocalBasisVirtualImp< T, Imp >::evaluateFunction ( const typename Traits::DomainType &  in,
std::vector< typename Traits::RangeType > &  out 
) const
inlinevirtual

Evaluate all basis function at given position.

Evaluates all shape functions at the given position and returns these values in a vector.

Implements Dune::LocalBasisVirtualInterface< T >.

◆ evaluateJacobian()

template<class T , class Imp >
void Dune::LocalBasisVirtualImp< T, Imp >::evaluateJacobian ( const typename Traits::DomainType &  in,
std::vector< typename Traits::JacobianType > &  out 
) const
inlinevirtual

Evaluate jacobian of all shape functions at given position.

out[i][j][k] is $\partial_k \hat\phi_j^i $, when $\hat\phi^i $ is the i'th shape function.

Parameters
[in]inThe position where evaluated
[out]outThe result

Implements Dune::LocalBasisVirtualInterface< T >.

◆ order()

template<class T , class Imp >
unsigned int Dune::LocalBasisVirtualImp< T, Imp >::order ( ) const
inlinevirtual

Polynomial order of the shape functions.

Implements Dune::LocalBasisVirtualInterface< T >.

◆ partial()

template<class T , class Imp >
void Dune::LocalBasisVirtualImp< T, Imp >::partial ( const std::array< unsigned int, Traits::dimDomain > &  order,
const typename Traits::DomainType &  in,
std::vector< typename Traits::RangeType > &  out 
) const
inlinevirtual

Evaluate partial derivatives of any order of all shape functions.

Parameters
orderOrder of the partial derivatives, in the classic multi-index notation
inPosition where to evaluate the derivatives
[out]outReturn value: the desired partial derivatives

Implements Dune::LocalBasisVirtualInterface< T >.

◆ size()

template<class T , class Imp >
unsigned int Dune::LocalBasisVirtualImp< T, Imp >::size ( ) const
inlinevirtual

Number of shape functions.

Implements Dune::LocalBasisVirtualInterface< T >.

Member Data Documentation

◆ impl_

template<class T , class Imp >
const Imp& Dune::LocalBasisVirtualImp< T, Imp >::impl_
protected

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