00001 extern "C" {
00002
00003
00004 void zdrot_( const long &N, std::complex<double> *x, const long &incx,
00005 std::complex<double> *y, const long &incy,
00006 const double &c, const double &s );
00007
00008 void zswap_( const long &N, std::complex<double> *x, const long &incx,
00009 std::complex<double> *y, const long &incy );
00010
00011 void zdscal_( const long &N, const double &alpha,
00012 std::complex<double> *x, const long &incx );
00013
00014 void zscal_( const long &N, const std::complex<double> &alpha,
00015 std::complex<double> *x, const long &incx );
00016
00017 void zcopy_( const long &N, const std::complex<double> *x, const long &incx,
00018 std::complex<double> *y, const long &incy );
00019
00020 void zaxpy_( const long &N, const std::complex<double> &alpha,
00021 const std::complex<double> *x, const long &incx,
00022 std::complex<double> *y, const long &incy );
00023
00024 std::complex<double> zdotu_( const long &N, const std::complex<double> *x,
00025 const long &incx, const std::complex<double> *y,
00026 const long &incy );
00027
00028 std::complex<double> zdotc_( const long &N, const std::complex<double> *x,
00029 const long &incx, const std::complex<double> *y,
00030 const long &incy );
00031
00032 double dznrm2_( const long &N, const std::complex<double> *x,
00033 const long &incx );
00034
00035 double dzasum_( const long &N, const std::complex<double> *x,
00036 const long &incx );
00037
00038 long izamax_( const long &N, const std::complex<double> *x, const long &incx );
00039
00040
00041
00042 void zgemv_( const char &trans, const long &M, const long &N,
00043 const std::complex<double> &alpha, const std::complex<double> *a,
00044 const long &lda, const std::complex<double> *x, const long &incx,
00045 const std::complex<double> &beta, std::complex<double> *y,
00046 const long &incy );
00047
00048 void zgbmv_( const char &trans, const long &M, const long &N,
00049 const long &KL, const long &KU,
00050 const std::complex<double> &alpha, const std::complex<double> *a,
00051 const long &lda, const std::complex<double> *x, const long &incx,
00052 const std::complex<double> &beta, std::complex<double> *y,
00053 const long &incy );
00054
00055 void zhemv_( const char &uplo, const long &N,
00056 const std::complex<double> &alpha, const std::complex<double> *a,
00057 const long &lda, const std::complex<double> *x, const long &incx,
00058 const std::complex<double> &beta, std::complex<double> *y,
00059 const long &incy );
00060
00061 void zhbmv_( const char &uplo, const long &N, const long &k,
00062 const std::complex<double> &alpha, const std::complex<double> *a,
00063 const long &lda, const std::complex<double> *x, const long &incx,
00064 const std::complex<double> &beta, std::complex<double> *y,
00065 const long &incy );
00066
00067 void zhpmv_( const char &uplo, const long &N,
00068 const std::complex<double> &alpha, const std::complex<double> *ap,
00069 const std::complex<double> *x, const long &incx,
00070 const std::complex<double> &beta, std::complex<double> *y,
00071 const long &incy );
00072
00073
00074 void ztrmv_( const char &uplo, const char &trans, const char &diag,
00075 const long &N, const std::complex<double> *a, const long &lda,
00076 std::complex<double> *x, const long &incx );
00077
00078 void ztbmv_( const char &uplo, const char &trans, const char &diag,
00079 const long &N, const long &k, const std::complex<double> *a,
00080 const long &lda, std::complex<double> *x, const long &incx );
00081
00082 void ztpmv_( const char &uplo, const char &trans, const char &diag,
00083 const long &N, const std::complex<double> *ap,
00084 std::complex<double> *x, const long &incx );
00085
00086
00087 void ztrsv_( const char &uplo, const char &trans, const char &diag,
00088 const long &N, const std::complex<double> *a, const long &lda,
00089 std::complex<double> *x, const long &incx );
00090
00091 void ztbsv_( const char &uplo, const char &trans, const char &diag,
00092 const long &N, const long &k, const std::complex<double> *a,
00093 const long &lda, std::complex<double> *x, const long &incx );
00094
00095 void ztpsv_( const char &uplo, const char &trans, const char &diag,
00096 const long &N, const std::complex<double> *ap,
00097 std::complex<double> *x, const long &incx );
00098
00099
00100 void zgeru_( const long &M, const long &N, const std::complex<double> &alpha,
00101 const std::complex<double> *x, const long &incx,
00102 const std::complex<double> *y, const long &incy,
00103 std::complex<double> *a, const long &lda );
00104
00105 void zgerc_( const long &M, const long &N, const std::complex<double> &alpha,
00106 const std::complex<double> *x, const long &incx,
00107 const std::complex<double> *y, const long &incy,
00108 std::complex<double> *a, const long &lda );
00109
00110 void zher_( const char &uplo, const long &N, const double &alpha,
00111 const std::complex<double> *x, const long &incx,
00112 std::complex<double> *a, const long &lda );
00113
00114
00115 void zhpr_( const char &uplo, const long &N, const double &alpha,
00116 const std::complex<double> *x, const long &incx,
00117 std::complex<double> *ap );
00118
00119
00120 void zher2_( const char &uplo, const long &N,
00121 const std::complex<double> &alpha, const std::complex<double> *x,
00122 const long &incx, const std::complex<double> *y,
00123 const long &incy, std::complex<double> *a, const long &lda );
00124
00125
00126 void zhpr2_( const char &uplo, const long &N,
00127 const std::complex<double> &alpha, const std::complex<double> *x,
00128 const long &incx, const std::complex<double> *y,
00129 const long &incy, std::complex<double> *ap );
00130
00131
00132
00133 void zgemm_( const char &transa, const char &transb, const long &M,
00134 const long &N, const long &k, const std::complex<double> &alpha,
00135 const std::complex<double> *a, const long &lda,
00136 const std::complex<double> *b, const long &ldb,
00137 const std::complex<double> &beta, std::complex<double> *c,
00138 const long &ldc );
00139
00140
00141 void zsymm_( const char &side, const char &uplo, const long &M,
00142 const long &N, const std::complex<double> &alpha,
00143 const std::complex<double> *a, const long &lda,
00144 const std::complex<double> *b, const long &ldb,
00145 const std::complex<double> &beta, std::complex<double> *c,
00146 const long &ldc );
00147
00148
00149 void zhemm_( const char &side, const char &uplo, const long &M,
00150 const long &N, const std::complex<double> &alpha,
00151 const std::complex<double> *a, const long &lda,
00152 const std::complex<double> *b, const long &ldb,
00153 const std::complex<double> &beta, std::complex<double> *c,
00154 const long &ldc );
00155
00156
00157 void zsyrk_( const char &uplo, const char &trans, const long &N,
00158 const long &k, const std::complex<double> &alpha,
00159 const std::complex<double> *a, const long &lda,
00160 const std::complex<double> &beta, std::complex<double> *c,
00161 const long &ldc );
00162
00163
00164 void zherk_( const char &uplo, const char &trans, const long &N,
00165 const long &k, const double &alpha,
00166 const std::complex<double> *a, const long &lda,
00167 const double &beta, std::complex<double> *c, const long &ldc );
00168
00169
00170 void zsyr2k_( const char &uplo, const char &trans, const long &N,
00171 const long &k, const std::complex<double> &alpha,
00172 const std::complex<double> *a, const long &lda,
00173 const std::complex<double> *b, const long &ldb,
00174 const std::complex<double> &beta, std::complex<double> *c,
00175 const long &ldc );
00176
00177
00178 void zher2k_( const char &uplo, const char &trans, const long &N,
00179 const long &k, const std::complex<double> &alpha,
00180 const std::complex<double> *a, const long &lda,
00181 const std::complex<double> *b, const long &ldb,
00182 const double &beta, std::complex<double> *c, const long &ldc );
00183
00184 void ztrmm_( const char &side, const char &uplo, const char &transa,
00185 const char &diag, const long &M, const long &N,
00186 const std::complex<double> &alpha, const std::complex<double> *a,
00187 const long &lda, std::complex<double> *b, const long &ldb );
00188
00189
00190 void ztrsm_( const char &side, const char &uplo, const char &transa,
00191 const char &diag, const long &M, const long &N,
00192 const std::complex<double> &alpha, const std::complex<double> *a,
00193 const long &lda, std::complex<double> *b, const long &ldb );
00194 }