Represents constant values in the expression tree. More...
#include <constantExpression.hpp>
Public Types | |
template<typename T > | |
using | ConversionOperator = T_ConversionOperator<T> |
See ConstantExpression. | |
using | Real = T_Real |
See ConstantExpression. | |
Public Types inherited from codi::ExpressionInterface< T_Real, T_Impl > | |
using | ActiveResult = void |
Type into which the expression can be converted. Usually also the type from which it is constructed. | |
using | Impl = T_Impl |
See ExpressionInterface. | |
using | Real = T_Real |
See ExpressionInterface. | |
using | StoreAs = ExpressionInterface |
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 | |
ConstantExpression (Real const &v) | |
Constructor. | |
Public Member Functions inherited from codi::ExpressionInterface< T_Real, T_Impl > | |
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. | |
template<size_t argNumber> | |
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 = ConstantExpression |
Defines how this expression is stored in an expression tree. | |
using | ActiveResult = void |
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. | |
Represents constant values in the expression tree.
All values that are not a CoDiPack type are considered constant, for example values like 4.0 or double a.
See Expression design documentation for details about the expression system in CoDiPack.
T_Real | Original primal value of the statement/expression. |
T_ConversionOperator | Functions for the conversion of the constant data for primal value tape stores. |
using codi::ConstantExpression< T_Real, T_ConversionOperator >::ActiveResult = void |
Type into which the expression can be converted. Usually also the type from which it is constructed.
using codi::ConstantExpression< T_Real, T_ConversionOperator >::StoreAs = ConstantExpression |
Defines how this expression is stored in an expression tree.
|
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.
|
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.
|
inline |
|
inline |
Compute the primal value that is usually evaluated by the statement/expression.
|
staticconstexpr |
If this expression is handled as a leaf in the tree.