CoDiPack  2.2.0
A Code Differentiation Package
SciComp TU Kaiserslautern
Loading...
Searching...
No Matches
codi::PrimalValueBaseTape< T_TapeTypes, T_Impl >::IncrementForwardLogic Struct Reference

Perform the adjoint update based on the configuration in codi::Config::VariableAdjointInterfaceInPrimalTapes. More...

#include <primalValueBaseTape.hpp>

Inheritance diagram for codi::PrimalValueBaseTape< T_TapeTypes, T_Impl >::IncrementForwardLogic:

Public Member Functions

template<typename Node >
void handleJacobianOnActive (Node const &node, Real jacobian, Gradient &lhsTangent, Gradient *adjointVector)
 Called for leaf nodes which implement LhsExpressionInterface.
 
- Public Member Functions inherited from codi::JacobianComputationLogic< IncrementForwardLogic >
void handleJacobianOnActive (Node const &node, Jacobian jacobian, Args &&... args)
 Called for leaf nodes which implement LhsExpressionInterface.
 
ExpressionTraits::EnableIfLhsExpression< Node > leaf (Node const &node, Jacobian jacobian, Args &&... args)
 Called for all leaf nodes in the expression.
 
void link (Child const &child, Root const &root, Jacobian const &jacobian, Args &&... args)
 
- Public Member Functions inherited from codi::TraversalLogic< T_Impl >
Implcast ()
 Cast to the implementation.
 
template<typename Node , typename... Args>
void eval (NodeInterface< Node > const &node, Args &&... args)
 Start the evaluation of the logic on the given expression.
 
template<typename Node , typename... Args>
void node (Node const &node, Args &&... args)
 Called for each node in the expression.
 
template<typename Node , typename... Args>
void leaf (Node const &node, Args &&... args)
 Called for all leaf nodes in the expression.
 
template<size_t ChildNumber, typename Child , typename Root , typename... Args>
void link (Child const &child, Root const &root, Args &&... args)
 Called for all links in the expression.
 

Additional Inherited Members

- Public Types inherited from codi::JacobianComputationLogic< IncrementForwardLogic >
using Impl
 See JacobianComputationLogic.
 
- Public Types inherited from codi::TraversalLogic< T_Impl >
using Impl = T_Impl
 See TraversalLogic.
 
- Protected Member Functions inherited from codi::TraversalLogic< T_Impl >
template<typename Node , typename... Args>
void toLinks (Node const &node, Args &&... args)
 Helper method which calls forEachLink on the node.
 
template<typename Node , typename... Args>
void toNode (Node const &node, Args &&... args)
 Helper method to distinguish between leaf nodes and normal nodes.
 

Detailed Description

template<typename T_TapeTypes, typename T_Impl>
struct codi::PrimalValueBaseTape< T_TapeTypes, T_Impl >::IncrementForwardLogic

Perform the adjoint update based on the configuration in codi::Config::VariableAdjointInterfaceInPrimalTapes.

Member Function Documentation

◆ handleJacobianOnActive()

template<typename Node >
void codi::PrimalValueBaseTape< T_TapeTypes, T_Impl >::IncrementForwardLogic::handleJacobianOnActive ( Node const & node,
Real jacobian,
Gradient & lhsTangent,
Gradient * adjointVector )
inline

Called for leaf nodes which implement LhsExpressionInterface.


The documentation for this struct was generated from the following file: