39#include "../tapes/interfaces/gradientAccessTapeInterface.hpp"
40#include "../traits/realTraits.hpp"
41#include "assignmentOperators.hpp"
42#include "incrementOperators.hpp"
43#include "lhsExpressionInterface.hpp"
55 template<
typename T_Type>
58 ReferenceActiveType<T_Type>>,
59 public AssignmentOperators<typename T_Type::Tape::Real, T_Type::Tape::AllowJacobianOptimization,
60 ReferenceActiveType<T_Type>>,
66 using Tape =
typename Type::Tape;
68 using Real =
typename Tape::Real;
126 return Type::getTape();
#define CODI_INLINE
See codi::Config::ForcedInlines.
Definition config.h:469
#define CODI_DD(Type, Default)
Abbreviation for CODI_DECLARE_DEFAULT.
Definition macros.hpp:96
typename TraitsImplementation< Type >::PassiveReal PassiveReal
The original computation type that was used in the application.
Definition realTraits.hpp:123
CoDiPack - Code Differentiation Package.
Definition codi.hpp:94
Provides assignment operators for LhsExpressionInterface implementations.
Definition assignmentOperators.hpp:120
Implementation of increment operators for LhsExpressionInterface implementations.
Definition incrementOperators.hpp:54
Base class for all CoDiPack lvalue expression.
Definition lhsExpressionInterface.hpp:63
LhsExpressionInterface()=default
Holds a reference to an ActiveType for manual optimization of common arguments.
Definition referenceActiveType.hpp:61
Tape ADLogic
AD logic that governs the expression. Needs to be the same for all inputs of the expression.
Definition referenceActiveType.hpp:102
Real jacobian
Used by Jacobian tapes to optimize for reoccurring arguments.
Definition referenceActiveType.hpp:82
Type & reference
Reference to the underlying active type.
Definition referenceActiveType.hpp:75
typename Tape::Real Real
See LhsExpressionInterface.
Definition referenceActiveType.hpp:68
ReferenceActiveType const & StoreAs
Defines how this expression is stored in an expression tree.
Definition referenceActiveType.hpp:101
typename Tape::Gradient Gradient
See LhsExpressionInterface.
Definition referenceActiveType.hpp:71
inlineReal & value()
Get a reference to the lvalue represented by the expression.
Definition referenceActiveType.hpp:115
RealTraits::PassiveReal< Real > PassiveReal
Basic computation type.
Definition referenceActiveType.hpp:69
inlineReal const & value() const
Get a constant reference to the lvalue represented by the expression.
Definition referenceActiveType.hpp:120
typename Type::Tape Tape
See LhsExpressionInterface.
Definition referenceActiveType.hpp:66
T_Type Type
See ReferenceActiveType.
Definition referenceActiveType.hpp:65
inlineIdentifier & getIdentifier()
Definition referenceActiveType.hpp:105
typename Tape::Identifier Identifier
See LhsExpressionInterface.
Definition referenceActiveType.hpp:70
inlineReferenceActiveType & operator=(ReferenceActiveType const &v)
See LhsExpressionInterface::operator=(ExpressionInterface const&).
Definition referenceActiveType.hpp:91
inlineIdentifier const & getIdentifier() const
Definition referenceActiveType.hpp:110