Interface for implementing the logic for a ComputeExpression. More...
#include <computeExpression.hpp>
Public Types | |
using | Real = T_Real |
See ComputeOperation. | |
Static Public Member Functions | |
template<size_t argNumber, typename Adjoint, typename... Args> | |
static inlineauto | applyAdjoint (Adjoint const &adjoint, Real const &result, Args const &... args) |
template<size_t argNumber, typename Tangent, typename... Args> | |
static inlineauto | applyTangent (Tangent const &tangent, Real const &result, Args const &... args) |
static inlinestd::string | getMathRep () |
Get the math symbol of the operation. E.g. + for operators and pow() for functions. | |
template<typename... Args> | |
static inlineReal | primal (Args const &... args) |
Interface for implementing the logic for a ComputeExpression.
Represents an operation
See Expression design documentation for details about the expression system in CoDiPack.
T_Real | Original primal value of the statement/expression. |
|
static |
Apply the reverse AD mode with respect to the given argument on the adjoint and return the result. Computes
|
static |
Apply the forward AD mode with respect to the given argument on the tangent and return the result. Computes
|
static |
Compute the primal value from the arguments. E.g. evaluates
The argument types are the types of the result of a getValue call on the expression.