DUNE-ACFEM (2.5.1)

Dune::ACFem::UnaryGridFunctionExpression< InvertOperation, FunctionType > Class Template Reference

For the sake of BoundarySupportedFunction we need to specialize the InvertOperation. More...

#include <dune/acfem/functions/gridfunctionexpression.hh>

+ Collaboration diagram for Dune::ACFem::UnaryGridFunctionExpression< InvertOperation, FunctionType >:

Public Types

typedef UnaryGridFunctionExpressionTraits< OperationTagType, FunctionType > TraitsType
 type of traits
 
typedef TraitsType::DiscreteFunctionSpaceType DiscreteFunctionSpaceType
 type of discrete function space
 
typedef DiscreteFunctionSpaceType::GridPartType GridPartType
 type of gridPart
 
typedef DiscreteFunctionSpaceType::GridType GridType
 type of grid
 
typedef DiscreteFunctionSpaceType::DomainFieldType DomainFieldType
 domain type (from function space)
 
typedef DiscreteFunctionSpaceType::RangeFieldType RangeFieldType
 range type (from function space)
 
typedef DiscreteFunctionSpaceType::DomainType DomainType
 domain type (from function space)
 
typedef DiscreteFunctionSpaceType::RangeType RangeType
 range type (from function space)
 
typedef DiscreteFunctionSpaceType::JacobianRangeType JacobianRangeType
 jacobian type (from function space)
 
typedef DiscreteFunctionSpaceType::HessianRangeType HessianRangeType
 hessian type (from function space)
 
typedef TraitsType::EntityType EntityType
 type of codim 0 entity
 
typedef LocalFunction LocalFunctionType
 type of local function to export
 
typedef ExpressionImp ExpressionType
 The type of the underlying expression.
 

Public Member Functions

void evaluate (const DomainType &global, RangeType &result) const
 evaluate function on local coordinate local
 
void jacobian (const DomainType &global, JacobianRangeType &result) const
 evaluate function on local coordinate local
 
void hessian (const DomainType &global, HessianRangeType &result) const
 evaluate function on local coordinate local
 
const LocalFunctionType localFunction (const EntityType &entity) const
 See Fem::DiscreteFunctionInterface::localFunction(const EntityType &entity) const.
 
LocalFunctionType localFunction (const EntityType &entity)
 See Fem::DiscreteFunctionInterface::localFunction(const EntityType &entity)
 
const std::string & expressionName () const
 See Fem::DiscreteFunctionInterface::name() const.
 
const DiscreteFunctionSpaceTypespace () const
 See Fem::DiscreteFunctionInterface::space() const.
 
void setName (const std::string &newName)
 Supply a descriptive name for the function. More...
 
const std::string & name () const
 Return a descriptive name for the function. More...
 
const ExpressionTypeexpression () const
 Return a const reference to the underlying expression.
 
ExpressionTypeexpression ()
 Return a mutable reference to the underlying expression.
 
ExpressionType operator* () const
 Return a copy from of the underlying expression.
 

BoundarySupportedFunction support

enum  { emptySupport = false , globalSupport = true }
 Resulting Boundary indicator type. More...
 
typedef EntireBoundaryIndicatorType IndicatorType
 Resulting Boundary indicator type. More...
 
const LocalFunctionType localFunction (const EntityType &entity, const IntersectionType &intersection) const
 See Fem::DiscreteFunctionInterface::localFunction(const EntityType &entity)> const.
 
LocalFunctionType localFunction (const EntityType &entity, const IntersectionType &intersection)
 See Fem::DiscreteFunctionInterface::localFunction(const IntersectionType &intersection)
 
IndicatorType indicator () const
 Resulting Boundary indicator type. More...
 

Detailed Description

template<class FunctionType>
class Dune::ACFem::UnaryGridFunctionExpression< InvertOperation, FunctionType >

For the sake of BoundarySupportedFunction we need to specialize the InvertOperation.

The InvertOperation produce UNDEFINED RESULTS outside the support in order to be mathematically correct. Hence the inverse of a BoundarySupportedFunction has always support on the entire boundary and will produce HUGE_VAL results outside the support of the original function. It must be this way.

Member Typedef Documentation

◆ IndicatorType

template<class FunctionType >
typedef EntireBoundaryIndicatorType Dune::ACFem::UnaryGridFunctionExpression< InvertOperation, FunctionType >::IndicatorType

Resulting Boundary indicator type.

Member Enumeration Documentation

◆ anonymous enum

template<class FunctionType >
anonymous enum

Resulting Boundary indicator type.

Enumerator
emptySupport 
globalSupport 

Member Function Documentation

◆ indicator()

template<class FunctionType >
IndicatorType Dune::ACFem::UnaryGridFunctionExpression< InvertOperation, FunctionType >::indicator ( ) const
inline

Resulting Boundary indicator type.

◆ name()

const std::string& Dune::ACFem::GridFunctionExpression< FunctionType::FunctionSpaceType , UnaryGridFunctionExpression< InvertOperation, FunctionType > , ExpressionTemplate >::name ( ) const
inlineinherited

Return a descriptive name for the function.

If set by setName(), return that user-supplied name. Otherwise return a (lengthy) auto-generated name describing the underlying algebraic expression.

◆ setName()

void Dune::ACFem::GridFunctionExpression< FunctionType::FunctionSpaceType , UnaryGridFunctionExpression< InvertOperation, FunctionType > , ExpressionTemplate >::setName ( const std::string &  newName)
inlineinherited

Supply a descriptive name for the function.

This name will also be stored in the VTK files. It should be a "valid variable name".


The documentation for this class was generated from the following file:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.80.0 (May 5, 22:29, 2024)