Returns a proxy object for the gradient that implements the operation in the multiplication of the proxy.
More...
|
template<typename Adjoint, typename Arg> |
static inlineReal | applyAdjointArg (Adjoint const &adjoint, ComplexReal const &result, Arg const &arg) |
|
template<typename Tangent, typename Arg> |
static inlineComplexReal | applyTangentArg (Tangent const &tangent, ComplexReal const &result, Arg const &arg) |
|
static inlinestd::string | getMathRep () |
| Get the math symbol of the operation. E.g. + for operators and pow() for functions.
|
|
template<typename Arg> |
static inlineComplexReal | primal (Arg const &arg) |
|
static inlineauto | applyAdjoint (Adjoint const &adjoint, Real const &result, Arg const &arg) |
|
static inlineauto | applyAdjointArg (Adjoint const &adjoint, Real const &result, Arg const &arg) |
|
static inlineauto | applyTangent (Tangent const &tangent, Real const &result, Arg const &arg) |
|
static inlineauto | applyTangentArg (Tangent const &tangent, Real const &result, Arg const &arg) |
|
static inlineReal | primal (Arg const &arg) |
|
static inlineauto | applyAdjoint (Adjoint const &adjoint, Real const &result, Args const &... 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.
|
|
static inlineReal | primal (Args const &... args) |
|
template<typename T_ComplexReal>
struct codi::OperationRealToComplexCast< T_ComplexReal >
Returns a proxy object for the gradient that implements the operation in the multiplication of the proxy.
In CoDiPack the Jacobian is applied to other Jacobians via multiplication. Since the adjoint of this operation can not be described by a complex or floating point value, that would apply the same logic, a place holder is required. With this placeholder the multiplication operation is specialized and the custom logic is evaluated.
- Template Parameters
-
T_Real | Original primal value of the statement/expression. (E.g. for double for complex<double>.) |