TBCI Numerical high perf. C++ Library 2.8.0
lapack_lib.h
Go to the documentation of this file.
1
4
5#ifndef TBCI_LAPACK_LIB_H
6#define TBCI_LAPACK_LIB_H
7
8#ifdef __cplusplus
9extern "C" {
10#endif
11#include "tbci/lapack/f2c.h"
12
13#if 0
14typedef /*long*/ int integer;
15typedef char *address;
16typedef short int shortint;
17/*typedef float real;*/
18/*#define real float;*/
19typedef double doublereal;
20/*typedef struct { real r, i; } complex;*/
21typedef struct { doublereal r, i; } doublecomplex;
22typedef /*long*/ int logical;
23typedef short int shortlogical;
24typedef char logical1;
25typedef char integer1;
26#endif
27
28#ifdef _DOXYGEN
29# define integer /*long*/ int
30# define doublereal double
31# define doublecomplex __complex__ double
32# define real float
33# define complex __complex__ float
34#endif
35
36/* FIXME: should this be dlamch_(char) ? */
37double dlamch_(const char*);
38
39
40// ********************** real linear Systems *********************************************
41/* Subroutine */
42int dgesv_(integer *n, integer *nrhs, doublereal *a, integer *lda,
43 integer *ipiv, doublereal *b, integer *ldb, integer *info);
44
45// Band
46/* Subroutine */
47int dgbsv_(integer *n, integer *kl, integer *ku, integer *nrhs,
48 doublereal *ab, integer *ldab, integer *ipiv, doublereal *b,
49 integer *ldb, integer *info);
50/* Subroutine */
51/* FIXME: Should this be char fact, char trans ? */
52int dgbsvx_(const char *fact, const char *trans, integer *n, integer *kl,
53 integer *ku, integer *nrhs, doublereal *ab, integer *ldab,
54 doublereal *afb, integer *ldafb, integer *ipiv, char *equed,
56 doublereal *x, integer *ldx,
57 doublereal *rcond, doublereal *ferr, doublereal *berr,
58 doublereal *work, integer *iwork, integer *info);
59/* Subroutine */
60int dgbsvx2_(const char *fact, const char *trans, integer *n, integer *kl,
61 integer *ku, integer *nrhs, doublereal *ab, integer *ldab,
62 doublereal *afb, integer *ldafb, integer *ipiv, char *equed,
64 doublereal *x, integer *ldx,
65 doublereal *rcond, doublereal *ferr, doublereal *berr,
66 doublereal *work, integer *iwork, integer *info);
67
68
69// ********************** complex linear Systems ******************************************
70/* Subroutine */
72 integer *lda, integer *ipiv, doublecomplex *b,
73 integer *ldb, integer *info);
74
75
76// ********************** real Eigenvalues ************************************************
77int dsyev_(const char *jobz, const char *uplo, integer *n, doublereal *a,
78 integer *lda, doublereal *w, doublereal *work, integer *lwork,
79 integer *info);
80
81int dspev_(const char *jobz, const char *uplo, integer *n, doublereal *ap,
82 doublereal *w, doublereal *z, integer *ldz, doublereal *work,
83 integer *info);
84
85int dgeev_(const char *jobvl, const char *jobvr, integer *n, doublereal *a,
86 integer *lda, doublereal *wr, doublereal *wi, doublereal *vl,
87 integer *ldvl, doublereal *vr, integer *ldvr, doublereal *work,
88 integer *lwork, integer *info);
89
90//symmetric band matrix
91/* Subroutine */
92int dsbev_(const char *jobz, const char *uplo, integer *n, integer *kd,
93 doublereal *ab, integer *ldab, doublereal *w, doublereal *z,
94 integer *ldz, doublereal *work, integer *info);
95
96/* Subroutine */
97int dsbevx_(const char *jobz, const char *range, const char *uplo, integer *n,
98 integer *kd, doublereal *ab, integer *ldab, doublereal *q,
99 integer *ldq, doublereal *vl, doublereal *vu, integer *il,
100 integer *iu, doublereal *abstol, integer *m, doublereal *w,
101 doublereal *z, integer *ldz, doublereal *work, integer *iwork,
102 integer *ifail, integer *info);
103
104// ********************** complex Eigenvalues ********************************************
105int zgeev_(const char *jobvl, const char *jobvr, integer *n,
107 integer *ldvl, doublecomplex *vr, integer *ldvr, doublecomplex *work,
108 integer *lwork, doublereal *rwork, integer *info);
109
110
111int zheev_(const char *jobz, const char *uplo, integer *n, doublecomplex *a,
112 integer *lda, doublereal *w, doublecomplex *work, integer *lwork,
113 doublereal *rwork, integer *info);
114
115
117 integer *lda, doublecomplex *tau, doublecomplex *work,
118 integer *lwork, integer *info);
119
121 integer *lda, doublecomplex *tau, doublecomplex *work,
122 integer *lwork, integer *info);
123
124int zhseqr_(const char *job, const char *compz, integer *n, integer *ilo, integer *ihi,
126 doublecomplex *z, integer *ldz, doublecomplex *work,
127 integer *lwork, integer *info);
128
129
130
131// Eigene Fortran-Routinen
132long own_ew_(long *jobz, long *uplo, long *n, long *m, doublecomplex *ab, long *ldab,
133 doublecomplex* bb, long *ldbb, double *vl, double *vu, double *w,
134 doublecomplex *q, long *ldq, doublecomplex *work, double *rwork,
135 long *iwork);
136long own_ev_(long *n, long *m, double *w, doublecomplex *z, long *ldz, doublecomplex *q,
137 long *ldq, doublecomplex *work, double *rwork, long *iwork, long *ifail);
138
139#ifdef __cplusplus
140}
141#endif
142
143#endif
const Vector< T > const Vector< T > & x
Definition LM_fit.h:97
const Vector< T > const Vector< T > const Vector< T > int T h
Definition LM_fit.h:99
int i
Definition LM_fit.h:71
char * address
Definition f2c.h:29
int logical
Definition f2c.h:35
short int shortint
Definition f2c.h:30
char integer1
Definition f2c.h:38
short int shortlogical
Definition f2c.h:36
char logical1
Definition f2c.h:37
return c
Definition f_matrix.h:760
F_TMatrix< T > b
Definition f_matrix.h:736
int dspev_(const char *jobz, const char *uplo, int *n, double *ap, double *w, double *z, int *ldz, double *work, int *info)
int zheev_(const char *jobz, const char *uplo, int *n, __complex__ double *a, int *lda, double *w, __complex__ double *work, int *lwork, double *rwork, int *info)
int zhseqr_(const char *job, const char *compz, int *n, int *ilo, int *ihi, __complex__ double *h, int *ldh, __complex__ double *w, __complex__ double *z, int *ldz, __complex__ double *work, int *lwork, int *info)
int zgeev_(const char *jobvl, const char *jobvr, int *n, __complex__ double *a, int *lda, __complex__ double *w, __complex__ double *vl, int *ldvl, __complex__ double *vr, int *ldvr, __complex__ double *work, int *lwork, double *rwork, int *info)
long own_ev_(long *n, long *m, double *w, __complex__ double *z, long *ldz, __complex__ double *q, long *ldq, __complex__ double *work, double *rwork, long *iwork, long *ifail)
int zgesv_(int *n, int *nrhs, __complex__ double *a, int *lda, int *ipiv, __complex__ double *b, int *ldb, int *info)
int dgeev_(const char *jobvl, const 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)
double dlamch_(const char *)
int dsyev_(const char *jobz, const char *uplo, int *n, double *a, int *lda, double *w, double *work, int *lwork, int *info)
int dgbsv_(int *n, int *kl, int *ku, int *nrhs, double *ab, int *ldab, int *ipiv, double *b, int *ldb, int *info)
int dsbevx_(const char *jobz, const char *range, const char *uplo, int *n, int *kd, double *ab, int *ldab, double *q, int *ldq, double *vl, double *vu, int *il, int *iu, double *abstol, int *m, double *w, double *z, int *ldz, double *work, int *iwork, int *ifail, int *info)
int zunghr_(int *n, int *ilo, int *ihi, __complex__ double *a, int *lda, __complex__ double *tau, __complex__ double *work, int *lwork, int *info)
int dsbev_(const char *jobz, const char *uplo, int *n, int *kd, double *ab, int *ldab, double *w, double *z, int *ldz, double *work, int *info)
int dgbsvx2_(const char *fact, const char *trans, int *n, int *kl, int *ku, int *nrhs, double *ab, int *ldab, double *afb, int *ldafb, int *ipiv, char *equed, double *r, double *c, double *b, int *ldb, double *x, int *ldx, double *rcond, double *ferr, double *berr, double *work, int *iwork, int *info)
int dgbsvx_(const char *fact, const char *trans, int *n, int *kl, int *ku, int *nrhs, double *ab, int *ldab, double *afb, int *ldafb, int *ipiv, char *equed, double *r, double *c, double *b, int *ldb, double *x, int *ldx, double *rcond, double *ferr, double *berr, double *work, int *iwork, int *info)
int dgesv_(int *n, int *nrhs, double *a, int *lda, int *ipiv, double *b, int *ldb, int *info)
long own_ew_(long *jobz, long *uplo, long *n, long *m, __complex__ double *ab, long *ldab, __complex__ double *bb, long *ldbb, double *vl, double *vu, double *w, __complex__ double *q, long *ldq, __complex__ double *work, double *rwork, long *iwork)
int zgehrd_(int *n, int *ilo, int *ihi, __complex__ double *a, int *lda, __complex__ double *tau, __complex__ double *work, int *lwork, int *info)
long double fact(const double x)
Definition mathplus.h:101
const unsigned TMatrix< T > const Matrix< T > * a
#define doublereal
#define integer
#define doublecomplex