CoDiPack  2.2.0
A Code Differentiation Package
SciComp TU Kaiserslautern
Loading...
Searching...
No Matches
codi::StaticContextActiveType< T_Tape > Struct Template Reference

Replacement type of LhsExpressionInterface types in ConstructStaticContext. More...

#include <staticContextActiveType.hpp>

Inheritance diagram for codi::StaticContextActiveType< T_Tape >:

Public Types

using Base = ExpressionInterface<Real, StaticContextActiveType>
 Base class abbreviation.
 
using Identifier = typename Tape::Identifier
 See TapeTypesInterface.
 
using Real = typename Tape::Real
 See TapeTypesInterface.
 
using Tape
 See StaticContextActiveType.
 
- Public Types inherited from codi::ExpressionInterface< T_Tape::Real, StaticContextActiveType< T_Tape > >
using ActiveResult
 Type into which the expression can be converted. Usually also the type from which it is constructed.
 
using Impl
 See ExpressionInterface.
 
using Real
 See ExpressionInterface.
 
using StoreAs
 Defines how this expression is stored in an expression tree.
 
- Public Types inherited from codi::NodeInterface< T_Impl >
using Impl = T_Impl
 See NodeInterface.
 

Public Member Functions

 StaticContextActiveType (Real const &primal, Identifier const &identifier)
 Constructor.
 
 StaticContextActiveType (StaticContextActiveType const &other)
 Constructor.
 
Partial implementation of LhsExpressionInterface
Identifier const & getIdentifier () const
 
- Public Member Functions inherited from codi::ExpressionInterface< T_Tape::Real, StaticContextActiveType< T_Tape > >
Impl const & cast () const
 Cast to the implementation.
 
 ExpressionInterface ()=default
 Constructor.
 
 ExpressionInterface (ExpressionInterface const &)=default
 Constructor.
 
Real const getValue () const
 Compute the primal value that is usually evaluated by the statement/expression.
 
Real getJacobian () const
 
- Public Member Functions inherited from codi::NodeInterface< T_Impl >
Impl const & cast () const
 Cast to the implementation.
 
template<typename Logic , typename... Args>
void forEachLink (TraversalLogic< Logic > &logic, Args &&... args) const
 

Implementation of ExpressionInterface

using StoreAs = StaticContextActiveType
 If this expression is handled as a leaf in the tree.
 
using ActiveResult = StaticContextActiveType
 Type into which the expression can be converted. Usually also the type from which it is constructed.
 
Real const getValue () const
 Compute the primal value that is usually evaluated by the statement/expression.
 
template<size_t argNumber>
Real getJacobian () const
 

Implementation of NodeInterface

static bool constexpr EndPoint = true
 If this expression is handled as a leaf in the tree.
 
template<typename Logic , typename... Args>
void forEachLink (TraversalLogic< Logic > &logic, Args &&... args) const
 
template<typename Logic , typename... Args>
static Logic::ResultType constexpr forEachLinkConstExpr (Args &&...)
 

Additional Inherited Members

- Static Public Member Functions inherited from codi::NodeInterface< T_Impl >
template<typename Logic , typename... Args>
static Logic::ResultType constexpr forEachLinkConstExpr (Args &&... args)
 
- Static Public Attributes inherited from codi::NodeInterface< T_Impl >
static bool constexpr EndPoint = false
 If this expression is handled as a leaf in the tree.
 

Detailed Description

template<typename T_Tape>
struct codi::StaticContextActiveType< T_Tape >

Replacement type of LhsExpressionInterface types in ConstructStaticContext.

See ConstructStaticContext for detailed information. See Expression design documentation for details about the expression system in CoDiPack.

Template Parameters
T_TapeThe tape that create the original expression.

Member Typedef Documentation

◆ ActiveResult

template<typename T_Tape >
using codi::StaticContextActiveType< T_Tape >::ActiveResult = StaticContextActiveType

Type into which the expression can be converted. Usually also the type from which it is constructed.

◆ StoreAs

template<typename T_Tape >
using codi::StaticContextActiveType< T_Tape >::StoreAs = StaticContextActiveType

If this expression is handled as a leaf in the tree.

◆ Tape

template<typename T_Tape >
using codi::StaticContextActiveType< T_Tape >::Tape
Initial value:
T_Tape

See StaticContextActiveType.

Member Function Documentation

◆ forEachLink()

template<typename T_Tape >
template<typename Logic , typename... Args>
void codi::StaticContextActiveType< T_Tape >::forEachLink ( TraversalLogic< Logic > & logic,
Args &&... args ) const
inline

Call the link method of the given logic for all arguments (links) of this node (not to be confused with args). Pass args to each call.

◆ forEachLinkConstExpr()

template<typename T_Tape >
template<typename Logic , typename... Args>
static Logic::ResultType constexpr codi::StaticContextActiveType< T_Tape >::forEachLinkConstExpr ( Args && ...)
inlinestaticconstexpr

Call the link method of the given logic for all arguments (links) of this node (not to be confused with args). Pass args to each call.

◆ getIdentifier()

template<typename T_Tape >
Identifier const & codi::StaticContextActiveType< T_Tape >::getIdentifier ( ) const
inline

Get a constant reference to the identifier of the tape for this expression. See also Direct data access (Identifier management)

◆ getJacobian()

template<typename T_Tape >
template<size_t argNumber>
Real codi::StaticContextActiveType< T_Tape >::getJacobian ( ) const
inline

Get the Jacobian with respect to the given argument.

This is just the local Jacobian and not the one for the whole expression tree.

◆ getValue()

template<typename T_Tape >
Real const codi::StaticContextActiveType< T_Tape >::getValue ( ) const
inline

Compute the primal value that is usually evaluated by the statement/expression.

Member Data Documentation

◆ EndPoint

template<typename T_Tape >
bool constexpr codi::StaticContextActiveType< T_Tape >::EndPoint = true
staticconstexpr

If this expression is handled as a leaf in the tree.


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