CoDiPack  3.0.0
A Code Differentiation Package
SciComp TU Kaiserslautern
Loading...
Searching...
No Matches
codi::TapeHelper< Type, typename > Struct Template Reference

See TapeHelperBase. More...

#include <tapeHelper.hpp>

Inheritance diagram for codi::TapeHelper< Type, typename >:

Additional Inherited Members

- Public Types inherited from codi::TapeHelperNoImpl< Type >
using Base
 Base class abbreviation.
 
using Real
 See TapeHelperBase.
 
using Type
 See TapeHelperBase.
 
- Public Types inherited from codi::TapeHelperBase< Type, TapeHelperNoImpl< Type > >
using Gradient
 See LhsExpressionInterface.
 
using HessianType
 Type of the Hessian.
 
using Identifier
 See LhsExpressionInterface.
 
using Impl
 See TapeHelperBase.
 
using JacobianType
 Type of the Jacobian.
 
using PassiveReal
 Passive base of the CoDiPack type.
 
using Real
 See LhsExpressionInterface.
 
using Type
 See TapeHelperBase.
 
- Public Member Functions inherited from codi::TapeHelperNoImpl< Type >
void evalHessian (typename Base::HessianType &hes, Jac &jac=StaticDummy< DummyJacobian >::dummy)
 Missing implementation will yield linker errors.
 
virtual void evalPrimal (Real const *x, Real *y=nullptr)=0
 Missing implementation will yield linker errors.
 
- Public Member Functions inherited from codi::TapeHelperBase< Type, TapeHelperNoImpl< Type > >
GradientcreateGradientVectorInput ()
 Create a gradient vector that can hold the tangent/adjoint of the input variables.
 
GradientcreateGradientVectorInput ()
 Create a gradient vector that can hold the tangent/adjoint of the input variables.
 
GradientcreateGradientVectorOutput ()
 Create a gradient vector that can hold the tangent/adjoint of the output variables.
 
GradientcreateGradientVectorOutput ()
 Create a gradient vector that can hold the tangent/adjoint of the output variables.
 
HessianTypecreateHessian ()
 Create a Hessian that can hold the Hessian of the recorded tape.
 
HessianTypecreateHessian ()
 Create a Hessian that can hold the Hessian of the recorded tape.
 
JacobianTypecreateJacobian ()
 Create a Jacobian that can hold the Jacobian of the recorded tape.
 
JacobianTypecreateJacobian ()
 Create a Jacobian that can hold the Jacobian of the recorded tape.
 
RealcreatePrimalVectorInput ()
 Create a primal vector that can hold the primal seeding of the input variables.
 
RealcreatePrimalVectorInput ()
 Create a primal vector that can hold the primal seeding of the input variables.
 
RealcreatePrimalVectorOutput ()
 Create a primal vector that can hold the primal result of the output variables.
 
RealcreatePrimalVectorOutput ()
 Create a primal vector that can hold the primal result of the output variables.
 
void deleteGradientVector (Gradient *vec)
 Delete a gradient vector that was created with createGradientVectorInput or createGradientVectorOutput.
 
void deleteGradientVector (Gradient *vec)
 Delete a gradient vector that was created with createGradientVectorInput or createGradientVectorOutput.
 
void deleteHessian (HessianType &hes)
 Delete the Hessian that was created with createHessian function.
 
void deleteHessian (HessianType &hes)
 Delete the Hessian that was created with createHessian function.
 
void deleteJacobian (JacobianType &jac)
 Delete the Jacobian that was created with createJacobian function.
 
void deleteJacobian (JacobianType &jac)
 Delete the Jacobian that was created with createJacobian function.
 
void deletePrimalVector (Real *vec)
 Delete a primal vector that was created with createPrimalVectorInput or createPrimalVectorOutput.
 
void deletePrimalVector (Real *vec)
 Delete a primal vector that was created with createPrimalVectorInput or createPrimalVectorOutput.
 
inlinevoid evalForward (Gradient const *x_d, Gradient *y_d)
 Perform a forward (tangent) evaluation of the recorded tape.
 
inlinevoid evalForward (Gradient const *x_d, Gradient *y_d)
 Perform a forward (tangent) evaluation of the recorded tape.
 
inlinevoid evalForwardAt (Real const *x, Gradient const *x_d, Gradient *y_d, Real *y=nullptr)
 Re-evaluate the tape with new input variables and compute the AD forward mode.
 
inlinevoid evalForwardAt (Real const *x, Gradient const *x_d, Gradient *y_d, Real *y=nullptr)
 Re-evaluate the tape with new input variables and compute the AD forward mode.
 
void evalHessian (HessianType &hes, Jac &jac=StaticDummy< DummyJacobian >::dummy)
 Evaluates the full Hessian of the recorded tape.
 
void evalHessian (HessianType &hes, Jac &jac=StaticDummy< DummyJacobian >::dummy)
 Evaluates the full Hessian of the recorded tape.
 
inlinevoid evalHessianAt (Real const *x, HessianType &hes, Real *y=nullptr, Jac &jac=StaticDummy< DummyJacobian >::dummy)
 Re-evaluate the tape with new input variables and compute the full Hessian at the new inputs.
 
inlinevoid evalHessianAt (Real const *x, HessianType &hes, Real *y=nullptr, Jac &jac=StaticDummy< DummyJacobian >::dummy)
 Re-evaluate the tape with new input variables and compute the full Hessian at the new inputs.
 
inlinevoid evalJacobian (JacobianType &jac)
 Evaluates the full Jacobian of the recorded tape.
 
inlinevoid evalJacobian (JacobianType &jac)
 Evaluates the full Jacobian of the recorded tape.
 
inlinevoid evalJacobianAt (Real const *x, JacobianType &jac, Real *y=nullptr)
 Re-evaluate the tape with new input variables and compute the full Jacobian at the new inputs.
 
inlinevoid evalJacobianAt (Real const *x, JacobianType &jac, Real *y=nullptr)
 Re-evaluate the tape with new input variables and compute the full Jacobian at the new inputs.
 
inlinevoid evalJacobianGen (Jac &jac)
 Evaluates the full Jacobian of the recorded tape with a custom Jacobian type chosen by the user.
 
inlinevoid evalJacobianGen (Jac &jac)
 Evaluates the full Jacobian of the recorded tape with a custom Jacobian type chosen by the user.
 
inlinevoid evalReverse (Gradient const *y_b, Gradient *x_b)
 Perform a reverse (adjoint) evaluation of the recorded tape.
 
inlinevoid evalReverse (Gradient const *y_b, Gradient *x_b)
 Perform a reverse (adjoint) evaluation of the recorded tape.
 
inlinevoid evalReverseAt (Real const *x, Gradient const *y_b, Gradient *x_b, Real *y=nullptr)
 Re-evaluate the tape with new input variables and compute the AD forward mode.
 
inlinevoid evalReverseAt (Real const *x, Gradient const *y_b, Gradient *x_b, Real *y=nullptr)
 Re-evaluate the tape with new input variables and compute the AD forward mode.
 
size_t getInputSize ()
 
size_t getInputSize ()
 
size_t getOutputSize ()
 
size_t getOutputSize ()
 
void registerInput (Type &value)
 Add an input variable to the tape.
 
void registerInput (Type &value)
 Add an input variable to the tape.
 
void registerOutput (Type &value)
 Add an output variable to the tape.
 
void registerOutput (Type &value)
 Add an output variable to the tape.
 
void startRecording ()
 Start the recording process. Deletes the old tape.
 
void startRecording ()
 Start the recording process. Deletes the old tape.
 
void stopRecording ()
 Stop the recording process.
 
void stopRecording ()
 Stop the recording process.
 
 TapeHelperBase ()
 Constructor.
 
 TapeHelperBase ()
 Constructor.
 
virtual ~TapeHelperBase ()
 Destructor.
 
virtual ~TapeHelperBase ()
 Destructor.
 
- Protected Types inherited from codi::TapeHelperBase< Type, TapeHelperNoImpl< Type > >
using Tape
 Underlying tape type.
 
- Protected Member Functions inherited from codi::TapeHelperBase< Type, TapeHelperNoImpl< Type > >
inlineImpl & cast ()
 Cast to the implementing class.
 
inlineImpl & cast ()
 Cast to the implementing class.
 
void changeStateToForwardEvaluation ()
 Change state.
 
void changeStateToForwardEvaluation ()
 Change state.
 
void changeStateToReverseEvaluation ()
 Change state and clear the adjoints.
 
void changeStateToReverseEvaluation ()
 Change state and clear the adjoints.
 
- Protected Attributes inherited from codi::TapeHelperBase< Type, TapeHelperNoImpl< Type > >
std::vector< IdentifierinputValues
 Input value identifiers.
 
std::vector< IdentifierinputValues
 Input value identifiers.
 
std::vector< IdentifieroutputValues
 Input value identifiers.
 
std::vector< IdentifieroutputValues
 Input value identifiers.
 
Tapetape
 Reference to the global tape.
 
Tapetape
 Reference to the global tape.
 
bool wasForwardEvaluated
 State of the last evaluation.
 
bool wasForwardEvaluated
 State of the last evaluation.
 

Detailed Description

template<typename Type, typename = void>
struct codi::TapeHelper< Type, typename >

See TapeHelperBase.


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