CUTLASS: cutlass::complex< T > Class Template Reference

| CUTLASS CUDA Templates for Linear Algebra Subroutines and Solvers

- Main Page
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | List of all members
cutlass::complex< T > Class Template Reference

`#include <complex.h>`

## Public Member Functions
CUTLASS_HOST_DEVICE | complex (T r=T(0))
| Constructor. More...
CUTLASS_HOST_DEVICE | complex (T r, T i)
| Constructor. More...
template<typename A >
CUTLASS_HOST_DEVICE | complex (complex< A > const &z)
| Constructor. More...
CUTLASS_HOST_DEVICE | complex (cuFloatComplex const &z)
| Conversion from cuFloatComplex. More...
CUTLASS_HOST_DEVICE | complex (cuDoubleComplex const &z)
| Conversion from cuDoubleComplex. More...
template<typename A >
CUTLASS_HOST_DEVICE complex< T > & | operator= (complex< A > const &z)
| Assignment. More...
CUTLASS_HOST_DEVICE bool | operator== (complex< T > const &rhs) const
| Equality operator. More...
CUTLASS_HOST_DEVICE bool | operator!= (complex< T > const &rhs) const
| Inequality operator. More...
template<typename A >
CUTLASS_HOST_DEVICE complex< T > | operator+ (complex< A > const &rhs) const
| Addition. More...
template<typename A >
CUTLASS_HOST_DEVICE complex< T > | operator- (complex< A > const &rhs) const
| Subtraction. More...
template<typename A >
CUTLASS_HOST_DEVICE complex< T > | operator* (complex< A > const &rhs) const
| Multiplication. More...
template<typename A >
CUTLASS_HOST_DEVICE complex< T > | operator* (A const &s) const
| Scalar Multiplication. More...
template<typename A >
CUTLASS_HOST_DEVICE complex< T > | operator/ (complex< A > const &rhs) const
| Division. More...
template<typename A >
CUTLASS_HOST_DEVICE complex< T > | operator/ (A const &s) const
| Scalar Division. More...
template<typename A >
CUTLASS_HOST_DEVICE complex< T > & | operator+= (complex< A > const &rhs)
| Addition. More...
template<typename A >
CUTLASS_HOST_DEVICE complex< T > & | operator-= (complex< A > const &rhs)
| Subtraction. More...
template<typename A >
CUTLASS_HOST_DEVICE complex< T > & | operator*= (complex< A > const &rhs)
| Multiplication. More...
template<typename A >
CUTLASS_HOST_DEVICE complex< T > & | operator*= (A s)
| Scalar multiplication. More...
template<typename A >
CUTLASS_HOST_DEVICE complex< T > & | operator/= (complex< A > const &rhs)
| Division. More...
CUTLASS_HOST_DEVICE T const & | real () const
| Accesses the real part of the complex number. More...
CUTLASS_HOST_DEVICE T & | real ()
| Accesses the real part of the complex number. More...
CUTLASS_HOST_DEVICE T const & | imag () const
| Accesses the imaginary part of the complex number. More...
CUTLASS_HOST_DEVICE T & | imag ()
| Accesses the imaginary part of the complex number. More...
CUTLASS_HOST_DEVICE | operator cuFloatComplex () const
| Converts to cuFloatComplex. More...
CUTLASS_HOST_DEVICE | operator cuDoubleComplex () const
| Converts to cuDoubleComplex. More...

## Detailed Description

### template<typename T>
class cutlass::complex< T >

Class for representing and manipulating complex numbers with conversions from built-in CUDA complex types.

## Constructor & Destructor Documentation

template<typename T>

CUTLASS_HOST_DEVICE cutlass::complex< T >::complex | ( | T | r = `T(0)` | ) |
| inline

template<typename T>

CUTLASS_HOST_DEVICE cutlass::complex< T >::complex | ( | T | r,
|  | T | i
| ) |  |
| inline

template<typename T>
template<typename A >

CUTLASS_HOST_DEVICE cutlass::complex< T >::complex | ( | complex< A > const & | z | ) |
| inline

template<typename T>

CUTLASS_HOST_DEVICE cutlass::complex< T >::complex | ( | cuFloatComplex const & | z | ) |
| inline

template<typename T>

CUTLASS_HOST_DEVICE cutlass::complex< T >::complex | ( | cuDoubleComplex const & | z | ) |
| inline

## Member Function Documentation

template<typename T>

CUTLASS_HOST_DEVICE T const& cutlass::complex< T >::imag | ( |  | ) | const
| inline

template<typename T>

CUTLASS_HOST_DEVICE T& cutlass::complex< T >::imag | ( |  | ) |
| inline

template<typename T>

CUTLASS_HOST_DEVICE cutlass::complex< T >::operator cuDoubleComplex | ( |  | ) | const
| inlineexplicit

template<typename T>

CUTLASS_HOST_DEVICE cutlass::complex< T >::operator cuFloatComplex | ( |  | ) | const
| inlineexplicit

template<typename T>

CUTLASS_HOST_DEVICE bool cutlass::complex< T >::operator!= | ( | complex< T > const & | rhs | ) | const
| inline

template<typename T>
template<typename A >

CUTLASS_HOST_DEVICE complex<T> cutlass::complex< T >::operator* | ( | complex< A > const & | rhs | ) | const
| inline

template<typename T>
template<typename A >

CUTLASS_HOST_DEVICE complex<T> cutlass::complex< T >::operator* | ( | A const & | s | ) | const
| inline

template<typename T>
template<typename A >

CUTLASS_HOST_DEVICE complex<T>& cutlass::complex< T >::operator*= | ( | complex< A > const & | rhs | ) |
| inline

template<typename T>
template<typename A >

CUTLASS_HOST_DEVICE complex<T>& cutlass::complex< T >::operator*= | ( | A | s | ) |
| inline

template<typename T>
template<typename A >

CUTLASS_HOST_DEVICE complex<T> cutlass::complex< T >::operator+ | ( | complex< A > const & | rhs | ) | const
| inline

template<typename T>
template<typename A >

CUTLASS_HOST_DEVICE complex<T>& cutlass::complex< T >::operator+= | ( | complex< A > const & | rhs | ) |
| inline

template<typename T>
template<typename A >

CUTLASS_HOST_DEVICE complex<T> cutlass::complex< T >::operator- | ( | complex< A > const & | rhs | ) | const
| inline

template<typename T>
template<typename A >

CUTLASS_HOST_DEVICE complex<T>& cutlass::complex< T >::operator-= | ( | complex< A > const & | rhs | ) |
| inline

template<typename T>
template<typename A >

CUTLASS_HOST_DEVICE complex<T> cutlass::complex< T >::operator/ | ( | complex< A > const & | rhs | ) | const
| inline

template<typename T>
template<typename A >

CUTLASS_HOST_DEVICE complex<T> cutlass::complex< T >::operator/ | ( | A const & | s | ) | const
| inline

template<typename T>
template<typename A >

CUTLASS_HOST_DEVICE complex<T>& cutlass::complex< T >::operator/= | ( | complex< A > const & | rhs | ) |
| inline

template<typename T>
template<typename A >

CUTLASS_HOST_DEVICE complex<T>& cutlass::complex< T >::operator= | ( | complex< A > const & | z | ) |
| inline

template<typename T>

CUTLASS_HOST_DEVICE bool cutlass::complex< T >::operator== | ( | complex< T > const & | rhs | ) | const
| inline

template<typename T>

CUTLASS_HOST_DEVICE T const& cutlass::complex< T >::real | ( |  | ) | const
| inline

template<typename T>

CUTLASS_HOST_DEVICE T& cutlass::complex< T >::real | ( |  | ) |
| inline

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

- complex.h