Allolib  1.0
C++ Components For Interactive Multimedia
al::Complex< T > Class Template Reference

#include <C:/Users/Andres/source/repos/casm_viewer/external/tinc/external/allolib/include/al/math/al_Complex.hpp>

Public Types

typedef Complex< T > C
 

Public Member Functions

 Complex (const Complex &v)
 
 Complex (const Polar< T > &v)
 
 Complex (const T &r=T(0), const T &i=T(0))
 
 Complex (const T &m, const T &p, int fromPolar)
 
C & arg (T v)
 Set argument leaving norm the same.
 
C & norm (T v)
 Set norm leaving argument the same.
 
C & fromPolar (T phase)
 Set phase and normalize.
 
C & fromPolar (T m, T p)
 Set magnitude and phase.
 
C & set (T vr, T vi)
 Set real and imaginary components.
 
C & set (const Polar< T > &p)
 
T & operator[] (int i)
 
const T & operator[] (int i) const
 
T & real ()
 
const T & real () const
 
T & imag ()
 
const T & imag () const
 
bool operator== (const C &v) const
 Returns true if all components are equal.
 
bool operator== (const T &v) const
 Returns true if real and equals value.
 
bool operator!= (const C &v) const
 Returns true if any components are not equal.
 
bool operator> (const C &v) const
 Returns true if norm is greater than argument's norm.
 
bool operator< (const C &c) const
 Returns true if norm is less than argument's norm.
 
C & operator= (const Polar< T > &v)
 
C & operator= (const C &v)
 
C & operator= (T v)
 
C & operator-= (const C &v)
 
C & operator-= (T v)
 
C & operator+= (const C &v)
 
C & operator+= (T v)
 
C & operator*= (const C &v)
 
C & operator*= (T v)
 
C & operator/= (const C &v)
 
C & operator/= (T v)
 
C operator- () const
 
C operator- (const C &v) const
 
C operator- (T v) const
 
C operator+ (const C &v) const
 
C operator+ (T v) const
 
C operator* (const C &v) const
 
C operator* (T v) const
 
C operator/ (const C &v) const
 
C operator/ (T v) const
 
T arg () const
 Returns argument in [-pi, pi].
 
T argUnit () const
 Return argument in unit interval [0, 1)
 
C conj () const
 Returns conjugate, z*.
 
T dot (const C &v) const
 Returns vector dot product.
 
C exp () const
 Returns e^z.
 
C log () const
 Returns log(z)
 
T norm () const
 Returns norm (radius), |z|.
 
T normSqr () const
 Returns square of norm, |z|^2.
 
C & normalize (T m=T(1))
 Sets magnitude to 1, |z|=1.
 
C pow (const C &v) const
 Returns z^v.
 
C pow (T v) const
 Returns z^v.
 
C recip () const
 Return multiplicative inverse, 1/z.
 
C sgn (T m=T(1)) const
 Returns signum, z/|z|, the closest point on unit circle.
 
C sqr () const
 Returns square.
 
C sqrt () const
 Returns square root.
 
C cos () const
 Returns cos(z)
 
C sin () const
 Returns sin(z)
 
C cosh () const
 Returns cosh(z)
 
C sinh () const
 Returns sinh(z)
 
T abs () const
 Returns norm (radius), |z|.
 
T mag () const
 Returns norm (radius), |z|.
 
T magSqr () const
 Returns square of norm, |z|^2.
 
T phase () const
 Returns argument (angle)
 

Public Attributes

union {
   struct {
      T   r
 Real component.
 
      T   i
 Imaginary component.
 
   } 
 
   T   elems [2]
 
}; 
 

Detailed Description

template<class T>
class al::Complex< T >

Complex number

Definition at line 95 of file al_Complex.hpp.


The documentation for this class was generated from the following file: