Browse Source

Fix prototypes for ?GEDMD/?GEDMDQ and their LAPACKE interfaces

pull/4134/head
Martin Kroeker GitHub 2 years ago
parent
commit
70f2328a02
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 179 additions and 99 deletions
  1. +127
    -49
      lapack-netlib/LAPACKE/include/lapack.h
  2. +52
    -50
      lapack-netlib/LAPACKE/include/lapacke.h

+ 127
- 49
lapack-netlib/LAPACKE/include/lapack.h View File

@@ -3323,68 +3323,107 @@ void LAPACK_zgesdd_base(
#define LAPACK_zgesdd(...) LAPACK_zgesdd_base(__VA_ARGS__)
#endif

#define LAPACK_cgedmd LAPACK_GLOBAL(cgedmd,CGEDMD)
void LAPACK_cgedmd(
char const* jobs, char const* jobz, char const* jobf,
#define LAPACK_cgedmd_base LAPACK_GLOBAL(cgedmd,CGEDMD)
void LAPACK_cgedmd_base(
char const* jobs, char const* jobz, char const* jobr, char const* jobf,
lapack_int const* whtsvd, lapack_int const* m, lapack_int const* n,
lapack_complex_float* x, lapack_int const* ldx,
lapack_complex_float* y, lapack_int const* ldy, lapack_int const* k,
lapack_complex_float* reig, lapack_complex_float* imeig,
lapack_complex_float* z, lapack_int const* ldz, lapack_complex_float* res,
lapack_complex_float* y, lapack_int const* ldy, lapack_int const* nrnk,
const float* tol, lapack_int* k, lapack_complex_float* eigs,
lapack_complex_float* z, lapack_int const* ldz, float* res,
lapack_complex_float* b, lapack_int const* ldb,
lapack_complex_float* w, lapack_int const* ldw,
lapack_complex_float* s, lapack_int const* lds,
lapack_complex_float* work, lapack_int const* lwork,
lapack_complex_float* zwork, lapack_int const* lzwork,
float* work, lapack_int const* lwork,
lapack_int* iwork, lapack_int const* liwork,
lapack_int* info );
lapack_int* info
#ifdef LAPACK_FORTRAN_STRLEN_END
, size_t, size_t, size_t, size_t
#endif
);
#ifdef LAPACK_FORTRAN_STRLEN_END
#define LAPACK_cgedmd(...) LAPACK_cgedmd_base(__VA_ARGS__, 1, 1, 1, 1)
#else
#define LAPACK_cgedmd(...) LAPACK_cgedmd_base(__VA_ARGS__)
#endif


#define LAPACK_dgedmd LAPACK_GLOBAL(dgedmd,DGEDMD)
void LAPACK_dgedmd(
char const* jobs, char const* jobz, char const* jobf,
#define LAPACK_dgedmd_base LAPACK_GLOBAL(dgedmd,DGEDMD)
void LAPACK_dgedmd_base(
char const* jobs, char const* jobz, char const* jobr, char const* jobf,
lapack_int const* whtsvd, lapack_int const* m, lapack_int const* n,
double* x, lapack_int const* ldx,
double* y, lapack_int const* ldy, lapack_int const* k,
double* reig, double* imeig,
double* y, lapack_int const* ldy, lapack_int const* nrnk,
const double* tol, lapack_int* k, double* reig, double* imeig,
double* z, lapack_int const* ldz, double* res,
double* b, lapack_int const* ldb,
double* w, lapack_int const* ldw,
double* s, lapack_int const* lds,
double* work, lapack_int const* lwork,
lapack_int* iwork, lapack_int const* liwork,
lapack_int* info );
lapack_int* info
#ifdef LAPACK_FORTRAN_STRLEN_END
, size_t, size_t, size_t, size_t
#endif
);
#ifdef LAPACK_FORTRAN_STRLEN_END
#define LAPACK_dgedmd(...) LAPACK_dgedmd_base(__VA_ARGS__, 1, 1, 1, 1)
#else
#define LAPACK_dgedmd(...) LAPACK_dgedmd_base(__VA_ARGS__)
#endif

#define LAPACK_sgedmd LAPACK_GLOBAL(sgedmd,SGEDMD)
void LAPACK_sgedmd(
char const* jobs, char const* jobz, char const* jobf,
#define LAPACK_sgedmd_base LAPACK_GLOBAL(sgedmd,SGEDMD)
void LAPACK_sgedmd_base(
char const* jobs, char const* jobz, char const* jobr, char const* jobf,
lapack_int const* whtsvd, lapack_int const* m, lapack_int const* n,
float* x, lapack_int const* ldx,
float* y, lapack_int const* ldy, lapack_int const* k,
float* reig, float* imeig,
float* y, lapack_int const* ldy, lapack_int const* nrnk,
const float* tol, lapack_int* k, float* reig, float *imeig,
float* z, lapack_int const* ldz, float* res,
float* b, lapack_int const* ldb,
float* w, lapack_int const* ldw,
float* s, lapack_int const* lds,
float* work, lapack_int const* lwork,
lapack_int* iwork, lapack_int const* liwork,
lapack_int* info );
lapack_int* info
#ifdef LAPACK_FORTRAN_STRLEN_END
, size_t, size_t, size_t, size_t
#endif
);
#ifdef LAPACK_FORTRAN_STRLEN_END
#define LAPACK_sgedmd(...) LAPACK_sgedmd_base(__VA_ARGS__, 1, 1, 1, 1)
#else
#define LAPACK_sgedmd(...) LAPACK_sgedmd_base(__VA_ARGS__)
#endif

#define LAPACK_zgedmd LAPACK_GLOBAL(zgedmd,ZGEDMD)
void LAPACK_zgedmd(
char const* jobs, char const* jobz, char const* jobf,
#define LAPACK_zgedmd_base LAPACK_GLOBAL(zgedmd,ZGEDMD)
void LAPACK_zgedmd_base(
char const* jobs, char const* jobz, char const* jobr, char const* jobf,
lapack_int const* whtsvd, lapack_int const* m, lapack_int const* n,
lapack_complex_double* x, lapack_int const* ldx,
lapack_complex_double* y, lapack_int const* ldy, lapack_int const* k,
lapack_complex_double* reig, lapack_complex_double* imeig,
lapack_complex_double* z, lapack_int const* ldz, lapack_complex_double* res,
lapack_complex_double* y, lapack_int const* ldy, lapack_int const* nrnk,
const double* tol, lapack_int *k, lapack_complex_double* eigs,
lapack_complex_double* z, lapack_int const* ldz, double* res,
lapack_complex_double* b, lapack_int const* ldb,
lapack_complex_double* w, lapack_int const* ldw,
lapack_complex_double* s, lapack_int const* lds,
lapack_complex_double* work, lapack_int const* lwork,
lapack_complex_double* zwork, lapack_int const* lzwork,
double* rwork, lapack_int const* lrwork,
lapack_int* iwork, lapack_int const* liwork,
lapack_int* info );
lapack_int* info
#ifdef LAPACK_FORTRAN_STRLEN_END
, size_t, size_t, size_t, size_t
#endif
);
#ifdef LAPACK_FORTRAN_STRLEN_END
#define LAPACK_zgedmd(...) LAPACK_zgedmd_base(__VA_ARGS__, 1, 1, 1, 1)
#else
#define LAPACK_zgedmd(...) LAPACK_zgedmd_base(__VA_ARGS__)
#endif

#define LAPACK_cgedmdq LAPACK_GLOBAL(cgedmdq,CGEDMDQ)
void LAPACK_cgedmdq(
#define LAPACK_cgedmdq_base LAPACK_GLOBAL(cgedmdq,CGEDMDQ)
void LAPACK_cgedmdq_base(
char const* jobs, char const* jobz, char const* jobr, char const* jobq,
char const* jobt, char const* jobf, lapack_int const* whtsvd,
lapack_int const* m, lapack_int const* n,
@@ -3392,35 +3431,54 @@ void LAPACK_cgedmdq(
lapack_complex_float* x, lapack_int const* ldx,
lapack_complex_float* y, lapack_int const* ldy, lapack_int const* nrnk,
float const* tol, lapack_int const* k,
lapack_complex_float* reig, lapack_complex_float* imeig,
lapack_complex_float* z, lapack_int const* ldz, lapack_complex_float* res,
lapack_complex_float* eigs,
lapack_complex_float* z, lapack_int const* ldz, float* res,
lapack_complex_float* b, lapack_int const* ldb,
lapack_complex_float* v, lapack_int const* ldv,
lapack_complex_float* s, lapack_int const* lds,
lapack_complex_float* work, lapack_int const* lwork,
lapack_complex_float* zwork, lapack_int const* lzwork,
float* work, lapack_int const* lwork,
lapack_int* iwork, lapack_int const* liwork,
lapack_int* info );
lapack_int* info
#ifdef LAPACK_FORTRAN_STRLEN_END
, size_t, size_t, size_t, size_t, size_t, size_t
#endif
);
#ifdef LAPACK_FORTRAN_STRLEN_END
#define LAPACK_cgedmdq(...) LAPACK_cgedmdq_base(__VA_ARGS__, 1, 1, 1, 1, 1, 1)
#else
#define LAPACK_cgedmdq(...) LAPACK_cgedmdq_base(__VA_ARGS__)
#endif

#define LAPACK_dgedmdq LAPACK_GLOBAL(dgedmdq,DGEDMDQ)
void LAPACK_dgedmdq(
#define LAPACK_dgedmdq_base LAPACK_GLOBAL(dgedmdq,DGEDMDQ)
void LAPACK_dgedmdq_base(
char const* jobs, char const* jobz, char const* jobr, char const* jobq,
char const* jobt, char const* jobf, lapack_int const* whtsvd,
lapack_int const* m, lapack_int const* n,
double* f, lapack_int const* ldf,
double* x, lapack_int const* ldx,
double* y, lapack_int const* ldy, lapack_int const* nrnk,
double const* tol, lapack_int const* k,
double* reig, double* imeig,
double const* tol, lapack_int* k,
double* reig, double *imeig,
double* z, lapack_int const* ldz, double* res,
double* b, lapack_int const* ldb,
double* v, lapack_int const* ldv,
double* s, lapack_int const* lds,
double* work, lapack_int const* lwork,
lapack_int* iwork, lapack_int const* liwork,
lapack_int* info );
lapack_int* info
#ifdef LAPACK_FORTRAN_STRLEN_END
, size_t, size_t, size_t, size_t, size_t, size_t
#endif
);
#ifdef LAPACK_FORTRAN_STRLEN_END
#define LAPACK_dgedmdq(...) LAPACK_dgedmdq_base(__VA_ARGS__, 1, 1, 1, 1, 1, 1)
#else
#define LAPACK_dgedmdq(...) LAPACK_dgedmdq_base(__VA_ARGS__)
#endif

#define LAPACK_sgedmdq LAPACK_GLOBAL(sgedmdq,SGEDMDQ)
void LAPACK_sgedmdq(
#define LAPACK_sgedmdq_base LAPACK_GLOBAL(sgedmdq,SGEDMDQ)
void LAPACK_sgedmdq_base(
char const* jobs, char const* jobz, char const* jobr, char const* jobq,
char const* jobt, char const* jobf, lapack_int const* whtsvd,
lapack_int const* m, lapack_int const* n,
@@ -3435,10 +3493,19 @@ void LAPACK_sgedmdq(
float* s, lapack_int const* lds,
float* work, lapack_int const* lwork,
lapack_int* iwork, lapack_int const* liwork,
lapack_int* info );
lapack_int* info
#ifdef LAPACK_FORTRAN_STRLEN_END
, size_t, size_t, size_t, size_t, size_t, size_t
#endif
);
#ifdef LAPACK_FORTRAN_STRLEN_END
#define LAPACK_sgedmdq(...) LAPACK_sgedmdq_base(__VA_ARGS__, 1, 1, 1, 1, 1, 1)
#else
#define LAPACK_sgedmdq(...) LAPACK_sgedmdq_base(__VA_ARGS__)
#endif

#define LAPACK_zgedmdq LAPACK_GLOBAL(zgedmdq,ZGEDMDQ)
void LAPACK_zgedmdq(
#define LAPACK_zgedmdq_base LAPACK_GLOBAL(zgedmdq,ZGEDMDQ)
void LAPACK_zgedmdq_base(
char const* jobs, char const* jobz, char const* jobr, char const* jobq,
char const* jobt, char const* jobf, lapack_int const* whtsvd,
lapack_int const* m, lapack_int const* n,
@@ -3446,14 +3513,25 @@ void LAPACK_zgedmdq(
lapack_complex_double* x, lapack_int const* ldx,
lapack_complex_double* y, lapack_int const* ldy, lapack_int const* nrnk,
double const* tol, lapack_int const* k,
lapack_complex_double* reig, lapack_complex_double* imeig,
lapack_complex_double* z, lapack_int const* ldz, lapack_complex_double* res,
lapack_complex_double* eigs,
lapack_complex_double* z, lapack_int const* ldz, double* res,
lapack_complex_double* b, lapack_int const* ldb,
lapack_complex_double* v, lapack_int const* ldv,
lapack_complex_double* s, lapack_int const* lds,
lapack_complex_double* work, lapack_int const* lwork,
lapack_complex_double* zwork, lapack_int const* lzwork,
double* work, lapack_int const* lwork,
lapack_int* iwork, lapack_int const* liwork,
lapack_int* info );
lapack_int* info

#ifdef LAPACK_FORTRAN_STRLEN_END
, size_t, size_t, size_t, size_t, size_t, size_t
#endif
);
#ifdef LAPACK_FORTRAN_STRLEN_END
#define LAPACK_zgedmdq(...) LAPACK_zgedmdq_base(__VA_ARGS__, 1, 1, 1, 1, 1, 1)
#else
#define LAPACK_zgedmdq(...) LAPACK_zgedmdq_base(__VA_ARGS__)
#endif

#define LAPACK_cgesv LAPACK_GLOBAL(cgesv,CGESV)
lapack_int LAPACK_cgesv(
@@ -21649,7 +21727,7 @@ void LAPACK_ztrevc_base(
#endif
);
#ifdef LAPACK_FORTRAN_STRLEN_END
#define LAPACK_ztrevc(...) LAPACK_ztrevc_base(__VA_ARGS__, 1, 1)
#define LAPACK_ztrevc(...) LAPACK_ztrevc_base(__VA_ARGS__, (size_t)1, 1)
#else
#define LAPACK_ztrevc(...) LAPACK_ztrevc_base(__VA_ARGS__)
#endif


+ 52
- 50
lapack-netlib/LAPACKE/include/lapacke.h View File

@@ -5713,55 +5713,59 @@ lapack_int LAPACKE_zgesdd_work( int matrix_layout, char jobz, lapack_int m,
double* rwork, lapack_int* iwork );

lapack_int LAPACKE_sgedmd_work( int matrix_layout, char jobs, char jobz,
char jobf, lapack_int whtsvd, lapack_int m,
lapack_int n, float* x, lapack_int ldx,
float* y, lapack_int ldy, lapack_int k,
float* reig, float* imeig, float* z,
lapack_int ldz, float* res, float* b,
lapack_int ldb, float* w, lapack_int ldw,
float* s, lapack_int lds, float* work,
lapack_int lwork, lapack_int* iwork,
lapack_int liwork );
char jobr, char jobf, lapack_int whtsvd,
lapack_int m, lapack_int n, float* x,
lapack_int ldx, float* y, lapack_int ldy,
lapack_int nrnk, float* tol, lapack_int k,
float* reig, float* imeig,
float* z, lapack_int ldz, float* res,
float* b, lapack_int ldb, float* w,
lapack_int ldw, float* s, lapack_int lds,
float* work, lapack_int lwork,
lapack_int* iwork, lapack_int liwork );

lapack_int LAPACKE_dgedmd_work( int matrix_layout, char jobs, char jobz,
char jobf, lapack_int whtsvd, lapack_int m,
lapack_int n, double* x, lapack_int ldx,
double* y, lapack_int ldy, lapack_int k,
double* reig, double* imeig, double* z,
lapack_int ldz, double* res, double* b,
lapack_int ldb, double* w, lapack_int ldw,
double* s, lapack_int lds, double* work,
lapack_int lwork, lapack_int* iwork,
lapack_int liwork );
char jobr, char jobf, lapack_int whtsvd,
lapack_int m, lapack_int n, double* x,
lapack_int ldx, double* y, lapack_int ldy,
lapack_int nrnk, double* tol, lapack_int k,
double* reig, double *imeig,
double* z, lapack_int ldz, double* res,
double* b, lapack_int ldb, double* w,
lapack_int ldw, double* s, lapack_int lds,
double* work, lapack_int lwork,
lapack_int* iwork, lapack_int liwork );

lapack_int LAPACKE_cgedmd_work( int matrix_layout, char jobs, char jobz,
char jobf, lapack_int whtsvd, lapack_int m,
lapack_int n, lapack_complex_float* x,
lapack_int ldx, lapack_complex_float* y,
lapack_int ldy, lapack_int k,
lapack_complex_float* reig,
lapack_complex_float* imeig,
char jobr, char jobf, lapack_int whtsvd,
lapack_int m, lapack_int n,
lapack_complex_float* x, lapack_int ldx,
lapack_complex_float* y, lapack_int ldy,
lapack_int nrnk, float* tol, lapack_int k,
lapack_complex_float* eigs,
lapack_complex_float* z, lapack_int ldz,
lapack_complex_float* res,
float* res,
lapack_complex_float* b, lapack_int ldb,
lapack_complex_float* w, lapack_int ldw,
lapack_complex_float* s, lapack_int lds,
lapack_complex_float* work, lapack_int lwork,
lapack_complex_float* zwork, lapack_int lzwork,
float* work, lapack_int lwork,
lapack_int* iwork, lapack_int liwork );

lapack_int LAPACKE_zgedmd_work( int matrix_layout, char jobs, char jobz,
char jobf, lapack_int whtsvd, lapack_int m,
lapack_int n, lapack_complex_double* x,
lapack_int ldx, lapack_complex_double* y,
lapack_int ldy, lapack_int k,
lapack_complex_double* reig,
lapack_complex_double* imeig,
char jobr, char jobf, lapack_int whtsvd,
lapack_int m, lapack_int n,
lapack_complex_double* x, lapack_int ldx,
lapack_complex_double* y, lapack_int ldy,
lapack_int nrnk, double* tol, lapack_int k,
lapack_complex_double* eigs,
lapack_complex_double* z, lapack_int ldz,
lapack_complex_double* res,
double* res,
lapack_complex_double* b, lapack_int ldb,
lapack_complex_double* w, lapack_int ldw,
lapack_complex_double* s, lapack_int lds,
lapack_complex_double* work, lapack_int lwork,
lapack_complex_double* zwork, lapack_int lzwork,
double* work, lapack_int lwork,
lapack_int* iwork, lapack_int liwork );

lapack_int LAPACKE_sgedmdq_work( int matrix_layout, char jobs, char jobz,
@@ -5769,8 +5773,8 @@ lapack_int LAPACKE_sgedmdq_work( int matrix_layout, char jobs, char jobz,
lapack_int whtsvd, lapack_int m, lapack_int n,
float* f, lapack_int ldf, float* x,
lapack_int ldx, float* y, lapack_int ldy,
lapack_int nrnk, float tol, lapack_int k,
float* reig, float* imeig, float* z,
lapack_int nrnk, float* tol, lapack_int k,
float* reig, float *imeig, float* z,
lapack_int ldz, float* res, float* b,
lapack_int ldb, float* v, lapack_int ldv,
float* s, lapack_int lds, float* work,
@@ -5782,8 +5786,8 @@ lapack_int LAPACKE_dgedmdq_work( int matrix_layout, char jobs, char jobz,
lapack_int whtsvd, lapack_int m, lapack_int n,
double* f, lapack_int ldf, double* x,
lapack_int ldx, double* y, lapack_int ldy,
lapack_int nrnk, double tol, lapack_int k,
double* reig, double* imeig, double* z,
lapack_int nrnk, double* tol, lapack_int k,
double* reig, double* imeig, double* z,
lapack_int ldz, double* res, double* b,
lapack_int ldb, double* v, lapack_int ldv,
double* s, lapack_int lds, double* work,
@@ -5796,17 +5800,16 @@ lapack_int LAPACKE_cgedmdq_work( int matrix_layout, char jobs, char jobz,
lapack_complex_float* f, lapack_int ldf,
lapack_complex_float* x, lapack_int ldx,
lapack_complex_float* y, lapack_int ldy,
lapack_int nrnk, float tol, lapack_int k,
lapack_complex_float* reig,
lapack_complex_float* imeig,
lapack_int nrnk, float* tol, lapack_int k,
lapack_complex_float* eigs,
lapack_complex_float* z, lapack_int ldz,
lapack_complex_float* res,
float* res,
lapack_complex_float* b, lapack_int ldb,
lapack_complex_float* v, lapack_int ldv,
lapack_complex_float* s, lapack_int lds,
lapack_complex_float* zwork, lapack_int lzwork,
lapack_complex_float* work, lapack_int lwork,
lapack_int* iwork,
lapack_int liwork );
lapack_int* iwork, lapack_int liwork);

lapack_int LAPACKE_zgedmdq_work( int matrix_layout, char jobs, char jobz,
char jobr, char jobq, char jobt, char jobf,
@@ -5814,17 +5817,16 @@ lapack_int LAPACKE_zgedmdq_work( int matrix_layout, char jobs, char jobz,
lapack_complex_double* f, lapack_int ldf,
lapack_complex_double* x, lapack_int ldx,
lapack_complex_double* y, lapack_int ldy,
lapack_int nrnk, double tol, lapack_int k,
lapack_complex_double* reig,
lapack_complex_double* imeig,
lapack_int nrnk, double* tol, lapack_int k,
lapack_complex_double* eigs,
lapack_complex_double* z, lapack_int ldz,
lapack_complex_double* res,
double* res,
lapack_complex_double* b, lapack_int ldb,
lapack_complex_double* v, lapack_int ldv,
lapack_complex_double* s, lapack_int lds,
lapack_complex_double* zwork, lapack_int lzwork,
lapack_complex_double* work, lapack_int lwork,
lapack_int* iwork,
lapack_int liwork );
lapack_int* iwork, lapack_int liwork);

lapack_int LAPACKE_sgesv_work( int matrix_layout, lapack_int n, lapack_int nrhs,
float* a, lapack_int lda, lapack_int* ipiv,


Loading…
Cancel
Save