TBCI Numerical high perf. C++ Library  2.8.0
Macros | Functions
std_cplx.h File Reference

Wrapper for C++ std library complex type plus compatibility features. More...

#include "tbci/basics.h"
#include <complex>
Include dependency graph for std_cplx.h:

Go to the source code of this file.

Macros

#define CPLX(t)   CPLX__ complex<t>
 
#define CPLXR(t, a, r)   CPLX__ complex<t> a (r)
 
#define CPLXRI(t, a, r, i)   CPLX__ complex<t> a (r,i)
 
#define CPLXC(t, a, c)   CPLX__ complex<t> a (c)
 
#define CPLXVRI(t, r, i)   (CPLX__ complex<t>(r,i))
 

Functions

template<typename T >
NAMESPACE_TBCI double fabssqr (const CPLX__ complex< T > &a)
 
template<typename T >
NAMESPACE_END NAMESPACE_CSTD double fabs (const CPLX__ complex< T > &a)
 
template<typename T >
NAMESPACE_CSTD_END
NAMESPACE_CPLX bool 
operator> (const CPLX__ complex< T > &a, const CPLX__ complex< T > &b)
 defined(NO_NS) More...
 
template<typename T >
bool operator>= (const CPLX__ complex< T > &a, const CPLX__ complex< T > &b)
 
template<typename T >
bool operator< (const CPLX__ complex< T > &a, const CPLX__ complex< T > &b)
 
template<typename T >
bool operator<= (const CPLX__ complex< T > &a, const CPLX__ complex< T > &b)
 
NAMESPACE_CPLX_END
NAMESPACE_TBCI NAMESPACE_END
NAMESPACE_TBCI 
SPEC_TBCI_TRAITS_LOOP_COPY (CPLX__ complex< float >)
 
 SPEC_TBCI_TRAITS_LOOP_COPY (CPLX__ complex< double >)
 
 SPEC_TBCI_TRAITS_ALWAYS_COPY (CPLX__ complex< float > *)
 
 SPEC_TBCI_TRAITS_ALWAYS_COPY (CPLX__ complex< double > *)
 

Detailed Description

Wrapper for C++ std library complex type plus compatibility features.

Definition in file std_cplx.h.

Macro Definition Documentation

#define CPLX (   t)    CPLX__ complex<t>

Definition at line 23 of file std_cplx.h.

#define CPLXC (   t,
  a,
  c 
)    CPLX__ complex<t> a (c)

Definition at line 26 of file std_cplx.h.

#define CPLXR (   t,
  a,
 
)    CPLX__ complex<t> a (r)

Definition at line 24 of file std_cplx.h.

#define CPLXRI (   t,
  a,
  r,
  i 
)    CPLX__ complex<t> a (r,i)

Definition at line 25 of file std_cplx.h.

#define CPLXVRI (   t,
  r,
  i 
)    (CPLX__ complex<t>(r,i))

Definition at line 27 of file std_cplx.h.

Function Documentation

template<typename T >
NAMESPACE_END NAMESPACE_CSTD double fabs ( const CPLX__ complex< T > &  a)
inline

Definition at line 47 of file std_cplx.h.

References TBCI::fabssqr(), GLBL__, MATH__, std::sqrt(), and TBCI__.

template<typename T >
NAMESPACE_TBCI double fabssqr ( const CPLX__ complex< T > &  a)
inline

Definition at line 38 of file std_cplx.h.

template<typename T >
bool operator< ( const CPLX__ complex< T > &  a,
const CPLX__ complex< T > &  b 
)
inline

Definition at line 118 of file std_cplx.h.

References std::fabs(), and MATH__.

template<typename T >
bool operator<= ( const CPLX__ complex< T > &  a,
const CPLX__ complex< T > &  b 
)
inline

Definition at line 123 of file std_cplx.h.

References std::fabs(), and MATH__.

template<typename T >
NAMESPACE_CSTD_END NAMESPACE_CPLX bool operator> ( const CPLX__ complex< T > &  a,
const CPLX__ complex< T > &  b 
)
inline

defined(NO_NS)

Larger/Smaller is not mathematically defined for complex numbers; for convenience we provide these operators, focusing just on the magnitude.

Definition at line 108 of file std_cplx.h.

References std::fabs(), and MATH__.

template<typename T >
bool operator>= ( const CPLX__ complex< T > &  a,
const CPLX__ complex< T > &  b 
)
inline

Definition at line 113 of file std_cplx.h.

References std::fabs(), and MATH__.

SPEC_TBCI_TRAITS_ALWAYS_COPY ( CPLX__ complex< float > *  )
SPEC_TBCI_TRAITS_ALWAYS_COPY ( CPLX__ complex< double > *  )
NAMESPACE_CPLX_END NAMESPACE_TBCI NAMESPACE_END NAMESPACE_TBCI SPEC_TBCI_TRAITS_LOOP_COPY ( CPLX__ complex< float >  )
SPEC_TBCI_TRAITS_LOOP_COPY ( CPLX__ complex< double >  )