LAPACK  3.6.1
LAPACK: Linear Algebra PACKage
cblas.h
Go to the documentation of this file.
1 #ifndef CBLAS_H
2 #define CBLAS_H
3 #include <stddef.h>
4 
5 
6 #ifdef __cplusplus
7 extern "C" { /* Assume C declarations for C++ */
8 #endif /* __cplusplus */
9 
10 /*
11  * Enumerated and derived types
12  */
13 #ifdef WeirdNEC
14  #define CBLAS_INDEX long
15 #else
16  #define CBLAS_INDEX int
17 #endif
18 
19 typedef enum {CblasRowMajor=101, CblasColMajor=102} CBLAS_LAYOUT;
21 typedef enum {CblasUpper=121, CblasLower=122} CBLAS_UPLO;
22 typedef enum {CblasNonUnit=131, CblasUnit=132} CBLAS_DIAG;
23 typedef enum {CblasLeft=141, CblasRight=142} CBLAS_SIDE;
24 
25 typedef CBLAS_LAYOUT CBLAS_ORDER; /* this for backward compatibility with CBLAS_ORDER */
26 
27 #include "cblas_mangling.h"
28 
29 /*
30  * ===========================================================================
31  * Prototypes for level 1 BLAS functions (complex are recast as routines)
32  * ===========================================================================
33  */
34 
35 double cblas_dcabs1(const void *z);
36 float cblas_scabs1(const void *c);
37 
38 float cblas_sdsdot(const int N, const float alpha, const float *X,
39  const int incX, const float *Y, const int incY);
40 double cblas_dsdot(const int N, const float *X, const int incX, const float *Y,
41  const int incY);
42 float cblas_sdot(const int N, const float *X, const int incX,
43  const float *Y, const int incY);
44 double cblas_ddot(const int N, const double *X, const int incX,
45  const double *Y, const int incY);
46 
47 /*
48  * Functions having prefixes Z and C only
49  */
50 void cblas_cdotu_sub(const int N, const void *X, const int incX,
51  const void *Y, const int incY, void *dotu);
52 void cblas_cdotc_sub(const int N, const void *X, const int incX,
53  const void *Y, const int incY, void *dotc);
54 
55 void cblas_zdotu_sub(const int N, const void *X, const int incX,
56  const void *Y, const int incY, void *dotu);
57 void cblas_zdotc_sub(const int N, const void *X, const int incX,
58  const void *Y, const int incY, void *dotc);
59 
60 
61 /*
62  * Functions having prefixes S D SC DZ
63  */
64 float cblas_snrm2(const int N, const float *X, const int incX);
65 float cblas_sasum(const int N, const float *X, const int incX);
66 
67 double cblas_dnrm2(const int N, const double *X, const int incX);
68 double cblas_dasum(const int N, const double *X, const int incX);
69 
70 float cblas_scnrm2(const int N, const void *X, const int incX);
71 float cblas_scasum(const int N, const void *X, const int incX);
72 
73 double cblas_dznrm2(const int N, const void *X, const int incX);
74 double cblas_dzasum(const int N, const void *X, const int incX);
75 
76 
77 /*
78  * Functions having standard 4 prefixes (S D C Z)
79  */
80 CBLAS_INDEX cblas_isamax(const int N, const float *X, const int incX);
81 CBLAS_INDEX cblas_idamax(const int N, const double *X, const int incX);
82 CBLAS_INDEX cblas_icamax(const int N, const void *X, const int incX);
83 CBLAS_INDEX cblas_izamax(const int N, const void *X, const int incX);
84 
85 /*
86  * ===========================================================================
87  * Prototypes for level 1 BLAS routines
88  * ===========================================================================
89  */
90 
91 /*
92  * Routines with standard 4 prefixes (s, d, c, z)
93  */
94 void cblas_sswap(const int N, float *X, const int incX,
95  float *Y, const int incY);
96 void cblas_scopy(const int N, const float *X, const int incX,
97  float *Y, const int incY);
98 void cblas_saxpy(const int N, const float alpha, const float *X,
99  const int incX, float *Y, const int incY);
100 
101 void cblas_dswap(const int N, double *X, const int incX,
102  double *Y, const int incY);
103 void cblas_dcopy(const int N, const double *X, const int incX,
104  double *Y, const int incY);
105 void cblas_daxpy(const int N, const double alpha, const double *X,
106  const int incX, double *Y, const int incY);
107 
108 void cblas_cswap(const int N, void *X, const int incX,
109  void *Y, const int incY);
110 void cblas_ccopy(const int N, const void *X, const int incX,
111  void *Y, const int incY);
112 void cblas_caxpy(const int N, const void *alpha, const void *X,
113  const int incX, void *Y, const int incY);
114 
115 void cblas_zswap(const int N, void *X, const int incX,
116  void *Y, const int incY);
117 void cblas_zcopy(const int N, const void *X, const int incX,
118  void *Y, const int incY);
119 void cblas_zaxpy(const int N, const void *alpha, const void *X,
120  const int incX, void *Y, const int incY);
121 
122 
123 /*
124  * Routines with S and D prefix only
125  */
126 void cblas_srotg(float *a, float *b, float *c, float *s);
127 void cblas_srotmg(float *d1, float *d2, float *b1, const float b2, float *P);
128 void cblas_srot(const int N, float *X, const int incX,
129  float *Y, const int incY, const float c, const float s);
130 void cblas_srotm(const int N, float *X, const int incX,
131  float *Y, const int incY, const float *P);
132 
133 void cblas_drotg(double *a, double *b, double *c, double *s);
134 void cblas_drotmg(double *d1, double *d2, double *b1, const double b2, double *P);
135 void cblas_drot(const int N, double *X, const int incX,
136  double *Y, const int incY, const double c, const double s);
137 void cblas_drotm(const int N, double *X, const int incX,
138  double *Y, const int incY, const double *P);
139 
140 
141 /*
142  * Routines with S D C Z CS and ZD prefixes
143  */
144 void cblas_sscal(const int N, const float alpha, float *X, const int incX);
145 void cblas_dscal(const int N, const double alpha, double *X, const int incX);
146 void cblas_cscal(const int N, const void *alpha, void *X, const int incX);
147 void cblas_zscal(const int N, const void *alpha, void *X, const int incX);
148 void cblas_csscal(const int N, const float alpha, void *X, const int incX);
149 void cblas_zdscal(const int N, const double alpha, void *X, const int incX);
150 
151 /*
152  * ===========================================================================
153  * Prototypes for level 2 BLAS
154  * ===========================================================================
155  */
156 
157 /*
158  * Routines with standard 4 prefixes (S, D, C, Z)
159  */
160 void cblas_sgemv(const CBLAS_LAYOUT layout,
161  const CBLAS_TRANSPOSE TransA, const int M, const int N,
162  const float alpha, const float *A, const int lda,
163  const float *X, const int incX, const float beta,
164  float *Y, const int incY);
165 void cblas_sgbmv(CBLAS_LAYOUT layout,
166  CBLAS_TRANSPOSE TransA, const int M, const int N,
167  const int KL, const int KU, const float alpha,
168  const float *A, const int lda, const float *X,
169  const int incX, const float beta, float *Y, const int incY);
170 void cblas_strmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
171  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
172  const int N, const float *A, const int lda,
173  float *X, const int incX);
174 void cblas_stbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
175  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
176  const int N, const int K, const float *A, const int lda,
177  float *X, const int incX);
178 void cblas_stpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
179  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
180  const int N, const float *Ap, float *X, const int incX);
181 void cblas_strsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
182  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
183  const int N, const float *A, const int lda, float *X,
184  const int incX);
185 void cblas_stbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
186  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
187  const int N, const int K, const float *A, const int lda,
188  float *X, const int incX);
189 void cblas_stpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
190  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
191  const int N, const float *Ap, float *X, const int incX);
192 
193 void cblas_dgemv(CBLAS_LAYOUT layout,
194  CBLAS_TRANSPOSE TransA, const int M, const int N,
195  const double alpha, const double *A, const int lda,
196  const double *X, const int incX, const double beta,
197  double *Y, const int incY);
198 void cblas_dgbmv(CBLAS_LAYOUT layout,
199  CBLAS_TRANSPOSE TransA, const int M, const int N,
200  const int KL, const int KU, const double alpha,
201  const double *A, const int lda, const double *X,
202  const int incX, const double beta, double *Y, const int incY);
203 void cblas_dtrmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
204  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
205  const int N, const double *A, const int lda,
206  double *X, const int incX);
207 void cblas_dtbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
208  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
209  const int N, const int K, const double *A, const int lda,
210  double *X, const int incX);
211 void cblas_dtpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
212  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
213  const int N, const double *Ap, double *X, const int incX);
214 void cblas_dtrsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
215  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
216  const int N, const double *A, const int lda, double *X,
217  const int incX);
218 void cblas_dtbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
219  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
220  const int N, const int K, const double *A, const int lda,
221  double *X, const int incX);
222 void cblas_dtpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
223  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
224  const int N, const double *Ap, double *X, const int incX);
225 
226 void cblas_cgemv(CBLAS_LAYOUT layout,
227  CBLAS_TRANSPOSE TransA, const int M, const int N,
228  const void *alpha, const void *A, const int lda,
229  const void *X, const int incX, const void *beta,
230  void *Y, const int incY);
231 void cblas_cgbmv(CBLAS_LAYOUT layout,
232  CBLAS_TRANSPOSE TransA, const int M, const int N,
233  const int KL, const int KU, const void *alpha,
234  const void *A, const int lda, const void *X,
235  const int incX, const void *beta, void *Y, const int incY);
236 void cblas_ctrmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
237  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
238  const int N, const void *A, const int lda,
239  void *X, const int incX);
240 void cblas_ctbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
241  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
242  const int N, const int K, const void *A, const int lda,
243  void *X, const int incX);
244 void cblas_ctpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
245  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
246  const int N, const void *Ap, void *X, const int incX);
247 void cblas_ctrsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
248  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
249  const int N, const void *A, const int lda, void *X,
250  const int incX);
251 void cblas_ctbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
252  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
253  const int N, const int K, const void *A, const int lda,
254  void *X, const int incX);
255 void cblas_ctpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
256  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
257  const int N, const void *Ap, void *X, const int incX);
258 
259 void cblas_zgemv(CBLAS_LAYOUT layout,
260  CBLAS_TRANSPOSE TransA, const int M, const int N,
261  const void *alpha, const void *A, const int lda,
262  const void *X, const int incX, const void *beta,
263  void *Y, const int incY);
264 void cblas_zgbmv(CBLAS_LAYOUT layout,
265  CBLAS_TRANSPOSE TransA, const int M, const int N,
266  const int KL, const int KU, const void *alpha,
267  const void *A, const int lda, const void *X,
268  const int incX, const void *beta, void *Y, const int incY);
269 void cblas_ztrmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
270  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
271  const int N, const void *A, const int lda,
272  void *X, const int incX);
273 void cblas_ztbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
274  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
275  const int N, const int K, const void *A, const int lda,
276  void *X, const int incX);
277 void cblas_ztpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
278  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
279  const int N, const void *Ap, void *X, const int incX);
280 void cblas_ztrsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
281  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
282  const int N, const void *A, const int lda, void *X,
283  const int incX);
284 void cblas_ztbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
285  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
286  const int N, const int K, const void *A, const int lda,
287  void *X, const int incX);
288 void cblas_ztpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
289  CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
290  const int N, const void *Ap, void *X, const int incX);
291 
292 
293 /*
294  * Routines with S and D prefixes only
295  */
296 void cblas_ssymv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
297  const int N, const float alpha, const float *A,
298  const int lda, const float *X, const int incX,
299  const float beta, float *Y, const int incY);
300 void cblas_ssbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
301  const int N, const int K, const float alpha, const float *A,
302  const int lda, const float *X, const int incX,
303  const float beta, float *Y, const int incY);
304 void cblas_sspmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
305  const int N, const float alpha, const float *Ap,
306  const float *X, const int incX,
307  const float beta, float *Y, const int incY);
308 void cblas_sger(CBLAS_LAYOUT layout, const int M, const int N,
309  const float alpha, const float *X, const int incX,
310  const float *Y, const int incY, float *A, const int lda);
311 void cblas_ssyr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
312  const int N, const float alpha, const float *X,
313  const int incX, float *A, const int lda);
314 void cblas_sspr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
315  const int N, const float alpha, const float *X,
316  const int incX, float *Ap);
317 void cblas_ssyr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
318  const int N, const float alpha, const float *X,
319  const int incX, const float *Y, const int incY, float *A,
320  const int lda);
321 void cblas_sspr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
322  const int N, const float alpha, const float *X,
323  const int incX, const float *Y, const int incY, float *A);
324 
325 void cblas_dsymv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
326  const int N, const double alpha, const double *A,
327  const int lda, const double *X, const int incX,
328  const double beta, double *Y, const int incY);
329 void cblas_dsbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
330  const int N, const int K, const double alpha, const double *A,
331  const int lda, const double *X, const int incX,
332  const double beta, double *Y, const int incY);
333 void cblas_dspmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
334  const int N, const double alpha, const double *Ap,
335  const double *X, const int incX,
336  const double beta, double *Y, const int incY);
337 void cblas_dger(CBLAS_LAYOUT layout, const int M, const int N,
338  const double alpha, const double *X, const int incX,
339  const double *Y, const int incY, double *A, const int lda);
340 void cblas_dsyr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
341  const int N, const double alpha, const double *X,
342  const int incX, double *A, const int lda);
343 void cblas_dspr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
344  const int N, const double alpha, const double *X,
345  const int incX, double *Ap);
346 void cblas_dsyr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
347  const int N, const double alpha, const double *X,
348  const int incX, const double *Y, const int incY, double *A,
349  const int lda);
350 void cblas_dspr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
351  const int N, const double alpha, const double *X,
352  const int incX, const double *Y, const int incY, double *A);
353 
354 
355 /*
356  * Routines with C and Z prefixes only
357  */
358 void cblas_chemv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
359  const int N, const void *alpha, const void *A,
360  const int lda, const void *X, const int incX,
361  const void *beta, void *Y, const int incY);
362 void cblas_chbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
363  const int N, const int K, const void *alpha, const void *A,
364  const int lda, const void *X, const int incX,
365  const void *beta, void *Y, const int incY);
366 void cblas_chpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
367  const int N, const void *alpha, const void *Ap,
368  const void *X, const int incX,
369  const void *beta, void *Y, const int incY);
370 void cblas_cgeru(CBLAS_LAYOUT layout, const int M, const int N,
371  const void *alpha, const void *X, const int incX,
372  const void *Y, const int incY, void *A, const int lda);
373 void cblas_cgerc(CBLAS_LAYOUT layout, const int M, const int N,
374  const void *alpha, const void *X, const int incX,
375  const void *Y, const int incY, void *A, const int lda);
376 void cblas_cher(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
377  const int N, const float alpha, const void *X, const int incX,
378  void *A, const int lda);
379 void cblas_chpr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
380  const int N, const float alpha, const void *X,
381  const int incX, void *A);
382 void cblas_cher2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N,
383  const void *alpha, const void *X, const int incX,
384  const void *Y, const int incY, void *A, const int lda);
385 void cblas_chpr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N,
386  const void *alpha, const void *X, const int incX,
387  const void *Y, const int incY, void *Ap);
388 
389 void cblas_zhemv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
390  const int N, const void *alpha, const void *A,
391  const int lda, const void *X, const int incX,
392  const void *beta, void *Y, const int incY);
393 void cblas_zhbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
394  const int N, const int K, const void *alpha, const void *A,
395  const int lda, const void *X, const int incX,
396  const void *beta, void *Y, const int incY);
397 void cblas_zhpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
398  const int N, const void *alpha, const void *Ap,
399  const void *X, const int incX,
400  const void *beta, void *Y, const int incY);
401 void cblas_zgeru(CBLAS_LAYOUT layout, const int M, const int N,
402  const void *alpha, const void *X, const int incX,
403  const void *Y, const int incY, void *A, const int lda);
404 void cblas_zgerc(CBLAS_LAYOUT layout, const int M, const int N,
405  const void *alpha, const void *X, const int incX,
406  const void *Y, const int incY, void *A, const int lda);
407 void cblas_zher(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
408  const int N, const double alpha, const void *X, const int incX,
409  void *A, const int lda);
410 void cblas_zhpr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
411  const int N, const double alpha, const void *X,
412  const int incX, void *A);
413 void cblas_zher2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N,
414  const void *alpha, const void *X, const int incX,
415  const void *Y, const int incY, void *A, const int lda);
416 void cblas_zhpr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N,
417  const void *alpha, const void *X, const int incX,
418  const void *Y, const int incY, void *Ap);
419 
420 /*
421  * ===========================================================================
422  * Prototypes for level 3 BLAS
423  * ===========================================================================
424  */
425 
426 /*
427  * Routines with standard 4 prefixes (S, D, C, Z)
428  */
429 void cblas_sgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA,
430  CBLAS_TRANSPOSE TransB, const int M, const int N,
431  const int K, const float alpha, const float *A,
432  const int lda, const float *B, const int ldb,
433  const float beta, float *C, const int ldc);
434 void cblas_ssymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
435  CBLAS_UPLO Uplo, const int M, const int N,
436  const float alpha, const float *A, const int lda,
437  const float *B, const int ldb, const float beta,
438  float *C, const int ldc);
439 void cblas_ssyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
440  CBLAS_TRANSPOSE Trans, const int N, const int K,
441  const float alpha, const float *A, const int lda,
442  const float beta, float *C, const int ldc);
443 void cblas_ssyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
444  CBLAS_TRANSPOSE Trans, const int N, const int K,
445  const float alpha, const float *A, const int lda,
446  const float *B, const int ldb, const float beta,
447  float *C, const int ldc);
448 void cblas_strmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
449  CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
450  CBLAS_DIAG Diag, const int M, const int N,
451  const float alpha, const float *A, const int lda,
452  float *B, const int ldb);
453 void cblas_strsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
454  CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
455  CBLAS_DIAG Diag, const int M, const int N,
456  const float alpha, const float *A, const int lda,
457  float *B, const int ldb);
458 
459 void cblas_dgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA,
460  CBLAS_TRANSPOSE TransB, const int M, const int N,
461  const int K, const double alpha, const double *A,
462  const int lda, const double *B, const int ldb,
463  const double beta, double *C, const int ldc);
464 void cblas_dsymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
465  CBLAS_UPLO Uplo, const int M, const int N,
466  const double alpha, const double *A, const int lda,
467  const double *B, const int ldb, const double beta,
468  double *C, const int ldc);
469 void cblas_dsyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
470  CBLAS_TRANSPOSE Trans, const int N, const int K,
471  const double alpha, const double *A, const int lda,
472  const double beta, double *C, const int ldc);
473 void cblas_dsyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
474  CBLAS_TRANSPOSE Trans, const int N, const int K,
475  const double alpha, const double *A, const int lda,
476  const double *B, const int ldb, const double beta,
477  double *C, const int ldc);
478 void cblas_dtrmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
479  CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
480  CBLAS_DIAG Diag, const int M, const int N,
481  const double alpha, const double *A, const int lda,
482  double *B, const int ldb);
483 void cblas_dtrsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
484  CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
485  CBLAS_DIAG Diag, const int M, const int N,
486  const double alpha, const double *A, const int lda,
487  double *B, const int ldb);
488 
489 void cblas_cgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA,
490  CBLAS_TRANSPOSE TransB, const int M, const int N,
491  const int K, const void *alpha, const void *A,
492  const int lda, const void *B, const int ldb,
493  const void *beta, void *C, const int ldc);
494 void cblas_csymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
495  CBLAS_UPLO Uplo, const int M, const int N,
496  const void *alpha, const void *A, const int lda,
497  const void *B, const int ldb, const void *beta,
498  void *C, const int ldc);
499 void cblas_csyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
500  CBLAS_TRANSPOSE Trans, const int N, const int K,
501  const void *alpha, const void *A, const int lda,
502  const void *beta, void *C, const int ldc);
503 void cblas_csyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
504  CBLAS_TRANSPOSE Trans, const int N, const int K,
505  const void *alpha, const void *A, const int lda,
506  const void *B, const int ldb, const void *beta,
507  void *C, const int ldc);
508 void cblas_ctrmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
509  CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
510  CBLAS_DIAG Diag, const int M, const int N,
511  const void *alpha, const void *A, const int lda,
512  void *B, const int ldb);
513 void cblas_ctrsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
514  CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
515  CBLAS_DIAG Diag, const int M, const int N,
516  const void *alpha, const void *A, const int lda,
517  void *B, const int ldb);
518 
519 void cblas_zgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA,
520  CBLAS_TRANSPOSE TransB, const int M, const int N,
521  const int K, const void *alpha, const void *A,
522  const int lda, const void *B, const int ldb,
523  const void *beta, void *C, const int ldc);
524 void cblas_zsymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
525  CBLAS_UPLO Uplo, const int M, const int N,
526  const void *alpha, const void *A, const int lda,
527  const void *B, const int ldb, const void *beta,
528  void *C, const int ldc);
529 void cblas_zsyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
530  CBLAS_TRANSPOSE Trans, const int N, const int K,
531  const void *alpha, const void *A, const int lda,
532  const void *beta, void *C, const int ldc);
533 void cblas_zsyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
534  CBLAS_TRANSPOSE Trans, const int N, const int K,
535  const void *alpha, const void *A, const int lda,
536  const void *B, const int ldb, const void *beta,
537  void *C, const int ldc);
538 void cblas_ztrmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
539  CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
540  CBLAS_DIAG Diag, const int M, const int N,
541  const void *alpha, const void *A, const int lda,
542  void *B, const int ldb);
543 void cblas_ztrsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
544  CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
545  CBLAS_DIAG Diag, const int M, const int N,
546  const void *alpha, const void *A, const int lda,
547  void *B, const int ldb);
548 
549 
550 /*
551  * Routines with prefixes C and Z only
552  */
553 void cblas_chemm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
554  CBLAS_UPLO Uplo, const int M, const int N,
555  const void *alpha, const void *A, const int lda,
556  const void *B, const int ldb, const void *beta,
557  void *C, const int ldc);
558 void cblas_cherk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
559  CBLAS_TRANSPOSE Trans, const int N, const int K,
560  const float alpha, const void *A, const int lda,
561  const float beta, void *C, const int ldc);
562 void cblas_cher2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
563  CBLAS_TRANSPOSE Trans, const int N, const int K,
564  const void *alpha, const void *A, const int lda,
565  const void *B, const int ldb, const float beta,
566  void *C, const int ldc);
567 
568 void cblas_zhemm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
569  CBLAS_UPLO Uplo, const int M, const int N,
570  const void *alpha, const void *A, const int lda,
571  const void *B, const int ldb, const void *beta,
572  void *C, const int ldc);
573 void cblas_zherk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
574  CBLAS_TRANSPOSE Trans, const int N, const int K,
575  const double alpha, const void *A, const int lda,
576  const double beta, void *C, const int ldc);
577 void cblas_zher2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
578  CBLAS_TRANSPOSE Trans, const int N, const int K,
579  const void *alpha, const void *A, const int lda,
580  const void *B, const int ldb, const double beta,
581  void *C, const int ldc);
582 
583 void cblas_xerbla(int p, const char *rout, const char *form, ...);
584 
585 #ifdef __cplusplus
586 }
587 #endif
588 #endif
void cblas_ztrsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int M, const int N, const void *alpha, const void *A, const int lda, void *B, const int ldb)
Definition: cblas_ztrsm.c:12
void cblas_ssbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const int K, const float alpha, const float *A, const int lda, const float *X, const int incX, const float beta, float *Y, const int incY)
Definition: cblas_ssbmv.c:11
void cblas_dsyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE Trans, const int N, const int K, const double alpha, const double *A, const int lda, const double beta, double *C, const int ldc)
Definition: cblas_dsyrk.c:12
void cblas_zher2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const void *alpha, const void *X, const int incX, const void *Y, const int incY, void *A, const int lda)
Definition: cblas_zher2.c:12
void cblas_csscal(const int N, const float alpha, void *X, const int incX)
Definition: cblas_csscal.c:11
void cblas_drotm(const int N, double *X, const int incX, double *Y, const int incY, const double *P)
Definition: cblas_drotm.c:3
void cblas_cgerc(CBLAS_LAYOUT layout, const int M, const int N, const void *alpha, const void *X, const int incX, const void *Y, const int incY, void *A, const int lda)
Definition: cblas_cgerc.c:12
CBLAS_INDEX cblas_izamax(const int N, const void *X, const int incX)
Definition: cblas_izamax.c:12
void cblas_srotm(const int N, float *X, const int incX, float *Y, const int incY, const float *P)
Definition: cblas_srotm.c:11
void cblas_zsyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE Trans, const int N, const int K, const void *alpha, const void *A, const int lda, const void *beta, void *C, const int ldc)
Definition: cblas_zsyrk.c:12
void cblas_dspr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const double alpha, const double *X, const int incX, const double *Y, const int incY, double *A)
Definition: cblas_dspr2.c:10
void cblas_scopy(const int N, const float *X, const int incX, float *Y, const int incY)
Definition: cblas_scopy.c:11
void cblas_zherk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE Trans, const int N, const int K, const double alpha, const void *A, const int lda, const double beta, void *C, const int ldc)
Definition: cblas_zherk.c:12
void cblas_ssyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE Trans, const int N, const int K, const float alpha, const float *A, const int lda, const float beta, float *C, const int ldc)
Definition: cblas_ssyrk.c:12
void cblas_zgeru(CBLAS_LAYOUT layout, const int M, const int N, const void *alpha, const void *X, const int incX, const void *Y, const int incY, void *A, const int lda)
Definition: cblas_zgeru.c:10
void cblas_dcopy(const int N, const double *X, const int incX, double *Y, const int incY)
Definition: cblas_dcopy.c:11
void cblas_zhemv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const void *alpha, const void *A, const int lda, const void *X, const int incX, const void *beta, void *Y, const int incY)
Definition: cblas_zhemv.c:12
void cblas_dtpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const double *Ap, double *X, const int incX)
Definition: cblas_dtpsv.c:10
void cblas_chbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const int K, const void *alpha, const void *A, const int lda, const void *X, const int incX, const void *beta, void *Y, const int incY)
Definition: cblas_chbmv.c:12
void cblas_ctrmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const void *A, const int lda, void *X, const int incX)
Definition: cblas_ctrmv.c:10
void cblas_sswap(const int N, float *X, const int incX, float *Y, const int incY)
Definition: cblas_sswap.c:11
void cblas_caxpy(const int N, const void *alpha, const void *X, const int incX, void *Y, const int incY)
Definition: cblas_caxpy.c:11
void cblas_ctbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const int K, const void *A, const int lda, void *X, const int incX)
Definition: cblas_ctbmv.c:10
void cblas_dsyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE Trans, const int N, const int K, const double alpha, const double *A, const int lda, const double *B, const int ldb, const double beta, double *C, const int ldc)
Definition: cblas_dsyr2k.c:12
void cblas_zgerc(CBLAS_LAYOUT layout, const int M, const int N, const void *alpha, const void *X, const int incX, const void *Y, const int incY, void *A, const int lda)
Definition: cblas_zgerc.c:12
void cblas_zgemv(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA, const int M, const int N, const void *alpha, const void *A, const int lda, const void *X, const int incX, const void *beta, void *Y, const int incY)
Definition: cblas_zgemv.c:12
void cblas_chemv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const void *alpha, const void *A, const int lda, const void *X, const int incX, const void *beta, void *Y, const int incY)
Definition: cblas_chemv.c:12
void cblas_ssymv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const float alpha, const float *A, const int lda, const float *X, const int incX, const float beta, float *Y, const int incY)
Definition: cblas_ssymv.c:12
void cblas_zgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA, CBLAS_TRANSPOSE TransB, const int M, const int N, const int K, const void *alpha, const void *A, const int lda, const void *B, const int ldb, const void *beta, void *C, const int ldc)
Definition: cblas_zgemm.c:12
void cblas_dtrmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int M, const int N, const double alpha, const double *A, const int lda, double *B, const int ldb)
Definition: cblas_dtrmm.c:12
void cblas_zswap(const int N, void *X, const int incX, void *Y, const int incY)
Definition: cblas_zswap.c:11
void cblas_ctbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const int K, const void *A, const int lda, void *X, const int incX)
Definition: cblas_ctbsv.c:10
void cblas_ztrmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int M, const int N, const void *alpha, const void *A, const int lda, void *B, const int ldb)
Definition: cblas_ztrmm.c:12
void cblas_zhpr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const void *alpha, const void *X, const int incX, const void *Y, const int incY, void *Ap)
Definition: cblas_zhpr2.c:12
void cblas_dspmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const double alpha, const double *Ap, const double *X, const int incX, const double beta, double *Y, const int incY)
Definition: cblas_dspmv.c:13
void cblas_chpr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const void *alpha, const void *X, const int incX, const void *Y, const int incY, void *Ap)
Definition: cblas_chpr2.c:12
void cblas_ztpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const void *Ap, void *X, const int incX)
Definition: cblas_ztpmv.c:10
void cblas_sspmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const float alpha, const float *Ap, const float *X, const int incX, const float beta, float *Y, const int incY)
Definition: cblas_sspmv.c:11
void cblas_cgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA, CBLAS_TRANSPOSE TransB, const int M, const int N, const int K, const void *alpha, const void *A, const int lda, const void *B, const int ldb, const void *beta, void *C, const int ldc)
Definition: cblas_cgemm.c:12
void cblas_ctpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const void *Ap, void *X, const int incX)
Definition: cblas_ctpmv.c:10
void cblas_dsymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side, CBLAS_UPLO Uplo, const int M, const int N, const double alpha, const double *A, const int lda, const double *B, const int ldb, const double beta, double *C, const int ldc)
Definition: cblas_dsymm.c:12
void cblas_zher(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const double alpha, const void *X, const int incX, void *A, const int lda)
Definition: cblas_zher.c:12
CBLAS_SIDE
Definition: cblas.h:23
void cblas_stpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const float *Ap, float *X, const int incX)
Definition: cblas_stpmv.c:11
CBLAS_DIAG
Definition: cblas.h:22
double cblas_dzasum(const int N, const void *X, const int incX)
Definition: cblas_dzasum.c:12
void cblas_cswap(const int N, void *X, const int incX, void *Y, const int incY)
Definition: cblas_cswap.c:11
void cblas_zher2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE Trans, const int N, const int K, const void *alpha, const void *A, const int lda, const void *B, const int ldb, const double beta, void *C, const int ldc)
Definition: cblas_zher2k.c:12
void cblas_dsymv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const double alpha, const double *A, const int lda, const double *X, const int incX, const double beta, double *Y, const int incY)
Definition: cblas_dsymv.c:12
double cblas_ddot(const int N, const double *X, const int incX, const double *Y, const int incY)
Definition: cblas_ddot.c:12
void cblas_dtrsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int M, const int N, const double alpha, const double *A, const int lda, double *B, const int ldb)
Definition: cblas_dtrsm.c:12
void cblas_cher(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const float alpha, const void *X, const int incX, void *A, const int lda)
Definition: cblas_cher.c:12
void cblas_ctrsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const void *A, const int lda, void *X, const int incX)
Definition: cblas_ctrsv.c:10
CBLAS_INDEX cblas_icamax(const int N, const void *X, const int incX)
Definition: cblas_icamax.c:12
float cblas_sdsdot(const int N, const float alpha, const float *X, const int incX, const float *Y, const int incY)
Definition: cblas_sdsdot.c:12
void cblas_sspr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const float alpha, const float *X, const int incX, float *Ap)
Definition: cblas_sspr.c:12
void cblas_cher2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE Trans, const int N, const int K, const void *alpha, const void *A, const int lda, const void *B, const int ldb, const float beta, void *C, const int ldc)
Definition: cblas_cher2k.c:12
void cblas_ztrmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const void *A, const int lda, void *X, const int incX)
Definition: cblas_ztrmv.c:10
void cblas_zhbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const int K, const void *alpha, const void *A, const int lda, const void *X, const int incX, const void *beta, void *Y, const int incY)
Definition: cblas_zhbmv.c:12
void cblas_cdotc_sub(const int N, const void *X, const int incX, const void *Y, const int incY, void *dotc)
void cblas_zdscal(const int N, const double alpha, void *X, const int incX)
Definition: cblas_zdscal.c:11
float cblas_sasum(const int N, const float *X, const int incX)
Definition: cblas_sasum.c:12
void cblas_dgbmv(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA, const int M, const int N, const int KL, const int KU, const double alpha, const double *A, const int lda, const double *X, const int incX, const double beta, double *Y, const int incY)
Definition: cblas_dgbmv.c:11
void cblas_cherk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE Trans, const int N, const int K, const float alpha, const void *A, const int lda, const float beta, void *C, const int ldc)
Definition: cblas_cherk.c:12
void cblas_cher2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const void *alpha, const void *X, const int incX, const void *Y, const int incY, void *A, const int lda)
Definition: cblas_cher2.c:12
void cblas_ssymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side, CBLAS_UPLO Uplo, const int M, const int N, const float alpha, const float *A, const int lda, const float *B, const int ldb, const float beta, float *C, const int ldc)
Definition: cblas_ssymm.c:12
void cblas_strmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int M, const int N, const float alpha, const float *A, const int lda, float *B, const int ldb)
Definition: cblas_strmm.c:12
void cblas_stbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const int K, const float *A, const int lda, float *X, const int incX)
Definition: cblas_stbsv.c:10
void cblas_cgeru(CBLAS_LAYOUT layout, const int M, const int N, const void *alpha, const void *X, const int incX, const void *Y, const int incY, void *A, const int lda)
Definition: cblas_cgeru.c:10
void cblas_cgemv(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA, const int M, const int N, const void *alpha, const void *A, const int lda, const void *X, const int incX, const void *beta, void *Y, const int incY)
Definition: cblas_cgemv.c:12
void cblas_drotmg(double *d1, double *d2, double *b1, const double b2, double *P)
Definition: cblas_drotmg.c:11
void cblas_ccopy(const int N, const void *X, const int incX, void *Y, const int incY)
Definition: cblas_ccopy.c:11
void cblas_ctrsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int M, const int N, const void *alpha, const void *A, const int lda, void *B, const int ldb)
Definition: cblas_ctrsm.c:12
void cblas_drotg(double *a, double *b, double *c, double *s)
Definition: cblas_drotg.c:11
void cblas_dtbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const int K, const double *A, const int lda, double *X, const int incX)
Definition: cblas_dtbmv.c:10
CBLAS_TRANSPOSE
Definition: cblas.h:20
void cblas_zdotu_sub(const int N, const void *X, const int incX, const void *Y, const int incY, void *dotu)
void cblas_dspr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const double alpha, const double *X, const int incX, double *Ap)
Definition: cblas_dspr.c:12
void cblas_sgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA, CBLAS_TRANSPOSE TransB, const int M, const int N, const int K, const float alpha, const float *A, const int lda, const float *B, const int ldb, const float beta, float *C, const int ldc)
Definition: cblas_sgemm.c:12
void cblas_cscal(const int N, const void *alpha, void *X, const int incX)
Definition: cblas_cscal.c:11
void cblas_dgemv(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA, const int M, const int N, const double alpha, const double *A, const int lda, const double *X, const int incX, const double beta, double *Y, const int incY)
Definition: cblas_dgemv.c:11
float cblas_sdot(const int N, const float *X, const int incX, const float *Y, const int incY)
Definition: cblas_sdot.c:12
void cblas_ssyr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const float alpha, const float *X, const int incX, const float *Y, const int incY, float *A, const int lda)
Definition: cblas_ssyr2.c:12
void cblas_dsbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const int K, const double alpha, const double *A, const int lda, const double *X, const int incX, const double beta, double *Y, const int incY)
Definition: cblas_dsbmv.c:12
void cblas_csyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE Trans, const int N, const int K, const void *alpha, const void *A, const int lda, const void *B, const int ldb, const void *beta, void *C, const int ldc)
Definition: cblas_csyr2k.c:12
void cblas_strsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int M, const int N, const float alpha, const float *A, const int lda, float *B, const int ldb)
Definition: cblas_strsm.c:12
float cblas_scasum(const int N, const void *X, const int incX)
Definition: cblas_scasum.c:12
void cblas_zsyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE Trans, const int N, const int K, const void *alpha, const void *A, const int lda, const void *B, const int ldb, const void *beta, void *C, const int ldc)
Definition: cblas_zsyr2k.c:12
void cblas_csyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE Trans, const int N, const int K, const void *alpha, const void *A, const int lda, const void *beta, void *C, const int ldc)
Definition: cblas_csyrk.c:12
CBLAS_LAYOUT CBLAS_ORDER
Definition: cblas.h:25
void cblas_ssyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE Trans, const int N, const int K, const float alpha, const float *A, const int lda, const float *B, const int ldb, const float beta, float *C, const int ldc)
Definition: cblas_ssyr2k.c:12
void cblas_zhemm(CBLAS_LAYOUT layout, CBLAS_SIDE Side, CBLAS_UPLO Uplo, const int M, const int N, const void *alpha, const void *A, const int lda, const void *B, const int ldb, const void *beta, void *C, const int ldc)
Definition: cblas_zhemm.c:12
void cblas_sger(CBLAS_LAYOUT layout, const int M, const int N, const float alpha, const float *X, const int incX, const float *Y, const int incY, float *A, const int lda)
Definition: cblas_sger.c:12
void cblas_srot(const int N, float *X, const int incX, float *Y, const int incY, const float c, const float s)
Definition: cblas_srot.c:11
void cblas_zhpr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const double alpha, const void *X, const int incX, void *A)
Definition: cblas_zhpr.c:12
void cblas_ztrsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const void *A, const int lda, void *X, const int incX)
Definition: cblas_ztrsv.c:10
void cblas_zscal(const int N, const void *alpha, void *X, const int incX)
Definition: cblas_zscal.c:11
void cblas_strmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const float *A, const int lda, float *X, const int incX)
Definition: cblas_strmv.c:11
void cblas_dgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA, CBLAS_TRANSPOSE TransB, const int M, const int N, const int K, const double alpha, const double *A, const int lda, const double *B, const int ldb, const double beta, double *C, const int ldc)
Definition: cblas_dgemm.c:12
void cblas_dtrsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const double *A, const int lda, double *X, const int incX)
Definition: cblas_dtrsv.c:10
void cblas_dscal(const int N, const double alpha, double *X, const int incX)
Definition: cblas_dscal.c:11
float cblas_scabs1(const void *c)
void cblas_zcopy(const int N, const void *X, const int incX, void *Y, const int incY)
Definition: cblas_zcopy.c:11
void cblas_chemm(CBLAS_LAYOUT layout, CBLAS_SIDE Side, CBLAS_UPLO Uplo, const int M, const int N, const void *alpha, const void *A, const int lda, const void *B, const int ldb, const void *beta, void *C, const int ldc)
Definition: cblas_chemm.c:12
void cblas_cgbmv(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA, const int M, const int N, const int KL, const int KU, const void *alpha, const void *A, const int lda, const void *X, const int incX, const void *beta, void *Y, const int incY)
Definition: cblas_cgbmv.c:12
void cblas_cdotu_sub(const int N, const void *X, const int incX, const void *Y, const int incY, void *dotu)
#define CBLAS_INDEX
Definition: cblas.h:16
double cblas_dnrm2(const int N, const double *X, const int incX)
Definition: cblas_dnrm2.c:12
void cblas_stpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const float *Ap, float *X, const int incX)
Definition: cblas_stpsv.c:10
void cblas_dger(CBLAS_LAYOUT layout, const int M, const int N, const double alpha, const double *X, const int incX, const double *Y, const int incY, double *A, const int lda)
Definition: cblas_dger.c:12
void cblas_ssyr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const float alpha, const float *X, const int incX, float *A, const int lda)
Definition: cblas_ssyr.c:11
void cblas_dsyr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const double alpha, const double *X, const int incX, const double *Y, const int incY, double *A, const int lda)
Definition: cblas_dsyr2.c:12
void cblas_zhpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const void *alpha, const void *Ap, const void *X, const int incX, const void *beta, void *Y, const int incY)
Definition: cblas_zhpmv.c:12
void cblas_csymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side, CBLAS_UPLO Uplo, const int M, const int N, const void *alpha, const void *A, const int lda, const void *B, const int ldb, const void *beta, void *C, const int ldc)
Definition: cblas_csymm.c:12
void cblas_ztbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const int K, const void *A, const int lda, void *X, const int incX)
Definition: cblas_ztbsv.c:10
void cblas_srotmg(float *d1, float *d2, float *b1, const float b2, float *P)
Definition: cblas_srotmg.c:11
double cblas_dcabs1(const void *z)
CBLAS_UPLO
Definition: cblas.h:21
float cblas_scnrm2(const int N, const void *X, const int incX)
Definition: cblas_scnrm2.c:12
void cblas_ctpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const void *Ap, void *X, const int incX)
Definition: cblas_ctpsv.c:10
void cblas_srotg(float *a, float *b, float *c, float *s)
Definition: cblas_srotg.c:11
CBLAS_LAYOUT
Definition: cblas.h:19
float cblas_snrm2(const int N, const float *X, const int incX)
Definition: cblas_snrm2.c:12
void cblas_dsyr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const double alpha, const double *X, const int incX, double *A, const int lda)
Definition: cblas_dsyr.c:12
void cblas_saxpy(const int N, const float alpha, const float *X, const int incX, float *Y, const int incY)
Definition: cblas_saxpy.c:12
void cblas_sgemv(const CBLAS_LAYOUT layout, const CBLAS_TRANSPOSE TransA, const int M, const int N, const float alpha, const float *A, const int lda, const float *X, const int incX, const float beta, float *Y, const int incY)
Definition: cblas_sgemv.c:11
void cblas_dtpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const double *Ap, double *X, const int incX)
Definition: cblas_dtpmv.c:10
void cblas_drot(const int N, double *X, const int incX, double *Y, const int incY, const double c, const double s)
Definition: cblas_drot.c:11
void cblas_zaxpy(const int N, const void *alpha, const void *X, const int incX, void *Y, const int incY)
Definition: cblas_zaxpy.c:11
double cblas_dsdot(const int N, const float *X, const int incX, const float *Y, const int incY)
Definition: cblas_dsdot.c:12
void cblas_ztpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const void *Ap, void *X, const int incX)
Definition: cblas_ztpsv.c:10
CBLAS_INDEX cblas_idamax(const int N, const double *X, const int incX)
Definition: cblas_idamax.c:12
void cblas_stbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const int K, const float *A, const int lda, float *X, const int incX)
Definition: cblas_stbmv.c:10
void cblas_chpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const void *alpha, const void *Ap, const void *X, const int incX, const void *beta, void *Y, const int incY)
Definition: cblas_chpmv.c:12
void cblas_sgbmv(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA, const int M, const int N, const int KL, const int KU, const float alpha, const float *A, const int lda, const float *X, const int incX, const float beta, float *Y, const int incY)
Definition: cblas_sgbmv.c:12
double cblas_dznrm2(const int N, const void *X, const int incX)
Definition: cblas_dznrm2.c:12
void cblas_xerbla(int p, const char *rout, const char *form,...)
Definition: cblas_xerbla.c:8
void cblas_zdotc_sub(const int N, const void *X, const int incX, const void *Y, const int incY, void *dotc)
void cblas_dtbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const int K, const double *A, const int lda, double *X, const int incX)
Definition: cblas_dtbsv.c:10
void cblas_daxpy(const int N, const double alpha, const double *X, const int incX, double *Y, const int incY)
Definition: cblas_daxpy.c:11
void cblas_ztbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const int K, const void *A, const int lda, void *X, const int incX)
Definition: cblas_ztbmv.c:10
void cblas_strsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const float *A, const int lda, float *X, const int incX)
Definition: cblas_strsv.c:10
double cblas_dasum(const int N, const double *X, const int incX)
Definition: cblas_dasum.c:12
CBLAS_INDEX cblas_isamax(const int N, const float *X, const int incX)
Definition: cblas_isamax.c:12
void cblas_chpr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const float alpha, const void *X, const int incX, void *A)
Definition: cblas_chpr.c:12
void cblas_sscal(const int N, const float alpha, float *X, const int incX)
Definition: cblas_sscal.c:11
void cblas_zsymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side, CBLAS_UPLO Uplo, const int M, const int N, const void *alpha, const void *A, const int lda, const void *B, const int ldb, const void *beta, void *C, const int ldc)
Definition: cblas_zsymm.c:12
void cblas_dswap(const int N, double *X, const int incX, double *Y, const int incY)
Definition: cblas_dswap.c:11
void cblas_zgbmv(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA, const int M, const int N, const int KL, const int KU, const void *alpha, const void *A, const int lda, const void *X, const int incX, const void *beta, void *Y, const int incY)
Definition: cblas_zgbmv.c:12
void cblas_dtrmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const double *A, const int lda, double *X, const int incX)
Definition: cblas_dtrmv.c:12
#define N
Definition: example_user.c:10
void cblas_sspr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, const int N, const float alpha, const float *X, const int incX, const float *Y, const int incY, float *A)
Definition: cblas_sspr2.c:12
void cblas_ctrmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int M, const int N, const void *alpha, const void *A, const int lda, void *B, const int ldb)
Definition: cblas_ctrmm.c:12