CoDiPack  2.2.0
A Code Differentiation Package
SciComp TU Kaiserslautern
Loading...
Searching...
No Matches
codi::ReverseStatementEvaluator< T_Real > Struct Template Reference

Only stores the function handle for the reverse evaluation. More...

#include <reverseStatementEvaluator.hpp>

Inheritance diagram for codi::ReverseStatementEvaluator< T_Real >:

Public Types

using Real = T_Real
 See ReverseStatementEvaluator.
 
- Public Types inherited from codi::StatementEvaluatorInterface< T_Real >
using Real = T_Real
 See StatementEvaluatorInterface.
 
using Handle = int
 Type of the handle.
 

Protected Types

template<typename Tape >
using HandleTyped = decltype(&Tape::template statementEvaluateReverse< ActiveType< Tape > >)
 Full reverse function type.
 

StatementEvaluatorInterface implementation

using Handle = void *
 Function pointer to the reverse evaluation.
 
template<typename Tape , typename... Args>
static Real callForward (Handle const &h, Args &&... args)
 Throws CODI_EXCEPTION on call.
 
template<typename Tape , typename... Args>
static Real callPrimal (Handle const &h, Args &&... args)
 Throws CODI_EXCEPTION on call.
 
template<typename Tape , typename... Args>
static void callReverse (Handle const &h, Args &&... args)
 
template<typename Tape , typename Generator , typename Expr >
static Handle createHandle ()
 

Additional Inherited Members

- Static Public Member Functions inherited from codi::StatementEvaluatorInterface< T_Real >
template<typename Tape , typename... Args>
static Real callForward (Handle const &h, Args &&... args)
 
template<typename Tape , typename... Args>
static Real callPrimal (Handle const &h, Args &&... args)
 
template<typename Tape , typename... Args>
static void callReverse (Handle const &h, Args &&... args)
 
template<typename Tape , typename Generator , typename Expr >
static Handle createHandle ()
 

Detailed Description

template<typename T_Real>
struct codi::ReverseStatementEvaluator< T_Real >

Only stores the function handle for the reverse evaluation.

Uses the StatementEvaluatorTapeInterface.

Template Parameters
T_RealThe computation type of a tape, usually chosen as ActiveType::Real.

Member Function Documentation

◆ callReverse()

template<typename T_Real >
template<typename Tape , typename... Args>
static void codi::ReverseStatementEvaluator< T_Real >::callReverse ( Handle const &  h,
Args &&...  args 
)
inlinestatic

Template Parameters
TapeHas to implement StatementEvaluatorTapeInterface or StatementEvaluatorInnerTapeInterface, depending on the interface the implementation uses.

◆ createHandle()

template<typename T_Real >
template<typename Tape , typename Generator , typename Expr >
static Handle codi::ReverseStatementEvaluator< T_Real >::createHandle ( )
inlinestatic

Template Parameters
TapeUsually not required. Access tape specific configurations.
GeneratorHas to implement the StatementEvaluatorTapeInterface or StatementEvaluatorInnerTapeInterface. Usually the same as Tape.
ExprInstance of ExpressionInterface.

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