dune-fem 2.8-git
Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > > Class Template Reference

#include <dune/fem/function/common/localcontribution.hh>

Inheritance diagram for Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >:
Inheritance graph

Public Types

typedef DiscreteFunction DiscreteFunctionType
 
typedef AssemblyOperation< typename DiscreteFunctionTraits< DiscreteFunctionType >::DiscreteFunctionTypeAssemblyOperationType
 
typedef DiscreteFunctionType::DiscreteFunctionSpaceType::BasisFunctionSetType BasisFunctionSetType
 
typedef DiscreteFunctionType::DofType DofType
 
typedef DiscreteFunctionType::RangeType RangeType
 
typedef RangeType::field_type RangeFieldType
 
typedef DiscreteFunctionType::JacobianRangeType JacobianRangeType
 
typedef BaseType::LocalDofVectorType LocalDofVectorType
 
typedef LocalDofVectorType::size_type SizeType
 
typedef BasisFunctionSetType::EntityType EntityType
 
typedef BasisFunctionSetType::FunctionSpaceType FunctionSpaceType
 type of functionspace More...
 
typedef FunctionSpaceType::DomainFieldType DomainFieldType
 field type of the domain More...
 
typedef FunctionSpaceType::DomainType DomainType
 type of domain vectors, i.e., type of coordinates More...
 
typedef FunctionSpaceType::HessianRangeType HessianRangeType
 type of the Hessian More...
 
typedef EntityType::Geometry::LocalCoordinate LocalCoordinateType
 type of local coordinates More...
 

Public Member Functions

template<class... Args>
 LocalContribution (DiscreteFunctionType &discreteFunction, Args &&... args)
 
 LocalContribution (const ThisType &)=delete
 
 LocalContribution (ThisType &&)=delete
 
 ~LocalContribution ()
 
ThisTypeoperator= (const ThisType &)=delete
 
ThisTypeoperator= (ThisType &&)=delete
 
const DiscreteFunctionTypediscreteFunction () const
 
DiscreteFunctionTypediscreteFunction ()
 
void bind (const EntityType &entity)
 
void unbind ()
 
void init (const EntityType &entity)
 initialize the local function for an entity More...
 
void bind (const IntersectionType &intersection, IntersectionSide side)
 initialize the local function for an entity adjacent to the intersection More...
 
const DiscreteFunctionSpaceType & space () const
 return discrete function space this local function belongs to More...
 
const LocalDofVectorTypelocalDofVector () const
 return const reference to local Dof Vector
More...
 
LocalDofVectorTypelocalDofVector ()
 return mutable reference to local Dof Vector
More...
 
const DofTypeoperator[] (SizeType num) const
 access to local dofs (read-only) More...
 
DofTypeoperator[] (SizeType num)
 access to local dofs (read-write) More...
 
void assign (const LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType, T > &other)
 assign all DoFs of this local function More...
 
void clear ()
 set all DoFs to zero More...
 
void axpy (const PointType &x, const RangeType &factor)
 axpy operation for local function More...
 
void axpy (const PointType &x, const JacobianRangeType &factor)
 axpy operation for local function More...
 
void axpy (const PointType &x, const HessianRangeType &factor)
 
void axpy (const PointType &x, const RangeType &factor1, const JacobianRangeType &factor2)
 axpy operation for local function More...
 
int order () const
 obtain the order of this local function More...
 
const BasisFunctionSetTypebasisFunctionSet () const
 obtain the basis function set for this local function More...
 
const EntityTypeentity () const
 obtain the entity, this local function lives on More...
 
void evaluate (const PointType &x, RangeType &ret) const
 evaluate the local function More...
 
void jacobian (const PointType &x, JacobianRangeType &ret) const
 evaluate Jacobian of the local function More...
 
void hessian (const PointType &x, HessianRangeType &ret) const
 evaluate Hessian of the local function More...
 
int numDofs () const
 obtain the number of local DoFs More...
 
SizeType size () const
 obtain the number of local DoFs More...
 
void axpyQuadrature (const QuadratureType &quad, const Vectors &... values)
 evaluate all basisfunctions for all quadrature points, multiply with the given factor and add the result to the local coefficients
More...
 
void axpyQuadrature (const QuadratureType &quad, const RangeVectorType &rangeVector, const JacobianRangeVectorType &jacobianVector)
 evaluate all basisfunctions for all quadrature points, multiply with the given factor and add the result to the local coefficients More...
 
void evaluateQuadrature (const QuadratureType &quad, Vectors &... vec) const
 evaluate all basisfunctions for all quadrature points and store the results in the result vector More...
 
void jacobianQuadrature (const QuadratureType &quad, Vectors &... vec) const
 evaluate all Jacobians for all basis functions for all quadrature points and store the results in the result vector More...
 
void hessianQuadrature (const QuadratureType &quad, Vectors &... vec) const
 evaluate all hessians of all basis functions for all quadrature points and store the results in the result vector More...
 
bool valid () const
 Returns true if local function if bind or init was previously called. More...
 

Static Public Attributes

static const int dimDomain
 dimension of the domain More...
 
static const int dimRange
 dimension of the range More...
 

Protected Member Functions

void init (const BasisFunctionSetType &basisFunctionSet)
 initialize the local function for an basisFunctionSet More...
 
void evaluateQuadrature (const QuadratureType &quad, VectorType &result, const RangeType &) const
 
void evaluateQuadrature (const QuadratureType &quad, VectorType &result, const JacobianRangeType &) const
 
void evaluateQuadrature (const QuadratureType &quad, VectorType &result, const HessianRangeType &) const
 

Protected Attributes

DiscreteFunctionTypediscreteFunction_
 
AssemblyOperationType assemblyOperation_
 
bool bound_
 
const DiscreteFunctionSpaceType & dfSpace_
 
BasisFunctionSetType basisFunctionSet_
 
LocalDofVectorType localDofVector_
 

Member Typedef Documentation

◆ AssemblyOperationType

template<class DiscreteFunction , template< class > class AssemblyOperation>
typedef AssemblyOperation< typename DiscreteFunctionTraits< DiscreteFunctionType >::DiscreteFunctionType > Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::AssemblyOperationType

◆ BasisFunctionSetType

template<class DiscreteFunction , template< class > class AssemblyOperation>
typedef DiscreteFunctionType::DiscreteFunctionSpaceType::BasisFunctionSetType Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::BasisFunctionSetType

◆ DiscreteFunctionType

template<class DiscreteFunction , template< class > class AssemblyOperation>
typedef DiscreteFunction Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::DiscreteFunctionType

◆ DofType

template<class DiscreteFunction , template< class > class AssemblyOperation>
typedef DiscreteFunctionType::DofType Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::DofType

◆ DomainFieldType

typedef FunctionSpaceType::DomainFieldType Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::DomainFieldType
inherited

field type of the domain

◆ DomainType

typedef FunctionSpaceType::DomainType Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::DomainType
inherited

type of domain vectors, i.e., type of coordinates

◆ EntityType

template<class DiscreteFunction , template< class > class AssemblyOperation>
typedef BasisFunctionSetType::EntityType Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::EntityType

◆ FunctionSpaceType

typedef BasisFunctionSetType::FunctionSpaceType Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::FunctionSpaceType
inherited

type of functionspace

◆ HessianRangeType

typedef FunctionSpaceType::HessianRangeType Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::HessianRangeType
inherited

type of the Hessian

◆ JacobianRangeType

template<class DiscreteFunction , template< class > class AssemblyOperation>
typedef DiscreteFunctionType::JacobianRangeType Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::JacobianRangeType

◆ LocalCoordinateType

typedef EntityType::Geometry::LocalCoordinate Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::LocalCoordinateType
inherited

type of local coordinates

◆ LocalDofVectorType

template<class DiscreteFunction , template< class > class AssemblyOperation>
typedef BaseType::LocalDofVectorType Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::LocalDofVectorType

◆ RangeFieldType

template<class DiscreteFunction , template< class > class AssemblyOperation>
typedef RangeType::field_type Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::RangeFieldType

◆ RangeType

template<class DiscreteFunction , template< class > class AssemblyOperation>
typedef DiscreteFunctionType::RangeType Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::RangeType

◆ SizeType

template<class DiscreteFunction , template< class > class AssemblyOperation>
typedef LocalDofVectorType::size_type Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::SizeType

Constructor & Destructor Documentation

◆ LocalContribution() [1/3]

template<class DiscreteFunction , template< class > class AssemblyOperation>
template<class... Args>
Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::LocalContribution ( DiscreteFunctionType discreteFunction,
Args &&...  args 
)
inlineexplicit

◆ LocalContribution() [2/3]

template<class DiscreteFunction , template< class > class AssemblyOperation>
Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::LocalContribution ( const ThisType )
delete

◆ LocalContribution() [3/3]

template<class DiscreteFunction , template< class > class AssemblyOperation>
Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::LocalContribution ( ThisType &&  )
delete

◆ ~LocalContribution()

template<class DiscreteFunction , template< class > class AssemblyOperation>
Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::~LocalContribution ( )
inline

Member Function Documentation

◆ assign()

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::assign ( const LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , T > &  other)
inlineinherited

assign all DoFs of this local function

Parameters
[in]lflocal function to assign DoFs from

◆ axpy() [1/4]

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::axpy ( const PointType &  x,
const HessianRangeType factor 
)
inlineinherited

◆ axpy() [2/4]

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::axpy ( const PointType &  x,
const JacobianRangeType factor 
)
inlineinherited

axpy operation for local function

Denoting the DoFs of the local function by $u_i$ and the basis functions by $\varphi_i$, this function performs the following operation:

\[ u_i = u_i + factor \cdot \nabla\varphi_i( x ) \]

Parameters
[in]xpoint to evaluate jacobian of basis functions in
[in]factoraxpy factor

◆ axpy() [3/4]

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::axpy ( const PointType &  x,
const RangeType factor 
)
inlineinherited

axpy operation for local function

Denoting the DoFs of the local function by $u_i$ and the basis functions by $\varphi_i$, this function performs the following operation:

\[ u_i = u_i + factor \cdot \varphi_i( x ) \]

Parameters
[in]xpoint to evaluate basis functions in
[in]factoraxpy factor

◆ axpy() [4/4]

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::axpy ( const PointType &  x,
const RangeType factor1,
const JacobianRangeType factor2 
)
inlineinherited

axpy operation for local function

Denoting the DoFs of the local function by $u_i$ and the basis functions by $\varphi_i$, this function performs the following operation:

\[ u_i = u_i + factor1 \cdot \varphi_i( x ) + factor2 \cdot \nabla\varphi_i( x ) \]

Parameters
[in]xpoint to evaluate basis functions in
[in]factor1axpy factor for $\varphi( x )$
[in]factor2axpy factor for $\nabla\varphi( x )$

◆ axpyQuadrature() [1/2]

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::axpyQuadrature ( const QuadratureType &  quad,
const RangeVectorType &  rangeVector,
const JacobianRangeVectorType &  jacobianVector 
)
inlineinherited

evaluate all basisfunctions for all quadrature points, multiply with the given factor and add the result to the local coefficients

◆ axpyQuadrature() [2/2]

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::axpyQuadrature ( const QuadratureType &  quad,
const Vectors &...  values 
)
inlineinherited

evaluate all basisfunctions for all quadrature points, multiply with the given factor and add the result to the local coefficients

◆ basisFunctionSet()

const BasisFunctionSetType & Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::basisFunctionSet ( ) const
inlineinherited

obtain the basis function set for this local function

Returns
reference to the basis function set

◆ bind() [1/2]

template<class DiscreteFunction , template< class > class AssemblyOperation>
void Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::bind ( const EntityType entity)
inline

◆ bind() [2/2]

void Dune::Fem::BasicTemporaryLocalFunction< DiscreteFunction::DiscreteFunctionSpaceType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::bind ( const IntersectionType &  intersection,
IntersectionSide  side 
)
inlineinherited

initialize the local function for an entity adjacent to the intersection

Binds the local function to an entity.

Note
A local function must be initialized to an entity before it can be used.
This function can be called multiple times to use the local function for more than one entity.
Parameters
[in]intersectionto bind the local function to either inside or outside entity
[in]sideside of intersection, i.e. in or out

◆ clear()

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::clear ( )
inlineinherited

set all DoFs to zero

◆ discreteFunction() [1/2]

template<class DiscreteFunction , template< class > class AssemblyOperation>
DiscreteFunctionType & Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::discreteFunction ( )
inline

◆ discreteFunction() [2/2]

template<class DiscreteFunction , template< class > class AssemblyOperation>
const DiscreteFunctionType & Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::discreteFunction ( ) const
inline

◆ entity()

const EntityType & Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::entity ( ) const
inlineinherited

obtain the entity, this local function lives on

Returns
reference to the entity

◆ evaluate()

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::evaluate ( const PointType &  x,
RangeType ret 
) const
inlineinherited

evaluate the local function

Parameters
[in]xevaluation point in local coordinates
[out]retvalue of the function in the given point

◆ evaluateQuadrature() [1/4]

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::evaluateQuadrature ( const QuadratureType &  quad,
Vectors &...  vec 
) const
inlineinherited

evaluate all basisfunctions for all quadrature points and store the results in the result vector

◆ evaluateQuadrature() [2/4]

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::evaluateQuadrature ( const QuadratureType &  quad,
VectorType &  result,
const HessianRangeType  
) const
inlineprotectedinherited

◆ evaluateQuadrature() [3/4]

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::evaluateQuadrature ( const QuadratureType &  quad,
VectorType &  result,
const JacobianRangeType  
) const
inlineprotectedinherited

◆ evaluateQuadrature() [4/4]

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::evaluateQuadrature ( const QuadratureType &  quad,
VectorType &  result,
const RangeType  
) const
inlineprotectedinherited

◆ hessian()

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::hessian ( const PointType &  x,
HessianRangeType ret 
) const
inlineinherited

evaluate Hessian of the local function

Note
Though the Hessian is evaluated on the reference element, the return value is the Hessian with respect to the actual entity.
Parameters
[in]xevaluation point in local coordinates
[out]retHessian of the function in the evaluation point

◆ hessianQuadrature()

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::hessianQuadrature ( const QuadratureType &  quad,
Vectors &...  vec 
) const
inlineinherited

evaluate all hessians of all basis functions for all quadrature points and store the results in the result vector

◆ init() [1/2]

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::init ( const BasisFunctionSetType basisFunctionSet)
inlineprotectedinherited

initialize the local function for an basisFunctionSet

Binds the local function to an basisFunctionSet and entity.

Note
A local function must be initialized to an entity before it can be used.
This function can be called multiple times to use the local function for more than one entity.
Parameters
[in]basisFunctionSetto bind the local function to

◆ init() [2/2]

void Dune::Fem::BasicTemporaryLocalFunction< DiscreteFunction::DiscreteFunctionSpaceType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::init ( const EntityType entity)
inlineinherited

initialize the local function for an entity

Binds the local function to an entity.

Note
A local function must be initialized to an entity before it can be used.
This function can be called multiple times to use the local function for more than one entity.
Parameters
[in]entityentity to bind the local function to

◆ jacobian()

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::jacobian ( const PointType &  x,
JacobianRangeType ret 
) const
inlineinherited

evaluate Jacobian of the local function

Note
Though the Jacobian is evaluated on the reference element, the return value is the Jacobian with respect to the actual entity.
Parameters
[in]xevaluation point in local coordinates
[out]retJacobian of the function in the evaluation point

◆ jacobianQuadrature()

void Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::jacobianQuadrature ( const QuadratureType &  quad,
Vectors &...  vec 
) const
inlineinherited

evaluate all Jacobians for all basis functions for all quadrature points and store the results in the result vector

◆ localDofVector() [1/2]

LocalDofVectorType & Dune::Fem::LocalFunction< BasisFunctionSet, LocalDofVector >::localDofVector ( )
inlineinherited

return mutable reference to local Dof Vector

◆ localDofVector() [2/2]

const LocalDofVectorType & Dune::Fem::LocalFunction< BasisFunctionSet, LocalDofVector >::localDofVector ( ) const
inlineinherited

return const reference to local Dof Vector

◆ numDofs()

int Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::numDofs ( ) const
inlineinherited

obtain the number of local DoFs

Obtain the number of local DoFs of this local function. The value is identical to the number of basis functons on the entity.

Returns
number of local DoFs

◆ operator=() [1/2]

template<class DiscreteFunction , template< class > class AssemblyOperation>
ThisType & Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::operator= ( const ThisType )
delete

◆ operator=() [2/2]

template<class DiscreteFunction , template< class > class AssemblyOperation>
ThisType & Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::operator= ( ThisType &&  )
delete

◆ operator[]() [1/2]

DofType & Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::operator[] ( SizeType  num)
inlineinherited

access to local dofs (read-write)

Parameters
[in]numlocal DoF number
Returns
reference to DoF

◆ operator[]() [2/2]

const DofType & Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::operator[] ( SizeType  num) const
inlineinherited

access to local dofs (read-only)

Parameters
[in]numlocal dof number
Returns
reference to dof

◆ order()

int Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::order ( ) const
inlineinherited

obtain the order of this local function

The order of a local function refers to the polynomial order required to integrate it exactly.

Note
It is not completely clear what this value should be, e.g., for bilinear basis functions.
Returns
order of the local function

◆ size()

SizeType Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::size ( ) const
inlineinherited

obtain the number of local DoFs

Obtain the number of local DoFs of this local function. The value is identical to the number of basis functons on the entity.

Returns
number of local DoFs

◆ space()

const DiscreteFunctionSpaceType & Dune::Fem::BasicTemporaryLocalFunction< DiscreteFunction::DiscreteFunctionSpaceType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::space ( ) const
inlineinherited

return discrete function space this local function belongs to

◆ unbind()

template<class DiscreteFunction , template< class > class AssemblyOperation>
void Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::unbind ( )
inline

◆ valid()

bool Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::valid ( ) const
inlineinherited

Returns true if local function if bind or init was previously called.

Member Data Documentation

◆ assemblyOperation_

template<class DiscreteFunction , template< class > class AssemblyOperation>
AssemblyOperationType Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::assemblyOperation_
protected

◆ basisFunctionSet_

BasisFunctionSetType Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::basisFunctionSet_
protectedinherited

◆ bound_

template<class DiscreteFunction , template< class > class AssemblyOperation>
bool Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::bound_
protected

◆ dfSpace_

const DiscreteFunctionSpaceType& Dune::Fem::BasicTemporaryLocalFunction< DiscreteFunction::DiscreteFunctionSpaceType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::dfSpace_
protectedinherited

◆ dimDomain

const int Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::dimDomain
staticinherited

dimension of the domain

◆ dimRange

const int Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::dimRange
staticinherited

dimension of the range

◆ discreteFunction_

template<class DiscreteFunction , template< class > class AssemblyOperation>
DiscreteFunctionType& Dune::Fem::LocalContribution< DiscreteFunction, AssemblyOperation, std::enable_if_t< std::is_base_of< Fem::IsDiscreteFunction, DiscreteFunction >::value > >::discreteFunction_
protected

◆ localDofVector_

LocalDofVectorType Dune::Fem::LocalFunction< DiscreteFunction::DiscreteFunctionSpaceType ::BasisFunctionSetType , Dune::DynamicVector< typename DiscreteFunctionSpace::RangeFieldType > >::localDofVector_
protectedinherited

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