PIP 5.6.1
Platform-Independent Primitives
Classes | Typedefs | Functions
pimathcomplex.h File Reference

Complex numbers. More...

#include "pibytearray.h"
#include "pimathbase.h"
#include "pivector2d.h"
#include <complex>

Classes

struct  is_complex< T >
 Type trait that reports whether T is a specialization of std::complex. More...
 
struct  is_complex< std::complex< T > >
 Specialization for complex types. More...
 

Typedefs

typedef complex< int > complexi
 Complex integer type.
 
typedef complex< short > complexs
 Complex short integer type.
 
typedef complex< float > complexf
 Complex single-precision type.
 
typedef complex< ldouble > complexld
 Complex extended-precision type.
 
typedef complex< double > complexd
 Complex double-precision type.
 

Functions

const complexd complexd_i (0., 1.)
 Imaginary unit in double precision.
 
const complexd complexd_0 (0.)
 Zero value in double precision.
 
const complexd complexd_1 (1.)
 Unity value in double precision.
 
const complexld complexld_i (0., 1.)
 Imaginary unit in extended precision.
 
const complexld complexld_0 (0.)
 Zero value in extended precision.
 
const complexld complexld_1 (1.)
 Unity value in extended precision.
 
complexd sign (const complexd &x)
 Returns sign for real and imaginary parts independently.
 
complexd round (const complexd &c)
 Round, floor, and ceil functions for complex numbers.
 
complexd floor (const complexd &c)
 Floor a complex number.
 
complexd ceil (const complexd &c)
 Ceil a complex number.
 
template<typename T >
PICout operator<< (PICout s, const complex< T > &v)
 Writes a complex number as (real; imag).
 
PIVector< double > abs (const PIVector< complexd > &v)
 Returns magnitudes of all complex elements in the vector.
 
PIVector2D< double > abs (const PIVector2D< complexd > &v)
 Returns element-wise magnitudes of a complex matrix.
 
template<typename T , typename std::enable_if< std::is_floating_point< T >::value, int >::type = 0>
bool PIMathFloatNullCompare (const T v)
 Checks whether a floating-point value is close to zero. More...
 

Detailed Description

Complex numbers.

Function Documentation

◆ PIMathFloatNullCompare()

template<typename T , typename std::enable_if< std::is_floating_point< T >::value, int >::type = 0>
bool PIMathFloatNullCompare ( const T  v)
inline

Checks whether a floating-point value is close to zero.

Checks whether a complex value with floating-point components is close to zero.