| CUTLASS CUDA Templates for Linear Algebra Subroutines and Solvers

- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

Classes | Namespaces | Enumerations | Functions
complex.h File Reference
`#include <cuComplex.h>`
`#include <cstdint>`
`#include "cutlass/cutlass.h"`
`#include "cutlass/half.h"`
`#include "cutlass/real.h"`
`#include <iosfwd>`
Include dependency graph for complex.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes
class | cutlass::complex< T >
struct | cutlass::RealType< complex< T > >
| Partial specialization for complex-valued type. More...

## Namespaces
| cutlass

## Enumerations
enum | cutlass::ComplexTransform { cutlass::ComplexTransform::kNone, cutlass::ComplexTransform::kConjugate }
| Enumeraed type describing a transformation on a complex value. More...

## Functions
CUTLASS_HOST_DEVICE float const & | cutlass::real (cuFloatComplex const &z)
| Returns the real part of the complex number. More...
CUTLASS_HOST_DEVICE float & | cutlass::real (cuFloatComplex &z)
| Returns the real part of the complex number. More...
CUTLASS_HOST_DEVICE double const & | cutlass::real (cuDoubleComplex const &z)
| Returns the real part of the complex number. More...
CUTLASS_HOST_DEVICE double & | cutlass::real (cuDoubleComplex &z)
| Returns the real part of the complex number. More...
CUTLASS_HOST_DEVICE float const & | cutlass::imag (cuFloatComplex const &z)
| Returns the imaginary part of the complex number. More...
CUTLASS_HOST_DEVICE float & | cutlass::imag (cuFloatComplex &z)
| Returns the imaginary part of the complex number. More...
CUTLASS_HOST_DEVICE double const & | cutlass::imag (cuDoubleComplex const &z)
| Returns the imaginary part of the complex number. More...
CUTLASS_HOST_DEVICE double & | cutlass::imag (cuDoubleComplex &z)
| Returns the imaginary part of the complex number. More...
template<typename T >
CUTLASS_HOST_DEVICE T const & | cutlass::real (complex< T > const &z)
| Returns the real part of the complex number. More...
template<typename T >
CUTLASS_HOST_DEVICE T & | cutlass::real (complex< T > &z)
| Returns the real part of the complex number. More...
template<typename T >
CUTLASS_HOST_DEVICE T const & | cutlass::imag (complex< T > const &z)
| Returns the imaginary part of the complex number. More...
template<typename T >
CUTLASS_HOST_DEVICE T & | cutlass::imag (complex< T > &z)
| Returns the imaginary part of the complex number. More...
template<typename T >
std::ostream & | cutlass::operator<< (std::ostream &out, complex< T > const &z)
template<typename T >
CUTLASS_HOST_DEVICE T | cutlass::abs (complex< T > const &z)
| Returns the magnitude of the complex number. More...
template<typename T >
CUTLASS_HOST_DEVICE T | cutlass::arg (complex< T > const &z)
| Returns the magnitude of the complex number. More...
template<typename T >
CUTLASS_HOST_DEVICE T | cutlass::norm (T const &z)
| Returns the squared magnitude of a real number. More...
template<>
CUTLASS_HOST_DEVICE int8_t | cutlass::norm (int8_t const &z)
| Returns the squared magnitude of a real number. More...
template<typename T >
CUTLASS_HOST_DEVICE double | cutlass::norm (complex< T > const &z)
| Returns the squared magnitude of a complex number. More...
template<typename T , typename R >
CUTLASS_HOST_DEVICE R | cutlass::norm_accumulate (T const &x, R const &accumulator)
| Norm-accumulate calculation. More...
template<typename T , typename R >
CUTLASS_HOST_DEVICE R | cutlass::norm_accumulate (complex< T > const &z, R const &accumulator)
| Norm accumulate specialized for complex types. More...
template<typename T >
CUTLASS_HOST_DEVICE complex< T > | cutlass::conj (complex< T > const &z)
| Returns the complex conjugate. More...
template<typename T >
CUTLASS_HOST_DEVICE complex< T > | cutlass::proj (complex< T > const &z)
| Projects the complex number z onto the Riemann sphere. More...
template<typename T >
CUTLASS_HOST_DEVICE complex< T > | cutlass::polar (T const &r, T const &theta=T())
| Returns a complex number with magnitude r and phase theta. More...
template<typename T >
CUTLASS_HOST_DEVICE complex< T > | cutlass::exp (complex< T > const &z)
| Computes the complex exponential of z. More...
template<typename T >
CUTLASS_HOST_DEVICE complex< T > | cutlass::log (complex< T > const &z)
| Computes the complex exponential of z. More...
template<typename T >
CUTLASS_HOST_DEVICE complex< T > | cutlass::log10 (complex< T > const &z)
| Computes the complex exponential of z. More...
template<typename T >
CUTLASS_HOST_DEVICE complex< T > | cutlass::sqrt (complex< T > const &z)
| Computes the square root of complex number z. More...
template<typename T >
CUTLASS_HOST_DEVICE complex< T > | cutlass::cos (complex< T > const &z)
| Computes the cosine of complex z. More...
template<typename T >
CUTLASS_HOST_DEVICE complex< T > | cutlass::sin (complex< T > const &z)
| Computes the sin of complex z. More...
template<>
CUTLASS_HOST_DEVICE cutlass::complex< half_t > | cutlass::from_real< cutlass::complex< half_t > > (double r)
template<>
CUTLASS_HOST_DEVICE cutlass::complex< float > | cutlass::from_real< cutlass::complex< float > > (double r)
template<>
CUTLASS_HOST_DEVICE cutlass::complex< double > | cutlass::from_real< cutlass::complex< double > > (double r)