Active.h File Reference

Contains interface to the GenericActive<valuetype> active tapeless class. More...

#include <vector>
#include <string>
#include <loki/AssocVector.h>

Classes

class  BaseActive
 
class  GenericActive< valuetype >
 
class  ActiveInitializer
 

Macros

#define NUMBER_DIRECTIONS   5
 
#define non_num   0.0 /* (inf_num/inf_den) and (non_num/non_den) */
 
#define non_den   0.0 /* respectively, see the documentation */
 
#define ADVAL_CONSTRUCTOR   , adval_(NUMBER_DIRECTIONS)
 
#define ADVAL_TYPE   std::vector < valuetype >
 
#define FOR_I_EQ_0_LT_NUMDIR   for (int _i = 0; _i < numdir; ++_i)
 
#define FOR_I_EQ_0_LT_ALLDIR   for (int _i = 0; _i < NUMBER_DIRECTIONS; ++_i)
 
#define ADVAL_I   adval_[_i]
 
#define ADV_I   adv[_i]
 

Typedefs

typedef GenericActive< double > Active
 

Functions

template<class valuetype >
valuetype makeNaN (void)
 
template<class valuetype >
GenericActive< valuetype > operator+ (valuetype lhs, const GenericActive< valuetype > &rhs)
 
template<class valuetype >
GenericActive< valuetype > operator- (valuetype lhs, const GenericActive< valuetype > &rhs)
 
template<class valuetype >
GenericActive< valuetype > operator* (valuetype lhs, const GenericActive< valuetype > &rhs)
 
template<class valuetype >
GenericActive< valuetype > operator/ (valuetype lhs, const GenericActive< valuetype > &rhs)
 
template<class valuetype >
bool operator!= (valuetype lhs, const GenericActive< valuetype > &rhs)
 
template<class valuetype >
bool operator== (valuetype lhs, const GenericActive< valuetype > &rhs)
 
template<class valuetype >
bool operator<= (valuetype lhs, const GenericActive< valuetype > &rhs)
 
template<class valuetype >
bool operator>= (valuetype lhs, const GenericActive< valuetype > &rhs)
 
template<class valuetype >
bool operator< (valuetype lhs, const GenericActive< valuetype > &rhs)
 
template<class valuetype >
bool operator> (valuetype lhs, const GenericActive< valuetype > &rhs)
 
template<class valuetype >
GenericActive< valuetype > exp (const GenericActive< valuetype > &)
 exponential More...
 
template<class valuetype >
GenericActive< valuetype > log (const GenericActive< valuetype > &)
 natural logarithm More...
 
template<class valuetype >
GenericActive< valuetype > log10 (const GenericActive< valuetype > &)
 10-base logarithm More...
 
template<class valuetype >
GenericActive< valuetype > sin (const GenericActive< valuetype > &)
 sine More...
 
template<class valuetype >
GenericActive< valuetype > asin (const GenericActive< valuetype > &)
 arc sine More...
 
template<class valuetype >
GenericActive< valuetype > tan (const GenericActive< valuetype > &)
 tangent More...
 
template<class valuetype >
GenericActive< valuetype > atan (const GenericActive< valuetype > &)
 arc tangent More...
 
template<class valuetype >
GenericActive< valuetype > cos (const GenericActive< valuetype > &)
 cosine More...
 
template<class valuetype >
GenericActive< valuetype > acos (const GenericActive< valuetype > &)
 arc cosine More...
 
template<class valuetype >
GenericActive< valuetype > sinh (const GenericActive< valuetype > &)
 hyperbolic sine More...
 
template<class valuetype >
GenericActive< valuetype > cosh (const GenericActive< valuetype > &)
 hyperbolic cosine More...
 
template<class valuetype >
GenericActive< valuetype > sqrt (const GenericActive< valuetype > &)
 square root More...
 
template<class valuetype >
GenericActive< valuetype > curt (const GenericActive< valuetype > &)
 cubic root More...
 
template<class valuetype >
GenericActive< valuetype > pow (const GenericActive< valuetype > &, valuetype)
 power More...
 
template<class valuetype >
GenericActive< valuetype > pow (const GenericActive< valuetype > &, const GenericActive< valuetype > &)
 power More...
 
template<class valuetype >
GenericActive< valuetype > fabs (const GenericActive< valuetype > &)
 absolute value More...
 
bool isNan (const Active &x)
 Return true if x is not a number. More...
 
bool isNan (const double &x)
 Return true if x is not a number. More...
 
bool isInfinite (const Active &x)
 Return true if x is an infinite number (greater than the maximum representable value) More...
 
bool isInfinite (const double &x)
 Return true if x is an infinite number (greater than the maximum representable value) More...
 

Variables

bool strict_ro
 
static class ActiveInitializer activeInitializer
 

Detailed Description

Contains interface to the GenericActive<valuetype> active tapeless class.

This file is part of LIBPF All rights reserved; do not distribute without permission.

Author
(C) Copyright 2004-2023 Paolo Greppi simevo s.r.l.

Macro Definition Documentation

◆ ADV_I

#define ADV_I   adv[_i]

◆ ADVAL_CONSTRUCTOR

#define ADVAL_CONSTRUCTOR   , adval_(NUMBER_DIRECTIONS)

◆ ADVAL_I

#define ADVAL_I   adval_[_i]

◆ ADVAL_TYPE

#define ADVAL_TYPE   std::vector < valuetype >

◆ FOR_I_EQ_0_LT_ALLDIR

#define FOR_I_EQ_0_LT_ALLDIR   for (int _i = 0; _i < NUMBER_DIRECTIONS; ++_i)

◆ FOR_I_EQ_0_LT_NUMDIR

#define FOR_I_EQ_0_LT_NUMDIR   for (int _i = 0; _i < numdir; ++_i)

◆ non_den

#define non_den   0.0 /* respectively, see the documentation */

◆ non_num

#define non_num   0.0 /* (inf_num/inf_den) and (non_num/non_den) */

◆ NUMBER_DIRECTIONS

#define NUMBER_DIRECTIONS   5

Typedef Documentation

◆ Active

typedef GenericActive<double> Active

Function Documentation

◆ acos()

template<class valuetype >
GenericActive< valuetype > acos ( const GenericActive< valuetype > &  )

arc cosine

◆ asin()

template<class valuetype >
GenericActive< valuetype > asin ( const GenericActive< valuetype > &  )

arc sine

◆ atan()

template<class valuetype >
GenericActive< valuetype > atan ( const GenericActive< valuetype > &  )

arc tangent

◆ cos()

template<class valuetype >
GenericActive< valuetype > cos ( const GenericActive< valuetype > &  )

cosine

◆ cosh()

template<class valuetype >
GenericActive< valuetype > cosh ( const GenericActive< valuetype > &  )

hyperbolic cosine

◆ curt()

template<class valuetype >
GenericActive< valuetype > curt ( const GenericActive< valuetype > &  )

cubic root

◆ exp()

template<class valuetype >
GenericActive< valuetype > exp ( const GenericActive< valuetype > &  )

exponential

◆ fabs()

template<class valuetype >
GenericActive< valuetype > fabs ( const GenericActive< valuetype > &  )

absolute value

◆ isInfinite() [1/2]

bool isInfinite ( const Active x)

Return true if x is an infinite number (greater than the maximum representable value)

◆ isInfinite() [2/2]

bool isInfinite ( const double &  x)

Return true if x is an infinite number (greater than the maximum representable value)

◆ isNan() [1/2]

bool isNan ( const Active x)

Return true if x is not a number.

◆ isNan() [2/2]

bool isNan ( const double &  x)

Return true if x is not a number.

◆ log()

template<class valuetype >
GenericActive< valuetype > log ( const GenericActive< valuetype > &  )

natural logarithm

◆ log10()

template<class valuetype >
GenericActive< valuetype > log10 ( const GenericActive< valuetype > &  )

10-base logarithm

◆ makeNaN()

template<class valuetype >
valuetype makeNaN ( void  )

◆ operator!=()

template<class valuetype >
bool operator!= ( valuetype  lhs,
const GenericActive< valuetype > &  rhs 
)

◆ operator*()

template<class valuetype >
GenericActive< valuetype > operator* ( valuetype  lhs,
const GenericActive< valuetype > &  rhs 
)

◆ operator+()

template<class valuetype >
GenericActive< valuetype > operator+ ( valuetype  lhs,
const GenericActive< valuetype > &  rhs 
)

◆ operator-()

template<class valuetype >
GenericActive< valuetype > operator- ( valuetype  lhs,
const GenericActive< valuetype > &  rhs 
)

◆ operator/()

template<class valuetype >
GenericActive< valuetype > operator/ ( valuetype  lhs,
const GenericActive< valuetype > &  rhs 
)

◆ operator<()

template<class valuetype >
bool operator< ( valuetype  lhs,
const GenericActive< valuetype > &  rhs 
)

◆ operator<=()

template<class valuetype >
bool operator<= ( valuetype  lhs,
const GenericActive< valuetype > &  rhs 
)

◆ operator==()

template<class valuetype >
bool operator== ( valuetype  lhs,
const GenericActive< valuetype > &  rhs 
)

◆ operator>()

template<class valuetype >
bool operator> ( valuetype  lhs,
const GenericActive< valuetype > &  rhs 
)

◆ operator>=()

template<class valuetype >
bool operator>= ( valuetype  lhs,
const GenericActive< valuetype > &  rhs 
)

◆ pow() [1/2]

template<class valuetype >
GenericActive< valuetype > pow ( const GenericActive< valuetype > &  ,
const GenericActive< valuetype > &   
)

power

◆ pow() [2/2]

template<class valuetype >
GenericActive< valuetype > pow ( const GenericActive< valuetype > &  ,
valuetype   
)

power

◆ sin()

template<class valuetype >
GenericActive< valuetype > sin ( const GenericActive< valuetype > &  )

sine

◆ sinh()

template<class valuetype >
GenericActive< valuetype > sinh ( const GenericActive< valuetype > &  )

hyperbolic sine

◆ sqrt()

template<class valuetype >
GenericActive< valuetype > sqrt ( const GenericActive< valuetype > &  )

square root

◆ tan()

template<class valuetype >
GenericActive< valuetype > tan ( const GenericActive< valuetype > &  )

tangent

Variable Documentation

◆ activeInitializer

class ActiveInitializer activeInitializer
static

◆ strict_ro

bool strict_ro
extern