00001 extern "C" {
00002
00003
00004 void dgesv_( const long &N, const long &nrhs, double *a, const long &lda,
00005 long *ipiv, double *b, const long &ldb, long &info );
00006
00007 void dgbsv_( const long &N, const long &KL, const long &KU,
00008 const long &nrhs, double *ab, const long &ldab,
00009 long *ipiv, double *b, const long &ldb, long &info );
00010
00011 void dgtsv_( const long &N, const long &nrhs, double *dl, double *d,
00012 double *du, double *b, const long &ldb, long &info );
00013
00014 void dposv_( const char &uplo, const long &N, const long &nrhs,
00015 double *a, const long &lda, double *b, const long &ldb,
00016 long &info );
00017
00018 void dppsv_( const char &uplo, const long &N, const long &nrhs,
00019 double *ap, double *b, const long &ldb, long &info );
00020
00021 void dpbsv_( const char &uplo, const long &N, const long &kd,
00022 const long &nrhs, double *ab, const long &ldab,
00023 double *b, const long &ldb, long &info );
00024
00025 void dptsv_( const long &N, const long &nrhs, double *d, double *e,
00026 double *b, const long &ldb, long &info );
00027
00028 void dsysv_( const char &uplo, const long &N, const long &nrhs,
00029 double *a, const long &lda, long *ipiv, double *b,
00030 const long &ldb, double *work, const long &lwork,
00031 long &info );
00032
00033 void dspsv_( const char &uplo, const long &N, const long &nrhs,
00034 double *ap, long *ipiv, double *b, const long &ldb,
00035 long &info );
00036
00037
00038
00039
00040 void dgels_( const char &trans, const long &M, const long &N,
00041 const long &nrhs, double *a, const long &lda,
00042 double *b, const long &ldb,
00043 double *work, const long &lwork, long &info );
00044
00045 void dgelsy_( const long &M, const long &N, const long &nrhs,
00046 double *a, const long &lda, double *b, const long &ldb,
00047 long *jpvt, const double &rcond, long &rank,
00048 double *work, const long &lwork, long &info );
00049
00050 void dgelss_( const long &M, const long &N, const long &nrhs,
00051 double *a, const long &lda, double *b, const long &ldb,
00052 double *s, const double &rcond, long &rank,
00053 double *work, const long &lwork, long &info );
00054
00055 void dgglse_( const long &M, const long &N, const long &p, double *a,
00056 const long &lda, double *b, const long &ldb,
00057 double *c, double *d, double *x, double *work,
00058 const long &lwork, long &info );
00059
00060 void dggglm_( const long &N, const long &M, const long &p,
00061 double *a, const long &lda, double *b, const long &ldb,
00062 double *d, double *x, double *y,
00063 double *work, const long &lwork, long &info );
00064
00065
00066
00067
00068 void dgeev_( const char &jobvl, const char &jobvr, const long &N,
00069 double *a, const long &lda, double *wr, double *wi,
00070 double *vl, const long &ldvl, double *vr, const long &ldvr,
00071 double *work, const long &lwork, long &info );
00072
00073 void dsyev_( const char &jobz, const char &uplo, const long &N,
00074 double *a, const long &lda, double *w, double *work,
00075 const long &lwork, long &info );
00076 void dsyevd_( const char &jobz, const char &uplo, const long &N,
00077 double *a, const long &lda, double *w, double *work,
00078 const long &lwork, long *iwork, const long &liwork,
00079 long &info );
00080
00081 void dspev_( const char &jobz, const char &uplo, const long &N,
00082 double *ap, double *w, double *z, const long &ldz,
00083 double *work, long &info );
00084 void dspevd_( const char &jobz, const char &uplo, const long &N,
00085 double *ap, double *w, double *z, const long &ldz,
00086 double *work, const long &lwork, long *iwork,
00087 const long &liwork, long &info );
00088
00089 void dsbev_( const char &jobz, const char &uplo, const long &N,
00090 const long &kd, double *ab, const long &ldab, double *w,
00091 double *z, const long &ldz, double *work, long &info );
00092 void dsbevd_( const char &jobz, const char &uplo, const long &N,
00093 const long &kd, double *ab, const long &ldab, double *w,
00094 double *z, const long &ldz, double *work,
00095 const long &lwork, long *iwork, const long &liwork,
00096 long &info );
00097
00098 void dstev_( const char &jobz, const long &N, double *d, double *e,
00099 double *z, const long &ldz, double *work, long &info );
00100 void dstevd_( const char &jobz, const long &N, double *d, double *e,
00101 double *z, const long &ldz, double *work,
00102 const long &lwork, long *iwork, const long &liwork,
00103 long &info );
00104
00105 void dgees_( const char &jobvs, const char &sort,
00106 bool (*select)( double *, double * ),
00107 const long &N, double *a, const long &lda, long &sdim,
00108 double *wr, double *wi, double *vs, const long &ldvs,
00109 double *work, const long &lwork, bool *bwork,
00110 long &info );
00111
00112 void dgesvd_( const char &jobu, const char &jobvt, const long &M,
00113 const long &N, double *a, const long &lda, double *s,
00114 double *u, const long &ldu, double *vt, const long &ldvt,
00115 double *work, const long &lwork, long &info );
00116 void dgesdd_( const char &jobz, const long &M, const long &N, double *a,
00117 const long &lda, double *s, double *u, const long &ldu,
00118 double *vt, const long &ldvt, double *work,
00119 const long &lwork, long *iwork,
00120 long &info );
00121
00122
00123
00124 void dggev_( const char &jobvl, const char &jobvr, const long &N,
00125 double *a, const long &lda, double *b, const long &ldb,
00126 double *alphar, double *alphai, double *beta,
00127 double *vl, const long &ldvl, double *vr, const long &ldvr,
00128 double *work, const long &lwork, long &info );
00129
00130
00131 void dsygv_( const long &itype, const char &jobz, const char &uplo,
00132 const long &N, double *a, const long &lda, double *b,
00133 const long &ldb, double *w, double *work, const long &lwork,
00134 long &info );
00135 void dsygvd_( const long &itype, const char &jobz, const char &uplo,
00136 const long &N, double *a, const long &lda, double *b,
00137 const long &ldb, double *w, double *work,
00138 const long &lwork, long *iwork, const long &liwork,
00139 long &info );
00140
00141
00142 void dspgv_( const long &itype, const char &jobz, const char &uplo,
00143 const long &N, double *ap, double *bp, double *w,
00144 double *z, const long &ldz, double *work, long &info );
00145 void dspgvd_( const long &itype, const char &jobz, const char &uplo,
00146 const long &N, double *ap, double *bp, double *w,
00147 double *z, const long &ldz, double *work,
00148 const long &lwork, long *iwork, const long &liwork,
00149 long &info );
00150
00151
00152 void dsbgv_( const char &jobz, const char &uplo, const long &N,
00153 const long &ka, const long &kb, double *ab, const long &ldab,
00154 double *bb, const long &ldbb, double *w, double *z,
00155 const long &ldz, double *work, long &info );
00156 void dsbgvd_( const char &jobz, const char &uplo, const long &N,
00157 const long &ka, const long &kb, double *ab,
00158 const long &ldab, double *bb, const long &ldbb, double *w,
00159 double *z, const long &ldz, double *work,
00160 const long &lwork, long *iwork, const long &liwork,
00161 long &info );
00162
00163 void dgges_( const char &jobvsl, const char &jobvsr, const char &sort,
00164 long (*delctg)( double *, double *, double * ),
00165 const long &N, double *a, const long &lda, double *b,
00166 const long &ldb, long &sdim, double *alphar, double *alphai,
00167 double *beta, double *vsl, const long &ldvsl, double *vsr,
00168 const long &ldvsr, double *work, const long &lwork,
00169 bool *bwork, long &info );
00170
00171 void dggsvd_( const char &jobu, const char &jobv, const char &jobq,
00172 const long &M, const long &N, const long &p, long &k,
00173 long &L, double *a, const long &lda, double *b,
00174 const long &ldb, double *alpha, double *beta,
00175 double *u, const long &ldu, double *v, const long &ldv,
00176 double *q, const long &ldq, double *work, long *iwork,
00177 long &info );
00178 }