39#include "expressionInterface.hpp"
40#include "logic/nodeInterface.hpp"
41#include "logic/traversalLogic.hpp"
49 template<
typename T_StoreData>
77 template<
typename T_Real,
template<
typename>
class T_ConversionOperator = ConstantDataConversion>
108 template<
size_t argNumber>
121 template<
typename Logic,
typename... Args>
127 template<
typename Logic,
typename... Args>
129 return Logic::NeutralElement;
#define CODI_INLINE
See codi::Config::ForcedInlines.
Definition config.h:457
#define CODI_DD(Type, Default)
Abbreviation for CODI_DECLARE_DEFAULT.
Definition macros.hpp:94
#define CODI_UNUSED_ARG(arg)
Used in a constexpr context, where using CODI_UNUSED spoils the constexpr.
Definition macros.hpp:49
#define CODI_T(...)
Abbreviation for CODI_TEMPLATE.
Definition macros.hpp:111
CoDiPack - Code Differentiation Package.
Definition codi.hpp:90
void CODI_UNUSED(Args const &...)
Disable unused warnings for an arbitrary number of arguments.
Definition macros.hpp:46
Definition constantExpression.hpp:50
T_StoreData StoreData
See ConstantDataConversion.
Definition constantExpression.hpp:53
static StoreData const & toDataStore(StoreData const &v)
Convert the data from the constant expression to the store.
Definition constantExpression.hpp:62
static ArgumentData const & fromDataStore(StoreData const &v)
Convert the data from the store to the argument of the constant expression.
Definition constantExpression.hpp:57
StoreData ArgumentData
Defined by specializations.
Definition constantExpression.hpp:54
Represents constant values in the expression tree.
Definition constantExpression.hpp:78
void forEachLink(TraversalLogic< Logic > &logic, Args &&... args) const
Definition constantExpression.hpp:122
Real getJacobian() const
Definition constantExpression.hpp:109
static bool constexpr EndPoint
If this expression is handled as a leaf in the tree.
Definition constantExpression.hpp:118
T_ConversionOperator< T > ConversionOperator
See ConstantExpression.
Definition constantExpression.hpp:85
static Logic::ResultType constexpr forEachLinkConstExpr(Args &&...)
Definition constantExpression.hpp:128
Real const & getValue() const
Compute the primal value that is usually evaluated by the statement/expression.
Definition constantExpression.hpp:103
T_Real Real
See ConstantExpression.
Definition constantExpression.hpp:81
void ActiveResult
Type into which the expression can be converted. Usually also the type from which it is constructed.
Definition constantExpression.hpp:100
ConstantExpression(Real const &v)
Constructor.
Definition constantExpression.hpp:93
Base class for all CoDiPack expressions.
Definition expressionInterface.hpp:59
Traversal of CoDiPack expressions.
Definition traversalLogic.hpp:56