Skip to content
lapacke.h 1.01 MiB
Newer Older
Luker's avatar
Luker committed
16001 16002 16003 16004 16005 16006 16007 16008 16009 16010 16011 16012 16013 16014 16015 16016 16017 16018 16019 16020 16021 16022 16023 16024 16025 16026 16027 16028 16029 16030 16031 16032 16033 16034 16035 16036 16037 16038 16039 16040 16041 16042 16043 16044 16045 16046 16047 16048 16049 16050 16051 16052 16053 16054 16055 16056 16057 16058 16059 16060 16061 16062 16063 16064 16065 16066 16067 16068 16069 16070 16071 16072 16073 16074 16075 16076 16077 16078 16079 16080 16081 16082 16083 16084 16085 16086 16087 16088 16089 16090 16091 16092 16093 16094 16095 16096 16097 16098 16099 16100 16101 16102 16103 16104 16105 16106 16107 16108 16109 16110 16111 16112 16113 16114 16115 16116 16117 16118 16119 16120 16121 16122 16123 16124 16125 16126 16127 16128 16129 16130 16131 16132 16133 16134 16135 16136 16137 16138 16139 16140 16141 16142 16143 16144 16145 16146 16147 16148 16149 16150 16151 16152 16153 16154 16155 16156 16157 16158 16159 16160 16161 16162 16163 16164 16165 16166 16167 16168 16169 16170 16171 16172 16173 16174 16175 16176 16177 16178 16179 16180 16181 16182 16183 16184 16185 16186 16187 16188 16189 16190 16191 16192 16193 16194 16195 16196 16197 16198 16199 16200 16201 16202 16203 16204 16205 16206 16207 16208 16209 16210 16211 16212 16213 16214 16215 16216 16217 16218 16219 16220 16221 16222 16223 16224 16225 16226 16227 16228 16229 16230 16231 16232 16233 16234 16235 16236 16237 16238 16239 16240 16241 16242 16243 16244 16245 16246 16247 16248 16249 16250 16251 16252 16253 16254 16255 16256 16257 16258 16259 16260 16261 16262 16263 16264 16265 16266 16267 16268 16269 16270 16271 16272 16273 16274 16275 16276 16277 16278 16279 16280 16281 16282 16283 16284 16285 16286 16287 16288 16289 16290 16291
                    double* work, lapack_int* lwork,
                    lapack_int* iwork , lapack_int *info );
void LAPACK_dsyconv( char* uplo, char* way,
                     lapack_int* n, double* a, lapack_int* lda,
                     const lapack_int* ipiv, double* work , lapack_int *info );
void LAPACK_dsyswapr( char* uplo, lapack_int* n,
                      double* a, lapack_int* i1, lapack_int* i2 );
void LAPACK_dsytri2( char* uplo, lapack_int* n,
                     double* a, lapack_int* lda,
                     const lapack_int* ipiv,
                     lapack_complex_double* work, lapack_int* lwork , lapack_int *info );
void LAPACK_dsytri2x( char* uplo, lapack_int* n,
                      double* a, lapack_int* lda,
                      const lapack_int* ipiv, double* work,
                      lapack_int* nb , lapack_int *info );
void LAPACK_dsytrs2( char* uplo, lapack_int* n,
                     lapack_int* nrhs, const double* a,
                     lapack_int* lda, const lapack_int* ipiv,
                     double* b, lapack_int* ldb, double* work , lapack_int *info );
void LAPACK_sbbcsd( char* jobu1, char* jobu2,
                    char* jobv1t, char* jobv2t, char* trans,
                    lapack_int* m, lapack_int* p, lapack_int* q,
                    float* theta, float* phi, float* u1,
                    lapack_int* ldu1, float* u2, lapack_int* ldu2,
                    float* v1t, lapack_int* ldv1t, float* v2t,
                    lapack_int* ldv2t, float* b11d, float* b11e,
                    float* b12d, float* b12e, float* b21d,
                    float* b21e, float* b22d, float* b22e,
                    float* work, lapack_int* lwork , lapack_int *info );
void LAPACK_sorbdb( char* trans, char* signs,
                    lapack_int* m, lapack_int* p, lapack_int* q,
                    float* x11, lapack_int* ldx11, float* x12,
                    lapack_int* ldx12, float* x21, lapack_int* ldx21,
                    float* x22, lapack_int* ldx22, float* theta,
                    float* phi, float* taup1, float* taup2,
                    float* tauq1, float* tauq2, float* work,
                    lapack_int* lwork , lapack_int *info );
void LAPACK_sorcsd( char* jobu1, char* jobu2,
                    char* jobv1t, char* jobv2t, char* trans,
                    char* signs, lapack_int* m, lapack_int* p,
                    lapack_int* q, float* x11, lapack_int* ldx11,
                    float* x12, lapack_int* ldx12, float* x21,
                    lapack_int* ldx21, float* x22, lapack_int* ldx22,
                    float* theta, float* u1, lapack_int* ldu1,
                    float* u2, lapack_int* ldu2, float* v1t,
                    lapack_int* ldv1t, float* v2t, lapack_int* ldv2t,
                    float* work, lapack_int* lwork,
                    lapack_int* iwork , lapack_int *info );
void LAPACK_ssyconv( char* uplo, char* way,
                     lapack_int* n, float* a, lapack_int* lda,
                     const lapack_int* ipiv, float* work , lapack_int *info );
void LAPACK_ssyswapr( char* uplo, lapack_int* n,
                      float* a, lapack_int* i1, lapack_int* i2 );
void LAPACK_ssytri2( char* uplo, lapack_int* n,
                     float* a, lapack_int* lda,
                     const lapack_int* ipiv,
                     lapack_complex_float* work, lapack_int* lwork , lapack_int *info );
void LAPACK_ssytri2x( char* uplo, lapack_int* n,
                      float* a, lapack_int* lda,
                      const lapack_int* ipiv, float* work,
                      lapack_int* nb , lapack_int *info );
void LAPACK_ssytrs2( char* uplo, lapack_int* n,
                     lapack_int* nrhs, const float* a,
                     lapack_int* lda, const lapack_int* ipiv,
                     float* b, lapack_int* ldb, float* work , lapack_int *info );
void LAPACK_zbbcsd( char* jobu1, char* jobu2,
                    char* jobv1t, char* jobv2t, char* trans,
                    lapack_int* m, lapack_int* p, lapack_int* q,
                    double* theta, double* phi,
                    lapack_complex_double* u1, lapack_int* ldu1,
                    lapack_complex_double* u2, lapack_int* ldu2,
                    lapack_complex_double* v1t, lapack_int* ldv1t,
                    lapack_complex_double* v2t, lapack_int* ldv2t,
                    double* b11d, double* b11e, double* b12d,
                    double* b12e, double* b21d, double* b21e,
                    double* b22d, double* b22e, double* rwork,
                    lapack_int* lrwork , lapack_int *info );
void LAPACK_zheswapr( char* uplo, lapack_int* n,
                      lapack_complex_double* a, lapack_int* i1,
                      lapack_int* i2 );
void LAPACK_zhetri2( char* uplo, lapack_int* n,
                     lapack_complex_double* a, lapack_int* lda,
                     const lapack_int* ipiv,
                     lapack_complex_double* work, lapack_int* lwork , lapack_int *info );
void LAPACK_zhetri2x( char* uplo, lapack_int* n,
                      lapack_complex_double* a, lapack_int* lda,
                      const lapack_int* ipiv,
                      lapack_complex_double* work, lapack_int* nb , lapack_int *info );
void LAPACK_zhetrs2( char* uplo, lapack_int* n,
                     lapack_int* nrhs,
                     const lapack_complex_double* a, lapack_int* lda,
                     const lapack_int* ipiv,
                     lapack_complex_double* b, lapack_int* ldb,
                     lapack_complex_double* work , lapack_int *info );
void LAPACK_zsyconv( char* uplo, char* way,
                     lapack_int* n, lapack_complex_double* a,
                     lapack_int* lda, const lapack_int* ipiv,
                     lapack_complex_double* work , lapack_int *info );
void LAPACK_zsyswapr( char* uplo, lapack_int* n,
                      lapack_complex_double* a, lapack_int* i1,
                      lapack_int* i2 );
void LAPACK_zsytri2( char* uplo, lapack_int* n,
                     lapack_complex_double* a, lapack_int* lda,
                     const lapack_int* ipiv,
                     lapack_complex_double* work, lapack_int* lwork , lapack_int *info );
void LAPACK_zsytri2x( char* uplo, lapack_int* n,
                      lapack_complex_double* a, lapack_int* lda,
                      const lapack_int* ipiv,
                      lapack_complex_double* work, lapack_int* nb , lapack_int *info );
void LAPACK_zsytrs2( char* uplo, lapack_int* n,
                     lapack_int* nrhs,
                     const lapack_complex_double* a, lapack_int* lda,
                     const lapack_int* ipiv,
                     lapack_complex_double* b, lapack_int* ldb,
                     lapack_complex_double* work , lapack_int *info );
void LAPACK_zunbdb( char* trans, char* signs,
                    lapack_int* m, lapack_int* p, lapack_int* q,
                    lapack_complex_double* x11, lapack_int* ldx11,
                    lapack_complex_double* x12, lapack_int* ldx12,
                    lapack_complex_double* x21, lapack_int* ldx21,
                    lapack_complex_double* x22, lapack_int* ldx22,
                    double* theta, double* phi,
                    lapack_complex_double* taup1,
                    lapack_complex_double* taup2,
                    lapack_complex_double* tauq1,
                    lapack_complex_double* tauq2,
                    lapack_complex_double* work, lapack_int* lwork , lapack_int *info );
void LAPACK_zuncsd( char* jobu1, char* jobu2,
                    char* jobv1t, char* jobv2t, char* trans,
                    char* signs, lapack_int* m, lapack_int* p,
                    lapack_int* q, lapack_complex_double* x11,
                    lapack_int* ldx11, lapack_complex_double* x12,
                    lapack_int* ldx12, lapack_complex_double* x21,
                    lapack_int* ldx21, lapack_complex_double* x22,
                    lapack_int* ldx22, double* theta,
                    lapack_complex_double* u1, lapack_int* ldu1,
                    lapack_complex_double* u2, lapack_int* ldu2,
                    lapack_complex_double* v1t, lapack_int* ldv1t,
                    lapack_complex_double* v2t, lapack_int* ldv2t,
                    lapack_complex_double* work, lapack_int* lwork,
                    double* rwork, lapack_int* lrwork,
                    lapack_int* iwork , lapack_int *info );
// LAPACK 3.4.0
void LAPACK_sgemqrt( char* side, char* trans, lapack_int* m, lapack_int* n,
                     lapack_int* k, lapack_int* nb, const float* v,
                     lapack_int* ldv, const float* t, lapack_int* ldt, float* c,
                     lapack_int* ldc, float* work, lapack_int *info );
void LAPACK_dgemqrt( char* side, char* trans, lapack_int* m, lapack_int* n,
                     lapack_int* k, lapack_int* nb, const double* v,
                     lapack_int* ldv, const double* t, lapack_int* ldt,
                     double* c, lapack_int* ldc, double* work,
                     lapack_int *info );
void LAPACK_cgemqrt( char* side, char* trans, lapack_int* m, lapack_int* n,
                     lapack_int* k, lapack_int* nb,
                     const lapack_complex_float* v, lapack_int* ldv,
                     const lapack_complex_float* t, lapack_int* ldt,
                     lapack_complex_float* c, lapack_int* ldc,
                     lapack_complex_float* work, lapack_int *info );
void LAPACK_zgemqrt( char* side, char* trans, lapack_int* m, lapack_int* n,
                     lapack_int* k, lapack_int* nb,
                     const lapack_complex_double* v, lapack_int* ldv,
                     const lapack_complex_double* t, lapack_int* ldt,
                     lapack_complex_double* c, lapack_int* ldc,
                     lapack_complex_double* work, lapack_int *info );
void LAPACK_sgeqrt( lapack_int* m, lapack_int* n, lapack_int* nb, float* a,
                    lapack_int* lda, float* t, lapack_int* ldt, float* work,
                    lapack_int *info );
void LAPACK_dgeqrt( lapack_int* m, lapack_int* n, lapack_int* nb, double* a,
                    lapack_int* lda, double* t, lapack_int* ldt, double* work,
                    lapack_int *info );
void LAPACK_cgeqrt( lapack_int* m, lapack_int* n, lapack_int* nb,
                    lapack_complex_float* a, lapack_int* lda,
                    lapack_complex_float* t, lapack_int* ldt,
                    lapack_complex_float* work, lapack_int *info );
void LAPACK_zgeqrt( lapack_int* m, lapack_int* n, lapack_int* nb,
                    lapack_complex_double* a, lapack_int* lda,
                    lapack_complex_double* t, lapack_int* ldt,
                    lapack_complex_double* work, lapack_int *info );
void LAPACK_sgeqrt2( lapack_int* m, lapack_int* n, float* a, lapack_int* lda,
                     float* t, lapack_int* ldt, lapack_int *info );
void LAPACK_dgeqrt2( lapack_int* m, lapack_int* n, double* a, lapack_int* lda,
                     double* t, lapack_int* ldt, lapack_int *info );
void LAPACK_cgeqrt2( lapack_int* m, lapack_int* n, lapack_complex_float* a,
                     lapack_int* lda, lapack_complex_float* t, lapack_int* ldt,
                     lapack_int *info );
void LAPACK_zgeqrt2( lapack_int* m, lapack_int* n, lapack_complex_double* a,
                     lapack_int* lda, lapack_complex_double* t, lapack_int* ldt,
                     lapack_int *info );
void LAPACK_sgeqrt3( lapack_int* m, lapack_int* n, float* a, lapack_int* lda,
                     float* t, lapack_int* ldt, lapack_int *info );
void LAPACK_dgeqrt3( lapack_int* m, lapack_int* n, double* a, lapack_int* lda,
                     double* t, lapack_int* ldt, lapack_int *info );
void LAPACK_cgeqrt3( lapack_int* m, lapack_int* n, lapack_complex_float* a,
                     lapack_int* lda, lapack_complex_float* t, lapack_int* ldt,
                     lapack_int *info );
void LAPACK_zgeqrt3( lapack_int* m, lapack_int* n, lapack_complex_double* a,
                     lapack_int* lda, lapack_complex_double* t, lapack_int* ldt,
                     lapack_int *info );
void LAPACK_stpmqrt( char* side, char* trans, lapack_int* m, lapack_int* n,
                     lapack_int* k, lapack_int* l, lapack_int* nb,
                     const float* v, lapack_int* ldv, const float* t,
                     lapack_int* ldt, float* a, lapack_int* lda, float* b,
                     lapack_int* ldb, float* work, lapack_int *info );
void LAPACK_dtpmqrt( char* side, char* trans, lapack_int* m, lapack_int* n,
                     lapack_int* k, lapack_int* l, lapack_int* nb,
                     const double* v, lapack_int* ldv, const double* t,
                     lapack_int* ldt, double* a, lapack_int* lda, double* b,
                     lapack_int* ldb, double* work, lapack_int *info );
void LAPACK_ctpmqrt( char* side, char* trans, lapack_int* m, lapack_int* n,
                     lapack_int* k, lapack_int* l, lapack_int* nb,
                     const lapack_complex_float* v, lapack_int* ldv,
                     const lapack_complex_float* t, lapack_int* ldt,
                     lapack_complex_float* a, lapack_int* lda,
                     lapack_complex_float* b, lapack_int* ldb,
                     lapack_complex_float* work, lapack_int *info );
void LAPACK_ztpmqrt( char* side, char* trans, lapack_int* m, lapack_int* n,
                     lapack_int* k, lapack_int* l, lapack_int* nb,
                     const lapack_complex_double* v, lapack_int* ldv,
                     const lapack_complex_double* t, lapack_int* ldt,
                     lapack_complex_double* a, lapack_int* lda,
                     lapack_complex_double* b, lapack_int* ldb,
                     lapack_complex_double* work, lapack_int *info );
void LAPACK_dtpqrt( lapack_int* m, lapack_int* n, lapack_int* l, lapack_int* nb,
                    double* a, lapack_int* lda, double* b, lapack_int* ldb,
                    double* t, lapack_int* ldt, double* work,
                    lapack_int *info );
void LAPACK_ctpqrt( lapack_int* m, lapack_int* n, lapack_int* l, lapack_int* nb,
                    lapack_complex_float* a, lapack_int* lda,
                    lapack_complex_float* t, lapack_complex_float* b,
                    lapack_int* ldb, lapack_int* ldt,
                    lapack_complex_float* work, lapack_int *info );
void LAPACK_ztpqrt( lapack_int* m, lapack_int* n, lapack_int* l, lapack_int* nb,
                    lapack_complex_double* a, lapack_int* lda,
                    lapack_complex_double* b, lapack_int* ldb,
                    lapack_complex_double* t, lapack_int* ldt,
                    lapack_complex_double* work, lapack_int *info );
void LAPACK_stpqrt2( lapack_int* m, lapack_int* n, float* a, lapack_int* lda,
                     float* b, lapack_int* ldb, float* t, lapack_int* ldt,
                     lapack_int *info );
void LAPACK_dtpqrt2( lapack_int* m, lapack_int* n, double* a, lapack_int* lda,
                     double* b, lapack_int* ldb, double* t, lapack_int* ldt,
                     lapack_int *info );
void LAPACK_ctpqrt2( lapack_int* m, lapack_int* n, lapack_complex_float* a,
                     lapack_int* lda, lapack_complex_float* b, lapack_int* ldb,
                     lapack_complex_float* t, lapack_int* ldt,
                     lapack_int *info );
void LAPACK_ztpqrt2( lapack_int* m, lapack_int* n, lapack_complex_double* a,
                     lapack_int* lda, lapack_complex_double* b, lapack_int* ldb,
                     lapack_complex_double* t, lapack_int* ldt,
                     lapack_int *info );
void LAPACK_stprfb( char* side, char* trans, char* direct, char* storev,
                    lapack_int* m, lapack_int* n, lapack_int* k, lapack_int* l,
                    const float* v, lapack_int* ldv, const float* t,
                    lapack_int* ldt, float* a, lapack_int* lda, float* b,
                    lapack_int* ldb, const float* mywork,
                    lapack_int* myldwork );
void LAPACK_dtprfb( char* side, char* trans, char* direct, char* storev,
                    lapack_int* m, lapack_int* n, lapack_int* k, lapack_int* l,
                    const double* v, lapack_int* ldv, const double* t,
                    lapack_int* ldt, double* a, lapack_int* lda, double* b,
                    lapack_int* ldb, const double* mywork,
                    lapack_int* myldwork );
void LAPACK_ctprfb( char* side, char* trans, char* direct, char* storev,
                    lapack_int* m, lapack_int* n, lapack_int* k, lapack_int* l,
                    const lapack_complex_float* v, lapack_int* ldv,
                    const lapack_complex_float* t, lapack_int* ldt,
                    lapack_complex_float* a, lapack_int* lda,
                    lapack_complex_float* b, lapack_int* ldb,
                    const float* mywork, lapack_int* myldwork );
void LAPACK_ztprfb( char* side, char* trans, char* direct, char* storev,
                    lapack_int* m, lapack_int* n, lapack_int* k, lapack_int* l,
                    const lapack_complex_double* v, lapack_int* ldv,
                    const lapack_complex_double* t, lapack_int* ldt,
                    lapack_complex_double* a, lapack_int* lda,
                    lapack_complex_double* b, lapack_int* ldb,
                    const double* mywork, lapack_int* myldwork );
// LAPACK 3.X.X
void LAPACK_csyr( char* uplo, lapack_int* n, lapack_complex_float* alpha,
                      const lapack_complex_float* x, lapack_int* incx,
                      lapack_complex_float* a, lapack_int* lda );
void LAPACK_zsyr( char* uplo, lapack_int* n, lapack_complex_double* alpha,
                      const lapack_complex_double* x, lapack_int* incx,
                      lapack_complex_double* a, lapack_int* lda );

#ifdef __cplusplus
}
#endif /* __cplusplus */

#endif /* _LAPACKE_H_ */

#endif /* _MKL_LAPACKE_H_ */