35 #ifndef _BLAZE_MATH_LAPACK_CLAPACK_GEEV_H_ 36 #define _BLAZE_MATH_LAPACK_CLAPACK_GEEV_H_ 55 #if !defined(INTEL_MKL_VERSION) 58 void sgeev_(
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 );
59 void dgeev_(
char* jobvl,
char* jobvr,
int* n,
double* A,
int* lda,
double* wr,
double* wi,
double* VL,
int* ldvl,
double* VR,
int* ldvr,
double* work,
int* lwork,
int* info );
60 void cgeev_(
char* jobvl,
char* jobvr,
int* n,
float* A,
int* lda,
float* w,
float* VL,
int* ldvl,
float* VR,
int* ldvr,
float* work,
int* lwork,
float* rwork,
int* info );
61 void zgeev_(
char* jobvl,
char* jobvr,
int* n,
double* A,
int* lda,
double* w,
double* VL,
int* ldvl,
double* VR,
int* ldvr,
double* work,
int* lwork,
double* rwork,
int* info );
82 inline void geev(
char jobvl,
char jobvr,
int n,
float* A,
int lda,
83 float* wr,
float* wi,
float* VL,
int ldvl,
float* VR,
int ldvr,
84 float* work,
int lwork,
int* info );
86 inline void geev(
char jobvl,
char jobvr,
int n,
double* A,
int lda,
87 double* wr,
double* wi,
double* VL,
int ldvl,
double* VR,
int ldvr,
88 double* work,
int lwork,
int* info );
90 inline void geev(
char jobvl,
char jobvr,
int n, complex<float>* A,
int lda,
91 complex<float>* w, complex<float>* VL,
int ldvl, complex<float>* VR,
int ldvr,
92 complex<float>* work,
int lwork,
float* rwork,
int* info );
94 inline void geev(
char jobvl,
char jobvr,
int n, complex<double>* A,
int lda,
95 complex<double>* w, complex<double>* VL,
int ldvl, complex<double>* VR,
int ldvr,
96 complex<double>* work,
int lwork,
double* rwork,
int* info );
163 inline void geev(
char jobvl,
char jobvr,
int n,
float* A,
int lda,
164 float* wr,
float* wi,
float* VL,
int ldvl,
float* VR,
int ldvr,
165 float* work,
int lwork,
int* info )
167 #if defined(INTEL_MKL_VERSION) 171 sgeev_( &jobvl, &jobvr, &n, A, &lda, wr, wi, VL, &ldvl, VR, &ldvr, work, &lwork, info );
238 inline void geev(
char jobvl,
char jobvr,
int n,
double* A,
int lda,
239 double* wr,
double* wi,
double* VL,
int ldvl,
double* VR,
int ldvr,
240 double* work,
int lwork,
int* info )
242 #if defined(INTEL_MKL_VERSION) 246 dgeev_( &jobvl, &jobvr, &n, A, &lda, wr, wi, VL, &ldvl, VR, &ldvr, work, &lwork, info );
313 inline void geev(
char jobvl,
char jobvr,
int n, complex<float>* A,
int lda,
314 complex<float>* w, complex<float>* VL,
int ldvl, complex<float>* VR,
int ldvr,
315 complex<float>* work,
int lwork,
float* rwork,
int* info )
319 #if defined(INTEL_MKL_VERSION) 321 using ET = MKL_Complex8;
326 cgeev_( &jobvl, &jobvr, &n, reinterpret_cast<ET*>( A ), &lda, reinterpret_cast<ET*>( w ),
327 reinterpret_cast<ET*>( VL ), &ldvl, reinterpret_cast<ET*>( VR ), &ldvr,
328 reinterpret_cast<ET*>( work ), &lwork, rwork, info );
395 inline void geev(
char jobvl,
char jobvr,
int n, complex<double>* A,
int lda,
396 complex<double>* w, complex<double>* VL,
int ldvl, complex<double>* VR,
int ldvr,
397 complex<double>* work,
int lwork,
double* rwork,
int* info )
401 #if defined(INTEL_MKL_VERSION) 403 using ET = MKL_Complex16;
408 zgeev_( &jobvl, &jobvr, &n, reinterpret_cast<ET*>( A ), &lda, reinterpret_cast<ET*>( w ),
409 reinterpret_cast<ET*>( VL ), &ldvl, reinterpret_cast<ET*>( VR ), &ldvr,
410 reinterpret_cast<ET*>( work ), &lwork, rwork, info );
Namespace of the Blaze C++ math library.
Definition: Blaze.h:57
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:163
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