numbers::NumberTraits< std::complex< number > > Struct Template Reference

List of all members.

Public Types

typedef number real_type

Static Public Member Functions

static std::complex< number > conjugate (const std::complex< number > &x)
static real_type abs_square (const std::complex< number > &x)
static real_type abs (const std::complex< number > &x)

Static Public Attributes

static const bool is_complex = true


Detailed Description

template<typename number>
struct numbers::NumberTraits< std::complex< number > >

Specialization of the general NumberTraits class that provides the relevant information if the underlying data type is std::complex<T>.

Author:
Wolfgang Bangerth, 2007

Member Typedef Documentation

template<typename number >
typedef number numbers::NumberTraits< std::complex< number > >::real_type

For this data type, typedef the corresponding real type. Since this specialization of the template is selected for number types std::complex<T>, the real type is equal to the type used to store the two components of the complex number.


Member Function Documentation

template<typename number >
std::complex< number > numbers::NumberTraits< std::complex< number > >::conjugate ( const std::complex< number > &  x  )  [inline, static]

Return the complex-conjugate of the given number.

template<typename number >
NumberTraits< std::complex< number > >::real_type numbers::NumberTraits< std::complex< number > >::abs_square ( const std::complex< number > &  x  )  [inline, static]

Return the square of the absolute value of the given number. Since this specialization of the general template is chosen for types equal to std::complex, this function returns the product of a number and its complex conjugate.

template<typename number >
NumberTraits< std::complex< number > >::real_type numbers::NumberTraits< std::complex< number > >::abs ( const std::complex< number > &  x  )  [inline, static]

Return the absolute value of a complex number.


Member Data Documentation

template<typename number >
const bool numbers::NumberTraits< std::complex< number > >::is_complex = true [static]

A flag that specifies whether the template type given to this class is complex or real. Since this specialization of the general template is selected for complex types, the answer is true.


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

deal.II documentation generated on Sat Aug 15 16:52:41 2009 by doxygen 1.5.9