dune-fem
2.8-git
|
A constant local function carrying values for one entity. More...
#include <dune/fem/function/localfunction/const.hh>
Public Types | |
typedef std::remove_const_t< DiscreteFunction > | DiscreteFunctionType |
typedef DiscreteFunctionType::DiscreteFunctionSpaceType | DiscreteFunctionSpaceType |
typedef DiscreteFunctionSpaceType::GridPartType | GridPartType |
typedef DiscreteFunctionSpaceType::FunctionSpaceType | FunctionSpaceType |
typedef DiscreteFunctionType | GridFunctionType |
typedef BaseType::DofType | DofType |
typedef BaseType::EntityType | EntityType |
typedef GridPartType::IntersectionType | IntersectionType |
typedef BaseType::BasisFunctionSetType | BasisFunctionSetType |
typedef BaseType::LocalDofVectorType | LocalDofVectorType |
typedef BaseType::DomainType | DomainType |
typedef BaseType::RangeType | RangeType |
typedef BaseType::JacobianRangeType | JacobianRangeType |
typedef BaseType::HessianRangeType | HessianRangeType |
typedef BaseType::SizeType | SizeType |
type of SizeType More... | |
typedef FunctionSpaceType::DomainFieldType | DomainFieldType |
field type of the domain More... | |
typedef FunctionSpaceType::RangeFieldType | RangeFieldType |
field type of the range More... | |
typedef EntityType::Geometry::LocalCoordinate | LocalCoordinateType |
type of local coordinates More... | |
Public Member Functions | |
ConstLocalDiscreteFunction (const DiscreteFunctionType &df) | |
constructor creating a local function without binding it to an entity More... | |
ConstLocalDiscreteFunction (const typename DiscreteFunctionType::LocalFunctionType &localFunction) | |
cast a MutableLocalFunction into this one !!! expensive !!! More... | |
ConstLocalDiscreteFunction (const DiscreteFunctionType &df, const EntityType &entity) | |
constructor creating a local function and binding it to an entity More... | |
ConstLocalDiscreteFunction (const EntityType &entity, const DiscreteFunctionType &df) | |
ConstLocalDiscreteFunction (const ThisType &other) | |
copy constructor More... | |
ConstLocalDiscreteFunction (ThisType &&other) | |
move constructor More... | |
template<class Point > | |
RangeType | evaluate (const Point &p) const |
evaluate the local function More... | |
template<class Point > | |
JacobianRangeType | jacobian (const Point &p) const |
evaluate Jacobian of the local function More... | |
template<class Point > | |
HessianRangeType | hessian (const Point &p) const |
evaluate Hessian of the local function More... | |
void | init (const EntityType &entity) |
interface for local functions :: init More... | |
void | bind (const EntityType &entity) |
void | unbind () |
void | bind (const IntersectionType &intersection, IntersectionSide side) |
const DiscreteFunctionType & | discreteFunction () const |
const GridFunctionType & | gridFunction () const |
const LocalDofVectorType & | localDofVector () const |
return const reference to local Dof Vector More... | |
LocalDofVectorType & | localDofVector () |
return mutable reference to local Dof Vector More... | |
const DofType & | operator[] (SizeType i) const |
const DofType & | operator[] (SizeType i) |
const LocalDofVectorType & | localDofVector () const |
return const reference to local Dof Vector More... | |
template<class T > | |
void | assign (const LocalFunction< BasisFunctionSet, T > &other) |
assign all DoFs of this local function More... | |
template<class PointType > | |
void | axpy (const PointType &x, const RangeType &factor) |
axpy operation for local function More... | |
template<class PointType > | |
void | axpy (const PointType &x, const JacobianRangeType &factor) |
axpy operation for local function More... | |
template<class PointType > | |
void | axpy (const PointType &x, const HessianRangeType &factor) |
template<class PointType > | |
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 BasisFunctionSetType & | basisFunctionSet () const |
obtain the basis function set for this local function More... | |
const EntityType & | entity () const |
obtain the entity, this local function lives on More... | |
template<class PointType > | |
void | evaluate (const PointType &x, RangeType &ret) const |
evaluate the local function More... | |
template<class PointType > | |
void | jacobian (const PointType &x, JacobianRangeType &ret) const |
evaluate Jacobian of the local function More... | |
template<class PointType > | |
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... | |
template<class QuadratureType , class ... Vectors> | |
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... | |
template<class QuadratureType , class RangeVectorType , class JacobianRangeVectorType > | |
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... | |
template<class QuadratureType , class ... Vectors> | |
void | evaluateQuadrature (const QuadratureType &quad, Vectors &... vec) const |
evaluate all basisfunctions for all quadrature points and store the results in the result vector More... | |
template<class QuadratureType , class ... Vectors> | |
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... | |
template<class QuadratureType , class ... Vectors> | |
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 = FunctionSpaceType::dimDomain |
dimension of the domain More... | |
static const int | dimRange = FunctionSpaceType::dimRange |
dimension of the range More... | |
Protected Member Functions | |
void | clear () |
set all DoFs to zero More... | |
void | assign (const LocalFunction< DiscreteFunctionTraits< std::remove_const_t< DiscreteFunction > >::DiscreteFunctionSpaceType::BasisFunctionSetType, T > &other) |
assign all DoFs of this local function 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... | |
template<class QuadratureType , class VectorType > | |
void | evaluateQuadrature (const QuadratureType &quad, VectorType &result, const RangeType &) const |
template<class QuadratureType , class VectorType > | |
void | evaluateQuadrature (const QuadratureType &quad, VectorType &result, const JacobianRangeType &) const |
template<class QuadratureType , class VectorType > | |
void | evaluateQuadrature (const QuadratureType &quad, VectorType &result, const HessianRangeType &) const |
void | init (const EntityType &entity) |
initialize the local function for an entity More... | |
void | init (const BasisFunctionSetType &basisFunctionSet) |
initialize the local function for an basisFunctionSet More... | |
void | bind (const EntityType &entity) |
initialize the local function for an entity More... | |
Protected Attributes | |
const DiscreteFunctionType * | discreteFunction_ |
BasisFunctionSetType | basisFunctionSet_ |
LocalDofVectorType | localDofVector_ |
A constant local function carrying values for one entity.
A ConstLocalDiscreteFunction is a LocalFunction which is basically doing the same as the LocalFunction of a discrete function. The difference is that the local dofs are not kept as references but are copied to a local storage. Therefore, this is a const local function and any modification of dofs is not allowed.
DiscreteFunction | type of the discrete function, the local function shall belong to |
typedef BaseType::BasisFunctionSetType Dune::Fem::ConstLocalDiscreteFunction< DiscreteFunction >::BasisFunctionSetType |
typedef DiscreteFunctionType::DiscreteFunctionSpaceType Dune::Fem::ConstLocalDiscreteFunction< DiscreteFunction >::DiscreteFunctionSpaceType |
typedef std::remove_const_t< DiscreteFunction > Dune::Fem::ConstLocalDiscreteFunction< DiscreteFunction >::DiscreteFunctionType |
typedef BaseType::DofType Dune::Fem::ConstLocalDiscreteFunction< DiscreteFunction >::DofType |
|
inherited |
field type of the domain
typedef BaseType::DomainType Dune::Fem::ConstLocalDiscreteFunction< DiscreteFunction >::DomainType |
typedef BaseType::EntityType Dune::Fem::ConstLocalDiscreteFunction< DiscreteFunction >::EntityType |
typedef DiscreteFunctionSpaceType::FunctionSpaceType Dune::Fem::ConstLocalDiscreteFunction< DiscreteFunction >::FunctionSpaceType |
typedef DiscreteFunctionType Dune::Fem::ConstLocalDiscreteFunction< DiscreteFunction >::GridFunctionType |
typedef DiscreteFunctionSpaceType::GridPartType Dune::Fem::ConstLocalDiscreteFunction< DiscreteFunction >::GridPartType |
typedef BaseType::HessianRangeType Dune::Fem::ConstLocalDiscreteFunction< DiscreteFunction >::HessianRangeType |
typedef GridPartType::IntersectionType Dune::Fem::ConstLocalDiscreteFunction< DiscreteFunction >::IntersectionType |
typedef BaseType::JacobianRangeType Dune::Fem::ConstLocalDiscreteFunction< DiscreteFunction >::JacobianRangeType |
|
inherited |
type of local coordinates
typedef BaseType::LocalDofVectorType Dune::Fem::ConstLocalDiscreteFunction< DiscreteFunction >::LocalDofVectorType |
|
inherited |
field type of the range
typedef BaseType::RangeType Dune::Fem::ConstLocalDiscreteFunction< DiscreteFunction >::RangeType |
|
inherited |
type of SizeType
|
inlineexplicit |
constructor creating a local function without binding it to an entity
Creates the local function without initializing the fields depending on the current entity.
[in] | df | discrete function the local function shall belong to |
|
inline |
cast a MutableLocalFunction into this one !!! expensive !!!
|
inline |
constructor creating a local function and binding it to an entity
Creates the local function and initilizes the fields depending on the current entity. It is not necessary, though allowed, to call init before using the discrete function.
[in] | df | discrete function the local function shall belong to |
[in] | entity | entity for initialize the local function to |
|
inline |
|
inline |
copy constructor
|
inline |
move constructor
|
inlineinherited |
assign all DoFs of this local function
[in] | lf | local function to assign DoFs from |
|
inlineprotectedinherited |
assign all DoFs of this local function
[in] | lf | local function to assign DoFs from |
|
inlineprotectedinherited |
|
inlineinherited |
|
inlineprotectedinherited |
axpy operation for local function
Denoting the DoFs of the local function by and the basis functions by
, this function performs the following operation:
[in] | x | point to evaluate jacobian of basis functions in |
[in] | factor | axpy factor |
|
inlineinherited |
axpy operation for local function
Denoting the DoFs of the local function by and the basis functions by
, this function performs the following operation:
[in] | x | point to evaluate jacobian of basis functions in |
[in] | factor | axpy factor |
|
inlineprotectedinherited |
axpy operation for local function
Denoting the DoFs of the local function by and the basis functions by
, this function performs the following operation:
[in] | x | point to evaluate basis functions in |
[in] | factor | axpy factor |
|
inlineinherited |
axpy operation for local function
Denoting the DoFs of the local function by and the basis functions by
, this function performs the following operation:
[in] | x | point to evaluate basis functions in |
[in] | factor | axpy factor |
|
inlineprotectedinherited |
axpy operation for local function
Denoting the DoFs of the local function by and the basis functions by
, this function performs the following operation:
[in] | x | point to evaluate basis functions in |
[in] | factor1 | axpy factor for ![]() |
[in] | factor2 | axpy factor for ![]() |
|
inlineinherited |
axpy operation for local function
Denoting the DoFs of the local function by and the basis functions by
, this function performs the following operation:
[in] | x | point to evaluate basis functions in |
[in] | factor1 | axpy factor for ![]() |
[in] | factor2 | axpy factor for ![]() |
|
inlineinherited |
evaluate all basisfunctions for all quadrature points, multiply with the given factor and add the result to the local coefficients
|
inlineinherited |
evaluate all basisfunctions for all quadrature points, multiply with the given factor and add the result to the local coefficients
|
inlineinherited |
obtain the basis function set for this local function
|
inline |
|
inlineprotectedinherited |
initialize the local function for an entity
Binds the local function to an basisFunctionSet and entity.
[in] | entity | to bind the local function to |
|
inline |
|
inlineprotectedinherited |
set all DoFs to zero
|
inline |
|
inlineinherited |
obtain the entity, this local function lives on
|
inline |
evaluate the local function
[in] | x | evaluation point in local coordinates |
|
inlineinherited |
evaluate the local function
[in] | x | evaluation point in local coordinates |
[out] | ret | value of the function in the given point |
|
inlineinherited |
evaluate all basisfunctions for all quadrature points and store the results in the result vector
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inline |
|
inline |
evaluate Hessian of the local function
[in] | x | evaluation point in local coordinates |
|
inlineinherited |
evaluate Hessian of the local function
[in] | x | evaluation point in local coordinates |
[out] | ret | Hessian of the function in the evaluation point |
|
inlineinherited |
evaluate all hessians of all basis functions for all quadrature points and store the results in the result vector
|
inlineprotectedinherited |
initialize the local function for an basisFunctionSet
Binds the local function to an basisFunctionSet and entity.
[in] | basisFunctionSet | to bind the local function to |
|
inline |
interface for local functions :: init
Local functions are used to represend a discrete function on one entity. The LocalFunctionInterface defines the functionality that can be expected from such a local function. :: init
|
inlineprotectedinherited |
initialize the local function for an entity
Binds the local function to an basisFunctionSet and entity.
[in] | entity | to bind the local function to |
|
inline |
evaluate Jacobian of the local function
[in] | x | evaluation point in local coordinates |
|
inlineinherited |
evaluate Jacobian of the local function
[in] | x | evaluation point in local coordinates |
[out] | ret | Jacobian of the function in the evaluation point |
|
inlineinherited |
evaluate all Jacobians for all basis functions for all quadrature points and store the results in the result vector
|
inline |
return mutable reference to local Dof Vector
|
inline |
return const reference to local Dof Vector
|
inlineinherited |
return const reference to local Dof Vector
|
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.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
obtain the order of this local function
The order of a local function refers to the polynomial order required to integrate it exactly.
|
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.
|
inline |
|
inlineinherited |
Returns true if local function if bind or init was previously called.
|
protectedinherited |
|
staticinherited |
dimension of the domain
|
staticinherited |
dimension of the range
|
protected |
|
protectedinherited |