File indexing completed on 2025-02-21 10:03:46
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025 #ifndef __GSL_CBLAS_H__
0026 #define __GSL_CBLAS_H__
0027 #include <stddef.h>
0028
0029 #undef __BEGIN_DECLS
0030 #undef __END_DECLS
0031 #ifdef __cplusplus
0032 #define __BEGIN_DECLS extern "C" {
0033 #define __END_DECLS }
0034 #else
0035 #define __BEGIN_DECLS
0036 #define __END_DECLS
0037 #endif
0038
0039 __BEGIN_DECLS
0040
0041
0042
0043
0044 #define CBLAS_INDEX size_t
0045
0046 enum CBLAS_ORDER {CblasRowMajor=101, CblasColMajor=102};
0047 enum CBLAS_TRANSPOSE {CblasNoTrans=111, CblasTrans=112, CblasConjTrans=113};
0048 enum CBLAS_UPLO {CblasUpper=121, CblasLower=122};
0049 enum CBLAS_DIAG {CblasNonUnit=131, CblasUnit=132};
0050 enum CBLAS_SIDE {CblasLeft=141, CblasRight=142};
0051
0052
0053
0054
0055
0056
0057 float cblas_sdsdot(const int N, const float alpha, const float *X,
0058 const int incX, const float *Y, const int incY);
0059 double cblas_dsdot(const int N, const float *X, const int incX, const float *Y,
0060 const int incY);
0061 float cblas_sdot(const int N, const float *X, const int incX,
0062 const float *Y, const int incY);
0063 double cblas_ddot(const int N, const double *X, const int incX,
0064 const double *Y, const int incY);
0065
0066
0067
0068
0069 void cblas_cdotu_sub(const int N, const void *X, const int incX,
0070 const void *Y, const int incY, void *dotu);
0071 void cblas_cdotc_sub(const int N, const void *X, const int incX,
0072 const void *Y, const int incY, void *dotc);
0073
0074 void cblas_zdotu_sub(const int N, const void *X, const int incX,
0075 const void *Y, const int incY, void *dotu);
0076 void cblas_zdotc_sub(const int N, const void *X, const int incX,
0077 const void *Y, const int incY, void *dotc);
0078
0079
0080
0081
0082
0083 float cblas_snrm2(const int N, const float *X, const int incX);
0084 float cblas_sasum(const int N, const float *X, const int incX);
0085
0086 double cblas_dnrm2(const int N, const double *X, const int incX);
0087 double cblas_dasum(const int N, const double *X, const int incX);
0088
0089 float cblas_scnrm2(const int N, const void *X, const int incX);
0090 float cblas_scasum(const int N, const void *X, const int incX);
0091
0092 double cblas_dznrm2(const int N, const void *X, const int incX);
0093 double cblas_dzasum(const int N, const void *X, const int incX);
0094
0095
0096
0097
0098
0099 CBLAS_INDEX cblas_isamax(const int N, const float *X, const int incX);
0100 CBLAS_INDEX cblas_idamax(const int N, const double *X, const int incX);
0101 CBLAS_INDEX cblas_icamax(const int N, const void *X, const int incX);
0102 CBLAS_INDEX cblas_izamax(const int N, const void *X, const int incX);
0103
0104
0105
0106
0107
0108
0109
0110
0111
0112
0113 void cblas_sswap(const int N, float *X, const int incX,
0114 float *Y, const int incY);
0115 void cblas_scopy(const int N, const float *X, const int incX,
0116 float *Y, const int incY);
0117 void cblas_saxpy(const int N, const float alpha, const float *X,
0118 const int incX, float *Y, const int incY);
0119
0120 void cblas_dswap(const int N, double *X, const int incX,
0121 double *Y, const int incY);
0122 void cblas_dcopy(const int N, const double *X, const int incX,
0123 double *Y, const int incY);
0124 void cblas_daxpy(const int N, const double alpha, const double *X,
0125 const int incX, double *Y, const int incY);
0126
0127 void cblas_cswap(const int N, void *X, const int incX,
0128 void *Y, const int incY);
0129 void cblas_ccopy(const int N, const void *X, const int incX,
0130 void *Y, const int incY);
0131 void cblas_caxpy(const int N, const void *alpha, const void *X,
0132 const int incX, void *Y, const int incY);
0133
0134 void cblas_zswap(const int N, void *X, const int incX,
0135 void *Y, const int incY);
0136 void cblas_zcopy(const int N, const void *X, const int incX,
0137 void *Y, const int incY);
0138 void cblas_zaxpy(const int N, const void *alpha, const void *X,
0139 const int incX, void *Y, const int incY);
0140
0141
0142
0143
0144
0145 void cblas_srotg(float *a, float *b, float *c, float *s);
0146 void cblas_srotmg(float *d1, float *d2, float *b1, const float b2, float *P);
0147 void cblas_srot(const int N, float *X, const int incX,
0148 float *Y, const int incY, const float c, const float s);
0149 void cblas_srotm(const int N, float *X, const int incX,
0150 float *Y, const int incY, const float *P);
0151
0152 void cblas_drotg(double *a, double *b, double *c, double *s);
0153 void cblas_drotmg(double *d1, double *d2, double *b1, const double b2, double *P);
0154 void cblas_drot(const int N, double *X, const int incX,
0155 double *Y, const int incY, const double c, const double s);
0156 void cblas_drotm(const int N, double *X, const int incX,
0157 double *Y, const int incY, const double *P);
0158
0159
0160
0161
0162
0163 void cblas_sscal(const int N, const float alpha, float *X, const int incX);
0164 void cblas_dscal(const int N, const double alpha, double *X, const int incX);
0165 void cblas_cscal(const int N, const void *alpha, void *X, const int incX);
0166 void cblas_zscal(const int N, const void *alpha, void *X, const int incX);
0167 void cblas_csscal(const int N, const float alpha, void *X, const int incX);
0168 void cblas_zdscal(const int N, const double alpha, void *X, const int incX);
0169
0170
0171
0172
0173
0174
0175
0176
0177
0178
0179 void cblas_sgemv(const enum CBLAS_ORDER order,
0180 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
0181 const float alpha, const float *A, const int lda,
0182 const float *X, const int incX, const float beta,
0183 float *Y, const int incY);
0184 void cblas_sgbmv(const enum CBLAS_ORDER order,
0185 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
0186 const int KL, const int KU, const float alpha,
0187 const float *A, const int lda, const float *X,
0188 const int incX, const float beta, float *Y, const int incY);
0189 void cblas_strmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0190 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0191 const int N, const float *A, const int lda,
0192 float *X, const int incX);
0193 void cblas_stbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0194 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0195 const int N, const int K, const float *A, const int lda,
0196 float *X, const int incX);
0197 void cblas_stpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0198 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0199 const int N, const float *Ap, float *X, const int incX);
0200 void cblas_strsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0201 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0202 const int N, const float *A, const int lda, float *X,
0203 const int incX);
0204 void cblas_stbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0205 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0206 const int N, const int K, const float *A, const int lda,
0207 float *X, const int incX);
0208 void cblas_stpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0209 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0210 const int N, const float *Ap, float *X, const int incX);
0211
0212 void cblas_dgemv(const enum CBLAS_ORDER order,
0213 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
0214 const double alpha, const double *A, const int lda,
0215 const double *X, const int incX, const double beta,
0216 double *Y, const int incY);
0217 void cblas_dgbmv(const enum CBLAS_ORDER order,
0218 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
0219 const int KL, const int KU, const double alpha,
0220 const double *A, const int lda, const double *X,
0221 const int incX, const double beta, double *Y, const int incY);
0222 void cblas_dtrmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0223 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0224 const int N, const double *A, const int lda,
0225 double *X, const int incX);
0226 void cblas_dtbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0227 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0228 const int N, const int K, const double *A, const int lda,
0229 double *X, const int incX);
0230 void cblas_dtpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0231 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0232 const int N, const double *Ap, double *X, const int incX);
0233 void cblas_dtrsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0234 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0235 const int N, const double *A, const int lda, double *X,
0236 const int incX);
0237 void cblas_dtbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0238 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0239 const int N, const int K, const double *A, const int lda,
0240 double *X, const int incX);
0241 void cblas_dtpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0242 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0243 const int N, const double *Ap, double *X, const int incX);
0244
0245 void cblas_cgemv(const enum CBLAS_ORDER order,
0246 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
0247 const void *alpha, const void *A, const int lda,
0248 const void *X, const int incX, const void *beta,
0249 void *Y, const int incY);
0250 void cblas_cgbmv(const enum CBLAS_ORDER order,
0251 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
0252 const int KL, const int KU, const void *alpha,
0253 const void *A, const int lda, const void *X,
0254 const int incX, const void *beta, void *Y, const int incY);
0255 void cblas_ctrmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0256 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0257 const int N, const void *A, const int lda,
0258 void *X, const int incX);
0259 void cblas_ctbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0260 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0261 const int N, const int K, const void *A, const int lda,
0262 void *X, const int incX);
0263 void cblas_ctpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0264 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0265 const int N, const void *Ap, void *X, const int incX);
0266 void cblas_ctrsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0267 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0268 const int N, const void *A, const int lda, void *X,
0269 const int incX);
0270 void cblas_ctbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0271 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0272 const int N, const int K, const void *A, const int lda,
0273 void *X, const int incX);
0274 void cblas_ctpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0275 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0276 const int N, const void *Ap, void *X, const int incX);
0277
0278 void cblas_zgemv(const enum CBLAS_ORDER order,
0279 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
0280 const void *alpha, const void *A, const int lda,
0281 const void *X, const int incX, const void *beta,
0282 void *Y, const int incY);
0283 void cblas_zgbmv(const enum CBLAS_ORDER order,
0284 const enum CBLAS_TRANSPOSE TransA, const int M, const int N,
0285 const int KL, const int KU, const void *alpha,
0286 const void *A, const int lda, const void *X,
0287 const int incX, const void *beta, void *Y, const int incY);
0288 void cblas_ztrmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0289 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0290 const int N, const void *A, const int lda,
0291 void *X, const int incX);
0292 void cblas_ztbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0293 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0294 const int N, const int K, const void *A, const int lda,
0295 void *X, const int incX);
0296 void cblas_ztpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0297 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0298 const int N, const void *Ap, void *X, const int incX);
0299 void cblas_ztrsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0300 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0301 const int N, const void *A, const int lda, void *X,
0302 const int incX);
0303 void cblas_ztbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0304 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0305 const int N, const int K, const void *A, const int lda,
0306 void *X, const int incX);
0307 void cblas_ztpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0308 const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,
0309 const int N, const void *Ap, void *X, const int incX);
0310
0311
0312
0313
0314
0315 void cblas_ssymv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0316 const int N, const float alpha, const float *A,
0317 const int lda, const float *X, const int incX,
0318 const float beta, float *Y, const int incY);
0319 void cblas_ssbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0320 const int N, const int K, const float alpha, const float *A,
0321 const int lda, const float *X, const int incX,
0322 const float beta, float *Y, const int incY);
0323 void cblas_sspmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0324 const int N, const float alpha, const float *Ap,
0325 const float *X, const int incX,
0326 const float beta, float *Y, const int incY);
0327 void cblas_sger(const enum CBLAS_ORDER order, const int M, const int N,
0328 const float alpha, const float *X, const int incX,
0329 const float *Y, const int incY, float *A, const int lda);
0330 void cblas_ssyr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0331 const int N, const float alpha, const float *X,
0332 const int incX, float *A, const int lda);
0333 void cblas_sspr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0334 const int N, const float alpha, const float *X,
0335 const int incX, float *Ap);
0336 void cblas_ssyr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0337 const int N, const float alpha, const float *X,
0338 const int incX, const float *Y, const int incY, float *A,
0339 const int lda);
0340 void cblas_sspr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0341 const int N, const float alpha, const float *X,
0342 const int incX, const float *Y, const int incY, float *A);
0343
0344 void cblas_dsymv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0345 const int N, const double alpha, const double *A,
0346 const int lda, const double *X, const int incX,
0347 const double beta, double *Y, const int incY);
0348 void cblas_dsbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0349 const int N, const int K, const double alpha, const double *A,
0350 const int lda, const double *X, const int incX,
0351 const double beta, double *Y, const int incY);
0352 void cblas_dspmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0353 const int N, const double alpha, const double *Ap,
0354 const double *X, const int incX,
0355 const double beta, double *Y, const int incY);
0356 void cblas_dger(const enum CBLAS_ORDER order, const int M, const int N,
0357 const double alpha, const double *X, const int incX,
0358 const double *Y, const int incY, double *A, const int lda);
0359 void cblas_dsyr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0360 const int N, const double alpha, const double *X,
0361 const int incX, double *A, const int lda);
0362 void cblas_dspr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0363 const int N, const double alpha, const double *X,
0364 const int incX, double *Ap);
0365 void cblas_dsyr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0366 const int N, const double alpha, const double *X,
0367 const int incX, const double *Y, const int incY, double *A,
0368 const int lda);
0369 void cblas_dspr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0370 const int N, const double alpha, const double *X,
0371 const int incX, const double *Y, const int incY, double *A);
0372
0373
0374
0375
0376
0377 void cblas_chemv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0378 const int N, const void *alpha, const void *A,
0379 const int lda, const void *X, const int incX,
0380 const void *beta, void *Y, const int incY);
0381 void cblas_chbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0382 const int N, const int K, const void *alpha, const void *A,
0383 const int lda, const void *X, const int incX,
0384 const void *beta, void *Y, const int incY);
0385 void cblas_chpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0386 const int N, const void *alpha, const void *Ap,
0387 const void *X, const int incX,
0388 const void *beta, void *Y, const int incY);
0389 void cblas_cgeru(const enum CBLAS_ORDER order, const int M, const int N,
0390 const void *alpha, const void *X, const int incX,
0391 const void *Y, const int incY, void *A, const int lda);
0392 void cblas_cgerc(const enum CBLAS_ORDER order, const int M, const int N,
0393 const void *alpha, const void *X, const int incX,
0394 const void *Y, const int incY, void *A, const int lda);
0395 void cblas_cher(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0396 const int N, const float alpha, const void *X, const int incX,
0397 void *A, const int lda);
0398 void cblas_chpr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0399 const int N, const float alpha, const void *X,
0400 const int incX, void *A);
0401 void cblas_cher2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N,
0402 const void *alpha, const void *X, const int incX,
0403 const void *Y, const int incY, void *A, const int lda);
0404 void cblas_chpr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N,
0405 const void *alpha, const void *X, const int incX,
0406 const void *Y, const int incY, void *Ap);
0407
0408 void cblas_zhemv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0409 const int N, const void *alpha, const void *A,
0410 const int lda, const void *X, const int incX,
0411 const void *beta, void *Y, const int incY);
0412 void cblas_zhbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0413 const int N, const int K, const void *alpha, const void *A,
0414 const int lda, const void *X, const int incX,
0415 const void *beta, void *Y, const int incY);
0416 void cblas_zhpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0417 const int N, const void *alpha, const void *Ap,
0418 const void *X, const int incX,
0419 const void *beta, void *Y, const int incY);
0420 void cblas_zgeru(const enum CBLAS_ORDER order, const int M, const int N,
0421 const void *alpha, const void *X, const int incX,
0422 const void *Y, const int incY, void *A, const int lda);
0423 void cblas_zgerc(const enum CBLAS_ORDER order, const int M, const int N,
0424 const void *alpha, const void *X, const int incX,
0425 const void *Y, const int incY, void *A, const int lda);
0426 void cblas_zher(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0427 const int N, const double alpha, const void *X, const int incX,
0428 void *A, const int lda);
0429 void cblas_zhpr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,
0430 const int N, const double alpha, const void *X,
0431 const int incX, void *A);
0432 void cblas_zher2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N,
0433 const void *alpha, const void *X, const int incX,
0434 const void *Y, const int incY, void *A, const int lda);
0435 void cblas_zhpr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N,
0436 const void *alpha, const void *X, const int incX,
0437 const void *Y, const int incY, void *Ap);
0438
0439
0440
0441
0442
0443
0444
0445
0446
0447
0448 void cblas_sgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,
0449 const enum CBLAS_TRANSPOSE TransB, const int M, const int N,
0450 const int K, const float alpha, const float *A,
0451 const int lda, const float *B, const int ldb,
0452 const float beta, float *C, const int ldc);
0453 void cblas_ssymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
0454 const enum CBLAS_UPLO Uplo, const int M, const int N,
0455 const float alpha, const float *A, const int lda,
0456 const float *B, const int ldb, const float beta,
0457 float *C, const int ldc);
0458 void cblas_ssyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
0459 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
0460 const float alpha, const float *A, const int lda,
0461 const float beta, float *C, const int ldc);
0462 void cblas_ssyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
0463 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
0464 const float alpha, const float *A, const int lda,
0465 const float *B, const int ldb, const float beta,
0466 float *C, const int ldc);
0467 void cblas_strmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
0468 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
0469 const enum CBLAS_DIAG Diag, const int M, const int N,
0470 const float alpha, const float *A, const int lda,
0471 float *B, const int ldb);
0472 void cblas_strsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
0473 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
0474 const enum CBLAS_DIAG Diag, const int M, const int N,
0475 const float alpha, const float *A, const int lda,
0476 float *B, const int ldb);
0477
0478 void cblas_dgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,
0479 const enum CBLAS_TRANSPOSE TransB, const int M, const int N,
0480 const int K, const double alpha, const double *A,
0481 const int lda, const double *B, const int ldb,
0482 const double beta, double *C, const int ldc);
0483 void cblas_dsymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
0484 const enum CBLAS_UPLO Uplo, const int M, const int N,
0485 const double alpha, const double *A, const int lda,
0486 const double *B, const int ldb, const double beta,
0487 double *C, const int ldc);
0488 void cblas_dsyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
0489 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
0490 const double alpha, const double *A, const int lda,
0491 const double beta, double *C, const int ldc);
0492 void cblas_dsyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
0493 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
0494 const double alpha, const double *A, const int lda,
0495 const double *B, const int ldb, const double beta,
0496 double *C, const int ldc);
0497 void cblas_dtrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
0498 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
0499 const enum CBLAS_DIAG Diag, const int M, const int N,
0500 const double alpha, const double *A, const int lda,
0501 double *B, const int ldb);
0502 void cblas_dtrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
0503 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
0504 const enum CBLAS_DIAG Diag, const int M, const int N,
0505 const double alpha, const double *A, const int lda,
0506 double *B, const int ldb);
0507
0508 void cblas_cgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,
0509 const enum CBLAS_TRANSPOSE TransB, const int M, const int N,
0510 const int K, const void *alpha, const void *A,
0511 const int lda, const void *B, const int ldb,
0512 const void *beta, void *C, const int ldc);
0513 void cblas_csymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
0514 const enum CBLAS_UPLO Uplo, const int M, const int N,
0515 const void *alpha, const void *A, const int lda,
0516 const void *B, const int ldb, const void *beta,
0517 void *C, const int ldc);
0518 void cblas_csyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
0519 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
0520 const void *alpha, const void *A, const int lda,
0521 const void *beta, void *C, const int ldc);
0522 void cblas_csyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
0523 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
0524 const void *alpha, const void *A, const int lda,
0525 const void *B, const int ldb, const void *beta,
0526 void *C, const int ldc);
0527 void cblas_ctrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
0528 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
0529 const enum CBLAS_DIAG Diag, const int M, const int N,
0530 const void *alpha, const void *A, const int lda,
0531 void *B, const int ldb);
0532 void cblas_ctrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
0533 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
0534 const enum CBLAS_DIAG Diag, const int M, const int N,
0535 const void *alpha, const void *A, const int lda,
0536 void *B, const int ldb);
0537
0538 void cblas_zgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,
0539 const enum CBLAS_TRANSPOSE TransB, const int M, const int N,
0540 const int K, const void *alpha, const void *A,
0541 const int lda, const void *B, const int ldb,
0542 const void *beta, void *C, const int ldc);
0543 void cblas_zsymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
0544 const enum CBLAS_UPLO Uplo, const int M, const int N,
0545 const void *alpha, const void *A, const int lda,
0546 const void *B, const int ldb, const void *beta,
0547 void *C, const int ldc);
0548 void cblas_zsyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
0549 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
0550 const void *alpha, const void *A, const int lda,
0551 const void *beta, void *C, const int ldc);
0552 void cblas_zsyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
0553 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
0554 const void *alpha, const void *A, const int lda,
0555 const void *B, const int ldb, const void *beta,
0556 void *C, const int ldc);
0557 void cblas_ztrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
0558 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
0559 const enum CBLAS_DIAG Diag, const int M, const int N,
0560 const void *alpha, const void *A, const int lda,
0561 void *B, const int ldb);
0562 void cblas_ztrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
0563 const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,
0564 const enum CBLAS_DIAG Diag, const int M, const int N,
0565 const void *alpha, const void *A, const int lda,
0566 void *B, const int ldb);
0567
0568
0569
0570
0571
0572 void cblas_chemm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
0573 const enum CBLAS_UPLO Uplo, const int M, const int N,
0574 const void *alpha, const void *A, const int lda,
0575 const void *B, const int ldb, const void *beta,
0576 void *C, const int ldc);
0577 void cblas_cherk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
0578 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
0579 const float alpha, const void *A, const int lda,
0580 const float beta, void *C, const int ldc);
0581 void cblas_cher2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
0582 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
0583 const void *alpha, const void *A, const int lda,
0584 const void *B, const int ldb, const float beta,
0585 void *C, const int ldc);
0586
0587 void cblas_zhemm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,
0588 const enum CBLAS_UPLO Uplo, const int M, const int N,
0589 const void *alpha, const void *A, const int lda,
0590 const void *B, const int ldb, const void *beta,
0591 void *C, const int ldc);
0592 void cblas_zherk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
0593 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
0594 const double alpha, const void *A, const int lda,
0595 const double beta, void *C, const int ldc);
0596 void cblas_zher2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,
0597 const enum CBLAS_TRANSPOSE Trans, const int N, const int K,
0598 const void *alpha, const void *A, const int lda,
0599 const void *B, const int ldb, const double beta,
0600 void *C, const int ldc);
0601
0602 void cblas_xerbla(int p, const char *rout, const char *form, ...);
0603
0604 __END_DECLS
0605
0606 #endif