00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifdef NONCBLAS
00019 #ifndef NONCBLAS_H
00020
00021 #ifndef CBLAS_ENUM_DEFINED_H
00022 #define CBLAS_ENUM_DEFINED_H
00023 enum CBLAS_ORDER {CblasRowMajor=101, CblasColMajor=102 };
00024 enum CBLAS_TRANSPOSE {CblasNoTrans=111, CblasTrans=112, CblasConjTrans=113,
00025 AtlasConj=114};
00026 enum CBLAS_UPLO {CblasUpper=121, CblasLower=122};
00027 enum CBLAS_DIAG {CblasNonUnit=131, CblasUnit=132};
00028 enum CBLAS_SIDE {CblasLeft=141, CblasRight=142};
00029 #endif
00030
00031 #ifndef CBLAS_ENUM_ONLY
00032 #define NONCBLAS_H
00033 #define CBLAS_INDEX int
00034
00035 int cblas_errprn(int ierr, int info, char *form, ...);
00036 void ATL_xerbla(int p, char *rout, char *form, ...);
00037
00038
00039
00040
00041
00042 float cblas_sdsdot(const int N, const float alpha, const float *X,
00043 const int incX, const float *Y, const int incY);
00044 double cblas_dsdot(const int N, const float *X, const int incX, const float *Y,
00045 const int incY);
00046 float cblas_sdot(const int N, const float *X, const int incX,
00047 const float *Y, const int incY);
00048 double cblas_ddot(const int N, const double *X, const int incX,
00049 const double *Y, const int incY);
00050
00051
00052
00053 void cblas_cdotu_sub(const int N, const void *X, const int incX,
00054 const void *Y, const int incY, void *dotu);
00055 void cblas_cdotc_sub(const int N, const void *X, const int incX,
00056 const void *Y, const int incY, void *dotc);
00057
00058 void cblas_zdotu_sub(const int N, const void *X, const int incX,
00059 const void *Y, const int incY, void *dotu);
00060 void cblas_zdotc_sub(const int N, const void *X, const int incX,
00061 const void *Y, const int incY, void *dotc);
00062
00063
00064
00065
00066
00067 float cblas_snrm2(const int N, const float *X, const int incX);
00068 float cblas_sasum(const int N, const float *X, const int incX);
00069
00070 double cblas_dnrm2(const int N, const double *X, const int incX);
00071 double cblas_dasum(const int N, const double *X, const int incX);
00072
00073 float cblas_scnrm2(const int N, const void *X, const int incX);
00074 float cblas_scasum(const int N, const void *X, const int incX);
00075
00076 double cblas_dznrm2(const int N, const void *X, const int incX);
00077 double cblas_dzasum(const int N, const void *X, const int incX);
00078
00079
00080
00081
00082
00083 CBLAS_INDEX cblas_isamax(const int N, const float *X, const int incX);
00084 CBLAS_INDEX cblas_idamax(const int N, const double *X, const int incX);
00085 CBLAS_INDEX cblas_icamax(const int N, const void *X, const int incX);
00086 CBLAS_INDEX cblas_izamax(const int N, const void *X, const int incX);
00087
00088
00089
00090
00091
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102 void cblas_sswap(const int N, float *X, const int incX,
00103 float *Y, const int incY);
00104 void cblas_scopy(const int N, const float *X, const int incX,
00105 float *Y, const int incY);
00106 void cblas_saxpy(const int N, const float alpha, const float *X,
00107 const int incX, float *Y, const int incY);
00108 void catlas_saxpby(const int N, const float alpha, const float *X,
00109 const int incX, const float beta, float *Y, const int incY);
00110 void catlas_sset
00111 (const int N, const float alpha, float *X, const int incX);
00112
00113 void cblas_dswap(const int N, double *X, const int incX,
00114 double *Y, const int incY);
00115 void cblas_dcopy(const int N, const double *X, const int incX,
00116 double *Y, const int incY);
00117 void cblas_daxpy(const int N, const double alpha, const double *X,
00118 const int incX, double *Y, const int incY);
00119 void catlas_daxpby(const int N, const double alpha, const double *X,
00120 const int incX, const double beta, double *Y, const int incY);
00121 void catlas_dset
00122 (const int N, const double alpha, double *X, const int incX);
00123
00124 void cblas_cswap(const int N, void *X, const int incX,
00125 void *Y, const int incY);
00126 void cblas_ccopy(const int N, const void *X, const int incX,
00127 void *Y, const int incY);
00128 void cblas_caxpy(const int N, const void *alpha, const void *X,
00129 const int incX, void *Y, const int incY);
00130 void catlas_caxpby(const int N, const void *alpha, const void *X,
00131 const int incX, const void *beta, void *Y, const int incY);
00132 void catlas_cset
00133 (const int N, const void *alpha, void *X, const int incX);
00134
00135 void cblas_zswap(const int N, void *X, const int incX,
00136 void *Y, const int incY);
00137 void cblas_zcopy(const int N, const void *X, const int incX,
00138 void *Y, const int incY);
00139 void cblas_zaxpy(const int N, const void *alpha, const void *X,
00140 const int incX, void *Y, const int incY);
00141 void catlas_zaxpby(const int N, const void *alpha, const void *X,
00142 const int incX, const void *beta, void *Y, const int incY);
00143 void catlas_zset
00144 (const int N, const void *alpha, void *X, const int incX);
00145
00146
00147
00148
00149
00150 void cblas_srotg(float *a, float *b, float *c, float *s);
00151 void cblas_srotmg(float *d1, float *d2, float *b1, const float b2, float *P);
00152 void cblas_srot(const int N, float *X, const int incX,
00153 float *Y, const int incY, const float c, const float s);
00154 void cblas_srotm(const int N, float *X, const int incX,
00155 float *Y, const int incY, const float *P);
00156
00157 void cblas_drotg(double *a, double *b, double *c, double *s);
00158 void cblas_drotmg(double *d1, double *d2, double *b1, const double b2, double *P);
00159 void cblas_drot(const int N, double *X, const int incX,
00160 double *Y, const int incY, const double c, const double s);
00161 void cblas_drotm(const int N, double *X, const int incX,
00162 double *Y, const int incY, const double *P);
00163
00164
00165
00166
00167
00168 void cblas_sscal(const int N, const float alpha, float *X, const int incX);
00169 void cblas_dscal(const int N, const double alpha, double *X, const int incX);
00170 void cblas_cscal(const int N, const void *alpha, void *X, const int incX);
00171 void cblas_zscal(const int N, const void *alpha, void *X, const int incX);
00172 void cblas_csscal(const int N, const float alpha, void *X, const int incX);
00173 void cblas_zdscal(const int N, const double alpha, void *X, const int incX);
00174
00175
00176
00177
00178 void cblas_crotg(void *a, void *b, void *c, void *s);
00179 void cblas_zrotg(void *a, void *b, void *c, void *s);
00180 void cblas_csrot(const int N, void *X, const int incX, void *Y, const int incY,
00181 const float c, const float s);
00182 void cblas_zdrot(const int N, void *X, const int incX, void *Y, const int incY,
00183 const double c, const double s);
00184
00185
00186
00187
00188
00189
00190
00191
00192
00193
00194 void cblas_sgemv(const enum CBLAS_ORDER Order,
00195 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
00196 const float alpha, const float *A, const int lda,
00197 const float *X, const int incX, const float beta,
00198 float *Y, const int incY);
00199 void cblas_sgbmv(const enum CBLAS_ORDER Order,
00200 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
00201 const int KL, const int KU, const float alpha,
00202 const float *A, const int lda, const float *X,
00203 const int incX, const float beta, float *Y, const int incY);
00204 void cblas_strmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00205 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00206 const int N, const float *A, const int lda,
00207 float *X, const int incX);
00208 void cblas_stbmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00209 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00210 const int N, const int K, const float *A, const int lda,
00211 float *X, const int incX);
00212 void cblas_stpmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00213 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00214 const int N, const float *Ap, float *X, const int incX);
00215 void cblas_strsv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00216 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00217 const int N, const float *A, const int lda, float *X,
00218 const int incX);
00219 void cblas_stbsv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00220 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00221 const int N, const int K, const float *A, const int lda,
00222 float *X, const int incX);
00223 void cblas_stpsv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00224 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00225 const int N, const float *Ap, float *X, const int incX);
00226
00227 void cblas_dgemv(const enum CBLAS_ORDER Order,
00228 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
00229 const double alpha, const double *A, const int lda,
00230 const double *X, const int incX, const double beta,
00231 double *Y, const int incY);
00232 void cblas_dgbmv(const enum CBLAS_ORDER Order,
00233 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
00234 const int KL, const int KU, const double alpha,
00235 const double *A, const int lda, const double *X,
00236 const int incX, const double beta, double *Y, const int incY);
00237 void cblas_dtrmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00238 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00239 const int N, const double *A, const int lda,
00240 double *X, const int incX);
00241 void cblas_dtbmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00242 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00243 const int N, const int K, const double *A, const int lda,
00244 double *X, const int incX);
00245 void cblas_dtpmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00246 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00247 const int N, const double *Ap, double *X, const int incX);
00248 void cblas_dtrsv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00249 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00250 const int N, const double *A, const int lda, double *X,
00251 const int incX);
00252 void cblas_dtbsv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00253 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00254 const int N, const int K, const double *A, const int lda,
00255 double *X, const int incX);
00256 void cblas_dtpsv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00257 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00258 const int N, const double *Ap, double *X, const int incX);
00259
00260 void cblas_cgemv(const enum CBLAS_ORDER Order,
00261 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
00262 const void *alpha, const void *A, const int lda,
00263 const void *X, const int incX, const void *beta,
00264 void *Y, const int incY);
00265 void cblas_cgbmv(const enum CBLAS_ORDER Order,
00266 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
00267 const int KL, const int KU, const void *alpha,
00268 const void *A, const int lda, const void *X,
00269 const int incX, const void *beta, void *Y, const int incY);
00270 void cblas_ctrmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00271 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00272 const int N, const void *A, const int lda,
00273 void *X, const int incX);
00274 void cblas_ctbmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00275 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00276 const int N, const int K, const void *A, const int lda,
00277 void *X, const int incX);
00278 void cblas_ctpmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00279 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00280 const int N, const void *Ap, void *X, const int incX);
00281 void cblas_ctrsv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00282 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00283 const int N, const void *A, const int lda, void *X,
00284 const int incX);
00285 void cblas_ctbsv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00286 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00287 const int N, const int K, const void *A, const int lda,
00288 void *X, const int incX);
00289 void cblas_ctpsv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00290 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00291 const int N, const void *Ap, void *X, const int incX);
00292
00293 void cblas_zgemv(const enum CBLAS_ORDER Order,
00294 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
00295 const void *alpha, const void *A, const int lda,
00296 const void *X, const int incX, const void *beta,
00297 void *Y, const int incY);
00298 void cblas_zgbmv(const enum CBLAS_ORDER Order,
00299 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
00300 const int KL, const int KU, const void *alpha,
00301 const void *A, const int lda, const void *X,
00302 const int incX, const void *beta, void *Y, const int incY);
00303 void cblas_ztrmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00304 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00305 const int N, const void *A, const int lda,
00306 void *X, const int incX);
00307 void cblas_ztbmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00308 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00309 const int N, const int K, const void *A, const int lda,
00310 void *X, const int incX);
00311 void cblas_ztpmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00312 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00313 const int N, const void *Ap, void *X, const int incX);
00314 void cblas_ztrsv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00315 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00316 const int N, const void *A, const int lda, void *X,
00317 const int incX);
00318 void cblas_ztbsv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00319 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00320 const int N, const int K, const void *A, const int lda,
00321 void *X, const int incX);
00322 void cblas_ztpsv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00323 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
00324 const int N, const void *Ap, void *X, const int incX);
00325
00326
00327
00328
00329
00330 void cblas_ssymv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00331 const int N, const float alpha, const float *A,
00332 const int lda, const float *X, const int incX,
00333 const float beta, float *Y, const int incY);
00334 void cblas_ssbmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00335 const int N, const int K, const float alpha, const float *A,
00336 const int lda, const float *X, const int incX,
00337 const float beta, float *Y, const int incY);
00338 void cblas_sspmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00339 const int N, const float alpha, const float *Ap,
00340 const float *X, const int incX,
00341 const float beta, float *Y, const int incY);
00342 void cblas_sger(const enum CBLAS_ORDER Order, const int M, const int N,
00343 const float alpha, const float *X, const int incX,
00344 const float *Y, const int incY, float *A, const int lda);
00345 void cblas_ssyr(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00346 const int N, const float alpha, const float *X,
00347 const int incX, float *A, const int lda);
00348 void cblas_sspr(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00349 const int N, const float alpha, const float *X,
00350 const int incX, float *Ap);
00351 void cblas_ssyr2(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00352 const int N, const float alpha, const float *X,
00353 const int incX, const float *Y, const int incY, float *A,
00354 const int lda);
00355 void cblas_sspr2(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00356 const int N, const float alpha, const float *X,
00357 const int incX, const float *Y, const int incY, float *A);
00358
00359 void cblas_dsymv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00360 const int N, const double alpha, const double *A,
00361 const int lda, const double *X, const int incX,
00362 const double beta, double *Y, const int incY);
00363 void cblas_dsbmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00364 const int N, const int K, const double alpha, const double *A,
00365 const int lda, const double *X, const int incX,
00366 const double beta, double *Y, const int incY);
00367 void cblas_dspmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00368 const int N, const double alpha, const double *Ap,
00369 const double *X, const int incX,
00370 const double beta, double *Y, const int incY);
00371 void cblas_dger(const enum CBLAS_ORDER Order, const int M, const int N,
00372 const double alpha, const double *X, const int incX,
00373 const double *Y, const int incY, double *A, const int lda);
00374 void cblas_dsyr(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00375 const int N, const double alpha, const double *X,
00376 const int incX, double *A, const int lda);
00377 void cblas_dspr(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00378 const int N, const double alpha, const double *X,
00379 const int incX, double *Ap);
00380 void cblas_dsyr2(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00381 const int N, const double alpha, const double *X,
00382 const int incX, const double *Y, const int incY, double *A,
00383 const int lda);
00384 void cblas_dspr2(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00385 const int N, const double alpha, const double *X,
00386 const int incX, const double *Y, const int incY, double *A);
00387
00388
00389
00390
00391
00392 void cblas_chemv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00393 const int N, const void *alpha, const void *A,
00394 const int lda, const void *X, const int incX,
00395 const void *beta, void *Y, const int incY);
00396 void cblas_chbmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00397 const int N, const int K, const void *alpha, const void *A,
00398 const int lda, const void *X, const int incX,
00399 const void *beta, void *Y, const int incY);
00400 void cblas_chpmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00401 const int N, const void *alpha, const void *Ap,
00402 const void *X, const int incX,
00403 const void *beta, void *Y, const int incY);
00404 void cblas_cgeru(const enum CBLAS_ORDER Order, const int M, const int N,
00405 const void *alpha, const void *X, const int incX,
00406 const void *Y, const int incY, void *A, const int lda);
00407 void cblas_cgerc(const enum CBLAS_ORDER Order, const int M, const int N,
00408 const void *alpha, const void *X, const int incX,
00409 const void *Y, const int incY, void *A, const int lda);
00410 void cblas_cher(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00411 const int N, const float alpha, const void *X, const int incX,
00412 void *A, const int lda);
00413 void cblas_chpr(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00414 const int N, const float alpha, const void *X,
00415 const int incX, void *A);
00416 void cblas_cher2(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, const int N,
00417 const void *alpha, const void *X, const int incX,
00418 const void *Y, const int incY, void *A, const int lda);
00419 void cblas_chpr2(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, const int N,
00420 const void *alpha, const void *X, const int incX,
00421 const void *Y, const int incY, void *Ap);
00422
00423 void cblas_zhemv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00424 const int N, const void *alpha, const void *A,
00425 const int lda, const void *X, const int incX,
00426 const void *beta, void *Y, const int incY);
00427 void cblas_zhbmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00428 const int N, const int K, const void *alpha, const void *A,
00429 const int lda, const void *X, const int incX,
00430 const void *beta, void *Y, const int incY);
00431 void cblas_zhpmv(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00432 const int N, const void *alpha, const void *Ap,
00433 const void *X, const int incX,
00434 const void *beta, void *Y, const int incY);
00435 void cblas_zgeru(const enum CBLAS_ORDER Order, const int M, const int N,
00436 const void *alpha, const void *X, const int incX,
00437 const void *Y, const int incY, void *A, const int lda);
00438 void cblas_zgerc(const enum CBLAS_ORDER Order, const int M, const int N,
00439 const void *alpha, const void *X, const int incX,
00440 const void *Y, const int incY, void *A, const int lda);
00441 void cblas_zher(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00442 const int N, const double alpha, const void *X, const int incX,
00443 void *A, const int lda);
00444 void cblas_zhpr(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00445 const int N, const double alpha, const void *X,
00446 const int incX, void *A);
00447 void cblas_zher2(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, const int N,
00448 const void *alpha, const void *X, const int incX,
00449 const void *Y, const int incY, void *A, const int lda);
00450 void cblas_zhpr2(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo, const int N,
00451 const void *alpha, const void *X, const int incX,
00452 const void *Y, const int incY, void *Ap);
00453
00454
00455
00456
00457
00458
00459
00460
00461
00462
00463 void cblas_sgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,
00464 const enum CBLAS_TRANSPOSE TransB, const int M, const int N,
00465 const int K, const float alpha, const float *A,
00466 const int lda, const float *B, const int ldb,
00467 const float beta, float *C, const int ldc);
00468 void cblas_ssymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
00469 const enum CBLAS_UPLO Uplo, const int M, const int N,
00470 const float alpha, const float *A, const int lda,
00471 const float *B, const int ldb, const float beta,
00472 float *C, const int ldc);
00473 void cblas_ssyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00474 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
00475 const float alpha, const float *A, const int lda,
00476 const float beta, float *C, const int ldc);
00477 void cblas_ssyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00478 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
00479 const float alpha, const float *A, const int lda,
00480 const float *B, const int ldb, const float beta,
00481 float *C, const int ldc);
00482 void cblas_strmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
00483 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
00484 const enum CBLAS_DIAG Diag, const int M, const int N,
00485 const float alpha, const float *A, const int lda,
00486 float *B, const int ldb);
00487 void cblas_strsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
00488 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
00489 const enum CBLAS_DIAG Diag, const int M, const int N,
00490 const float alpha, const float *A, const int lda,
00491 float *B, const int ldb);
00492
00493 void cblas_dgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,
00494 const enum CBLAS_TRANSPOSE TransB, const int M, const int N,
00495 const int K, const double alpha, const double *A,
00496 const int lda, const double *B, const int ldb,
00497 const double beta, double *C, const int ldc);
00498 void cblas_dsymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
00499 const enum CBLAS_UPLO Uplo, const int M, const int N,
00500 const double alpha, const double *A, const int lda,
00501 const double *B, const int ldb, const double beta,
00502 double *C, const int ldc);
00503 void cblas_dsyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00504 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
00505 const double alpha, const double *A, const int lda,
00506 const double beta, double *C, const int ldc);
00507 void cblas_dsyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00508 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
00509 const double alpha, const double *A, const int lda,
00510 const double *B, const int ldb, const double beta,
00511 double *C, const int ldc);
00512 void cblas_dtrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
00513 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
00514 const enum CBLAS_DIAG Diag, const int M, const int N,
00515 const double alpha, const double *A, const int lda,
00516 double *B, const int ldb);
00517 void cblas_dtrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
00518 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
00519 const enum CBLAS_DIAG Diag, const int M, const int N,
00520 const double alpha, const double *A, const int lda,
00521 double *B, const int ldb);
00522
00523 void cblas_cgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,
00524 const enum CBLAS_TRANSPOSE TransB, const int M, const int N,
00525 const int K, const void *alpha, const void *A,
00526 const int lda, const void *B, const int ldb,
00527 const void *beta, void *C, const int ldc);
00528 void cblas_csymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
00529 const enum CBLAS_UPLO Uplo, const int M, const int N,
00530 const void *alpha, const void *A, const int lda,
00531 const void *B, const int ldb, const void *beta,
00532 void *C, const int ldc);
00533 void cblas_csyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00534 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
00535 const void *alpha, const void *A, const int lda,
00536 const void *beta, void *C, const int ldc);
00537 void cblas_csyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00538 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
00539 const void *alpha, const void *A, const int lda,
00540 const void *B, const int ldb, const void *beta,
00541 void *C, const int ldc);
00542 void cblas_ctrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
00543 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
00544 const enum CBLAS_DIAG Diag, const int M, const int N,
00545 const void *alpha, const void *A, const int lda,
00546 void *B, const int ldb);
00547 void cblas_ctrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
00548 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
00549 const enum CBLAS_DIAG Diag, const int M, const int N,
00550 const void *alpha, const void *A, const int lda,
00551 void *B, const int ldb);
00552
00553 void cblas_zgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,
00554 const enum CBLAS_TRANSPOSE TransB, const int M, const int N,
00555 const int K, const void *alpha, const void *A,
00556 const int lda, const void *B, const int ldb,
00557 const void *beta, void *C, const int ldc);
00558 void cblas_zsymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
00559 const enum CBLAS_UPLO Uplo, const int M, const int N,
00560 const void *alpha, const void *A, const int lda,
00561 const void *B, const int ldb, const void *beta,
00562 void *C, const int ldc);
00563 void cblas_zsyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00564 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
00565 const void *alpha, const void *A, const int lda,
00566 const void *beta, void *C, const int ldc);
00567 void cblas_zsyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00568 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
00569 const void *alpha, const void *A, const int lda,
00570 const void *B, const int ldb, const void *beta,
00571 void *C, const int ldc);
00572 void cblas_ztrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
00573 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
00574 const enum CBLAS_DIAG Diag, const int M, const int N,
00575 const void *alpha, const void *A, const int lda,
00576 void *B, const int ldb);
00577 void cblas_ztrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
00578 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
00579 const enum CBLAS_DIAG Diag, const int M, const int N,
00580 const void *alpha, const void *A, const int lda,
00581 void *B, const int ldb);
00582
00583
00584
00585
00586
00587 void cblas_chemm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
00588 const enum CBLAS_UPLO Uplo, const int M, const int N,
00589 const void *alpha, const void *A, const int lda,
00590 const void *B, const int ldb, const void *beta,
00591 void *C, const int ldc);
00592 void cblas_cherk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00593 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
00594 const float alpha, const void *A, const int lda,
00595 const float beta, void *C, const int ldc);
00596 void cblas_cher2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00597 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
00598 const void *alpha, const void *A, const int lda,
00599 const void *B, const int ldb, const float beta,
00600 void *C, const int ldc);
00601 void cblas_zhemm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
00602 const enum CBLAS_UPLO Uplo, const int M, const int N,
00603 const void *alpha, const void *A, const int lda,
00604 const void *B, const int ldb, const void *beta,
00605 void *C, const int ldc);
00606 void cblas_zherk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00607 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
00608 const double alpha, const void *A, const int lda,
00609 const double beta, void *C, const int ldc);
00610 void cblas_zher2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
00611 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
00612 const void *alpha, const void *A, const int lda,
00613 const void *B, const int ldb, const double beta,
00614 void *C, const int ldc);
00615
00616 int cblas_errprn(int ierr, int info, char *form, ...);
00617
00618 #endif
00619 #endif
00620
00621
00622
00623
00624
00625
00626
00627
00628
00629
00630
00631
00632
00633
00634
00635
00636
00637
00638
00639
00640
00641
00642
00643
00644
00645
00646
00647
00648
00649
00650
00651 #ifndef ATLAS_ENUM_H
00652 #define ATLAS_ENUM_H
00653
00654
00655 #define ATLAS_ORDER CBLAS_ORDER
00656 #define AtlasRowMajor CblasRowMajor
00657 #define AtlasColMajor CblasColMajor
00658 #define ATLAS_TRANS CBLAS_TRANSPOSE
00659 #define AtlasNoTrans CblasNoTrans
00660 #define AtlasTrans CblasTrans
00661 #define AtlasConjTrans CblasConjTrans
00662 #define ATLAS_UPLO CBLAS_UPLO
00663 #define AtlasUpper CblasUpper
00664 #define AtlasLower CblasLower
00665 #define ATLAS_DIAG CBLAS_DIAG
00666 #define AtlasNonUnit CblasNonUnit
00667 #define AtlasUnit CblasUnit
00668 #define ATLAS_SIDE CBLAS_SIDE
00669 #define AtlasLeft CblasLeft
00670 #define AtlasRight CblasRight
00671
00672 #endif
00673
00674 #endif
00675
00676 #ifdef NONCLAPACK
00677 #ifndef NONCLAPACK_H
00678 #define NONCLAPACK_H
00679
00680 #ifndef NONCBLAS
00681 #include <cblas.h>
00682 #endif
00683
00684
00685 int clapack_dgesv(const enum CBLAS_ORDER Order, const int N, const int NRHS,
00686 double *A, const int lda, int *ipiv,
00687 double *B, const int ldb);
00688 #endif
00689 #endif