b2api
B2000++ API Reference Manual, VERSION 4.6
 
Loading...
Searching...
No Matches
b2csda.H File Reference
#include <complex>
#include <limits>
Include dependency graph for b2csda.H:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  b2000
 Contains the base classes for implementing Finite Elements.
 

Functions

template<typename T >
const csda< T > b2000::details::operator- (const csda< T > &a)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator== (const csda< T1 > &a, const csda< T2 > &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator== (const csda< T1 > &a, const T2 &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator== (const T1 &a, const csda< T2 > &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator!= (const csda< T1 > &a, const csda< T2 > &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator!= (const csda< T1 > &a, const T2 &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator!= (const T1 &a, const csda< T2 > &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator< (const csda< T1 > &a, const csda< T2 > &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator< (const csda< T1 > &a, const T2 &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator< (const T1 &a, const csda< T2 > &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator> (const csda< T1 > &a, const csda< T2 > &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator> (const csda< T1 > &a, const T2 &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator> (const T1 &a, const csda< T2 > &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator<= (const csda< T1 > &a, const csda< T2 > &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator<= (const csda< T1 > &a, const T2 &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator<= (const T1 &a, const csda< T2 > &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator>= (const csda< T1 > &a, const csda< T2 > &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator>= (const csda< T1 > &a, const T2 &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T1 , typename T2 >
bool b2000::details::operator>= (const T1 &a, const csda< T2 > &b)
 Comparison of two csda numbers is performed on the real part only.
 
template<typename T >
csda< T > b2000::details::abs (const csda< T > &a)
 
template<typename T >
csda< T > b2000::details::norm (const csda< T > &a)
 
template<typename T >
csda< T > b2000::details::conj (const csda< T > &a)
 Returns the csda number rather than the std::complex conjugate.
 
template<typename T >
csda< T > b2000::details::exp (const csda< T > &a)
 Natural exponential of a csda number.
 
template<typename T >
csda< T > b2000::details::log (const csda< T > &a)
 Natural logarithm of a csda number.
 
template<typename T >
csda< T > b2000::details::log10 (const csda< T > &a)
 Common logarithm of a csda number.
 
template<typename T >
csda< T > b2000::details::pow (const csda< T > &a, const csda< T > &b)
 Power from two csda numbers.
 
template<typename T1 , typename T2 >
csda< T1 > b2000::details::pow (const csda< T1 > &a, const T2 &b)
 Power where the base is a csda number.
 
template<typename T1 , typename T2 >
csda< T2 > b2000::details::pow (const T1 &a, const csda< T2 > &b)
 Power where the exponent is a csda number.
 
template<typename T >
csda< T > b2000::details::sqrt (const csda< T > &a)
 Square root of a csda number.
 
template<typename T >
csda< T > b2000::details::sin (const csda< T > &a)
 Sine of a csda number.
 
template<typename T >
csda< T > b2000::details::cos (const csda< T > &a)
 Cosine of a csda number.
 
template<typename T >
csda< T > b2000::details::tan (const csda< T > &a)
 Tangent of a csda number.
 
template<typename T >
csda< T > b2000::details::asin (const csda< T > &z)
 Arc sine of a csda number.
 
template<typename T >
csda< T > b2000::details::acos (const csda< T > &z)
 Arc cosine of a csda number.
 
template<typename T >
csda< T > b2000::details::atan (const csda< T > &a)
 Arc tangent of a csda number.
 
template<typename T >
csda< T > b2000::details::sinh (const csda< T > &a)
 Hyperbolic sine of a csda number.
 
template<typename T >
csda< T > b2000::details::cosh (const csda< T > &a)
 Hyperbolic cosine of a csda number.
 
template<typename T >
csda< T > b2000::details::tanh (const csda< T > &a)
 Tangent of a csda number.
 
template<typename T >
csda< T > b2000::details::asinh (const csda< T > &a)
 Area hyperbolic sine of a csda number.
 
template<typename T >
csda< T > b2000::details::acosh (const csda< T > &a)
 Area hyperbolic cosine of a csda number.
 
template<typename T >
csda< T > b2000::details::atanh (const csda< T > &a)
 Area hyperbolic tangent of a csda number.
 

Detailed Description

Class csda<T> and inline routines for math involving instances of csda<T>. For the implementation of complex-step derivative approximation (csda). The csda<T> class is derived from complex<T>. All member functions and routines returning complex numbers are overloaded.

The class csda is placed in the b2000 namespace, while Operations for this data type are included in the details namespace, to stay consistent. This procedure allows to make use of the csda data type as needed, while otherwise the standard complex is used.

Function Documentation

◆ abs()

template<typename T >
csda< T > b2000::details::abs ( const csda< T > &  a)
inline

Returns the magnitude of a csda number which is not a real number in general.

◆ norm()

template<typename T >
csda< T > b2000::details::norm ( const csda< T > &  a)
inline

Returns the squared magnitude of a csda number which is not a real number in general.