42#include "../../../traits/expressionTraits.hpp"
43#include "../traversalLogic.hpp"
52 template<
typename T_Impl>
75 cast().handleJacobianOnActive(
node, jacobian, std::forward<Args>(
args)...);
96 return static_cast<Impl&
>(*this);
#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_T(...)
Abbreviation for CODI_TEMPLATE.
Definition macros.hpp:111
typename std::enable_if< IsLhsExpression< Expr >::value, T >::type EnableIfLhsExpression
Enable if wrapper for IsLhsExpression.
Definition expressionTraits.hpp:137
CoDiPack - Code Differentiation Package.
Definition codi.hpp:90
Definition jacobianComputationLogic.hpp:53
void link(Child const &child, Root const &root, Jacobian const &jacobian, Args &&... args)
Definition jacobianComputationLogic.hpp:84
void handleJacobianOnActive(Node const &node, Jacobian jacobian, Args &&... args)
Called for leaf nodes which implement LhsExpressionInterface.
T_Impl Impl
See JacobianComputationLogic.
Definition jacobianComputationLogic.hpp:56
ExpressionTraits::EnableIfLhsExpression< Node > leaf(Node const &node, Jacobian jacobian, Args &&... args)
Called for all leaf nodes in the expression.
Definition jacobianComputationLogic.hpp:73
Default implementation of the Jacobian interface.
Definition jacobian.hpp:60
Traversal of CoDiPack expressions.
Definition traversalLogic.hpp:56
void node(Node const &node, Args &&... args)
Called for each node in the expression.
Definition traversalLogic.hpp:86