00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #ifndef SPBLAS_H
00033 #define SPBLAS_H
00034
00035 #ifndef F77NAME
00036 # if defined(RIOS)
00037 # define F77NAME(x) x
00038 # else
00039 # define F77NAME(x) x##_
00040 # endif
00041 #endif
00042
00043 #ifdef COMPLEX_SUPPORT
00044 #include "complex.h"
00045 #endif
00046
00047 extern "C" {
00048
00049 void F77NAME(scoomm)
00050 (const int &transa, const int &m, const int &n, const int &k,
00051 const float &alpha,
00052 const int descra[], const float *val,
00053 const int *indx, const int *jndx, const int &nnz,
00054 const float *b, const int &ldb,
00055 const float &beta, float *c, const int &ldc,
00056 float *work, const int &lwork);
00057
00058 void F77NAME(scscmm)
00059 (const int &transa, const int &m, const int &n, const int &k,
00060 const float &alpha,
00061 const int descra[], const float *val,
00062 const int *indx, const int *pntr, const float *b, int &ldb,
00063 const float &beta, float *c, const int &ldc,
00064 float *work, const int &lwork);
00065
00066 void F77NAME(scsrmm)
00067 (const int &transa, const int &m, const int &n, const int &k,
00068 const float &alpha,
00069 const int descra[], const float *val,
00070 const int *indx, const int *pntr, const float *b, int &ldb,
00071 const float &beta, float *c, const int &ldc,
00072 float *work, const int &lwork);
00073
00074 void F77NAME(dcoomm)
00075 (const int &transa, const int &m, const int &n, const int &k,
00076 const double &alpha,
00077 const int descra[], const double *val,
00078 const int *indx, const int *jndx, const int &nnz,
00079 const double *b, const int &ldb,
00080 const double &beta, double *c, const int &ldc,
00081 double *work, const int &lwork);
00082
00083 void F77NAME(dcscmm)
00084 (const int &transa, const int &m, const int &n, const int &k,
00085 const double &alpha,
00086 const int descra[], const double *val,
00087 const int *indx, const int *pntr, const double *b, int &ldb,
00088 const double &beta, double *c, const int &ldc,
00089 double *work, const int &lwork);
00090
00091 void F77NAME(dcsrmm)
00092 (const int &transa, const int &m, const int &n, const int &k,
00093 const double &alpha,
00094 const int descra[], const double *val,
00095 const int *indx, const int *pntr, const double *b, int &ldb,
00096 const double &beta, double *c, const int &ldc,
00097 double *work, const int &lwork);
00098
00099
00100 void F77NAME(dcscsm)
00101 (const int &transa, const int &m, const int &n,
00102 const int &unitd, const double *dv, const double &alpha,
00103 const int descra[], const double *val,
00104 const int *indx, const int *pntr, const double *b, int &ldb,
00105 const double &beta, double *c, const int &ldc,
00106 double *work, const int &lwork);
00107
00108 void F77NAME(dcsrsm)
00109 (const int &transa, const int &m, const int &n,
00110 const int &unitd, const double *dv, const double &alpha,
00111 const int descra[], const double *val,
00112 const int *indx, const int *pntr, const double *b, int &ldb,
00113 const double &beta, double *c, const int &ldc,
00114 double *work, const int &lwork);
00115
00116 void F77NAME(scscsm)
00117 (const int &transa, const int &m, const int &n,
00118 const int &unitd, const float *dv, const float &alpha,
00119 const int descra[], const float *val,
00120 const int *indx, const int *pntr, const float *b, int &ldb,
00121 const float &beta, float *c, const int &ldc,
00122 float *work, const int &lwork);
00123
00124 void F77NAME(scsrsm)
00125 (const int &transa, const int &m, const int &n,
00126 const int &unitd, const float *dv, const float &alpha,
00127 const int descra[], const float *val,
00128 const int *indx, const int *pntr, const float *b, int &ldb,
00129 const float &beta, float *c, const int &ldc,
00130 float *work, const int &lwork);
00131
00132 #ifdef COMPLEX_SUPPORT
00133
00134 void F77NAME(zcoomm)
00135 (const int &transa, const int &m, const int &n, const int &k,
00136 const complex &alpha,
00137 const int descra[], const complex *val,
00138 const int *indx, const int *jndx, const int &nnz,
00139 const complex *b, const int &ldb,
00140 const complex &beta, complex *c, const int &ldc,
00141 complex *work, const int &lwork);
00142
00143 void F77NAME(zcscmm)
00144 (const int &transa, const int &m, const int &n, const int &k,
00145 const complex &alpha,
00146 const int descra[], const complex *val,
00147 const int *indx, const int *pntr, const complex *b, int &ldb,
00148 const complex &beta, complex *c, const int &ldc,
00149 complex *work, const int &lwork);
00150
00151 void F77NAME(zcsrmm)
00152 (const int &transa, const int &m, const int &n, const int &k,
00153 const complex &alpha,
00154 const int descra[], const complex *val,
00155 const int *indx, const int *pntr, const complex *b, int &ldb,
00156 const complex &beta, complex *c, const int &ldc,
00157 complex *work, const int &lwork);
00158
00159 void F77NAME(zcscsm)
00160 (const int &transa, const int &m, const int &n,
00161 const int &unitd, const complex *dv, const complex &alpha,
00162 const int descra[], const complex *val,
00163 const int *indx, const int *pntr, const complex *b, int &ldb,
00164 const complex &beta, complex *c, const int &ldc,
00165 complex *work, const int &lwork);
00166
00167 void F77NAME(zcsrsm)
00168 (const int &transa, const int &m, const int &n,
00169 const int &unitd, const complex *dv, const complex &alpha,
00170 const int descra[], const complex *val,
00171 const int *indx, const int *pntr, const complex *b, int &ldb,
00172 const complex &beta, complex *c, const int &ldc,
00173 complex *work, const int &lwork);
00174
00175
00176 #endif
00177
00178
00179
00180
00181 }
00182
00183 #endif