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