CppAD::AD< Base > Class Template Reference

#include <ad.hpp>

Collaboration diagram for CppAD::AD< Base >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef Base value_type

Public Member Functions

bool operator< (const AD &right) const
bool operator<= (const AD &right) const
bool operator> (const AD &right) const
bool operator>= (const AD &right) const
bool operator== (const AD &right) const
bool operator!= (const AD &right) const
AD operator+ (const AD &right) const
AD operator- (const AD &right) const
AD operator * (const AD &right) const
AD operator/ (const AD &right) const
 AD (void)
 AD (const Base &b)
ADoperator= (const Base &b)
 AD (const VecAD_reference< Base > &x)
ADoperator= (const VecAD_reference< Base > &x)
template<class T>
 AD (const T &t)
template<class T>
ADoperator= (const T &right)
ADoperator+= (const AD &right)
ADoperator-= (const AD &right)
ADoperator *= (const AD &right)
ADoperator/= (const AD &right)
AD operator+ (void) const
AD operator- (void) const
 ~AD (void)
AD Abs (void) const
AD acos (void) const
AD asin (void) const
AD atan (void) const
AD cos (void) const
AD cosh (void) const
AD exp (void) const
AD log (void) const
AD sin (void) const
AD sinh (void) const
AD sqrt (void) const

Static Public Member Functions

static size_t omp_max_thread (size_t number)
static bool UnaryBool (bool FunName(const Base &x), const AD< Base > &x)
static bool BinaryBool (bool FunName(const Base &x, const Base &y), const AD< Base > &x, const AD< Base > &y)

Private Member Functions

void make_parameter (void)
void make_variable (size_t id, size_t taddr)
ADTape< Base > * tape_this (void) const

Static Private Member Functions

static size_t * id_handle (size_t thread)
static ADTape< Base > ** tape_handle (size_t thread)
static size_t tape_new (void)
static void tape_delete (size_t id)
static ADTape< Base > * tape_ptr (void)
static ADTape< Base > * tape_ptr (size_t id)

Private Attributes

Base value_
size_t id_
size_t taddr_

Friends

class ADTape< Base >
class ADDiscrete< Base >
class ADFun< Base >
class VecAD< Base >
class VecAD_reference< Base >
template<class VectorAD>
void Independent (VectorAD &x)
bool GreaterThanZero (const AD< Base > &u)
bool LessThanZero (const AD< Base > &u)
bool LessThanOrZero (const AD< Base > &u)
bool GreaterThanOrZero (const AD< Base > &u)
bool Parameter (const AD< Base > &u)
bool Parameter (const VecAD< Base > &u)
bool Variable (const AD< Base > &u)
bool Variable (const VecAD< Base > &u)
bool IdenticalPar (const AD< Base > &u)
bool IdenticalZero (const AD< Base > &u)
bool IdenticalOne (const AD< Base > &u)
int Integer (const AD< Base > &u)
AD Var2Par (const AD< Base > &u)
AD pow (const AD< Base > &x, const AD< Base > &y)
bool IdenticalEqualPar (const AD< Base > &u, const AD< Base > &v)
bool EqualOpSeq (const AD< Base > &u, const AD< Base > &v)
bool NearEqual (const AD< Base > &x, const AD< Base > &y, const Base &r, const Base &a)
bool NearEqual (const Base &x, const AD< Base > &y, const Base &r, const Base &a)
bool NearEqual (const AD< Base > &x, const Base &y, const Base &r, const Base &a)
AD< Base > CondExpOp (enum CompareOp cop, const AD< Base > &left, const AD< Base > &right, const AD< Base > &trueCase, const AD< Base > &falseCase)
std::ostream & operator (std::ostream &os, const AD< Base > &x)
void PrintFor (const char *text, const AD< Base > &x)
Base Value (const AD< Base > &x)

Detailed Description

template<class Base>
class CppAD::AD< Base >

Definition at line 28 of file ad.hpp.


Member Typedef Documentation

template<class Base>
typedef Base CppAD::AD< Base >::value_type

Definition at line 108 of file ad.hpp.


Constructor & Destructor Documentation

template<class Base>
CppAD::AD< Base >::AD ( void   )  [inline]

Definition at line 56 of file default.hpp.

template<class Base>
CppAD::AD< Base >::AD ( const Base &  b  )  [inline]

Definition at line 126 of file ad_copy.hpp.

template<class Base>
CppAD::AD< Base >::AD ( const VecAD_reference< Base > &  x  )  [inline]

Definition at line 141 of file ad_copy.hpp.

References CppAD::VecAD_reference< Base >::ADBase().

template<class Base>
template<class T>
CppAD::AD< Base >::AD ( const T &  t  )  [inline]

Definition at line 151 of file ad_copy.hpp.

template<class Base>
CppAD::AD< Base >::~AD ( void   )  [inline]

Definition at line 157 of file ad.hpp.


Member Function Documentation

template<class Base>
bool CppAD::AD< Base >::operator< ( const AD< Base > &  right  )  const [inline]

template<class Base>
bool CppAD::AD< Base >::operator<= ( const AD< Base > &  right  )  const [inline]

template<class Base>
bool CppAD::AD< Base >::operator> ( const AD< Base > &  right  )  const [inline]

template<class Base>
bool CppAD::AD< Base >::operator>= ( const AD< Base > &  right  )  const [inline]

template<class Base>
bool CppAD::AD< Base >::operator== ( const AD< Base > &  right  )  const [inline]

template<class Base>
bool CppAD::AD< Base >::operator!= ( const AD< Base > &  right  )  const [inline]

template<class Base>
AD CppAD::AD< Base >::operator+ ( const AD< Base > &  right  )  const [inline]

template<class Base>
AD CppAD::AD< Base >::operator- ( const AD< Base > &  right  )  const [inline]

template<class Base>
AD CppAD::AD< Base >::operator * ( const AD< Base > &  right  )  const [inline]

template<class Base>
AD CppAD::AD< Base >::operator/ ( const AD< Base > &  right  )  const [inline]

template<class Base>
AD< Base > & CppAD::AD< Base >::operator= ( const Base &  b  )  [inline]

Definition at line 129 of file ad_copy.hpp.

References CPPAD_ASSERT_UNKNOWN, CppAD::AD< Base >::id_, CppAD::AD< Base >::Parameter, and CppAD::AD< Base >::value_.

template<class Base>
AD< Base > & CppAD::AD< Base >::operator= ( const VecAD_reference< Base > &  x  )  [inline]

Definition at line 144 of file ad_copy.hpp.

References CppAD::VecAD_reference< Base >::ADBase().

template<class Base>
template<class T>
AD< Base > & CppAD::AD< Base >::operator= ( const T &  right  )  [inline]

Definition at line 155 of file ad_copy.hpp.

template<class Base>
AD& CppAD::AD< Base >::operator+= ( const AD< Base > &  right  )  [inline]

template<class Base>
AD& CppAD::AD< Base >::operator-= ( const AD< Base > &  right  )  [inline]

template<class Base>
AD& CppAD::AD< Base >::operator *= ( const AD< Base > &  right  )  [inline]

template<class Base>
AD& CppAD::AD< Base >::operator/= ( const AD< Base > &  right  )  [inline]

template<class Base>
AD< Base > CppAD::AD< Base >::operator+ ( void   )  const [inline]

Definition at line 86 of file unary_plus.hpp.

template<class Base>
AD< Base > CppAD::AD< Base >::operator- ( void   )  const [inline]

Definition at line 87 of file unary_minus.hpp.

template<class Base>
AD< Base > CppAD::AD< Base >::Abs ( void   )  const [inline]

Definition at line 161 of file abs.hpp.

References CppAD::abs(), CppAD::AbsOp, CPPAD_ASSERT_UNKNOWN, CppAD::AD< Base >::Parameter, CppAD::AD< Base >::taddr_, CppAD::AD< Base >::tape_this(), CppAD::AD< Base >::value_, and CppAD::AD< Base >::Variable.

Referenced by CppAD::abs().

template<class Base>
AD CppAD::AD< Base >::acos ( void   )  const [inline]

template<class Base>
AD CppAD::AD< Base >::asin ( void   )  const [inline]

template<class Base>
AD CppAD::AD< Base >::atan ( void   )  const [inline]

template<class Base>
AD CppAD::AD< Base >::cos ( void   )  const [inline]

template<class Base>
AD CppAD::AD< Base >::cosh ( void   )  const [inline]

template<class Base>
AD CppAD::AD< Base >::exp ( void   )  const [inline]

template<class Base>
AD CppAD::AD< Base >::log ( void   )  const [inline]

template<class Base>
AD CppAD::AD< Base >::sin ( void   )  const [inline]

template<class Base>
AD CppAD::AD< Base >::sinh ( void   )  const [inline]

template<class Base>
AD CppAD::AD< Base >::sqrt ( void   )  const [inline]

template<class Base>
size_t CppAD::AD< Base >::omp_max_thread ( size_t  number  )  [static]

Definition at line 83 of file omp_max_thread.hpp.

References CPPAD_ASSERT_KNOWN, and CPPAD_MAX_NUM_THREADS.

Referenced by CppAD::AD< Base >::tape_new().

template<class Base>
bool CppAD::AD< Base >::UnaryBool ( bool   FunName(const Base &x),
const AD< Base > &  x 
) [inline, static]

Definition at line 61 of file bool_fun_link.hpp.

References CppAD::AD< Base >::value_.

template<class Base>
bool CppAD::AD< Base >::BinaryBool ( bool   FunName(const Base &x, const Base &y),
const AD< Base > &  x,
const AD< Base > &  y 
) [inline, static]

Definition at line 70 of file bool_fun_link.hpp.

References CppAD::AD< Base >::value_.

template<class Base>
void CppAD::AD< Base >::make_parameter ( void   )  [inline, private]

Definition at line 203 of file ad.hpp.

template<class Base>
void CppAD::AD< Base >::make_variable ( size_t  id,
size_t  taddr 
) [inline, private]

Definition at line 210 of file ad.hpp.

Referenced by CppAD::ADTape< Base >::RecordCondExp().

template<class Base>
ADTape< Base > * CppAD::AD< Base >::tape_this ( void   )  const [inline, private]

Definition at line 172 of file tape_link.hpp.

References CPPAD_ASSERT_UNKNOWN, CPPAD_MAX_NUM_THREADS, CPPAD_NULL, CppAD::AD< Base >::id_, CppAD::AD< Base >::id_handle(), and CppAD::AD< Base >::tape_handle().

Referenced by CppAD::AD< Base >::Abs(), CppAD::CondExpOp(), CppAD::ADDiscrete< Base >::Eval(), and CppAD::pow().

template<class Base>
size_t * CppAD::AD< Base >::id_handle ( size_t  thread  )  [inline, static, private]

Definition at line 191 of file tape_link.hpp.

References CPPAD_ASSERT_UNKNOWN, and CPPAD_MAX_NUM_THREADS.

Referenced by CppAD::AD< Base >::tape_delete(), CppAD::AD< Base >::tape_new(), CppAD::AD< Base >::tape_ptr(), and CppAD::AD< Base >::tape_this().

template<class Base>
ADTape< Base > ** CppAD::AD< Base >::tape_handle ( size_t  thread  )  [inline, static, private]

Definition at line 200 of file tape_link.hpp.

References CPPAD_MAX_NUM_THREADS.

Referenced by CppAD::AD< Base >::tape_delete(), CppAD::AD< Base >::tape_new(), CppAD::AD< Base >::tape_ptr(), and CppAD::AD< Base >::tape_this().

template<class Base>
size_t CppAD::AD< Base >::tape_new ( void   )  [static, private]

Definition at line 206 of file tape_link.hpp.

References CPPAD_ASSERT_KNOWN, CPPAD_ASSERT_UNKNOWN, CPPAD_MAX_NUM_THREADS, CPPAD_NULL, CppAD::AD< Base >::id_handle(), CppAD::AD< Base >::omp_max_thread(), and CppAD::AD< Base >::tape_handle().

template<class Base>
void CppAD::AD< Base >::tape_delete ( size_t  id  )  [static, private]

Definition at line 233 of file tape_link.hpp.

References CPPAD_ASSERT_KNOWN, CPPAD_ASSERT_UNKNOWN, CPPAD_MAX_NUM_THREADS, CPPAD_NULL, CppAD::AD< Base >::id_handle(), and CppAD::AD< Base >::tape_handle().

template<class Base>
ADTape< Base > * CppAD::AD< Base >::tape_ptr ( void   )  [inline, static, private]

Definition at line 261 of file tape_link.hpp.

References CppAD::AD< Base >::tape_handle().

template<class Base>
ADTape< Base > * CppAD::AD< Base >::tape_ptr ( size_t  id  )  [inline, static, private]

Definition at line 272 of file tape_link.hpp.

References CPPAD_ASSERT_KNOWN, CPPAD_ASSERT_UNKNOWN, CPPAD_MAX_NUM_THREADS, CPPAD_NULL, CppAD::AD< Base >::id_handle(), and CppAD::AD< Base >::tape_handle().


Friends And Related Function Documentation

template<class Base>
friend class ADTape< Base > [friend]

Definition at line 94 of file ad.hpp.

template<class Base>
friend class ADDiscrete< Base > [friend]

Definition at line 95 of file ad.hpp.

template<class Base>
friend class ADFun< Base > [friend]

Definition at line 96 of file ad.hpp.

template<class Base>
friend class VecAD< Base > [friend]

Definition at line 97 of file ad.hpp.

template<class Base>
friend class VecAD_reference< Base > [friend]

Definition at line 98 of file ad.hpp.

template<class Base>
template<class VectorAD>
void Independent ( VectorAD< Base > &  x  )  [friend]

Definition at line 161 of file independent.hpp.

template<class Base>
bool GreaterThanZero ( const AD< Base > &  u  )  [friend]

template<class Base>
bool LessThanZero ( const AD< Base > &  u  )  [friend]

template<class Base>
bool LessThanOrZero ( const AD< Base > &  u  )  [friend]

template<class Base>
bool GreaterThanOrZero ( const AD< Base > &  u  )  [friend]

template<class Base>
bool Parameter ( const AD< Base > &  u  )  [friend]

Referenced by CppAD::AD< Base >::Abs(), CppAD::AD< double >::make_variable(), and CppAD::AD< Base >::operator=().

template<class Base>
bool Parameter ( const VecAD< Base > &  u  )  [friend]

template<class Base>
bool Variable ( const AD< Base > &  u  )  [friend]

Referenced by CppAD::AD< Base >::Abs(), and CppAD::AD< double >::make_parameter().

template<class Base>
bool Variable ( const VecAD< Base > &  u  )  [friend]

template<class Base>
bool IdenticalPar ( const AD< Base > &  u  )  [friend]

template<class Base>
bool IdenticalZero ( const AD< Base > &  u  )  [friend]

template<class Base>
bool IdenticalOne ( const AD< Base > &  u  )  [friend]

template<class Base>
int Integer ( const AD< Base > &  u  )  [friend]

template<class Base>
AD Var2Par ( const AD< Base > &  u  )  [friend]

template<class Base>
AD pow ( const AD< Base > &  x,
const AD< Base > &  y 
) [friend]

template<class Base>
bool IdenticalEqualPar ( const AD< Base > &  u,
const AD< Base > &  v 
) [friend]

template<class Base>
bool EqualOpSeq ( const AD< Base > &  u,
const AD< Base > &  v 
) [friend]

template<class Base>
bool NearEqual ( const AD< Base > &  x,
const AD< Base > &  y,
const Base &  r,
const Base &  a 
) [friend]

template<class Base>
bool NearEqual ( const Base &  x,
const AD< Base > &  y,
const Base &  r,
const Base &  a 
) [friend]

template<class Base>
bool NearEqual ( const AD< Base > &  x,
const Base &  y,
const Base &  r,
const Base &  a 
) [friend]

template<class Base>
AD<Base> CondExpOp ( enum CompareOp  cop,
const AD< Base > &  left,
const AD< Base > &  right,
const AD< Base > &  trueCase,
const AD< Base > &  falseCase 
) [friend]

Definition at line 247 of file cond_exp.hpp.

template<class Base>
std::ostream& operator ( std::ostream &  os,
const AD< Base > &  x 
) [friend]

template<class Base>
void PrintFor ( const char *  text,
const AD< Base > &  x 
) [friend]

template<class Base>
Base Value ( const AD< Base > &  x  )  [friend]


Member Data Documentation

template<class Base>
Base CppAD::AD< Base >::value_ [private]

Definition at line 192 of file ad.hpp.

Referenced by CppAD::AD< Base >::Abs(), CppAD::VecAD_reference< Base >::ADBase(), CppAD::AD< Base >::BinaryBool(), CppAD::CondExpOp(), CppAD::EqualOpSeq(), CppAD::ADDiscrete< Base >::Eval(), CppAD::GreaterThanOrZero(), CppAD::GreaterThanZero(), CppAD::IdenticalEqualPar(), CppAD::IdenticalOne(), CppAD::IdenticalPar(), CppAD::IdenticalZero(), CppAD::Integer(), CppAD::LessThanOrZero(), CppAD::LessThanZero(), CppAD::NearEqual(), CppAD::VecAD_reference< Base >::operator=(), CppAD::AD< Base >::operator=(), CppAD::pow(), CppAD::PrintFor(), CppAD::ADTape< Base >::RecordCompare(), CppAD::ADTape< Base >::RecordCondExp(), CppAD::AD< Base >::UnaryBool(), CppAD::Value(), and CppAD::Var2Par().

template<class Base>
size_t CppAD::AD< Base >::id_ [private]

Definition at line 196 of file ad.hpp.

Referenced by CppAD::AD< double >::make_parameter(), CppAD::AD< double >::make_variable(), CppAD::VecAD_reference< Base >::operator=(), CppAD::AD< Base >::operator=(), CppAD::Parameter(), CppAD::pow(), CppAD::ADTape< Base >::RecordDisOp(), CppAD::ADTape< Base >::RecordInvOp(), CppAD::ADTape< Base >::RecordLoadOp(), CppAD::ADTape< Base >::RecordOp(), CppAD::AD< Base >::tape_this(), and CppAD::Variable().

template<class Base>
size_t CppAD::AD< Base >::taddr_ [private]

Definition at line 199 of file ad.hpp.

Referenced by CppAD::AD< Base >::Abs(), CppAD::EqualOpSeq(), CppAD::ADDiscrete< Base >::Eval(), CppAD::AD< double >::make_variable(), CppAD::VecAD_reference< Base >::operator=(), CppAD::pow(), CppAD::PrintFor(), CppAD::ADTape< Base >::RecordCompare(), CppAD::ADTape< Base >::RecordCondExp(), CppAD::ADTape< Base >::RecordDisOp(), CppAD::ADTape< Base >::RecordInvOp(), CppAD::ADTape< Base >::RecordLoadOp(), and CppAD::ADTape< Base >::RecordOp().


The documentation for this class was generated from the following files:
Generated on Sun Nov 14 14:15:35 2010 for Coin-All by  doxygen 1.4.7