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>
57 typename T_Type::Tape, ReferenceActiveType<T_Type>>,
64 using Tape =
typename Type::Tape;
66 using Real =
typename Tape::Real;
101 return reference.getIdentifier();
106 return reference.getIdentifier();
111 return reference.value();
116 return reference.value();
121 return Type::getTape();
#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
typename TraitsImplementation< Type >::PassiveReal PassiveReal
The original computation type, that was used in the application.
Definition realTraits.hpp:117
CoDiPack - Code Differentiation Package.
Definition codi.hpp:90
Implementation of assignment operators for LhsExpressionInterface implementations.
Definition assignmentOperators.hpp:54
Implementation of increment operators for LhsExpressionInterface implementations.
Definition incrementOperators.hpp:54
Base class for all CoDiPack lvalue expression.
Definition lhsExpressionInterface.hpp:63
Holds a reference to an ActiveType for manual optimization of common arguments.
Definition referenceActiveType.hpp:59
Real jacobian
Used by Jacobian tapes to optimize for reoccurring arguments.
Definition referenceActiveType.hpp:80
Real & value()
Get a reference to the lvalue represented by the expression.
Definition referenceActiveType.hpp:110
Identifier & getIdentifier()
Definition referenceActiveType.hpp:100
Real const & value() const
Get a constant reference to the lvalue represented by the expression.
Definition referenceActiveType.hpp:115
Identifier const & getIdentifier() const
Definition referenceActiveType.hpp:105
static decltype(Type::getTape()) getTape()
Get a reference to the tape which manages this expression.
Definition referenceActiveType.hpp:120
typename Tape::Real Real
See LhsExpressionInterface.
Definition referenceActiveType.hpp:66
ReferenceActiveType const & StoreAs
Defines how this expression is stored in an expression tree.
Definition referenceActiveType.hpp:96
ReferenceActiveType(Type &v)
Constructor.
Definition referenceActiveType.hpp:83
typename Tape::Gradient Gradient
See LhsExpressionInterface.
Definition referenceActiveType.hpp:69
RealTraits::PassiveReal< Real > PassiveReal
Basic computation type.
Definition referenceActiveType.hpp:67
typename Type::Tape Tape
See LhsExpressionInterface.
Definition referenceActiveType.hpp:64
T_Type Type
See ReferenceActiveType.
Definition referenceActiveType.hpp:63
typename Type::ActiveResult ActiveResult
Type into which the expression can be converted. Usually also the type from which it is constructed.
Definition referenceActiveType.hpp:97
typename Tape::Identifier Identifier
See LhsExpressionInterface.
Definition referenceActiveType.hpp:68
ReferenceActiveType< Tape > & operator=(ReferenceActiveType< Tape > const &v)
See LhsExpressionInterface::operator=(ExpressionInterface const&).
Definition referenceActiveType.hpp:86