3#ifndef MODULE_HSOLVER_DNGVD_H
4#define MODULE_HSOLVER_DNGVD_H
14inline double get_real(
const std::complex<double> &x) {
return x.real(); }
16inline float get_real(
const std::complex<float> &x) {
return x.real(); }
18inline double get_real(
const double &x) {
return x; }
20inline float get_real(
const float &x) {
return x; }
23template <
typename T,
typename Device>
46 void operator()(
const Device* d,
const int nstart,
const int ldh,
const T* A,
const T* B,
Real* W,
T* V);
49template <
typename T,
typename Device>
63 void operator()(
const Device* d,
const int nstart,
const int ldh,
const T* A,
T* B,
Real* W,
T* V);
66template <
typename T,
typename Device>
81 void operator()(
const Device* d,
const int nstart,
const int ldh,
T* A,
T* B,
const int m,
Real* W,
T* V);
84template <
typename T,
typename Device>
106 void operator()(
const Device* d,
const int nstart,
const int ldh,
const T* A,
const int m,
Real* W,
T* V);
109#if __CUDA || __UT_USE_CUDA || __ROCM || __UT_USE_ROCM
111void createGpuSolverHandle();
112void destroyGpuSolverHandle();
#define T
Definition exp.cpp:237
Definition diag_comm_info.h:9
double get_real(const std::complex< double > &x)
Definition dngvd_op.h:14
T type
Definition macros.h:8
typename GetTypeReal< T >::type Real
Definition dngvd_op.h:87
void operator()(const Device *d, const int nstart, const int ldh, const T *A, const int m, Real *W, T *V)
DNEVX computes the first m eigenvalues and their corresponding eigenvectors of a complex generalized ...
void operator()(const Device *d, const int nstart, const int ldh, const T *A, T *B, Real *W, T *V)
DNGVX computes first m eigenvalues and eigenvectors of a complex generalized Input Parameters.
typename GetTypeReal< T >::type Real
Definition dngvd_op.h:52
void operator()(const Device *d, const int nstart, const int ldh, const T *A, const T *B, Real *W, T *V)
DNGVD computes all the eigenvalues and eigenvectors of a complex generalized Hermitian-definite eigen...
typename GetTypeReal< T >::type Real
Definition dngvd_op.h:26
void operator()(const Device *d, const int nstart, const int ldh, T *A, T *B, const int m, Real *W, T *V)
DNGVX computes first m eigenvalues and eigenvectors of a complex generalized Input Parameters.
typename GetTypeReal< T >::type Real
Definition dngvd_op.h:69