44 #ifndef EPETRA_LAPACK_H
45 #define EPETRA_LAPACK_H
92 void POTRF(
const char UPLO,
const int N,
float *
A,
const int LDA,
int * INFO)
const;
94 void POTRF(
const char UPLO,
const int N,
double * A,
const int LDA,
int * INFO)
const;
97 void POTRS(
const char UPLO,
const int N,
const int NRHS,
const float * A,
const int LDA,
float * X,
const int LDX,
int * INFO)
const;
99 void POTRS(
const char UPLO,
const int N,
const int NRHS,
const double * A,
const int LDA,
double * X,
const int LDX,
int * INFO)
const;
102 void POTRI(
const char UPLO,
const int N,
float * A,
const int LDA,
int * INFO)
const;
104 void POTRI(
const char UPLO,
const int N,
double * A,
const int LDA,
int * INFO)
const;
107 void POCON(
const char UPLO,
const int N,
const float * A,
const int LDA,
const float ANORM,
108 float * RCOND,
float * WORK,
int * IWORK,
int * INFO)
const;
110 void POCON(
const char UPLO,
const int N,
const double * A,
const int LDA,
const double ANORM,
111 double * RCOND,
double * WORK,
int * IWORK,
int * INFO)
const;
114 void POSV(
const char UPLO,
const int N,
const int NRHS,
float * A,
const int LDA,
float * X,
const int LDX,
int * INFO)
const;
116 void POSV(
const char UPLO,
const int N,
const int NRHS,
double * A,
const int LDA,
double * X,
const int LDX,
int * INFO)
const;
119 void POEQU(
const int N,
const float * A,
const int LDA,
float * S,
float * SCOND,
float * AMAX,
int * INFO)
const;
121 void POEQU(
const int N,
const double * A,
const int LDA,
double * S,
double * SCOND,
double * AMAX,
int * INFO)
const;
124 void PORFS(
const char UPLO,
const int N,
const int NRHS,
const float * A,
const int LDA,
const float * AF,
const int LDAF,
125 const float *
B,
const int LDB,
float * X,
const int LDX,
126 float * FERR,
float * BERR,
float * WORK,
int * IWORK,
int * INFO)
const;
128 void PORFS(
const char UPLO,
const int N,
const int NRHS,
const double * A,
const int LDA,
const double * AF,
const int LDAF,
129 const double * B,
const int LDB,
double * X,
const int LDX,
130 double * FERR,
double * BERR,
double * WORK,
int * IWORK,
int * INFO)
const;
133 void POSVX(
const char FACT,
const char UPLO,
const int N,
const int NRHS,
float * A,
const int LDA,
float * AF,
const int LDAF,
134 const char EQUED,
float * S,
float * B,
const int LDB,
float * X,
const int LDX,
float * RCOND,
135 float * FERR,
float * BERR,
float * WORK,
int * IWORK,
int * INFO)
const;
137 void POSVX(
const char FACT,
const char UPLO,
const int N,
const int NRHS,
double * A,
const int LDA,
double * AF,
const int LDAF,
138 const char EQUED,
double * S,
double * B,
const int LDB,
double * X,
const int LDX,
double * RCOND,
139 double * FERR,
double * BERR,
double * WORK,
int * IWORK,
int * INFO)
const;
146 void GELS(
const char TRANS,
const int M,
const int N,
const int NRHS,
double* A,
const int LDA,
147 double* B,
const int LDB,
double* WORK,
const int LWORK,
int * INFO)
const;
149 void GETRF(
const int M,
const int N,
float * A,
const int LDA,
int * IPIV,
int * INFO)
const;
151 void GETRF(
const int M,
const int N,
double * A,
const int LDA,
int * IPIV,
int * INFO)
const;
154 void GEQRF(
const int M,
const int N,
float * A,
const int LDA,
float * TAU,
float * WORK,
const int lwork,
int * INFO)
const;
156 void GEQRF(
const int M,
const int N,
double * A,
const int LDA,
double * TAU,
double * WORK,
const int lwork,
int * INFO)
const;
159 void GETRS(
const char TRANS,
const int N,
const int NRHS,
const float * A,
const int LDA,
const int * IPIV,
float * X,
const int LDX,
int * INFO)
const;
161 void GETRS(
const char TRANS,
const int N,
const int NRHS,
const double * A,
const int LDA,
const int * IPIV,
double * X,
const int LDX,
int * INFO)
const;
164 void GETRI(
const int N,
float * A,
const int LDA,
int * IPIV,
float * WORK,
const int * LWORK,
int * INFO)
const;
166 void GETRI(
const int N,
double * A,
const int LDA,
int * IPIV,
double * WORK,
const int * LWORK,
int * INFO)
const;
169 void GECON(
const char NORM,
const int N,
const float * A,
const int LDA,
const float ANORM,
170 float * RCOND,
float * WORK,
int * IWORK,
int * INFO)
const;
172 void GECON(
const char NORM,
const int N,
const double * A,
const int LDA,
const double ANORM,
173 double * RCOND,
double * WORK,
int * IWORK,
int * INFO)
const;
176 void GESV(
const int N,
const int NRHS,
float * A,
const int LDA,
int * IPIV,
float * X,
const int LDX,
int * INFO)
const;
178 void GESV(
const int N,
const int NRHS,
double * A,
const int LDA,
int * IPIV,
double * X,
const int LDX,
int * INFO)
const;
181 void GEEQU(
const int M,
const int N,
const float * A,
const int LDA,
float * R,
float *
C,
float * ROWCND,
float * COLCND,
float * AMAX,
int * INFO)
const;
183 void GEEQU(
const int M,
const int N,
const double * A,
const int LDA,
double * R,
double * C,
double * ROWCND,
double * COLCND,
double * AMAX,
int * INFO)
const;
186 void GERFS(
const char TRANS,
const int N,
const int NRHS,
const float * A,
const int LDA,
const float * AF,
const int LDAF,
187 const int * IPIV,
const float * B,
const int LDB,
float * X,
const int LDX,
188 float * FERR,
float * BERR,
float * WORK,
int * IWORK,
int * INFO)
const;
190 void GERFS(
const char TRANS,
const int N,
const int NRHS,
const double * A,
const int LDA,
const double * AF,
const int LDAF,
191 const int * IPIV,
const double * B,
const int LDB,
double * X,
const int LDX,
192 double * FERR,
double * BERR,
double * WORK,
int * IWORK,
int * INFO)
const;
195 void GESVX(
const char FACT,
const char TRANS,
const int N,
const int NRHS,
float * A,
const int LDA,
float * AF,
const int LDAF,
int * IPIV,
196 const char EQUED,
float * R,
float * C,
float * B,
const int LDB,
float * X,
const int LDX,
float * RCOND,
197 float * FERR,
float * BERR,
float * WORK,
int * IWORK,
int * INFO)
const;
199 void GESVX(
const char FACT,
const char TRANS,
const int N,
const int NRHS,
double * A,
const int LDA,
double * AF,
const int LDAF,
int * IPIV,
200 const char EQUED,
double * R,
double * C,
double * B,
const int LDB,
double * X,
const int LDX,
double * RCOND,
201 double * FERR,
double * BERR,
double * WORK,
int * IWORK,
int * INFO)
const;
205 void GEHRD(
const int N,
const int ILO,
const int IHI,
float * A,
const int LDA,
float * TAU,
float * WORK,
const int LWORK,
int * INFO)
const;
207 void GEHRD(
const int N,
const int ILO,
const int IHI,
double * A,
const int LDA,
double * TAU,
double * WORK,
const int LWORK,
int * INFO)
const;
212 void HSEQR(
const char JOB,
const char COMPZ,
const int N,
const int ILO,
const int IHI,
float * H,
const int LDH,
float * WR,
float * WI,
214 float * Z,
const int LDZ,
float * WORK,
const int LWORK,
int * INFO)
const;
216 void HSEQR(
const char JOB,
const char COMPZ,
const int N,
const int ILO,
const int IHI,
double * H,
const int LDH,
double * WR,
double * WI,
217 double * Z,
const int LDZ,
double * WORK,
const int LWORK,
int * INFO)
const;
222 void ORGQR(
const int M,
const int N,
const int K,
float * A,
const int LDA,
float * TAU,
float * WORK,
const int LWORK,
int * INFO)
const;
225 void ORGQR(
const int M,
const int N,
const int K,
double * A,
const int LDA,
double * TAU,
double * WORK,
const int LWORK,
int * INFO)
const;
228 void ORGHR(
const int N,
const int ILO,
const int IHI,
float * A,
const int LDA,
float * TAU,
float * WORK,
const int LWORK,
int * INFO)
const;
230 void ORGHR(
const int N,
const int ILO,
const int IHI,
double * A,
const int LDA,
double * TAU,
double * WORK,
const int LWORK,
int * INFO)
const;
233 void ORMHR(
const char SIDE,
const char TRANS,
const int M,
const int N,
const int ILO,
const int IHI,
const float * A,
const int LDA,
234 const float * TAU,
float * C,
235 const int LDC,
float * WORK,
const int LWORK,
int * INFO)
const;
237 void ORMHR(
const char SIDE,
const char TRANS,
const int M,
const int N,
const int ILO,
const int IHI,
const double * A,
const int LDA,
238 const double * TAU,
double * C,
239 const int LDC,
double * WORK,
const int LWORK,
int * INFO)
const;
241 void LARFT(
const char DIRECT,
const char STOREV,
const int N,
const int K,
double * V,
const int LDV,
double * TAU,
double * T,
const int LDT)
const;
243 void LARFT(
const char DIRECT,
const char STOREV,
const int N,
const int K,
float * V,
const int LDV,
float * TAU,
float * T,
const int LDT)
const;
252 void TREVC(
const char SIDE,
const char HOWMNY,
int * SELECT,
const int N,
const float * T,
const int LDT,
float *VL,
const int LDVL,
253 float * VR,
const int LDVR,
const int MM,
int * M,
float * WORK,
int * INFO)
const;
257 void TREVC(
const char SIDE,
const char HOWMNY,
int * SELECT,
const int N,
const double * T,
const int LDT,
double *VL,
const int LDVL,
258 double * VR,
const int LDVR,
const int MM,
int *M,
double * WORK,
int * INFO)
const;
261 void TREXC(
const char COMPQ,
const int N,
float * T,
const int LDT,
float * Q,
const int LDQ,
int IFST,
int ILST,
262 float * WORK,
int * INFO)
const;
264 void TREXC(
const char COMPQ,
const int N,
double * T,
const int LDT,
double * Q,
const int LDQ,
int IFST,
int ILST,
265 double * WORK,
int * INFO)
const;
272 void GESVD(
const char JOBU,
const char JOBVT,
const int M,
const int N,
float * A,
const int LDA,
float * S,
float * U,
273 const int LDU,
float * VT,
const int LDVT,
float * WORK,
const int * LWORK,
int * INFO)
const;
275 void GESVD(
const char JOBU,
const char JOBVT,
const int M,
const int N,
double * A,
const int LDA,
double * S,
double * U,
276 const int LDU,
double * VT,
const int LDVT,
double * WORK,
const int * LWORK,
int * INFO)
const;
279 void GGSVD(
const char JOBU,
const char JOBV,
const char JOBQ,
const int M,
const int N,
const int P,
int * K,
int * L,
double* A,
const int LDA,
double* B,
const int LDB,
280 double* ALPHA,
double* BETA,
double* U,
const int LDU,
double* V,
const int LDV,
double* Q,
const int LDQ,
double* WORK,
281 #ifdef HAVE_EPETRA_LAPACK_GSSVD3
284 int* IWORK,
int* INFO)
const;
286 void GGSVD(
const char JOBU,
const char JOBV,
const char JOBQ,
const int M,
const int N,
const int P,
int * K,
int * L,
float* A,
const int LDA,
float* B,
const int LDB,
287 float* ALPHA,
float* BETA,
float* U,
const int LDU,
float* V,
const int LDV,
float* Q,
const int LDQ,
float* WORK,
288 #ifdef HAVE_EPETRA_LAPACK_GSSVD3
291 int* IWORK,
int* INFO)
const;
296 void GEEV(
const char JOBVL,
const char JOBVR,
const int N,
double* A,
const int LDA,
double* WR,
double* WI,
298 double* VL,
const int LDVL,
double* VR,
const int LDVR,
double* WORK,
const int LWORK,
int* INFO)
const;
300 void GEEV(
const char JOBVL,
const char JOBVR,
const int N,
float* A,
const int LDA,
float* WR,
float* WI,
301 float* VL,
const int LDVL,
float* VR,
const int LDVR,
float* WORK,
const int LWORK,
int* INFO)
const;
304 void SPEV(
const char JOBZ,
const char UPLO,
const int N,
double* AP,
double* W,
double* Z,
int LDZ,
double* WORK,
int* INFO)
const;
306 void SPEV(
const char JOBZ,
const char UPLO,
const int N,
float* AP,
float* W,
float* Z,
int LDZ,
float* WORK,
int* INFO)
const;
309 void SPGV(
const int ITYPE,
const char JOBZ,
const char UPLO,
const int N,
double* AP,
double* BP,
double* W,
double* Z,
const int LDZ,
double* WORK,
int* INFO)
const;
311 void SPGV(
const int ITYPE,
const char JOBZ,
const char UPLO,
const int N,
float* AP,
float* BP,
float* W,
float* Z,
const int LDZ,
float* WORK,
int* INFO)
const;
314 void SYEV(
const char JOBZ,
const char UPLO,
const int N,
double* A,
const int LDA,
double* W,
double* WORK,
const int LWORK,
int* INFO)
const;
316 void SYEV(
const char JOBZ,
const char UPLO,
const int N,
float* A,
const int LDA,
float* W,
float* WORK,
const int LWORK,
int* INFO)
const;
319 void SYEVD(
const char JOBZ,
const char UPLO,
const int N,
double* A,
const int LDA,
double* W,
320 double* WORK,
const int LWORK,
int* IWORK,
const int LIWORK,
int* INFO)
const;
322 void SYEVD(
const char JOBZ,
const char UPLO,
const int N,
float* A,
const int LDA,
float* W,
323 float* WORK,
const int LWORK,
int* IWORK,
const int LIWORK,
int* INFO)
const;
326 void SYEVX(
const char JOBZ,
const char RANGE,
const char UPLO,
const int N,
double* A,
const int LDA,
327 const double* VL,
const double* VU,
const int* IL,
const int* IU,
328 const double ABSTOL,
int * M,
double* W,
double* Z,
const int LDZ,
double* WORK,
329 const int LWORK,
int* IWORK,
int* IFAIL,
332 void SYEVX(
const char JOBZ,
const char RANGE,
const char UPLO,
const int N,
float* A,
const int LDA,
333 const float* VL,
const float* VU,
const int* IL,
const int* IU,
334 const float ABSTOL,
int * M,
float* W,
float* Z,
const int LDZ,
float* WORK,
335 const int LWORK,
int* IWORK,
int* IFAIL,
339 void SYGV(
const int ITYPE,
const char JOBZ,
const char UPLO,
const int N,
double* A,
const int LDA,
double* B,
340 const int LDB,
double* W,
double* WORK,
const int LWORK,
int* INFO)
const;
342 void SYGV(
const int ITYPE,
const char JOBZ,
const char UPLO,
const int N,
float* A,
const int LDA,
float* B,
343 const int LDB,
float* W,
float* WORK,
const int LWORK,
int* INFO)
const;
346 void SYGVX(
const int ITYPE,
const char JOBZ,
const char RANGE,
const char UPLO,
const int N,
347 double* A,
const int LDA,
double* B,
const int LDB,
const double* VL,
const double* VU,
348 const int* IL,
const int* IU,
const double ABSTOL,
int* M,
double* W,
double* Z,
349 const int LDZ,
double* WORK,
const int LWORK,
int* IWORK,
350 int* IFAIL,
int* INFO)
const;
352 void SYGVX(
const int ITYPE,
const char JOBZ,
const char RANGE,
const char UPLO,
const int N,
353 float* A,
const int LDA,
float* B,
const int LDB,
const float* VL,
const float* VU,
354 const int* IL,
const int* IU,
const float ABSTOL,
int* M,
float* W,
float* Z,
355 const int LDZ,
float* WORK,
const int LWORK,
int* IWORK,
356 int* IFAIL,
int* INFO)
const;
359 void SYEVR(
const char JOBZ,
const char RANGE,
const char UPLO,
const int N,
double* A,
const int LDA,
const double* VL,
const double* VU,
const int *IL,
const int *IU,
360 const double ABSTOL,
int* M,
double* W,
double* Z,
const int LDZ,
int* ISUPPZ,
double* WORK,
const int LWORK,
int* IWORK,
361 const int LIWORK,
int* INFO)
const;
363 void SYEVR(
const char JOBZ,
const char RANGE,
const char UPLO,
const int N,
float* A,
const int LDA,
364 const float* VL,
const float* VU,
const int *IL,
const int *IU,
365 const float ABSTOL,
int* M,
float* W,
float* Z,
const int LDZ,
int* ISUPPZ,
366 float* WORK,
const int LWORK,
int* IWORK,
367 const int LIWORK,
int* INFO)
const;
370 void GEEVX(
const char BALANC,
const char JOBVL,
const char JOBVR,
const char SENSE,
const int N,
double* A,
const int LDA,
double* WR,
double* WI,
double* VL,
371 const int LDVL,
double* VR,
const int LDVR,
int* ILO,
int* IHI,
double* SCALE,
double* ABNRM,
double* RCONDE,
372 double* RCONDV,
double* WORK,
const int LWORK,
int* IWORK,
int* INFO)
const;
374 void GEEVX(
const char BALANC,
const char JOBVL,
const char JOBVR,
const char SENSE,
const int N,
float* A,
const int LDA,
float* WR,
float* WI,
float* VL,
375 const int LDVL,
float* VR,
const int LDVR,
int* ILO,
int* IHI,
float* SCALE,
float* ABNRM,
float* RCONDE,
376 float* RCONDV,
float* WORK,
const int LWORK,
int* IWORK,
int* INFO)
const;
379 void GESDD(
const char JOBZ,
const int M,
const int N,
double* A,
const int LDA,
double* S,
double* U,
const int LDU,
double* VT,
const int LDVT,
double* WORK,
380 const int LWORK,
int* IWORK,
int* INFO)
const;
382 void GESDD(
const char JOBZ,
const int M,
const int N,
float* A,
const int LDA,
float* S,
float* U,
const int LDU,
float* VT,
const int LDVT,
float* WORK,
383 const int LWORK,
int* IWORK,
int* INFO)
const;
386 void GGEV(
const char JOBVL,
const char JOBVR,
const int N,
double* A,
const int LDA,
double* B,
const int LDB,
double* ALPHAR,
double* ALPHAI,
387 double* BETA,
double* VL,
const int LDVL,
double* VR,
const int LDVR,
double* WORK,
const int LWORK,
int* INFO)
const;
389 void GGEV(
const char JOBVL,
const char JOBVR,
const int N,
float* A,
const int LDA,
float* B,
const int LDB,
float* ALPHAR,
float* ALPHAI,
390 float* BETA,
float* VL,
const int LDVL,
float* VR,
const int LDVR,
float* WORK,
const int LWORK,
int* INFO)
const;
396 void GGLSE(
const int M,
const int N,
const int P,
double* A,
const int LDA,
double* B,
const int LDB,
398 double* C,
double*
D,
double* X,
double* WORK,
const int LWORK,
int* INFO)
const;
400 void GGLSE(
const int M,
const int N,
const int P,
float* A,
const int LDA,
float* B,
const int LDB,
401 float* C,
float* D,
float* X,
float* WORK,
const int LWORK,
int* INFO)
const;
406 void LAMCH (
const char CMACH,
float & T)
const;
409 void LAMCH (
const char CMACH,
double & T)
const;
416 void TRTRS(
const char UPLO,
const char TRANS,
const char DIAG,
const int N,
const int NRHS,
const float *A,
418 const int LDA,
float *B,
const int LDB,
int *INFO)
const;
420 void TRTRS(
const char UPLO,
const char TRANS,
const char DIAG,
const int N,
const int NRHS,
const double *A,
421 const int LDA,
double *B,
const int LDB,
int *INFO)
const;
Epetra_LAPACK: The Epetra LAPACK Wrapper Class.
virtual ~Epetra_LAPACK(void)
Epetra_LAPACK Destructor.
Epetra_LAPACK(void)
Epetra_LAPACK Constructor.