gslmm::complex< double > Class Template Reference
[Complex numbers]

#include <complex_double.hh>

Collaboration diagram for gslmm::complex< double >:

Collaboration graph
[legend]
List of all members.

Detailed Description

template<>
class gslmm::complex< double >

double Specialisation of gslmm::complex<T>.


Public Types

typedef double value_type
typedef gsl_complex low_type
typedef type_trait< complex<
double > > 
trait_type

Public Member Functions

 complex (const value_type &real=0, const value_type &imag=0, bool polar=false)
 complex (const std::complex< value_type > &z)
 complex (const complex< value_type > &z, bool owner=false)
 complex (const gsl_complex *z, bool owner=false)
 complex (const gsl_complex &z, bool owner=false)
virtual ~complex ()
bool is_real () const
bool is_complex () const
void assign (const value_type &real=0, const value_type &imag=0, bool polar=false)
const value_typereal () const
const value_typeimag () const
value_typereal ()
value_typeimag ()
value_type arg () const
value_type abs () const
value_type square_abs () const
value_type log_of_abs () const
complex< value_type > & operator= (const gslmm::complex< value_type > &z)
complex< value_type > & operator= (const value_type &x)
complex< value_type > & operator= (const std::complex< value_type > &z)
bool operator== (const complex< value_type > &z1) const
bool operator!= (const complex< value_type > &z1) const
complex< value_typeoperator- () const
complex< value_typeoperator+ (const complex< value_type > &z1)
complex< value_typeoperator- (const complex< value_type > &z1)
complex< value_typeoperator * (const complex< value_type > &z1)
complex< value_typeoperator/ (const complex< value_type > &z1)
complex< value_type > & operator+= (const complex< value_type > &z1)
complex< value_type > & operator-= (const complex< value_type > &z1)
complex< value_type > & operator *= (const complex< value_type > &z1)
complex< value_type > & operator/= (const complex< value_type > &z1)
complex< value_typeoperator+ (const value_type &a)
complex< value_typeoperator- (const value_type &a)
complex< value_typeoperator * (const value_type &a)
complex< value_typeoperator/ (const value_type &a)
complex< value_type > & operator+= (const value_type &a)
complex< value_type > & operator-= (const value_type &a)
complex< value_type > & operator *= (const value_type &a)
complex< value_type > & operator/= (const value_type &a)
void add_to_real (const value_type &a)
void subtract_from_real (const value_type &a)
void multiply_real (const value_type &a)
void divide_real (const value_type &a)
void add_to_imag (const value_type &a)
void subtract_from_imag (const value_type &a)
void multiply_imag (const value_type &a)
void divide_imag (const value_type &a)
complex< value_typeconjugate () const
complex< value_typeinverse () const
std::complex< value_typeas_std () const
gsl_complex * as_c_type_ptr () const
gsl_complex & as_c_type ()
const gsl_complex & as_c_type () const
 operator gsl_complex & ()
 operator const gsl_complex & () const

Static Public Member Functions

static const complex< double > & i ()

Public Attributes

gsl_complex * _complex
bool _owner


Member Typedef Documentation

typedef gsl_complex gslmm::complex< double >::low_type
 

Type of the low_level data.

typedef type_trait<complex<double > > gslmm::complex< double >::trait_type
 

Trait type.

typedef double gslmm::complex< double >::value_type
 

The value type.


Constructor & Destructor Documentation

gslmm::complex< double >::complex const value_type real = 0,
const value_type imag = 0,
bool  polar = false
[inline]
 

Constructor.

gslmm::complex< double >::complex const std::complex< value_type > &  z  )  [inline]
 

Conversion constructor from std::complex.

gslmm::complex< double >::complex const complex< value_type > &  z,
bool  owner = false
[inline]
 

Copy constructor.

gslmm::complex< double >::complex const gsl_complex< double > *  z,
bool  owner = false
[inline]
 

Conversion Constructor.

gslmm::complex< double >::complex const gsl_complex< double > &  z,
bool  owner = false
[inline]
 

Conversion constructor.

virtual gslmm::complex< double >::~complex  )  [inline, virtual]
 

Destructor.


Member Function Documentation

value_type gslmm::complex< double >::abs  )  const [inline]
 

Get length.

void gslmm::complex< double >::add_to_imag const value_type a  )  [inline]
 

Addition assignment.

void gslmm::complex< double >::add_to_real const value_type a  )  [inline]
 

Addition assignment.

value_type gslmm::complex< double >::arg  )  const [inline]
 

Get angle.

const gsl_complex& gslmm::complex< double >::as_c_type  )  const [inline]
 

Conversion.

gsl_complex& gslmm::complex< double >::as_c_type  )  [inline]
 

Conversion.

gsl_complex* gslmm::complex< double >::as_c_type_ptr  )  const [inline]
 

Conversion.

std::complex<value_type> gslmm::complex< double >::as_std  )  const [inline]
 

Conversion.

void gslmm::complex< double >::assign const value_type real = 0,
const value_type imag = 0,
bool  polar = false
[inline]
 

Assign this number.

complex< double > gslmm::complex< double >::conjugate  )  const [inline]
 

Return complex conjugate.

void gslmm::complex< double >::divide_imag const value_type a  )  [inline]
 

Division assignment.

void gslmm::complex< double >::divide_real const value_type a  )  [inline]
 

Division assignment.

const complex< double > & gslmm::complex< double >::i  )  [inline, static]
 

The imaginary unit.

value_type& gslmm::complex< double >::imag  )  [inline]
 

Get the imaginary part.

const value_type& gslmm::complex< double >::imag  )  const [inline]
 

Set imaginary partt.

complex< double > gslmm::complex< double >::inverse  )  const [inline]
 

Return 1 / z.

bool gslmm::complex< double >::is_complex  )  const [inline]
 

Check if this is purely complex.

bool gslmm::complex< double >::is_real  )  const [inline]
 

Check if this is purely real.

value_type gslmm::complex< double >::log_of_abs  )  const [inline]
 

Get the log of the length.

void gslmm::complex< double >::multiply_imag const value_type a  )  [inline]
 

Multiplication assignment.

void gslmm::complex< double >::multiply_real const value_type a  )  [inline]
 

Multiplication assignment.

complex< double > gslmm::complex< double >::operator * const value_type a  )  [inline]
 

Multiplication operator.

complex< double > gslmm::complex< double >::operator * const complex< value_type > &  z1  )  [inline]
 

Multiplication operator.

complex< double > & gslmm::complex< double >::operator *= const value_type a  )  [inline]
 

Multiplication assignment.

complex< double > & gslmm::complex< double >::operator *= const complex< value_type > &  z1  )  [inline]
 

Multiplication assignment.

gslmm::complex< double >::operator const gsl_complex &  )  const [inline]
 

Conversion.

gslmm::complex< double >::operator gsl_complex &  )  [inline]
 

Conversion.

bool gslmm::complex< double >::operator!= const complex< value_type > &  z1  )  const [inline]
 

compare

complex< double > gslmm::complex< double >::operator+ const value_type a  )  [inline]
 

Addition operator.

complex< double > gslmm::complex< double >::operator+ const complex< value_type > &  z1  )  [inline]
 

Addition operator.

complex< double > & gslmm::complex< double >::operator+= const value_type a  )  [inline]
 

Addition assignment.

complex< double > & gslmm::complex< double >::operator+= const complex< value_type > &  z1  )  [inline]
 

Addition assignment.

complex< double > gslmm::complex< double >::operator- const value_type a  )  [inline]
 

Substraction asssignment.

complex< double > gslmm::complex< double >::operator- const complex< value_type > &  z1  )  [inline]
 

Substraction operator.

complex< double > gslmm::complex< double >::operator-  )  const [inline]
 

Unary minus.

complex< double > & gslmm::complex< double >::operator-= const value_type a  )  [inline]
 

Substraction asssignment.

complex< double > & gslmm::complex< double >::operator-= const complex< value_type > &  z1  )  [inline]
 

Substraction asssignment.

complex< double > gslmm::complex< double >::operator/ const value_type a  )  [inline]
 

Division operator.

complex< double > gslmm::complex< double >::operator/ const complex< value_type > &  z1  )  [inline]
 

Division operator.

complex< double > & gslmm::complex< double >::operator/= const value_type a  )  [inline]
 

Division assignment.

complex< double > & gslmm::complex< double >::operator/= const complex< value_type > &  z1  )  [inline]
 

Division assignment.

complex<value_type>& gslmm::complex< double >::operator= const std::complex< value_type > &  z  )  [inline]
 

Assign.

complex<value_type>& gslmm::complex< double >::operator= const value_type x  )  [inline]
 

Assign.

complex<value_type>& gslmm::complex< double >::operator= const gslmm::complex< value_type > &  z  )  [inline]
 

Assign.

bool gslmm::complex< double >::operator== const complex< value_type > &  z1  )  const [inline]
 

compare

value_type& gslmm::complex< double >::real  )  [inline]
 

Get the real part.

const value_type& gslmm::complex< double >::real  )  const [inline]
 

Set the real part.

value_type gslmm::complex< double >::square_abs  )  const [inline]
 

Get the square of the length.

void gslmm::complex< double >::subtract_from_imag const value_type a  )  [inline]
 

Substraction asssignment.

void gslmm::complex< double >::subtract_from_real const value_type a  )  [inline]
 

Substraction asssignment.


Member Data Documentation

gsl_complex* gslmm::complex< double >::_complex
 

The data.

bool gslmm::complex< double >::_owner
 


The documentation for this class was generated from the following file:
Top of page Last update Tue May 9 10:11:30 2006
Christian Holm
Created by DoxyGen 1.4.6