Analytics Template Library
 All Classes Namespaces Functions Variables Pages
Classes | Enumerations | Functions | Variables
atl Namespace Reference

Classes

struct  ACos
 
struct  Add
 
struct  ASin
 
struct  ATan
 
class  BigFloat
 
struct  Ceil
 
struct  clfallocator
 
struct  ContainerTrait
 
struct  Cos
 
struct  Cosh
 
struct  Divide
 
struct  Exp
 
struct  ExpressionBase
 
struct  ExpressionTrait
 
struct  Fabs
 
struct  FastVariableMatrix
 
struct  Floor
 
struct  ForwardModeDerivativeInfo
 
class  LinePlot
 
struct  Log
 
struct  Log10
 
struct  MatrixAssign
 
struct  Min
 
struct  Multiply
 
struct  Pow
 
struct  Real
 
struct  RealMatrix
 
struct  Sin
 
struct  Sinh
 
class  SpinLock
 
struct  Sqrt
 
struct  StackEntry
 
class  StreamedDataFile
 
struct  Subtract
 
struct  Tan
 
struct  Tanh
 
class  Tape
 
class  ThreadPool
 
struct  TypeTrait
 
struct  TypeTrait< atl::Variable< double > >
 
struct  TypeTrait< atl::Variable< float > >
 
struct  TypeTrait< atl::Variable< long double > >
 
struct  Variable
 
class  VariableIdGenerator
 
struct  VariableInfo
 
struct  VariableMatrix
 
struct  VariableMatrixAssign
 
struct  VariableVector
 
class  WaitVariable
 

Enumerations

enum  ExpressionType {
  ET_BASE = 0, REAL_SCALAR, VARIABLE_SCALAR, VARIABLE_SCALAR_EXPRESSION,
  REAL_MATRIX, VARIABLE_MATRIX, REAL_MATRIX_EXPRESSION, VARIABLE_MATRIX_EXPRESSION,
  REAL_VECTOR, VARIABLE_VECTOR, REAL_VECTOR_EXPRESSION, VARIABLE_VECTOR_EXPRESSION,
  ET_BASE = 0, REAL_SCALAR, VARIABLE_SCALAR, VARIABLE_SCALAR_EXPRESSION,
  REAL_MATRIX, VARIABLE_MATRIX, REAL_MATRIX_EXPRESSION, VARIABLE_MATRIX_EXPRESSION,
  REAL_VECTOR, VARIABLE_VECTOR, REAL_VECTOR_EXPRESSION, VARIABLE_VECTOR_EXPRESSION
}
 
enum  ExpressionType {
  ET_BASE = 0, REAL_SCALAR, VARIABLE_SCALAR, VARIABLE_SCALAR_EXPRESSION,
  REAL_MATRIX, VARIABLE_MATRIX, REAL_MATRIX_EXPRESSION, VARIABLE_MATRIX_EXPRESSION,
  REAL_VECTOR, VARIABLE_VECTOR, REAL_VECTOR_EXPRESSION, VARIABLE_VECTOR_EXPRESSION,
  ET_BASE = 0, REAL_SCALAR, VARIABLE_SCALAR, VARIABLE_SCALAR_EXPRESSION,
  REAL_MATRIX, VARIABLE_MATRIX, REAL_MATRIX_EXPRESSION, VARIABLE_MATRIX_EXPRESSION,
  REAL_VECTOR, VARIABLE_VECTOR, REAL_VECTOR_EXPRESSION, VARIABLE_VECTOR_EXPRESSION
}
 
enum  DerivativeTraceLevel {
  FIRST_ORDER_REVERSE = 0, SECOND_ORDER_REVERSE, THIRD_ORDER_REVERSE, FIRST_ORDER_FORWARD,
  SECOND_ORDER_FORWARD, THIRD_ORDER_FORWARD
}
 

Functions

template<class REAL_T , class EXPR >
const ACos< REAL_T, EXPR > acos (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<class REAL_T , class LHS , class RHS >
const Add< REAL_T, LHS, RHS > operator+ (const ExpressionBase< REAL_T, LHS > &a, const ExpressionBase< REAL_T, RHS > &b)
 
template<class REAL_T , class LHS >
const Add< REAL_T, LHS, Real
< REAL_T > > 
operator+ (const ExpressionBase< REAL_T, LHS > &a, REAL_T b)
 
template<class REAL_T , class LHS , class RHS >
const Add< REAL_T, Real
< REAL_T >, RHS > 
operator+ (const REAL_T &a, const ExpressionBase< REAL_T, RHS > &b)
 
template<class REAL_T , class EXPR >
const ASin< REAL_T, EXPR > asin (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<class REAL_T , class EXPR >
const ATan< REAL_T, EXPR > atan (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<typename T >
const atl::Variable< T > max (const atl::Variable< T > &a, const atl::Variable< T > &b)
 
template<typename T >
const atl::Variable< T > min (const atl::Variable< T > &a, const atl::Variable< T > &b)
 
template<class REAL_T , class EXPR >
const Ceil< REAL_T, EXPR > ceil (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<class REAL_T , class EXPR >
const Cos< REAL_T, EXPR > cos (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<class REAL_T , class EXPR >
const Cosh< REAL_T, EXPR > cosh (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<class REAL_T , class LHS , class RHS >
const Divide< REAL_T, LHS, RHS > operator/ (const ExpressionBase< REAL_T, LHS > &a, const ExpressionBase< REAL_T, RHS > &b)
 
template<class REAL_T , class LHS >
const Divide< REAL_T, LHS,
Real< REAL_T > > 
operator/ (const ExpressionBase< REAL_T, LHS > &a, REAL_T b)
 
template<class REAL_T , class LHS , class RHS >
const Divide< REAL_T, Real
< REAL_T >, RHS > 
operator/ (const REAL_T &a, const ExpressionBase< REAL_T, RHS > &b)
 
template<class REAL_T , class EXPR >
const Exp< REAL_T, EXPR > exp (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<class REAL_T , class EXPR >
const Fabs< REAL_T, EXPR > fabs (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<class REAL_T , class EXPR >
const atl::Fabs< REAL_T, EXPR > abs (const atl::ExpressionBase< REAL_T, EXPR > &expr)
 
template<class REAL_T , class EXPR >
const Floor< REAL_T, EXPR > floor (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<class REAL_T , class EXPR >
const Log< REAL_T, EXPR > log (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<class REAL_T , class EXPR >
const Log10< REAL_T, EXPR > log10 (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<typename REAL_T >
std::ostream & operator<< (std::ostream &out, const VariableMatrix< REAL_T > &m)
 
template<class REAL_T , class LHS , class RHS >
REAL_T EvaluateMultiplyValueCase1 (int i, int j, const ExpressionBase< REAL_T, LHS > &lhs, const ExpressionBase< REAL_T, RHS > &rhs)
 
template<class REAL_T , class LHS , class RHS >
REAL_T EvaluateMultiplyValueCase2 (int i, int j, const ExpressionBase< REAL_T, LHS > &lhs, const ExpressionBase< REAL_T, RHS > &rhs)
 
template<class REAL_T , class LHS , class RHS >
REAL_T EvaluateMultiplyValueCase3 (int i, int j, const ExpressionBase< REAL_T, LHS > &lhs, const ExpressionBase< REAL_T, RHS > &rhs)
 
template<class REAL_T , class LHS , class RHS >
REAL_T EvaluateMultiplyValueCase4 (int i, int j, const ExpressionBase< REAL_T, LHS > &lhs, const ExpressionBase< REAL_T, RHS > &rhs)
 
template<class REAL_T , class LHS , class RHS >
REAL_T EvaluateMultiplyFirstDerivativeCase1 (uint32_t a, size_t i, size_t j, const ExpressionBase< REAL_T, LHS > &lhs, const ExpressionBase< REAL_T, RHS > &rhs)
 
template<class REAL_T , class LHS , class RHS >
const Multiply< REAL_T, LHS, RHS > operator* (const ExpressionBase< REAL_T, LHS > &a, const ExpressionBase< REAL_T, RHS > &b)
 
template<class REAL_T , class LHS >
const Multiply< REAL_T, LHS,
Real< REAL_T > > 
operator* (const ExpressionBase< REAL_T, LHS > &a, REAL_T b)
 
template<class REAL_T , class LHS , class RHS >
const Multiply< REAL_T, Real
< REAL_T >, RHS > 
operator* (const REAL_T &a, const ExpressionBase< REAL_T, RHS > &b)
 
template<int alignment = 16>
void * AllocateAligned (std::size_t size)
 
template<int alignment = 16>
void DeallocateAligned (void *ptr)
 
template<class REAL_T , class EXPR >
const Sin< REAL_T, EXPR > sin (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<class REAL_T , class EXPR >
const Sinh< REAL_T, EXPR > sinh (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<class REAL_T , class EXPR >
const Sqrt< REAL_T, EXPR > sqrt (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<class REAL_T , class LHS , class RHS >
const Subtract< REAL_T, LHS, RHS > operator- (const ExpressionBase< REAL_T, LHS > &a, const ExpressionBase< REAL_T, RHS > &b)
 
template<class REAL_T , class LHS >
const Subtract< REAL_T, LHS,
Real< REAL_T > > 
operator- (const ExpressionBase< REAL_T, LHS > &a, REAL_T b)
 
template<class REAL_T , class LHS , class RHS >
const Subtract< REAL_T, Real
< REAL_T >, RHS > 
operator- (const REAL_T &a, const ExpressionBase< REAL_T, RHS > &b)
 
template<class REAL_T , class EXPR >
const Tan< REAL_T, EXPR > tan (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<class REAL_T , class EXPR >
const Tanh< REAL_T, EXPR > tanh (const ExpressionBase< REAL_T, EXPR > &exp)
 
template<typename T >
std::ostream & operator<< (std::ostream &out, const StackEntry< T > &entry)
 
template<typename REAL_T >
std::ostream & operator<< (std::ostream &out, const Variable< REAL_T > &v)
 
template<class REAL_T , class EXPR >
const atl::Variable< REAL_T > ad_fabs (const atl::ExpressionBase< REAL_T, EXPR > &expr, double C=1e-50)
 
template<typename T >
const atl::Variable< T > max (const atl::Variable< T > &a, const atl::Variable< T > &b, T C=1e-50)
 
template<typename T >
const atl::Variable< T > min (const atl::Variable< T > &a, const atl::Variable< T > &b, T C=1e-50)
 
template<class REAL_T , class LHS , class RHS >
const Pow< REAL_T, LHS, RHS > pow (const ExpressionBase< REAL_T, LHS > &a, const ExpressionBase< REAL_T, RHS > &b)
 
template<class REAL_T , class LHS >
const Pow< REAL_T, LHS, Real
< REAL_T > > 
pow (const ExpressionBase< REAL_T, LHS > &a, REAL_T b)
 
template<class REAL_T , class LHS , class RHS >
const Pow< REAL_T, Real
< REAL_T >, RHS > 
pow (const REAL_T &a, const ExpressionBase< REAL_T, RHS > &b)
 
template<class T >
const int operator== (const BigFloat< T > &lhs, const BigFloat< T > &rhs)
 
template<class T >
const int operator!= (const BigFloat< T > &lhs, const BigFloat< T > &rhs)
 
template<class T >
const int operator< (const BigFloat< T > &lhs, const BigFloat< T > &rhs)
 
template<class T >
const int operator> (const BigFloat< T > &lhs, const BigFloat< T > &rhs)
 
template<class T >
const int operator<= (const BigFloat< T > &lhs, const BigFloat< T > &rhs)
 
template<class T >
const int operator>= (const BigFloat< T > &lhs, const BigFloat< T > &rhs)
 
template<class T >
const long operator% (const BigFloat< T > &lhs, const BigFloat< T > &rhs)
 
template<class T >
const int operator== (T lhs, const BigFloat< T > &rhs)
 
template<class T >
const int operator!= (T lhs, const BigFloat< T > &rhs)
 
template<class T >
const int operator< (T lhs, const BigFloat< T > &rhs)
 
template<class T >
const int operator> (T lhs, const BigFloat< T > &rhs)
 
template<class T >
const int operator<= (T lhs, const BigFloat< T > &rhs)
 
template<class T >
const int operator>= (T lhs, const BigFloat< T > &rhs)
 
template<class T >
const long operator% (const T &lhs, const BigFloat< T > &rhs)
 
template<class T >
const int operator== (const BigFloat< T > &lhs, T rhs)
 
template<class T >
const int operator!= (const BigFloat< T > &lhs, T rhs)
 
template<class T >
const int operator< (const BigFloat< T > &lhs, T rhs)
 
template<class T >
const int operator> (const BigFloat< T > &lhs, T rhs)
 
template<class T >
const int operator<= (const BigFloat< T > &lhs, T rhs)
 
template<class T >
const int operator>= (const BigFloat< T > &lhs, T rhs)
 
template<class T >
const int operator% (const BigFloat< T > &lhs, const T &rhs)
 
template<class T >
const BigFloat< T > operator- (const BigFloat< T > &lhs, const BigFloat< T > &rhs)
 
template<class T >
const BigFloat< T > operator+ (const BigFloat< T > &lhs, const BigFloat< T > &rhs)
 
template<class T >
const BigFloat< T > operator/ (const BigFloat< T > &lhs, const BigFloat< T > &rhs)
 
template<class T >
const BigFloat< T > operator* (const BigFloat< T > &lhs, const BigFloat< T > &rhs)
 
template<class T >
const BigFloat< T > operator- (T lhs, const BigFloat< T > &rhs)
 
template<class T >
const BigFloat< T > operator+ (T lhs, const BigFloat< T > &rhs)
 
template<class T >
const BigFloat< T > operator/ (T lhs, const BigFloat< T > &rhs)
 
template<class T >
const BigFloat< T > operator* (T lhs, const BigFloat< T > &rhs)
 
template<class T >
const BigFloat< T > operator- (const BigFloat< T > &lhs, T rhs)
 
template<class T >
const BigFloat< T > operator+ (const BigFloat< T > &lhs, T rhs)
 
template<class T >
const BigFloat< T > operator/ (const BigFloat< T > &lhs, T rhs)
 
template<class T >
const BigFloat< T > operator* (const BigFloat< T > &lhs, T rhs)
 
template<class T >
std::ostream & operator<< (std::ostream &out, BigFloat< T > const &t)
 
template<typename T >
StreamedDataFileoperator>> (StreamedDataFile &in, atl::Variable< T > &v)
 
template<typename T >
StreamedDataFileoperator>> (StreamedDataFile &in, atl::Vector< T > &v)
 
template<typename T >
StreamedDataFileoperator>> (StreamedDataFile &in, atl::Matrix< T > &m)
 

Variables

atl::ThreadPool thread_pool_g
 

Detailed Description

Author
Matthew R. Supernaw

Public Domain Notice National Oceanic And Atmospheric Administration

This software is a "United States Government Work" under the terms of the United States Copyright Act. It was written as part of the author's official duties as a United States Government employee and thus cannot be copyrighted. This software is freely available to the public for use. The National Oceanic And Atmospheric Administration and the U.S. Government have not placed any restriction on its use or reproduction. Although all reasonable efforts have been taken to ensure the accuracy and reliability of the software and data, the National Oceanic And Atmospheric Administration and the U.S. Government do not and cannot warrant the performance warrant the performance or results that may be obtained by using this software or data. The National Oceanic And Atmospheric Administration and the U.S. Government disclaim all warranties, express or implied, including warranties of performance, merchantability or fitness for any particular purpose.

Please cite the author(s) in any work or product based on this material.

Function Documentation

template<class REAL_T , class EXPR >
const ACos< REAL_T, EXPR > atl::acos ( const ExpressionBase< REAL_T, EXPR > &  exp)
inline

Returns a expression template representing arccosine.

Parameters
exp
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class EXPR >
const atl::Variable<REAL_T> atl::ad_fabs ( const atl::ExpressionBase< REAL_T, EXPR > &  expr,
double  C = 1e-50 
)

Used when expr could evaluate to zero, which will result in a NaN for derivative values.

Evaluates:

\( (expr^2+C)^.5 \)

Parameters
expr
Cdefault = 1e-50
Returns

References pow().

Referenced by max(), and min().

template<class REAL_T , class EXPR >
const ASin< REAL_T, EXPR > atl::asin ( const ExpressionBase< REAL_T, EXPR > &  exp)
inline

Returns an expression template representing arcsine.

Parameters
exp
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class EXPR >
const ATan< REAL_T, EXPR > atl::atan ( const ExpressionBase< REAL_T, EXPR > &  exp)
inline

Returns an expression template representing arctangent.

Parameters
exp
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class EXPR >
const Ceil< REAL_T, EXPR > atl::ceil ( const ExpressionBase< REAL_T, EXPR > &  exp)
inline

Ceiling of the expression exp. Not Differentiable.

Parameters
exp
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class EXPR >
const Cos< REAL_T, EXPR > atl::cos ( const ExpressionBase< REAL_T, EXPR > &  exp)
inline

Returns an expression template representing cosine.

Parameters
exp
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class EXPR >
const Cosh< REAL_T, EXPR > atl::cosh ( const ExpressionBase< REAL_T, EXPR > &  exp)
inline

Returns an expression template representing hyperbolic cosine.

Parameters
exp
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class EXPR >
const Floor< REAL_T, EXPR > atl::floor ( const ExpressionBase< REAL_T, EXPR > &  exp)
inline

Returns an expression template representing floor.

Parameters
exp
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class EXPR >
const Log< REAL_T, EXPR > atl::log ( const ExpressionBase< REAL_T, EXPR > &  exp)
inline

Returns an expression template representing log.

Parameters
exp
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class EXPR >
const Log10< REAL_T, EXPR > atl::log10 ( const ExpressionBase< REAL_T, EXPR > &  exp)
inline

Returns an expression template representing log10.

Parameters
exp
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<typename T >
const atl::Variable<T> atl::max ( const atl::Variable< T > &  a,
const atl::Variable< T > &  b 
)
inline

Returns the maximum between a and b in a continuous manner using:

(a + b + |a - b|) / 2.0;

Parameters
a
b
Returns
template<typename T >
const atl::Variable<T> atl::max ( const atl::Variable< T > &  a,
const atl::Variable< T > &  b,
C = 1e-50 
)
inline

Returns the maximum between a and b in a continuous manner using:

(a + b + atl::ad_fabs(a - b)) *.5;

This is an approximation with minimal error.

Parameters
a
b
Cdefault = 1e-50
Returns

References ad_fabs().

template<typename T >
const atl::Variable<T> atl::min ( const atl::Variable< T > &  a,
const atl::Variable< T > &  b 
)
inline

Returns the minimum between a and b in a continuous manner using:

(a + b - |a - b|) / 2.0;

Parameters
a
b
Returns
template<typename T >
const atl::Variable<T> atl::min ( const atl::Variable< T > &  a,
const atl::Variable< T > &  b,
C = 1e-50 
)
inline

Returns the minimum between a and b in a continuous manner using:

(a + b - atl::ad_fabs(a - b))*.5;

This is an approximation with minimal error.

Parameters
a
b
Cdefault = 1e-50
Returns

References ad_fabs().

template<class T >
const int atl::operator!= ( const BigFloat< T > &  lhs,
const BigFloat< T > &  rhs 
)
inline

Not equal to comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator!= ( lhs,
const BigFloat< T > &  rhs 
)
inline

Not equal to comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator!= ( const BigFloat< T > &  lhs,
rhs 
)
inline

Not equal to comparison operator.

Parameters
lhs
rhs
Returns
template<class REAL_T , class LHS , class RHS >
const Multiply< REAL_T, LHS, RHS > atl::operator* ( const ExpressionBase< REAL_T, LHS > &  a,
const ExpressionBase< REAL_T, RHS > &  b 
)
inline

Operator for addition of two expression templates.

Parameters
a
b
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class LHS >
const Multiply< REAL_T, LHS, Real< REAL_T > > atl::operator* ( const ExpressionBase< REAL_T, LHS > &  a,
REAL_T  b 
)
inline
Parameters
a
b
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class LHS , class RHS >
const Multiply< REAL_T, Real< REAL_T >, RHS > atl::operator* ( const REAL_T &  a,
const ExpressionBase< REAL_T, RHS > &  b 
)
inline
Parameters
a
b
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class T >
const BigFloat<T> atl::operator* ( const BigFloat< T > &  lhs,
const BigFloat< T > &  rhs 
)

Outside class multiplication operator.

Parameters
lhs
rhs
Returns
template<class T >
const BigFloat<T> atl::operator* ( lhs,
const BigFloat< T > &  rhs 
)

Outside class multiplication operator.

Parameters
lhs
rhs
Returns
template<class T >
const BigFloat<T> atl::operator* ( const BigFloat< T > &  lhs,
rhs 
)

Outside class multiplication operator.

Parameters
lhs
rhs
Returns
template<class REAL_T , class LHS , class RHS >
const Add< REAL_T, LHS, RHS > atl::operator+ ( const ExpressionBase< REAL_T, LHS > &  a,
const ExpressionBase< REAL_T, RHS > &  b 
)
inline

Operator for addition of two expression templates.

Parameters
a
b
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class LHS >
const Add< REAL_T, LHS, Real< REAL_T > > atl::operator+ ( const ExpressionBase< REAL_T, LHS > &  a,
REAL_T  b 
)
inline

Operator for addition of an expression template and a real value.

Parameters
a
b
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class LHS , class RHS >
const Add< REAL_T, Real< REAL_T >, RHS > atl::operator+ ( const REAL_T &  a,
const ExpressionBase< REAL_T, RHS > &  b 
)
inline

Operator for the addition of a real value and an expression template.

Parameters
a
b
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class T >
const BigFloat<T> atl::operator+ ( const BigFloat< T > &  lhs,
const BigFloat< T > &  rhs 
)

Outside class addition operator.

Parameters
lhs
rhs
Returns
template<class T >
const BigFloat<T> atl::operator+ ( lhs,
const BigFloat< T > &  rhs 
)

Outside class addition operator.

Parameters
lhs
rhs
Returns
template<class T >
const BigFloat<T> atl::operator+ ( const BigFloat< T > &  lhs,
rhs 
)

Outside class addition operator.

Parameters
lhs
rhs
Returns
template<class REAL_T , class LHS , class RHS >
const Subtract< REAL_T, LHS, RHS > atl::operator- ( const ExpressionBase< REAL_T, LHS > &  a,
const ExpressionBase< REAL_T, RHS > &  b 
)
inline

Operator for subtraction of two expression templates.

Parameters
a
b
Returns

Operator for subtraction of a expression template by another expression template.

Parameters
a
b
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class LHS >
const Subtract< REAL_T, LHS, Real< REAL_T > > atl::operator- ( const ExpressionBase< REAL_T, LHS > &  a,
REAL_T  b 
)
inline

Operator for subtraction of a expression template by a real value.

Parameters
a
b
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class LHS , class RHS >
const Subtract< REAL_T, Real< REAL_T >, RHS > atl::operator- ( const REAL_T &  a,
const ExpressionBase< REAL_T, RHS > &  b 
)
inline

Operator for subtraction of a real value by an expression template.

Parameters
a
b
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class T >
const BigFloat<T> atl::operator- ( const BigFloat< T > &  lhs,
const BigFloat< T > &  rhs 
)

Outside class subtraction operator.

Parameters
lhs
rhs
Returns
template<class T >
const BigFloat<T> atl::operator- ( lhs,
const BigFloat< T > &  rhs 
)

Outside class subtraction operator.

Parameters
lhs
rhs
Returns
template<class T >
const BigFloat<T> atl::operator- ( const BigFloat< T > &  lhs,
rhs 
)

Outside class subtraction operator.

Parameters
lhs
rhs
Returns
template<class REAL_T , class LHS , class RHS >
const Divide< REAL_T, LHS, RHS > atl::operator/ ( const ExpressionBase< REAL_T, LHS > &  a,
const ExpressionBase< REAL_T, RHS > &  b 
)
inline

Operator for addition of two expression templates.

Parameters
a
b
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class T >
const BigFloat<T> atl::operator/ ( const BigFloat< T > &  lhs,
const BigFloat< T > &  rhs 
)

Outside class division operator.

Parameters
lhs
rhs
Returns
template<class T >
const BigFloat<T> atl::operator/ ( lhs,
const BigFloat< T > &  rhs 
)

Outside class division operator.

Parameters
lhs
rhs
Returns
template<class T >
const BigFloat<T> atl::operator/ ( const BigFloat< T > &  lhs,
rhs 
)

Outside class division operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator< ( const BigFloat< T > &  lhs,
const BigFloat< T > &  rhs 
)
inline

Less than comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator< ( lhs,
const BigFloat< T > &  rhs 
)
inline

Less than comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator< ( const BigFloat< T > &  lhs,
rhs 
)
inline

Less than comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator<= ( const BigFloat< T > &  lhs,
const BigFloat< T > &  rhs 
)
inline

Less than equal to comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator<= ( lhs,
const BigFloat< T > &  rhs 
)
inline

Less than equal to comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator<= ( const BigFloat< T > &  lhs,
rhs 
)
inline

Less than equal to comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator== ( const BigFloat< T > &  lhs,
const BigFloat< T > &  rhs 
)
inline

Equal to comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator== ( lhs,
const BigFloat< T > &  rhs 
)
inline

Equal to comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator== ( const BigFloat< T > &  lhs,
rhs 
)
inline

Equal to comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator> ( const BigFloat< T > &  lhs,
const BigFloat< T > &  rhs 
)
inline

Greater than comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator> ( lhs,
const BigFloat< T > &  rhs 
)
inline

Greater than comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator> ( const BigFloat< T > &  lhs,
rhs 
)
inline

Greater than comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator>= ( const BigFloat< T > &  lhs,
const BigFloat< T > &  rhs 
)
inline

Greater than equal to comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator>= ( lhs,
const BigFloat< T > &  rhs 
)
inline

Greater than equal to comparison operator.

Parameters
lhs
rhs
Returns
template<class T >
const int atl::operator>= ( const BigFloat< T > &  lhs,
rhs 
)
inline

Greater than equal to comparison operator.

Parameters
lhs
rhs
Returns
template<class REAL_T , class LHS , class RHS >
const Pow<REAL_T, LHS, RHS> atl::pow ( const ExpressionBase< REAL_T, LHS > &  a,
const ExpressionBase< REAL_T, RHS > &  b 
)
inline

Returns a expression template representing pow.

Parameters
a
b
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

Referenced by ad_fabs().

template<class REAL_T , class LHS >
const Pow<REAL_T, LHS, Real<REAL_T> > atl::pow ( const ExpressionBase< REAL_T, LHS > &  a,
REAL_T  b 
)
inline

Returns a expression template representing pow.

Parameters
a
b
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class LHS , class RHS >
const Pow<REAL_T, Real<REAL_T>, RHS> atl::pow ( const REAL_T &  a,
const ExpressionBase< REAL_T, RHS > &  b 
)
inline

Returns a expression template representing pow.

Parameters
a
b
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class EXPR >
const Sin< REAL_T, EXPR > atl::sin ( const ExpressionBase< REAL_T, EXPR > &  exp)
inline

Creates a expression template representing sine.

Parameters
exp
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class EXPR >
const Sinh< REAL_T, EXPR > atl::sinh ( const ExpressionBase< REAL_T, EXPR > &  exp)
inline

Creates a expression template representing hyperbolic sine.

Parameters
exp
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class EXPR >
const Sqrt< REAL_T, EXPR > atl::sqrt ( const ExpressionBase< REAL_T, EXPR > &  exp)
inline

Returns an expression template representing the square root.

Parameters
exp
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class EXPR >
const Tan< REAL_T, EXPR > atl::tan ( const ExpressionBase< REAL_T, EXPR > &  exp)
inline

Creates a expression template representing tangent.

Parameters
exp
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().

template<class REAL_T , class EXPR >
const Tanh< REAL_T, EXPR > atl::tanh ( const ExpressionBase< REAL_T, EXPR > &  exp)
inline

Creates a expression template representing hyperbolic tangent.

Parameters
exp
Returns

References atl::ExpressionBase< REAL_T, A >::Cast().