Path: blob/master/build/pkgs/iml/patches/blas_headers.patch
8820 views
diff -ruN iml-1.0.1-sage/cblas.h src/cblas.h1--- iml-1.0.1-sage/cblas.h 1970-01-01 01:00:00.000000000 +01002+++ src/cblas.h 2007-02-15 07:51:41.000000000 +01003@@ -0,0 +1,606 @@4+/* blas/gsl_cblas.h5+ *6+ * Copyright (C) 1996, 1997, 1998, 1999, 2000 Gerard Jungman7+ *8+ * This program is free software; you can redistribute it and/or modify9+ * it under the terms of the GNU General Public License as published by10+ * the Free Software Foundation; either version 2 of the License, or (at11+ * your option) any later version.12+ *13+ * This program is distributed in the hope that it will be useful, but14+ * WITHOUT ANY WARRANTY; without even the implied warranty of15+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU16+ * General Public License for more details.17+ *18+ * You should have received a copy of the GNU General Public License19+ * along with this program; if not, write to the Free Software20+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.21+ */22+23+/* This is a copy of the CBLAS standard header.24+ * We carry this around so we do not have to25+ * break our model for flexible BLAS functionality.26+ */27+28+#ifndef __GSL_CBLAS_H__29+#define __GSL_CBLAS_H__30+#include <stddef.h>31+32+#undef __BEGIN_DECLS33+#undef __END_DECLS34+#ifdef __cplusplus35+#define __BEGIN_DECLS extern "C" {36+#define __END_DECLS }37+#else38+#define __BEGIN_DECLS /* empty */39+#define __END_DECLS /* empty */40+#endif41+42+__BEGIN_DECLS43+44+/*45+ * Enumerated and derived types46+ */47+#define CBLAS_INDEX size_t /* this may vary between platforms */48+49+enum CBLAS_ORDER {CblasRowMajor=101, CblasColMajor=102};50+enum CBLAS_TRANSPOSE {CblasNoTrans=111, CblasTrans=112, CblasConjTrans=113};51+enum CBLAS_UPLO {CblasUpper=121, CblasLower=122};52+enum CBLAS_DIAG {CblasNonUnit=131, CblasUnit=132};53+enum CBLAS_SIDE {CblasLeft=141, CblasRight=142};54+55+/*56+ * ===========================================================================57+ * Prototypes for level 1 BLAS functions (complex are recast as routines)58+ * ===========================================================================59+ */60+float cblas_sdsdot(const int N, const float alpha, const float *X,61+ const int incX, const float *Y, const int incY);62+double cblas_dsdot(const int N, const float *X, const int incX, const float *Y,63+ const int incY);64+float cblas_sdot(const int N, const float *X, const int incX,65+ const float *Y, const int incY);66+double cblas_ddot(const int N, const double *X, const int incX,67+ const double *Y, const int incY);68+69+/*70+ * Functions having prefixes Z and C only71+ */72+void cblas_cdotu_sub(const int N, const void *X, const int incX,73+ const void *Y, const int incY, void *dotu);74+void cblas_cdotc_sub(const int N, const void *X, const int incX,75+ const void *Y, const int incY, void *dotc);76+77+void cblas_zdotu_sub(const int N, const void *X, const int incX,78+ const void *Y, const int incY, void *dotu);79+void cblas_zdotc_sub(const int N, const void *X, const int incX,80+ const void *Y, const int incY, void *dotc);81+82+83+/*84+ * Functions having prefixes S D SC DZ85+ */86+float cblas_snrm2(const int N, const float *X, const int incX);87+float cblas_sasum(const int N, const float *X, const int incX);88+89+double cblas_dnrm2(const int N, const double *X, const int incX);90+double cblas_dasum(const int N, const double *X, const int incX);91+92+float cblas_scnrm2(const int N, const void *X, const int incX);93+float cblas_scasum(const int N, const void *X, const int incX);94+95+double cblas_dznrm2(const int N, const void *X, const int incX);96+double cblas_dzasum(const int N, const void *X, const int incX);97+98+99+/*100+ * Functions having standard 4 prefixes (S D C Z)101+ */102+CBLAS_INDEX cblas_isamax(const int N, const float *X, const int incX);103+CBLAS_INDEX cblas_idamax(const int N, const double *X, const int incX);104+CBLAS_INDEX cblas_icamax(const int N, const void *X, const int incX);105+CBLAS_INDEX cblas_izamax(const int N, const void *X, const int incX);106+107+/*108+ * ===========================================================================109+ * Prototypes for level 1 BLAS routines110+ * ===========================================================================111+ */112+113+/*114+ * Routines with standard 4 prefixes (s, d, c, z)115+ */116+void cblas_sswap(const int N, float *X, const int incX,117+ float *Y, const int incY);118+void cblas_scopy(const int N, const float *X, const int incX,119+ float *Y, const int incY);120+void cblas_saxpy(const int N, const float alpha, const float *X,121+ const int incX, float *Y, const int incY);122+123+void cblas_dswap(const int N, double *X, const int incX,124+ double *Y, const int incY);125+void cblas_dcopy(const int N, const double *X, const int incX,126+ double *Y, const int incY);127+void cblas_daxpy(const int N, const double alpha, const double *X,128+ const int incX, double *Y, const int incY);129+130+void cblas_cswap(const int N, void *X, const int incX,131+ void *Y, const int incY);132+void cblas_ccopy(const int N, const void *X, const int incX,133+ void *Y, const int incY);134+void cblas_caxpy(const int N, const void *alpha, const void *X,135+ const int incX, void *Y, const int incY);136+137+void cblas_zswap(const int N, void *X, const int incX,138+ void *Y, const int incY);139+void cblas_zcopy(const int N, const void *X, const int incX,140+ void *Y, const int incY);141+void cblas_zaxpy(const int N, const void *alpha, const void *X,142+ const int incX, void *Y, const int incY);143+144+145+/*146+ * Routines with S and D prefix only147+ */148+void cblas_srotg(float *a, float *b, float *c, float *s);149+void cblas_srotmg(float *d1, float *d2, float *b1, const float b2, float *P);150+void cblas_srot(const int N, float *X, const int incX,151+ float *Y, const int incY, const float c, const float s);152+void cblas_srotm(const int N, float *X, const int incX,153+ float *Y, const int incY, const float *P);154+155+void cblas_drotg(double *a, double *b, double *c, double *s);156+void cblas_drotmg(double *d1, double *d2, double *b1, const double b2, double *P);157+void cblas_drot(const int N, double *X, const int incX,158+ double *Y, const int incY, const double c, const double s);159+void cblas_drotm(const int N, double *X, const int incX,160+ double *Y, const int incY, const double *P);161+162+163+/*164+ * Routines with S D C Z CS and ZD prefixes165+ */166+void cblas_sscal(const int N, const float alpha, float *X, const int incX);167+void cblas_dscal(const int N, const double alpha, double *X, const int incX);168+void cblas_cscal(const int N, const void *alpha, void *X, const int incX);169+void cblas_zscal(const int N, const void *alpha, void *X, const int incX);170+void cblas_csscal(const int N, const float alpha, void *X, const int incX);171+void cblas_zdscal(const int N, const double alpha, void *X, const int incX);172+173+/*174+ * ===========================================================================175+ * Prototypes for level 2 BLAS176+ * ===========================================================================177+ */178+179+/*180+ * Routines with standard 4 prefixes (S, D, C, Z)181+ */182+void cblas_sgemv(const enum CBLAS_ORDER order,183+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,184+ const float alpha, const float *A, const int lda,185+ const float *X, const int incX, const float beta,186+ float *Y, const int incY);187+void cblas_sgbmv(const enum CBLAS_ORDER order,188+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,189+ const int KL, const int KU, const float alpha,190+ const float *A, const int lda, const float *X,191+ const int incX, const float beta, float *Y, const int incY);192+void cblas_strmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,193+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,194+ const int N, const float *A, const int lda,195+ float *X, const int incX);196+void cblas_stbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,197+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,198+ const int N, const int K, const float *A, const int lda,199+ float *X, const int incX);200+void cblas_stpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,201+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,202+ const int N, const float *Ap, float *X, const int incX);203+void cblas_strsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,204+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,205+ const int N, const float *A, const int lda, float *X,206+ const int incX);207+void cblas_stbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,208+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,209+ const int N, const int K, const float *A, const int lda,210+ float *X, const int incX);211+void cblas_stpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,212+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,213+ const int N, const float *Ap, float *X, const int incX);214+215+void cblas_dgemv(const enum CBLAS_ORDER order,216+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,217+ const double alpha, const double *A, const int lda,218+ const double *X, const int incX, const double beta,219+ double *Y, const int incY);220+void cblas_dgbmv(const enum CBLAS_ORDER order,221+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,222+ const int KL, const int KU, const double alpha,223+ const double *A, const int lda, const double *X,224+ const int incX, const double beta, double *Y, const int incY);225+void cblas_dtrmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,226+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,227+ const int N, const double *A, const int lda,228+ double *X, const int incX);229+void cblas_dtbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,230+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,231+ const int N, const int K, const double *A, const int lda,232+ double *X, const int incX);233+void cblas_dtpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,234+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,235+ const int N, const double *Ap, double *X, const int incX);236+void cblas_dtrsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,237+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,238+ const int N, const double *A, const int lda, double *X,239+ const int incX);240+void cblas_dtbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,241+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,242+ const int N, const int K, const double *A, const int lda,243+ double *X, const int incX);244+void cblas_dtpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,245+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,246+ const int N, const double *Ap, double *X, const int incX);247+248+void cblas_cgemv(const enum CBLAS_ORDER order,249+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,250+ const void *alpha, const void *A, const int lda,251+ const void *X, const int incX, const void *beta,252+ void *Y, const int incY);253+void cblas_cgbmv(const enum CBLAS_ORDER order,254+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,255+ const int KL, const int KU, const void *alpha,256+ const void *A, const int lda, const void *X,257+ const int incX, const void *beta, void *Y, const int incY);258+void cblas_ctrmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,259+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,260+ const int N, const void *A, const int lda,261+ void *X, const int incX);262+void cblas_ctbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,263+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,264+ const int N, const int K, const void *A, const int lda,265+ void *X, const int incX);266+void cblas_ctpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,267+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,268+ const int N, const void *Ap, void *X, const int incX);269+void cblas_ctrsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,270+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,271+ const int N, const void *A, const int lda, void *X,272+ const int incX);273+void cblas_ctbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,274+ const enum CBLAS_TRANSPOSE TransA, const enum 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_ctpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,278+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,279+ const int N, const void *Ap, void *X, const int incX);280+281+void cblas_zgemv(const enum CBLAS_ORDER order,282+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,283+ const void *alpha, const void *A, const int lda,284+ const void *X, const int incX, const void *beta,285+ void *Y, const int incY);286+void cblas_zgbmv(const enum CBLAS_ORDER order,287+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,288+ const int KL, const int KU, const void *alpha,289+ const void *A, const int lda, const void *X,290+ const int incX, const void *beta, void *Y, const int incY);291+void cblas_ztrmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,292+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,293+ const int N, const void *A, const int lda,294+ void *X, const int incX);295+void cblas_ztbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,296+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,297+ const int N, const int K, const void *A, const int lda,298+ void *X, const int incX);299+void cblas_ztpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,300+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,301+ const int N, const void *Ap, void *X, const int incX);302+void cblas_ztrsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,303+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,304+ const int N, const void *A, const int lda, void *X,305+ const int incX);306+void cblas_ztbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,307+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,308+ const int N, const int K, const void *A, const int lda,309+ void *X, const int incX);310+void cblas_ztpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,311+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,312+ const int N, const void *Ap, void *X, const int incX);313+314+315+/*316+ * Routines with S and D prefixes only317+ */318+void cblas_ssymv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,319+ const int N, const float alpha, const float *A,320+ const int lda, const float *X, const int incX,321+ const float beta, float *Y, const int incY);322+void cblas_ssbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,323+ const int N, const int K, const float alpha, const float *A,324+ const int lda, const float *X, const int incX,325+ const float beta, float *Y, const int incY);326+void cblas_sspmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,327+ const int N, const float alpha, const float *Ap,328+ const float *X, const int incX,329+ const float beta, float *Y, const int incY);330+void cblas_sger(const enum CBLAS_ORDER order, const int M, const int N,331+ const float alpha, const float *X, const int incX,332+ const float *Y, const int incY, float *A, const int lda);333+void cblas_ssyr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,334+ const int N, const float alpha, const float *X,335+ const int incX, float *A, const int lda);336+void cblas_sspr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,337+ const int N, const float alpha, const float *X,338+ const int incX, float *Ap);339+void cblas_ssyr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,340+ const int N, const float alpha, const float *X,341+ const int incX, const float *Y, const int incY, float *A,342+ const int lda);343+void cblas_sspr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,344+ const int N, const float alpha, const float *X,345+ const int incX, const float *Y, const int incY, float *A);346+347+void cblas_dsymv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,348+ const int N, const double alpha, const double *A,349+ const int lda, const double *X, const int incX,350+ const double beta, double *Y, const int incY);351+void cblas_dsbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,352+ const int N, const int K, const double alpha, const double *A,353+ const int lda, const double *X, const int incX,354+ const double beta, double *Y, const int incY);355+void cblas_dspmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,356+ const int N, const double alpha, const double *Ap,357+ const double *X, const int incX,358+ const double beta, double *Y, const int incY);359+void cblas_dger(const enum CBLAS_ORDER order, const int M, const int N,360+ const double alpha, const double *X, const int incX,361+ const double *Y, const int incY, double *A, const int lda);362+void cblas_dsyr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,363+ const int N, const double alpha, const double *X,364+ const int incX, double *A, const int lda);365+void cblas_dspr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,366+ const int N, const double alpha, const double *X,367+ const int incX, double *Ap);368+void cblas_dsyr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,369+ const int N, const double alpha, const double *X,370+ const int incX, const double *Y, const int incY, double *A,371+ const int lda);372+void cblas_dspr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,373+ const int N, const double alpha, const double *X,374+ const int incX, const double *Y, const int incY, double *A);375+376+377+/*378+ * Routines with C and Z prefixes only379+ */380+void cblas_chemv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,381+ const int N, const void *alpha, const void *A,382+ const int lda, const void *X, const int incX,383+ const void *beta, void *Y, const int incY);384+void cblas_chbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,385+ const int N, const int K, const void *alpha, const void *A,386+ const int lda, const void *X, const int incX,387+ const void *beta, void *Y, const int incY);388+void cblas_chpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,389+ const int N, const void *alpha, const void *Ap,390+ const void *X, const int incX,391+ const void *beta, void *Y, const int incY);392+void cblas_cgeru(const enum CBLAS_ORDER order, const int M, const int N,393+ const void *alpha, const void *X, const int incX,394+ const void *Y, const int incY, void *A, const int lda);395+void cblas_cgerc(const enum CBLAS_ORDER order, const int M, const int N,396+ const void *alpha, const void *X, const int incX,397+ const void *Y, const int incY, void *A, const int lda);398+void cblas_cher(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,399+ const int N, const float alpha, const void *X, const int incX,400+ void *A, const int lda);401+void cblas_chpr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,402+ const int N, const float alpha, const void *X,403+ const int incX, void *A);404+void cblas_cher2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, 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_chpr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N,408+ const void *alpha, const void *X, const int incX,409+ const void *Y, const int incY, void *Ap);410+411+void cblas_zhemv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,412+ const int N, const void *alpha, const void *A,413+ const int lda, const void *X, const int incX,414+ const void *beta, void *Y, const int incY);415+void cblas_zhbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,416+ const int N, const int K, const void *alpha, const void *A,417+ const int lda, const void *X, const int incX,418+ const void *beta, void *Y, const int incY);419+void cblas_zhpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,420+ const int N, const void *alpha, const void *Ap,421+ const void *X, const int incX,422+ const void *beta, void *Y, const int incY);423+void cblas_zgeru(const enum CBLAS_ORDER order, const int M, const int N,424+ const void *alpha, const void *X, const int incX,425+ const void *Y, const int incY, void *A, const int lda);426+void cblas_zgerc(const enum CBLAS_ORDER order, const int M, const int N,427+ const void *alpha, const void *X, const int incX,428+ const void *Y, const int incY, void *A, const int lda);429+void cblas_zher(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,430+ const int N, const double alpha, const void *X, const int incX,431+ void *A, const int lda);432+void cblas_zhpr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,433+ const int N, const double alpha, const void *X,434+ const int incX, void *A);435+void cblas_zher2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N,436+ const void *alpha, const void *X, const int incX,437+ const void *Y, const int incY, void *A, const int lda);438+void cblas_zhpr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N,439+ const void *alpha, const void *X, const int incX,440+ const void *Y, const int incY, void *Ap);441+442+/*443+ * ===========================================================================444+ * Prototypes for level 3 BLAS445+ * ===========================================================================446+ */447+448+/*449+ * Routines with standard 4 prefixes (S, D, C, Z)450+ */451+void cblas_sgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,452+ const enum CBLAS_TRANSPOSE TransB, const int M, const int N,453+ const int K, const float alpha, const float *A,454+ const int lda, const float *B, const int ldb,455+ const float beta, float *C, const int ldc);456+void cblas_ssymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,457+ const enum CBLAS_UPLO Uplo, const int M, const int N,458+ const float alpha, const float *A, const int lda,459+ const float *B, const int ldb, const float beta,460+ float *C, const int ldc);461+void cblas_ssyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,462+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,463+ const float alpha, const float *A, const int lda,464+ const float beta, float *C, const int ldc);465+void cblas_ssyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,466+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,467+ const float alpha, const float *A, const int lda,468+ const float *B, const int ldb, const float beta,469+ float *C, const int ldc);470+void cblas_strmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,471+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,472+ const enum CBLAS_DIAG Diag, const int M, const int N,473+ const float alpha, const float *A, const int lda,474+ float *B, const int ldb);475+void cblas_strsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,476+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,477+ const enum CBLAS_DIAG Diag, const int M, const int N,478+ const float alpha, const float *A, const int lda,479+ float *B, const int ldb);480+481+void cblas_dgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,482+ const enum CBLAS_TRANSPOSE TransB, const int M, const int N,483+ const int K, const double alpha, const double *A,484+ const int lda, const double *B, const int ldb,485+ const double beta, double *C, const int ldc);486+void cblas_dsymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,487+ const enum CBLAS_UPLO Uplo, const int M, const int N,488+ const double alpha, const double *A, const int lda,489+ const double *B, const int ldb, const double beta,490+ double *C, const int ldc);491+void cblas_dsyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,492+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,493+ const double alpha, const double *A, const int lda,494+ const double beta, double *C, const int ldc);495+void cblas_dsyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,496+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,497+ const double alpha, const double *A, const int lda,498+ const double *B, const int ldb, const double beta,499+ double *C, const int ldc);500+void cblas_dtrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,501+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,502+ const enum CBLAS_DIAG Diag, const int M, const int N,503+ const double alpha, const double *A, const int lda,504+ double *B, const int ldb);505+void cblas_dtrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,506+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,507+ const enum CBLAS_DIAG Diag, const int M, const int N,508+ const double alpha, const double *A, const int lda,509+ double *B, const int ldb);510+511+void cblas_cgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,512+ const enum CBLAS_TRANSPOSE TransB, const int M, const int N,513+ const int K, const void *alpha, const void *A,514+ const int lda, const void *B, const int ldb,515+ const void *beta, void *C, const int ldc);516+void cblas_csymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,517+ const enum CBLAS_UPLO Uplo, const int M, const int N,518+ const void *alpha, const void *A, const int lda,519+ const void *B, const int ldb, const void *beta,520+ void *C, const int ldc);521+void cblas_csyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,522+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,523+ const void *alpha, const void *A, const int lda,524+ const void *beta, void *C, const int ldc);525+void cblas_csyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,526+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,527+ const void *alpha, const void *A, const int lda,528+ const void *B, const int ldb, const void *beta,529+ void *C, const int ldc);530+void cblas_ctrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,531+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,532+ const enum CBLAS_DIAG Diag, const int M, const int N,533+ const void *alpha, const void *A, const int lda,534+ void *B, const int ldb);535+void cblas_ctrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,536+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,537+ const enum CBLAS_DIAG Diag, const int M, const int N,538+ const void *alpha, const void *A, const int lda,539+ void *B, const int ldb);540+541+void cblas_zgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,542+ const enum CBLAS_TRANSPOSE TransB, const int M, const int N,543+ const int K, const void *alpha, const void *A,544+ const int lda, const void *B, const int ldb,545+ const void *beta, void *C, const int ldc);546+void cblas_zsymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,547+ const enum CBLAS_UPLO Uplo, const int M, const int N,548+ const void *alpha, const void *A, const int lda,549+ const void *B, const int ldb, const void *beta,550+ void *C, const int ldc);551+void cblas_zsyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,552+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,553+ const void *alpha, const void *A, const int lda,554+ const void *beta, void *C, const int ldc);555+void cblas_zsyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,556+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,557+ const void *alpha, const void *A, const int lda,558+ const void *B, const int ldb, const void *beta,559+ void *C, const int ldc);560+void cblas_ztrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,561+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,562+ const enum CBLAS_DIAG Diag, const int M, const int N,563+ const void *alpha, const void *A, const int lda,564+ void *B, const int ldb);565+void cblas_ztrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,566+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,567+ const enum CBLAS_DIAG Diag, const int M, const int N,568+ const void *alpha, const void *A, const int lda,569+ void *B, const int ldb);570+571+572+/*573+ * Routines with prefixes C and Z only574+ */575+void cblas_chemm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,576+ const enum CBLAS_UPLO Uplo, const int M, const int N,577+ const void *alpha, const void *A, const int lda,578+ const void *B, const int ldb, const void *beta,579+ void *C, const int ldc);580+void cblas_cherk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,581+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,582+ const float alpha, const void *A, const int lda,583+ const float beta, void *C, const int ldc);584+void cblas_cher2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,585+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,586+ const void *alpha, const void *A, const int lda,587+ const void *B, const int ldb, const float beta,588+ void *C, const int ldc);589+590+void cblas_zhemm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,591+ const enum CBLAS_UPLO Uplo, const int M, const int N,592+ const void *alpha, const void *A, const int lda,593+ const void *B, const int ldb, const void *beta,594+ void *C, const int ldc);595+void cblas_zherk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,596+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,597+ const double alpha, const void *A, const int lda,598+ const double beta, void *C, const int ldc);599+void cblas_zher2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,600+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,601+ const void *alpha, const void *A, const int lda,602+ const void *B, const int ldb, const double beta,603+ void *C, const int ldc);604+605+void cblas_xerbla(int p, const char *rout, const char *form, ...);606+607+__END_DECLS608+609+#endif /* __GSL_CBLAS_H__ */610diff -ruN iml-1.0.1-sage/gsl_cblas.h src/gsl_cblas.h611--- iml-1.0.1-sage/gsl_cblas.h 1970-01-01 01:00:00.000000000 +0100612+++ src/gsl_cblas.h 2007-02-15 07:51:41.000000000 +0100613@@ -0,0 +1,606 @@614+/* blas/gsl_cblas.h615+ *616+ * Copyright (C) 1996, 1997, 1998, 1999, 2000 Gerard Jungman617+ *618+ * This program is free software; you can redistribute it and/or modify619+ * it under the terms of the GNU General Public License as published by620+ * the Free Software Foundation; either version 2 of the License, or (at621+ * your option) any later version.622+ *623+ * This program is distributed in the hope that it will be useful, but624+ * WITHOUT ANY WARRANTY; without even the implied warranty of625+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU626+ * General Public License for more details.627+ *628+ * You should have received a copy of the GNU General Public License629+ * along with this program; if not, write to the Free Software630+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.631+ */632+633+/* This is a copy of the CBLAS standard header.634+ * We carry this around so we do not have to635+ * break our model for flexible BLAS functionality.636+ */637+638+#ifndef __GSL_CBLAS_H__639+#define __GSL_CBLAS_H__640+#include <stddef.h>641+642+#undef __BEGIN_DECLS643+#undef __END_DECLS644+#ifdef __cplusplus645+#define __BEGIN_DECLS extern "C" {646+#define __END_DECLS }647+#else648+#define __BEGIN_DECLS /* empty */649+#define __END_DECLS /* empty */650+#endif651+652+__BEGIN_DECLS653+654+/*655+ * Enumerated and derived types656+ */657+#define CBLAS_INDEX size_t /* this may vary between platforms */658+659+enum CBLAS_ORDER {CblasRowMajor=101, CblasColMajor=102};660+enum CBLAS_TRANSPOSE {CblasNoTrans=111, CblasTrans=112, CblasConjTrans=113};661+enum CBLAS_UPLO {CblasUpper=121, CblasLower=122};662+enum CBLAS_DIAG {CblasNonUnit=131, CblasUnit=132};663+enum CBLAS_SIDE {CblasLeft=141, CblasRight=142};664+665+/*666+ * ===========================================================================667+ * Prototypes for level 1 BLAS functions (complex are recast as routines)668+ * ===========================================================================669+ */670+float cblas_sdsdot(const int N, const float alpha, const float *X,671+ const int incX, const float *Y, const int incY);672+double cblas_dsdot(const int N, const float *X, const int incX, const float *Y,673+ const int incY);674+float cblas_sdot(const int N, const float *X, const int incX,675+ const float *Y, const int incY);676+double cblas_ddot(const int N, const double *X, const int incX,677+ const double *Y, const int incY);678+679+/*680+ * Functions having prefixes Z and C only681+ */682+void cblas_cdotu_sub(const int N, const void *X, const int incX,683+ const void *Y, const int incY, void *dotu);684+void cblas_cdotc_sub(const int N, const void *X, const int incX,685+ const void *Y, const int incY, void *dotc);686+687+void cblas_zdotu_sub(const int N, const void *X, const int incX,688+ const void *Y, const int incY, void *dotu);689+void cblas_zdotc_sub(const int N, const void *X, const int incX,690+ const void *Y, const int incY, void *dotc);691+692+693+/*694+ * Functions having prefixes S D SC DZ695+ */696+float cblas_snrm2(const int N, const float *X, const int incX);697+float cblas_sasum(const int N, const float *X, const int incX);698+699+double cblas_dnrm2(const int N, const double *X, const int incX);700+double cblas_dasum(const int N, const double *X, const int incX);701+702+float cblas_scnrm2(const int N, const void *X, const int incX);703+float cblas_scasum(const int N, const void *X, const int incX);704+705+double cblas_dznrm2(const int N, const void *X, const int incX);706+double cblas_dzasum(const int N, const void *X, const int incX);707+708+709+/*710+ * Functions having standard 4 prefixes (S D C Z)711+ */712+CBLAS_INDEX cblas_isamax(const int N, const float *X, const int incX);713+CBLAS_INDEX cblas_idamax(const int N, const double *X, const int incX);714+CBLAS_INDEX cblas_icamax(const int N, const void *X, const int incX);715+CBLAS_INDEX cblas_izamax(const int N, const void *X, const int incX);716+717+/*718+ * ===========================================================================719+ * Prototypes for level 1 BLAS routines720+ * ===========================================================================721+ */722+723+/*724+ * Routines with standard 4 prefixes (s, d, c, z)725+ */726+void cblas_sswap(const int N, float *X, const int incX,727+ float *Y, const int incY);728+void cblas_scopy(const int N, const float *X, const int incX,729+ float *Y, const int incY);730+void cblas_saxpy(const int N, const float alpha, const float *X,731+ const int incX, float *Y, const int incY);732+733+void cblas_dswap(const int N, double *X, const int incX,734+ double *Y, const int incY);735+void cblas_dcopy(const int N, const double *X, const int incX,736+ double *Y, const int incY);737+void cblas_daxpy(const int N, const double alpha, const double *X,738+ const int incX, double *Y, const int incY);739+740+void cblas_cswap(const int N, void *X, const int incX,741+ void *Y, const int incY);742+void cblas_ccopy(const int N, const void *X, const int incX,743+ void *Y, const int incY);744+void cblas_caxpy(const int N, const void *alpha, const void *X,745+ const int incX, void *Y, const int incY);746+747+void cblas_zswap(const int N, void *X, const int incX,748+ void *Y, const int incY);749+void cblas_zcopy(const int N, const void *X, const int incX,750+ void *Y, const int incY);751+void cblas_zaxpy(const int N, const void *alpha, const void *X,752+ const int incX, void *Y, const int incY);753+754+755+/*756+ * Routines with S and D prefix only757+ */758+void cblas_srotg(float *a, float *b, float *c, float *s);759+void cblas_srotmg(float *d1, float *d2, float *b1, const float b2, float *P);760+void cblas_srot(const int N, float *X, const int incX,761+ float *Y, const int incY, const float c, const float s);762+void cblas_srotm(const int N, float *X, const int incX,763+ float *Y, const int incY, const float *P);764+765+void cblas_drotg(double *a, double *b, double *c, double *s);766+void cblas_drotmg(double *d1, double *d2, double *b1, const double b2, double *P);767+void cblas_drot(const int N, double *X, const int incX,768+ double *Y, const int incY, const double c, const double s);769+void cblas_drotm(const int N, double *X, const int incX,770+ double *Y, const int incY, const double *P);771+772+773+/*774+ * Routines with S D C Z CS and ZD prefixes775+ */776+void cblas_sscal(const int N, const float alpha, float *X, const int incX);777+void cblas_dscal(const int N, const double alpha, double *X, const int incX);778+void cblas_cscal(const int N, const void *alpha, void *X, const int incX);779+void cblas_zscal(const int N, const void *alpha, void *X, const int incX);780+void cblas_csscal(const int N, const float alpha, void *X, const int incX);781+void cblas_zdscal(const int N, const double alpha, void *X, const int incX);782+783+/*784+ * ===========================================================================785+ * Prototypes for level 2 BLAS786+ * ===========================================================================787+ */788+789+/*790+ * Routines with standard 4 prefixes (S, D, C, Z)791+ */792+void cblas_sgemv(const enum CBLAS_ORDER order,793+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,794+ const float alpha, const float *A, const int lda,795+ const float *X, const int incX, const float beta,796+ float *Y, const int incY);797+void cblas_sgbmv(const enum CBLAS_ORDER order,798+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,799+ const int KL, const int KU, const float alpha,800+ const float *A, const int lda, const float *X,801+ const int incX, const float beta, float *Y, const int incY);802+void cblas_strmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,803+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,804+ const int N, const float *A, const int lda,805+ float *X, const int incX);806+void cblas_stbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,807+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,808+ const int N, const int K, const float *A, const int lda,809+ float *X, const int incX);810+void cblas_stpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,811+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,812+ const int N, const float *Ap, float *X, const int incX);813+void cblas_strsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,814+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,815+ const int N, const float *A, const int lda, float *X,816+ const int incX);817+void cblas_stbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,818+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,819+ const int N, const int K, const float *A, const int lda,820+ float *X, const int incX);821+void cblas_stpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,822+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,823+ const int N, const float *Ap, float *X, const int incX);824+825+void cblas_dgemv(const enum CBLAS_ORDER order,826+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,827+ const double alpha, const double *A, const int lda,828+ const double *X, const int incX, const double beta,829+ double *Y, const int incY);830+void cblas_dgbmv(const enum CBLAS_ORDER order,831+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,832+ const int KL, const int KU, const double alpha,833+ const double *A, const int lda, const double *X,834+ const int incX, const double beta, double *Y, const int incY);835+void cblas_dtrmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,836+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,837+ const int N, const double *A, const int lda,838+ double *X, const int incX);839+void cblas_dtbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,840+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,841+ const int N, const int K, const double *A, const int lda,842+ double *X, const int incX);843+void cblas_dtpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,844+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,845+ const int N, const double *Ap, double *X, const int incX);846+void cblas_dtrsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,847+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,848+ const int N, const double *A, const int lda, double *X,849+ const int incX);850+void cblas_dtbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,851+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,852+ const int N, const int K, const double *A, const int lda,853+ double *X, const int incX);854+void cblas_dtpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,855+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,856+ const int N, const double *Ap, double *X, const int incX);857+858+void cblas_cgemv(const enum CBLAS_ORDER order,859+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,860+ const void *alpha, const void *A, const int lda,861+ const void *X, const int incX, const void *beta,862+ void *Y, const int incY);863+void cblas_cgbmv(const enum CBLAS_ORDER order,864+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,865+ const int KL, const int KU, const void *alpha,866+ const void *A, const int lda, const void *X,867+ const int incX, const void *beta, void *Y, const int incY);868+void cblas_ctrmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,869+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,870+ const int N, const void *A, const int lda,871+ void *X, const int incX);872+void cblas_ctbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,873+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,874+ const int N, const int K, const void *A, const int lda,875+ void *X, const int incX);876+void cblas_ctpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,877+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,878+ const int N, const void *Ap, void *X, const int incX);879+void cblas_ctrsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,880+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,881+ const int N, const void *A, const int lda, void *X,882+ const int incX);883+void cblas_ctbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,884+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,885+ const int N, const int K, const void *A, const int lda,886+ void *X, const int incX);887+void cblas_ctpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,888+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,889+ const int N, const void *Ap, void *X, const int incX);890+891+void cblas_zgemv(const enum CBLAS_ORDER order,892+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,893+ const void *alpha, const void *A, const int lda,894+ const void *X, const int incX, const void *beta,895+ void *Y, const int incY);896+void cblas_zgbmv(const enum CBLAS_ORDER order,897+ const enum CBLAS_TRANSPOSE TransA, const int M, const int N,898+ const int KL, const int KU, const void *alpha,899+ const void *A, const int lda, const void *X,900+ const int incX, const void *beta, void *Y, const int incY);901+void cblas_ztrmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,902+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,903+ const int N, const void *A, const int lda,904+ void *X, const int incX);905+void cblas_ztbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,906+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,907+ const int N, const int K, const void *A, const int lda,908+ void *X, const int incX);909+void cblas_ztpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,910+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,911+ const int N, const void *Ap, void *X, const int incX);912+void cblas_ztrsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,913+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,914+ const int N, const void *A, const int lda, void *X,915+ const int incX);916+void cblas_ztbsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,917+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,918+ const int N, const int K, const void *A, const int lda,919+ void *X, const int incX);920+void cblas_ztpsv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,921+ const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_DIAG Diag,922+ const int N, const void *Ap, void *X, const int incX);923+924+925+/*926+ * Routines with S and D prefixes only927+ */928+void cblas_ssymv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,929+ const int N, const float alpha, const float *A,930+ const int lda, const float *X, const int incX,931+ const float beta, float *Y, const int incY);932+void cblas_ssbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,933+ const int N, const int K, const float alpha, const float *A,934+ const int lda, const float *X, const int incX,935+ const float beta, float *Y, const int incY);936+void cblas_sspmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,937+ const int N, const float alpha, const float *Ap,938+ const float *X, const int incX,939+ const float beta, float *Y, const int incY);940+void cblas_sger(const enum CBLAS_ORDER order, const int M, const int N,941+ const float alpha, const float *X, const int incX,942+ const float *Y, const int incY, float *A, const int lda);943+void cblas_ssyr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,944+ const int N, const float alpha, const float *X,945+ const int incX, float *A, const int lda);946+void cblas_sspr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,947+ const int N, const float alpha, const float *X,948+ const int incX, float *Ap);949+void cblas_ssyr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,950+ const int N, const float alpha, const float *X,951+ const int incX, const float *Y, const int incY, float *A,952+ const int lda);953+void cblas_sspr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,954+ const int N, const float alpha, const float *X,955+ const int incX, const float *Y, const int incY, float *A);956+957+void cblas_dsymv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,958+ const int N, const double alpha, const double *A,959+ const int lda, const double *X, const int incX,960+ const double beta, double *Y, const int incY);961+void cblas_dsbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,962+ const int N, const int K, const double alpha, const double *A,963+ const int lda, const double *X, const int incX,964+ const double beta, double *Y, const int incY);965+void cblas_dspmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,966+ const int N, const double alpha, const double *Ap,967+ const double *X, const int incX,968+ const double beta, double *Y, const int incY);969+void cblas_dger(const enum CBLAS_ORDER order, const int M, const int N,970+ const double alpha, const double *X, const int incX,971+ const double *Y, const int incY, double *A, const int lda);972+void cblas_dsyr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,973+ const int N, const double alpha, const double *X,974+ const int incX, double *A, const int lda);975+void cblas_dspr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,976+ const int N, const double alpha, const double *X,977+ const int incX, double *Ap);978+void cblas_dsyr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,979+ const int N, const double alpha, const double *X,980+ const int incX, const double *Y, const int incY, double *A,981+ const int lda);982+void cblas_dspr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,983+ const int N, const double alpha, const double *X,984+ const int incX, const double *Y, const int incY, double *A);985+986+987+/*988+ * Routines with C and Z prefixes only989+ */990+void cblas_chemv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,991+ const int N, const void *alpha, const void *A,992+ const int lda, const void *X, const int incX,993+ const void *beta, void *Y, const int incY);994+void cblas_chbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,995+ const int N, const int K, const void *alpha, const void *A,996+ const int lda, const void *X, const int incX,997+ const void *beta, void *Y, const int incY);998+void cblas_chpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,999+ const int N, const void *alpha, const void *Ap,1000+ const void *X, const int incX,1001+ const void *beta, void *Y, const int incY);1002+void cblas_cgeru(const enum CBLAS_ORDER order, const int M, const int N,1003+ const void *alpha, const void *X, const int incX,1004+ const void *Y, const int incY, void *A, const int lda);1005+void cblas_cgerc(const enum CBLAS_ORDER order, const int M, const int N,1006+ const void *alpha, const void *X, const int incX,1007+ const void *Y, const int incY, void *A, const int lda);1008+void cblas_cher(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,1009+ const int N, const float alpha, const void *X, const int incX,1010+ void *A, const int lda);1011+void cblas_chpr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,1012+ const int N, const float alpha, const void *X,1013+ const int incX, void *A);1014+void cblas_cher2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N,1015+ const void *alpha, const void *X, const int incX,1016+ const void *Y, const int incY, void *A, const int lda);1017+void cblas_chpr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N,1018+ const void *alpha, const void *X, const int incX,1019+ const void *Y, const int incY, void *Ap);1020+1021+void cblas_zhemv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,1022+ const int N, const void *alpha, const void *A,1023+ const int lda, const void *X, const int incX,1024+ const void *beta, void *Y, const int incY);1025+void cblas_zhbmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,1026+ const int N, const int K, const void *alpha, const void *A,1027+ const int lda, const void *X, const int incX,1028+ const void *beta, void *Y, const int incY);1029+void cblas_zhpmv(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,1030+ const int N, const void *alpha, const void *Ap,1031+ const void *X, const int incX,1032+ const void *beta, void *Y, const int incY);1033+void cblas_zgeru(const enum CBLAS_ORDER order, const int M, const int N,1034+ const void *alpha, const void *X, const int incX,1035+ const void *Y, const int incY, void *A, const int lda);1036+void cblas_zgerc(const enum CBLAS_ORDER order, const int M, const int N,1037+ const void *alpha, const void *X, const int incX,1038+ const void *Y, const int incY, void *A, const int lda);1039+void cblas_zher(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,1040+ const int N, const double alpha, const void *X, const int incX,1041+ void *A, const int lda);1042+void cblas_zhpr(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo,1043+ const int N, const double alpha, const void *X,1044+ const int incX, void *A);1045+void cblas_zher2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N,1046+ const void *alpha, const void *X, const int incX,1047+ const void *Y, const int incY, void *A, const int lda);1048+void cblas_zhpr2(const enum CBLAS_ORDER order, const enum CBLAS_UPLO Uplo, const int N,1049+ const void *alpha, const void *X, const int incX,1050+ const void *Y, const int incY, void *Ap);1051+1052+/*1053+ * ===========================================================================1054+ * Prototypes for level 3 BLAS1055+ * ===========================================================================1056+ */1057+1058+/*1059+ * Routines with standard 4 prefixes (S, D, C, Z)1060+ */1061+void cblas_sgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,1062+ const enum CBLAS_TRANSPOSE TransB, const int M, const int N,1063+ const int K, const float alpha, const float *A,1064+ const int lda, const float *B, const int ldb,1065+ const float beta, float *C, const int ldc);1066+void cblas_ssymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,1067+ const enum CBLAS_UPLO Uplo, const int M, const int N,1068+ const float alpha, const float *A, const int lda,1069+ const float *B, const int ldb, const float beta,1070+ float *C, const int ldc);1071+void cblas_ssyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,1072+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,1073+ const float alpha, const float *A, const int lda,1074+ const float beta, float *C, const int ldc);1075+void cblas_ssyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,1076+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,1077+ const float alpha, const float *A, const int lda,1078+ const float *B, const int ldb, const float beta,1079+ float *C, const int ldc);1080+void cblas_strmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,1081+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,1082+ const enum CBLAS_DIAG Diag, const int M, const int N,1083+ const float alpha, const float *A, const int lda,1084+ float *B, const int ldb);1085+void cblas_strsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,1086+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,1087+ const enum CBLAS_DIAG Diag, const int M, const int N,1088+ const float alpha, const float *A, const int lda,1089+ float *B, const int ldb);1090+1091+void cblas_dgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,1092+ const enum CBLAS_TRANSPOSE TransB, const int M, const int N,1093+ const int K, const double alpha, const double *A,1094+ const int lda, const double *B, const int ldb,1095+ const double beta, double *C, const int ldc);1096+void cblas_dsymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,1097+ const enum CBLAS_UPLO Uplo, const int M, const int N,1098+ const double alpha, const double *A, const int lda,1099+ const double *B, const int ldb, const double beta,1100+ double *C, const int ldc);1101+void cblas_dsyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,1102+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,1103+ const double alpha, const double *A, const int lda,1104+ const double beta, double *C, const int ldc);1105+void cblas_dsyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,1106+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,1107+ const double alpha, const double *A, const int lda,1108+ const double *B, const int ldb, const double beta,1109+ double *C, const int ldc);1110+void cblas_dtrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,1111+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,1112+ const enum CBLAS_DIAG Diag, const int M, const int N,1113+ const double alpha, const double *A, const int lda,1114+ double *B, const int ldb);1115+void cblas_dtrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,1116+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,1117+ const enum CBLAS_DIAG Diag, const int M, const int N,1118+ const double alpha, const double *A, const int lda,1119+ double *B, const int ldb);1120+1121+void cblas_cgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,1122+ const enum CBLAS_TRANSPOSE TransB, const int M, const int N,1123+ const int K, const void *alpha, const void *A,1124+ const int lda, const void *B, const int ldb,1125+ const void *beta, void *C, const int ldc);1126+void cblas_csymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,1127+ const enum CBLAS_UPLO Uplo, const int M, const int N,1128+ const void *alpha, const void *A, const int lda,1129+ const void *B, const int ldb, const void *beta,1130+ void *C, const int ldc);1131+void cblas_csyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,1132+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,1133+ const void *alpha, const void *A, const int lda,1134+ const void *beta, void *C, const int ldc);1135+void cblas_csyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,1136+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,1137+ const void *alpha, const void *A, const int lda,1138+ const void *B, const int ldb, const void *beta,1139+ void *C, const int ldc);1140+void cblas_ctrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,1141+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,1142+ const enum CBLAS_DIAG Diag, const int M, const int N,1143+ const void *alpha, const void *A, const int lda,1144+ void *B, const int ldb);1145+void cblas_ctrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,1146+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,1147+ const enum CBLAS_DIAG Diag, const int M, const int N,1148+ const void *alpha, const void *A, const int lda,1149+ void *B, const int ldb);1150+1151+void cblas_zgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA,1152+ const enum CBLAS_TRANSPOSE TransB, const int M, const int N,1153+ const int K, const void *alpha, const void *A,1154+ const int lda, const void *B, const int ldb,1155+ const void *beta, void *C, const int ldc);1156+void cblas_zsymm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,1157+ const enum CBLAS_UPLO Uplo, const int M, const int N,1158+ const void *alpha, const void *A, const int lda,1159+ const void *B, const int ldb, const void *beta,1160+ void *C, const int ldc);1161+void cblas_zsyrk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,1162+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,1163+ const void *alpha, const void *A, const int lda,1164+ const void *beta, void *C, const int ldc);1165+void cblas_zsyr2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,1166+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,1167+ const void *alpha, const void *A, const int lda,1168+ const void *B, const int ldb, const void *beta,1169+ void *C, const int ldc);1170+void cblas_ztrmm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,1171+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,1172+ const enum CBLAS_DIAG Diag, const int M, const int N,1173+ const void *alpha, const void *A, const int lda,1174+ void *B, const int ldb);1175+void cblas_ztrsm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,1176+ const enum CBLAS_UPLO Uplo, const enum CBLAS_TRANSPOSE TransA,1177+ const enum CBLAS_DIAG Diag, const int M, const int N,1178+ const void *alpha, const void *A, const int lda,1179+ void *B, const int ldb);1180+1181+1182+/*1183+ * Routines with prefixes C and Z only1184+ */1185+void cblas_chemm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,1186+ const enum CBLAS_UPLO Uplo, const int M, const int N,1187+ const void *alpha, const void *A, const int lda,1188+ const void *B, const int ldb, const void *beta,1189+ void *C, const int ldc);1190+void cblas_cherk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,1191+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,1192+ const float alpha, const void *A, const int lda,1193+ const float beta, void *C, const int ldc);1194+void cblas_cher2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,1195+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,1196+ const void *alpha, const void *A, const int lda,1197+ const void *B, const int ldb, const float beta,1198+ void *C, const int ldc);1199+1200+void cblas_zhemm(const enum CBLAS_ORDER Order, const enum CBLAS_SIDE Side,1201+ const enum CBLAS_UPLO Uplo, const int M, const int N,1202+ const void *alpha, const void *A, const int lda,1203+ const void *B, const int ldb, const void *beta,1204+ void *C, const int ldc);1205+void cblas_zherk(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,1206+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,1207+ const double alpha, const void *A, const int lda,1208+ const double beta, void *C, const int ldc);1209+void cblas_zher2k(const enum CBLAS_ORDER Order, const enum CBLAS_UPLO Uplo,1210+ const enum CBLAS_TRANSPOSE Trans, const int N, const int K,1211+ const void *alpha, const void *A, const int lda,1212+ const void *B, const int ldb, const double beta,1213+ void *C, const int ldc);1214+1215+void cblas_xerbla(int p, const char *rout, const char *form, ...);1216+1217+__END_DECLS1218+1219+#endif /* __GSL_CBLAS_H__ */122012211222