35 #ifndef _BLAZE_MATH_LAPACK_CLAPACK_GEEV_H_ 36 #define _BLAZE_MATH_LAPACK_CLAPACK_GEEV_H_ 56 #if !defined(INTEL_MKL_VERSION) 59 void sgeev_(
char* jobvl,
char* jobvr,
int* n,
float* A,
int* lda,
float* wr,
float* wi,
60 float* VL,
int* ldvl,
float* VR,
int* ldvr,
float* work,
int* lwork,
int* info,
62 void dgeev_(
char* jobvl,
char* jobvr,
int* n,
double* A,
int* lda,
double* wr,
double* wi,
63 double* VL,
int* ldvl,
double* VR,
int* ldvr,
double* work,
int* lwork,
int* info,
65 void cgeev_(
char* jobvl,
char* jobvr,
int* n,
float* A,
int* lda,
float* w,
float* VL,
66 int* ldvl,
float* VR,
int* ldvr,
float* work,
int* lwork,
float* rwork,
68 void zgeev_(
char* jobvl,
char* jobvr,
int* n,
double* A,
int* lda,
double* w,
double* VL,
69 int* ldvl,
double* VR,
int* ldvr,
double* work,
int* lwork,
double* rwork,
91 void geev(
char jobvl,
char jobvr,
int n,
float* A,
int lda,
92 float* wr,
float* wi,
float* VL,
int ldvl,
float* VR,
int ldvr,
93 float* work,
int lwork,
int* info );
95 void geev(
char jobvl,
char jobvr,
int n,
double* A,
int lda,
96 double* wr,
double* wi,
double* VL,
int ldvl,
double* VR,
int ldvr,
97 double* work,
int lwork,
int* info );
99 void geev(
char jobvl,
char jobvr,
int n, complex<float>* A,
int lda,
100 complex<float>* w, complex<float>* VL,
int ldvl, complex<float>* VR,
int ldvr,
101 complex<float>* work,
int lwork,
float* rwork,
int* info );
103 void geev(
char jobvl,
char jobvr,
int n, complex<double>* A,
int lda,
104 complex<double>* w, complex<double>* VL,
int ldvl, complex<double>* VR,
int ldvr,
105 complex<double>* work,
int lwork,
double* rwork,
int* info );
172 inline void geev(
char jobvl,
char jobvr,
int n,
float* A,
int lda,
173 float* wr,
float* wi,
float* VL,
int ldvl,
float* VR,
int ldvr,
174 float* work,
int lwork,
int* info )
176 #if defined(INTEL_MKL_VERSION) 180 sgeev_( &jobvl, &jobvr, &n, A, &lda, wr, wi, VL, &ldvl, VR, &ldvr, work, &lwork, info,
248 inline void geev(
char jobvl,
char jobvr,
int n,
double* A,
int lda,
249 double* wr,
double* wi,
double* VL,
int ldvl,
double* VR,
int ldvr,
250 double* work,
int lwork,
int* info )
252 #if defined(INTEL_MKL_VERSION) 256 dgeev_( &jobvl, &jobvr, &n, A, &lda, wr, wi, VL, &ldvl, VR, &ldvr, work, &lwork, info,
324 inline void geev(
char jobvl,
char jobvr,
int n, complex<float>* A,
int lda,
325 complex<float>* w, complex<float>* VL,
int ldvl, complex<float>* VR,
int ldvr,
326 complex<float>* work,
int lwork,
float* rwork,
int* info )
330 #if defined(INTEL_MKL_VERSION) 332 using ET = MKL_Complex8;
337 cgeev_( &jobvl, &jobvr, &n, reinterpret_cast<ET*>( A ), &lda, reinterpret_cast<ET*>( w ),
338 reinterpret_cast<ET*>( VL ), &ldvl, reinterpret_cast<ET*>( VR ), &ldvr,
339 reinterpret_cast<ET*>( work ), &lwork, rwork, info,
407 inline void geev(
char jobvl,
char jobvr,
int n, complex<double>* A,
int lda,
408 complex<double>* w, complex<double>* VL,
int ldvl, complex<double>* VR,
int ldvr,
409 complex<double>* work,
int lwork,
double* rwork,
int* info )
413 #if defined(INTEL_MKL_VERSION) 415 using ET = MKL_Complex16;
420 zgeev_( &jobvl, &jobvr, &n, reinterpret_cast<ET*>( A ), &lda, reinterpret_cast<ET*>( w ),
421 reinterpret_cast<ET*>( VL ), &ldvl, reinterpret_cast<ET*>( VR ), &ldvr,
422 reinterpret_cast<ET*>( work ), &lwork, rwork, info,
Header file for basic type definitions.
Namespace of the Blaze C++ math library.
Definition: Blaze.h:58
void geev(char jobvl, char jobvr, int n, float *A, int lda, float *wr, float *wi, float *VL, int ldvl, float *VR, int ldvr, float *work, int lwork, int *info)
LAPACK kernel for computing the eigenvalues of the given dense general single precision column-major ...
Definition: geev.h:172
Header file for the complex data type.
#define BLAZE_STATIC_ASSERT(expr)
Compile time assertion macro.In case of an invalid compile time expression, a compilation error is cr...
Definition: StaticAssert.h:112
Size type of the Blaze library.