1 # ifndef CPPAD_LOCAL_DECLARE_AD_HPP
2 # define CPPAD_LOCAL_DECLARE_AD_HPP
15 # include <cppad/configure.hpp>
16 # if CPPAD_USE_CPLUSPLUS_2011
24 namespace CppAD {
namespace local {
26 template <
class Base>
class ADTape;
52 template <
class Base>
class AD;
53 template <
class Base>
class ADFun;
55 template <
class Base>
class discrete;
56 template <
class Base>
class VecAD;
126 const Base &x,
const AD<Base> &y,
const Base &r,
const Base &a);
129 const AD<Base> &x,
const Base &y,
const Base &r,
const Base &a);
141 template <
class Base>
145 template <
class Base>
149 template <
class Base>
165 template <
class Base> std::istream&
169 template <
class Base> std::ostream&
170 operator << (std::ostream &os, const AD<Base> &x);
171 template <
class Base> std::ostream&
172 operator << (std::ostream &os, const VecAD_reference<Base> &e);
173 template <
class Base> std::ostream&
174 operator << (std::ostream &os, const VecAD<Base> &vec);
AD< Base > cosh(const AD< Base > &x)
class used by SparseHessian to hold information so it does not need to be recomputed.
AD< Base > azmul(const AD< Base > &x, const AD< Base > &y)
Class used to hold function objects.
CPPAD_INLINE_FRIEND_TEMPLATE_FUNCTION bool operator>(const AD< Base > &left, const AD< Base > &right)
CPPAD_INLINE_FRIEND_TEMPLATE_FUNCTION AD< Base > Var2Par(const AD< Base > &x)
CPPAD_TAPE_ADDR_TYPE addr_t
AD< Base > log(const AD< Base > &x)
CPPAD_INLINE_FRIEND_TEMPLATE_FUNCTION bool operator==(const AD< Base > &left, const AD< Base > &right)
std::complex< double > atan(const std::complex< double > &x)
AD< Base > sinh(const AD< Base > &x)
Class used to store and play back an operation sequence recording.
bool GreaterThanOrZero(const std::complex< double > &x)
CPPAD_INLINE_FRIEND_TEMPLATE_FUNCTION Base Value(const AD< Base > &x)
AD< Base > abs(const AD< Base > &x)
std::complex< double > acos(const std::complex< double > &x)
bool IdenticalPar(const std::complex< double > &x)
AD< Base > tan(const AD< Base > &x)
bool EqualOpSeq(const std::complex< double > &x, const std::complex< double > &y)
void PrintFor(const AD< Base > &pos, const char *before, const AD< Base > &var, const char *after)
bool IdenticalZero(const std::complex< double > &x)
AD< Base > exp(const AD< Base > &x)
AD< Base > log10(const AD< Base > &x)
Compute the log of base 10 of x where has type AD<Base>
Class used to store an operation sequence while it is being recorded (the operation sequence is copie...
AD< Base > operator*(const AD< Base > &left, const AD< Base > &right)
AD< Base > operator-(const AD< Base > &left, const AD< Base > &right)
Type pow(const Type &x, const int &n)
bool LessThanOrZero(const std::complex< double > &x)
AD< Base > sqrt(const AD< Base > &x)
CPPAD_INLINE_FRIEND_TEMPLATE_FUNCTION bool Variable(const AD< Base > &x)
class used by SparseJacobian to hold information so it does not need to be recomputed.
bool NearEqual(const Type &x, const Type &y, const Type &r, const Type &a)
Class used to hold information used by Sparse Hessian routine in this file, so it does not need to be...
AD< Base > sin(const AD< Base > &x)
bool IdenticalEqualPar(const std::complex< double > &x, const std::complex< double > &y)
AD< Base > cos(const AD< Base > &x)
bool IdenticalOne(const std::complex< double > &x)
Class used to hold information used by Sparse Jacobian routines in this file, so they do not need to ...
std::complex< double > asin(const std::complex< double > &x)
CPPAD_INLINE_FRIEND_TEMPLATE_FUNCTION bool operator<=(const AD< Base > &left, const AD< Base > &right)
int Integer(const std::complex< double > &x)
bool LessThanZero(const std::complex< double > &x)
Class used to hold a reference to an element of a VecAD object.
AD< Base > operator+(const AD< Base > &left, const AD< Base > &right)
Vector of AD objects that tracks indexing operations on the tape.
CPPAD_INLINE_FRIEND_TEMPLATE_FUNCTION bool Parameter(const AD< Base > &x)
CPPAD_INLINE_FRIEND_TEMPLATE_FUNCTION bool operator!=(const AD< Base > &left, const AD< Base > &right)
std::complex< double > CondExpOp(enum CppAD::CompareOp cop, const std::complex< double > &left, const std::complex< double > &right, const std::complex< double > &trueCase, const std::complex< double > &falseCase)
CPPAD_INLINE_FRIEND_TEMPLATE_FUNCTION bool operator>=(const AD< Base > &left, const AD< Base > &right)
AD< Base > operator/(const AD< Base > &left, const AD< Base > &right)
CPPAD_INLINE_FRIEND_TEMPLATE_FUNCTION std::istream & operator>>(std::istream &is, AD< Base > &x)
Read an AD<Base> object from an input stream.
bool GreaterThanZero(const std::complex< double > &x)
CPPAD_INLINE_FRIEND_TEMPLATE_FUNCTION bool operator<(const AD< Base > &left, const AD< Base > &right)
CPPAD_TAPE_ID_TYPE tape_id_t