17#ifndef PLASK__SOLVER_VSLAB_FORTRAN_H
18#define PLASK__SOLVER_VSLAB_FORTRAN_H
28#define ztrmm F77_GLOBAL(ztrmm,ZTRMM)
29F77SUB
ztrmm(
const char& side,
const char& uplo,
const char& transa,
const char& diag,
30 const int& m,
const int&
n,
const dcomplex& alpha, dcomplex* a,
const int& lda,
31 dcomplex*
b,
const int& ldb);
37#define ztrsm F77_GLOBAL(ztrsm,ZTRSM)
38F77SUB
ztrsm(
const char& side,
const char& uplo,
const char& transa,
const char& diag,
39 const int& m,
const int&
n,
const dcomplex& alpha, dcomplex* a,
const int& lda,
40 dcomplex*
b,
const int& ldb);
44#define zgemv F77_GLOBAL(zgemv,ZGEMV)
45F77SUB
zgemv(
const char& trans,
const int& m,
const int&
n,
const dcomplex& alpha,
46 const dcomplex* a,
const int& lda,
const dcomplex* x,
const int& incx,
47 const dcomplex& beta, dcomplex* y,
const int& incy);
50#define zgemm F77_GLOBAL(zgemm,ZGEMM)
51F77SUB
zgemm(
const char& transa,
const char& transb,
const int& m,
const int&
n,
52 const int& k,
const dcomplex& alpha,
const dcomplex *a,
const int& lda,
53 const dcomplex *
b,
const int& ldb,
const dcomplex& beta, dcomplex* c,
61#define zgeev F77_GLOBAL(zgeev,ZGEEV)
62F77SUB
zgeev(
const char& jobvl,
const char& jobvr,
const int&
n, dcomplex* a,
63 const int& lda, dcomplex* w, dcomplex* vl,
const int& ldvl,
64 dcomplex* vr,
const int& ldvr, dcomplex* work,
const int& lwork,
65 double* rwork,
int& info);
68#define zgesv F77_GLOBAL(zgesv,ZGESV)
69F77SUB
zgesv(
const int&
n,
const int& nrsh, dcomplex* a,
const int& lda,
70 int* ipiv, dcomplex*
b,
const int& ldb,
int& info);
74#define zgetrf F77_GLOBAL(zgetrf,ZGETRF)
75F77SUB
zgetrf(
const int& m,
const int&
n, dcomplex* a,
const int& lda,
76 int* ipiv,
int& info);
80#define zgetrs F77_GLOBAL(zgetrs,ZGETRS)
81F77SUB
zgetrs(
const char& trans,
const int&
n,
const int& nrhs,
const dcomplex* a,
82 const int& lda,
const int* ipiv, dcomplex*
b,
const int& ldb,
int& info);
85#define ztrevc F77_GLOBAL(ztrevc,ZTREVC)
86F77SUB
ztrevc(
const char& side,
const char& howmny,
const int* select,
const int&
n,
87 dcomplex* t,
const int& ldt, dcomplex* vl,
const int& ldvl, dcomplex* vr,
88 const int& ldvr,
const int& mm,
int& m, dcomplex* work,
double* rwork,
int& info);
91#define zgebrd F77_GLOBAL(zgebrd,ZGEBRD)
92F77SUB
zgebrd(
const int& m,
const int&
n, dcomplex* a,
const int& lda,
double* d,
double*
e,
93 dcomplex* tauq, dcomplex* taup, dcomplex* work,
const int& lwork,
int& info);
96#define zbdsqr F77_GLOBAL(zbdsqr,ZBDSQR)
97F77SUB
zbdsqr(
const char &uplo,
const int&
n,
const int& ncvt,
const int& nru,
const int& ncc,
98 double* d,
double*
e, dcomplex* vt,
const int& ldvt, dcomplex* u,
const int& ldu,
99 dcomplex* c,
const int& ldc,
double* rwork,
int& info);
103#define dbdsdc F77_GLOBAL(dbdsdc,DBDSDC)
104F77SUB
dbdsdc(
const char& uplo,
const char& compq,
const int&
n,
double* d,
double*
e,
105 double* u,
const int& ldu,
double* vt,
const int& ldvt,
double* q,
int* iq,
106 double* work,
int* iwork,
int& info);
109#define zpptrf F77_GLOBAL(zpptrf,ZPPTRF)
110F77SUB
zpptrf(
const char& uplo,
const int&
n, dcomplex* ap,
int& info);
114#define zpptrs F77_GLOBAL(zpptrs,ZPPTRS)
115F77SUB
zpptrs(
const char& uplo,
const int&
n,
const int& nrhs, dcomplex* ap,
116 dcomplex*
b,
const int& ldb,
int& info);
119#define zlaswp F77_GLOBAL(zlaswp,ZLASWP)
120F77SUB
zlaswp(
const int&
n, dcomplex* a,
const int& lda,
const int& k1,
const int& k2,
121 const int* ipiv,
const int& incx);
124#define zgeequ F77_GLOBAL(zgeequ,ZGEEQU)
125F77SUB
zgeequ(
const int& m,
const int&
n,
const dcomplex* a,
const int& lda,
double* r,
double* c,
126 double& rowcnd,
double& colcnd,
double& amax,
int& info);
129#define zlaqge F77_GLOBAL(zlaqge,ZLAQGE)
130F77SUB
zlaqge(
const int& m,
const int&
n, dcomplex* a,
const int& lda,
const double* r,
const double* c,
131 const double& rowcnd,
const double& colcnd,
const double& amax,
char& equed);
137#define znaupd F77_GLOBAL(znaupd,ZNAUPD)
138F77SUB
znaupd(
int& ido,
const char& bmat,
const int&
n,
const char* which,
139 const int& nev,
const double& tol, dcomplex* resid,
const int& ncv,
140 dcomplex* v,
const int& ldv,
int* iparam,
int* ipntr,
141 dcomplex* workd, dcomplex* workl,
const int& lworkl,
142 double* rwork,
int& info);
147#define zneupd F77_GLOBAL(zneupd,ZNEUPD)
148F77SUB
zneupd(
const int& rvec,
const char& howmny,
const int* select, dcomplex* d,
149 dcomplex* z,
const int& ldz,
const double& sigma, dcomplex* workev,
150 const char& bmat,
const int&
n,
const char* which,
const int& nev,
151 const double& tol, dcomplex* resid,
const int& ncv, dcomplex* v,
152 const int& ldv,
int* iparam,
int* ipntr, dcomplex* workd,
153 dcomplex* workl,
const int& lworkl,
double* rwork,
int& info);
157#define dsterf F77_GLOBAL(dsterf,DSTERF)
158F77SUB
dsterf(
const int&
n,
double* d,
double*
e,
int& info);
162#define dstegr F77_GLOBAL(dstegr,DSTEGR)
163F77SUB
dstegr(
const char& jobz,
const char& range,
const int&
n,
double* d,
double*
e,
164 const double& vl,
const double& vu,
const int& il,
const int& iu,
const double& abstol,
165 int& m,
double* w,
double* z,
const int& ldz,
int* isuppz,
double* work,
const int& lwork,
166 int& iwork,
const int& liwork,
int& info);
170#define dstedc F77_GLOBAL(dstedc,DSTEDC)
171F77SUB
dstedc(
const char& compz,
const int&
n,
double* d,
double*
e,
double* z,
const int& ldz,
172 double* work,
const int& lwork,
int* iwork,
const int& liwork,
int& info);