2 #include <math/scmat/blas.h>
5 #include <math/scmat/f77sym.h>
7 extern void F77_DGESVD(
const char* jobu,
const char* jobvt,
const blasint* m,
8 const blasint* n,
double* A,
const blasint* lda,
double* S,
double* U,
const blasint* ldu,
9 double* Vt,
const blasint* ldvt,
double* work, blasint* lwork, blasint* info);
11 extern void F77_DSPSVX(
const char* fact,
const char* uplo,
const blasint* n,
const blasint* nrhs,
12 const double* AP,
double* AFP, blasint* ipiv,
const double* BB,
const blasint* nb,
13 double* XX,
const blasint* nx,
double* rcond,
double* ferr,
double* berr,
14 double* work, blasint* iwork, blasint* info);
16 extern void F77_DSYEVD(
const char* need_evals,
const char* uplo,
const blasint* n,
17 double* Asq,
const blasint* lda,
double* evals,
double* work,
const blasint* lwork,
18 blasint* iwork,
const blasint* liwork, blasint* info);
20 extern void F77_DSPTRF(
const char* uplo,
const blasint* n,
double* AP, blasint* ipiv, blasint* info);
22 extern void F77_DPPTRF(
const char* uplo,
const blasint* n,
double* AP, blasint* info);
24 extern void F77_DSPTRI(
const char* uplo,
const blasint* n,
double* AP,
const blasint* ipiv,
double* work, blasint* info);
26 extern void F77_DPPTRI(
const char* uplo,
const blasint* n,
double* AP, blasint* info);
28 extern double F77_DLANSP(
const char*
norm,
const char* uplo,
const blasint* n,
const double* A_packed,
double* work);
30 extern void F77_DSPCON(
const char* uplo,
const blasint* n,
const double* A_packed,
const blasint* ipiv,
31 const double* anorm,
double* rcond,
double* work, blasint* iwork, blasint* info);
33 extern void F77_DPPCON(
const char* uplo,
const blasint* n,
const double* A_packed,
34 const double* anorm,
double* rcond,
double* work, blasint* iwork, blasint* info);
36 extern double F77_DLAMCH(
const char* e);
38 extern void F77_DLACPY(
const char* uplo,
const blasint* m,
const blasint* n,
const double* A,
const blasint* lda,
39 double* B,
const blasint* ldb, blasint* info);
41 extern void F77_DSPTRS(
const char* uplo,
const blasint* n,
const blasint* nrhs,
const double* AFP,
const blasint* ipiv,
42 const double* X,
const blasint* ldx, blasint* info);
44 extern void F77_DPPTRS(
const char* uplo,
const blasint* n,
const blasint* nrhs,
const double* AFP,
45 const double* X,
const blasint* ldx, blasint* info);
47 extern void F77_DSPRFS(
const char* uplo,
const blasint* n,
const blasint* nrhs,
const double* A,
const double* AF,
48 const blasint* ipiv,
const double* B,
const blasint* ldb,
const double* X,
49 const blasint* ldx,
double* ferr,
double* berr,
double* work, blasint* iwork, blasint* info);
51 extern void F77_DPPRFS(
const char* uplo,
const blasint* n,
const blasint* nrhs,
const double* A,
const double* AF,
52 const double* B,
const blasint* ldb,
const double* X,
53 const blasint* ldx,
double* ferr,
double* berr,
double* work, blasint* iwork, blasint* info);
55 extern void F77_DSYGV(
const blasint* itype,
const char* jobz,
const char* uplo,
const blasint* n,
56 double* Asq,
const blasint* lda,
double* Bsq,
const blasint* ldb,
double* evals,
57 double* work,
const blasint* lwork,