annotate armadillo-2.4.4/src/wrap_libs.cpp @ 44:4fd0ce6f1f02

corrected bass attenuation
author matthiasm
date Mon, 21 May 2012 15:19:14 +0100
parents 8b6102e2a9b0
children
rev   line source
max@0 1 #include "armadillo_bits/config.hpp"
max@0 2 #include "armadillo_bits/typedef_blas_int.hpp"
max@0 3
max@0 4 #undef ARMA_USE_WRAPPER
max@0 5 #include "armadillo_bits/compiler_setup.hpp"
max@0 6
max@0 7 #include "armadillo_bits/undefine_conflicts.hpp"
max@0 8 #include "armadillo_bits/include_atlas.hpp"
max@0 9
max@0 10
max@0 11 namespace arma
max@0 12 {
max@0 13
max@0 14 #include "armadillo_bits/blas_bones.hpp"
max@0 15 #include "armadillo_bits/lapack_bones.hpp"
max@0 16
max@0 17 // at this stage we have prototypes for the real blas, lapack and atlas functions
max@0 18
max@0 19 // now we make the wrapper functions
max@0 20
max@0 21
max@0 22 extern "C"
max@0 23 {
max@0 24 #if defined(ARMA_USE_BLAS)
max@0 25
max@0 26 float arma_fortran_prefix(arma_sdot)(blas_int* n, const float* x, blas_int* incx, const float* y, blas_int* incy)
max@0 27 {
max@0 28 return arma_fortran_noprefix(arma_sdot)(n, x, incx, y, incy);
max@0 29 }
max@0 30
max@0 31 double arma_fortran_prefix(arma_ddot)(blas_int* n, const double* x, blas_int* incx, const double* y, blas_int* incy)
max@0 32 {
max@0 33 return arma_fortran_noprefix(arma_ddot)(n, x, incx, y, incy);
max@0 34 }
max@0 35
max@0 36
max@0 37
max@0 38 void arma_fortran_prefix(arma_sgemv)(const char* transA, const blas_int* m, const blas_int* n, const float* alpha, const float* A, const blas_int* ldA, const float* x, const blas_int* incx, const float* beta, float* y, const blas_int* incy)
max@0 39 {
max@0 40 arma_fortran_noprefix(arma_sgemv)(transA, m, n, alpha, A, ldA, x, incx, beta, y, incy);
max@0 41 }
max@0 42
max@0 43 void arma_fortran_prefix(arma_dgemv)(const char* transA, const blas_int* m, const blas_int* n, const double* alpha, const double* A, const blas_int* ldA, const double* x, const blas_int* incx, const double* beta, double* y, const blas_int* incy)
max@0 44 {
max@0 45 arma_fortran_noprefix(arma_dgemv)(transA, m, n, alpha, A, ldA, x, incx, beta, y, incy);
max@0 46 }
max@0 47
max@0 48 void arma_fortran_prefix(arma_cgemv)(const char* transA, const blas_int* m, const blas_int* n, const void* alpha, const void* A, const blas_int* ldA, const void* x, const blas_int* incx, const void* beta, void* y, const blas_int* incy)
max@0 49 {
max@0 50 arma_fortran_noprefix(arma_cgemv)(transA, m, n, alpha, A, ldA, x, incx, beta, y, incy);
max@0 51 }
max@0 52
max@0 53 void arma_fortran_prefix(arma_zgemv)(const char* transA, const blas_int* m, const blas_int* n, const void* alpha, const void* A, const blas_int* ldA, const void* x, const blas_int* incx, const void* beta, void* y, const blas_int* incy)
max@0 54 {
max@0 55 arma_fortran_noprefix(arma_zgemv)(transA, m, n, alpha, A, ldA, x, incx, beta, y, incy);
max@0 56 }
max@0 57
max@0 58
max@0 59
max@0 60 void arma_fortran_prefix(arma_sgemm)(const char* transA, const char* transB, const blas_int* m, const blas_int* n, const blas_int* k, const float* alpha, const float* A, const blas_int* ldA, const float* B, const blas_int* ldB, const float* beta, float* C, const blas_int* ldC)
max@0 61 {
max@0 62 arma_fortran_noprefix(arma_sgemm)(transA, transB, m, n, k, alpha, A, ldA, B, ldB, beta, C, ldC);
max@0 63 }
max@0 64
max@0 65 void arma_fortran_prefix(arma_dgemm)(const char* transA, const char* transB, const blas_int* m, const blas_int* n, const blas_int* k, const double* alpha, const double* A, const blas_int* ldA, const double* B, const blas_int* ldB, const double* beta, double* C, const blas_int* ldC)
max@0 66 {
max@0 67 arma_fortran_noprefix(arma_dgemm)(transA, transB, m, n, k, alpha, A, ldA, B, ldB, beta, C, ldC);
max@0 68 }
max@0 69
max@0 70 void arma_fortran_prefix(arma_cgemm)(const char* transA, const char* transB, const blas_int* m, const blas_int* n, const blas_int* k, const void* alpha, const void* A, const blas_int* ldA, const void* B, const blas_int* ldB, const void* beta, void* C, const blas_int* ldC)
max@0 71 {
max@0 72 arma_fortran_noprefix(arma_cgemm)(transA, transB, m, n, k, alpha, A, ldA, B, ldB, beta, C, ldC);
max@0 73 }
max@0 74
max@0 75 void arma_fortran_prefix(arma_zgemm)(const char* transA, const char* transB, const blas_int* m, const blas_int* n, const blas_int* k, const void* alpha, const void* A, const blas_int* ldA, const void* B, const blas_int* ldB, const void* beta, void* C, const blas_int* ldC)
max@0 76 {
max@0 77 arma_fortran_noprefix(arma_zgemm)(transA, transB, m, n, k, alpha, A, ldA, B, ldB, beta, C, ldC);
max@0 78 }
max@0 79
max@0 80 #endif
max@0 81
max@0 82
max@0 83
max@0 84 #if defined(ARMA_USE_LAPACK)
max@0 85
max@0 86 void arma_fortran_prefix(arma_sgetrf)(blas_int* m, blas_int* n, float* a, blas_int* lda, blas_int* ipiv, blas_int* info)
max@0 87 {
max@0 88 arma_fortran_noprefix(arma_sgetrf)(m, n, a, lda, ipiv, info);
max@0 89 }
max@0 90
max@0 91 void arma_fortran_prefix(arma_dgetrf)(blas_int* m, blas_int* n, double* a, blas_int* lda, blas_int* ipiv, blas_int* info)
max@0 92 {
max@0 93 arma_fortran_noprefix(arma_dgetrf)(m, n, a, lda, ipiv, info);
max@0 94 }
max@0 95
max@0 96 void arma_fortran_prefix(arma_cgetrf)(blas_int* m, blas_int* n, void* a, blas_int* lda, blas_int* ipiv, blas_int* info)
max@0 97 {
max@0 98 arma_fortran_noprefix(arma_cgetrf)(m, n, a, lda, ipiv, info);
max@0 99 }
max@0 100
max@0 101 void arma_fortran_prefix(arma_zgetrf)(blas_int* m, blas_int* n, void* a, blas_int* lda, blas_int* ipiv, blas_int* info)
max@0 102 {
max@0 103 arma_fortran_noprefix(arma_zgetrf)(m, n, a, lda, ipiv, info);
max@0 104 }
max@0 105
max@0 106
max@0 107
max@0 108 void arma_fortran_prefix(arma_sgetri)(blas_int* n, float* a, blas_int* lda, blas_int* ipiv, float* work, blas_int* lwork, blas_int* info)
max@0 109 {
max@0 110 arma_fortran_noprefix(arma_sgetri)(n, a, lda, ipiv, work, lwork, info);
max@0 111 }
max@0 112
max@0 113 void arma_fortran_prefix(arma_dgetri)(blas_int* n, double* a, blas_int* lda, blas_int* ipiv, double* work, blas_int* lwork, blas_int* info)
max@0 114 {
max@0 115 arma_fortran_noprefix(arma_dgetri)(n, a, lda, ipiv, work, lwork, info);
max@0 116 }
max@0 117
max@0 118 void arma_fortran_prefix(arma_cgetri)(blas_int* n, void* a, blas_int* lda, blas_int* ipiv, void* work, blas_int* lwork, blas_int* info)
max@0 119 {
max@0 120 arma_fortran_noprefix(arma_cgetri)(n, a, lda, ipiv, work, lwork, info);
max@0 121 }
max@0 122
max@0 123 void arma_fortran_prefix(arma_zgetri)(blas_int* n, void* a, blas_int* lda, blas_int* ipiv, void* work, blas_int* lwork, blas_int* info)
max@0 124 {
max@0 125 arma_fortran_noprefix(arma_zgetri)(n, a, lda, ipiv, work, lwork, info);
max@0 126 }
max@0 127
max@0 128
max@0 129
max@0 130 void arma_fortran_prefix(arma_strtri)(char* uplo, char* diag, blas_int* n, float* a, blas_int* lda, blas_int* info)
max@0 131 {
max@0 132 arma_fortran_noprefix(arma_strtri)(uplo, diag, n, a, lda, info);
max@0 133 }
max@0 134
max@0 135 void arma_fortran_prefix(arma_dtrtri)(char* uplo, char* diag, blas_int* n, double* a, blas_int* lda, blas_int* info)
max@0 136 {
max@0 137 arma_fortran_noprefix(arma_dtrtri)(uplo, diag, n, a, lda, info);
max@0 138 }
max@0 139
max@0 140 void arma_fortran_prefix(arma_ctrtri)(char* uplo, char* diag, blas_int* n, void* a, blas_int* lda, blas_int* info)
max@0 141 {
max@0 142 arma_fortran_noprefix(arma_ctrtri)(uplo, diag, n, a, lda, info);
max@0 143 }
max@0 144
max@0 145 void arma_fortran_prefix(arma_ztrtri)(char* uplo, char* diag, blas_int* n, void* a, blas_int* lda, blas_int* info)
max@0 146 {
max@0 147 arma_fortran_noprefix(arma_ztrtri)(uplo, diag, n, a, lda, info);
max@0 148 }
max@0 149
max@0 150
max@0 151
max@0 152 void arma_fortran_prefix(arma_ssyev)(char* jobz, char* uplo, blas_int* n, float* a, blas_int* lda, float* w, float* work, blas_int* lwork, blas_int* info)
max@0 153 {
max@0 154 arma_fortran_noprefix(arma_ssyev)(jobz, uplo, n, a, lda, w, work, lwork, info);
max@0 155 }
max@0 156
max@0 157 void arma_fortran_prefix(arma_dsyev)(char* jobz, char* uplo, blas_int* n, double* a, blas_int* lda, double* w, double* work, blas_int* lwork, blas_int* info)
max@0 158 {
max@0 159 arma_fortran_noprefix(arma_dsyev)(jobz, uplo, n, a, lda, w, work, lwork, info);
max@0 160 }
max@0 161
max@0 162
max@0 163
max@0 164 void arma_fortran_prefix(arma_cheev)(char* jobz, char* uplo, blas_int* n, void* a, blas_int* lda, float* w, void* work, blas_int* lwork, float* rwork, blas_int* info)
max@0 165 {
max@0 166 arma_fortran_noprefix(arma_cheev)(jobz, uplo, n, a, lda, w, work, lwork, rwork, info);
max@0 167 }
max@0 168
max@0 169 void arma_fortran_prefix(arma_zheev)(char* jobz, char* uplo, blas_int* n, void* a, blas_int* lda, double* w, void* work, blas_int* lwork, double* rwork, blas_int* info)
max@0 170 {
max@0 171 arma_fortran_noprefix(arma_zheev)(jobz, uplo, n, a, lda, w, work, lwork, rwork, info);
max@0 172 }
max@0 173
max@0 174
max@0 175
max@0 176 void arma_fortran_prefix(arma_sgeev)(char* jobvl, char* jobvr, blas_int* n, float* a, blas_int* lda, float* wr, float* wi, float* vl, blas_int* ldvl, float* vr, blas_int* ldvr, float* work, blas_int* lwork, blas_int* info)
max@0 177 {
max@0 178 arma_fortran_noprefix(arma_sgeev)(jobvl, jobvr, n, a, lda, wr, wi, vl, ldvl, vr, ldvr, work, lwork, info);
max@0 179 }
max@0 180
max@0 181 void arma_fortran_prefix(arma_dgeev)(char* jobvl, char* jobvr, blas_int* n, double* a, blas_int* lda, double* wr, double* wi, double* vl, blas_int* ldvl, double* vr, blas_int* ldvr, double* work, blas_int* lwork, blas_int* info)
max@0 182 {
max@0 183 arma_fortran_noprefix(arma_dgeev)(jobvl, jobvr, n, a, lda, wr, wi, vl, ldvl, vr, ldvr, work, lwork, info);
max@0 184 }
max@0 185
max@0 186
max@0 187
max@0 188 void arma_fortran_prefix(arma_cgeev)(char* jobvl, char* jobvr, blas_int* n, void* a, blas_int* lda, void* w, void* vl, blas_int* ldvl, void* vr, blas_int* ldvr, void* work, blas_int* lwork, float* rwork, blas_int* info)
max@0 189 {
max@0 190 arma_fortran_noprefix(arma_cgeev)(jobvl, jobvr, n, a, lda, w, vl, ldvl, vr, ldvr, work, lwork, rwork, info);
max@0 191 }
max@0 192
max@0 193 void arma_fortran_prefix(arma_zgeev)(char* jobvl, char* jobvr, blas_int* n, void* a, blas_int* lda, void* w, void* vl, blas_int* ldvl, void* vr, blas_int* ldvr, void* work, blas_int* lwork, double* rwork, blas_int* info)
max@0 194 {
max@0 195 arma_fortran_noprefix(arma_zgeev)(jobvl, jobvr, n, a, lda, w, vl, ldvl, vr, ldvr, work, lwork, rwork, info);
max@0 196 }
max@0 197
max@0 198
max@0 199
max@0 200 void arma_fortran_prefix(arma_spotrf)(char* uplo, blas_int* n, float* a, blas_int* lda, blas_int* info)
max@0 201 {
max@0 202 arma_fortran_noprefix(arma_spotrf)(uplo, n, a, lda, info);
max@0 203 }
max@0 204
max@0 205 void arma_fortran_prefix(arma_dpotrf)(char* uplo, blas_int* n, double* a, blas_int* lda, blas_int* info)
max@0 206 {
max@0 207 arma_fortran_noprefix(arma_dpotrf)(uplo, n, a, lda, info);
max@0 208 }
max@0 209
max@0 210 void arma_fortran_prefix(arma_cpotrf)(char* uplo, blas_int* n, void* a, blas_int* lda, blas_int* info)
max@0 211 {
max@0 212 arma_fortran_noprefix(arma_cpotrf)(uplo, n, a, lda, info);
max@0 213 }
max@0 214
max@0 215 void arma_fortran_prefix(arma_zpotrf)(char* uplo, blas_int* n, void* a, blas_int* lda, blas_int* info)
max@0 216 {
max@0 217 arma_fortran_noprefix(arma_zpotrf)(uplo, n, a, lda, info);
max@0 218 }
max@0 219
max@0 220
max@0 221
max@0 222 void arma_fortran_prefix(arma_spotri)(char* uplo, blas_int* n, float* a, blas_int* lda, blas_int* info)
max@0 223 {
max@0 224 arma_fortran_noprefix(arma_spotri)(uplo, n, a, lda, info);
max@0 225 }
max@0 226
max@0 227 void arma_fortran_prefix(arma_dpotri)(char* uplo, blas_int* n, double* a, blas_int* lda, blas_int* info)
max@0 228 {
max@0 229 arma_fortran_noprefix(arma_dpotri)(uplo, n, a, lda, info);
max@0 230 }
max@0 231
max@0 232 void arma_fortran_prefix(arma_cpotri)(char* uplo, blas_int* n, void* a, blas_int* lda, blas_int* info)
max@0 233 {
max@0 234 arma_fortran_noprefix(arma_cpotri)(uplo, n, a, lda, info);
max@0 235 }
max@0 236
max@0 237 void arma_fortran_prefix(arma_zpotri)(char* uplo, blas_int* n, void* a, blas_int* lda, blas_int* info)
max@0 238 {
max@0 239 arma_fortran_noprefix(arma_zpotri)(uplo, n, a, lda, info);
max@0 240 }
max@0 241
max@0 242
max@0 243
max@0 244 void arma_fortran_prefix(arma_sgeqrf)(blas_int* m, blas_int* n, float* a, blas_int* lda, float* tau, float* work, blas_int* lwork, blas_int* info)
max@0 245 {
max@0 246 arma_fortran_noprefix(arma_sgeqrf)(m, n, a, lda, tau, work, lwork, info);
max@0 247 }
max@0 248
max@0 249 void arma_fortran_prefix(arma_dgeqrf)(blas_int* m, blas_int* n, double* a, blas_int* lda, double* tau, double* work, blas_int* lwork, blas_int* info)
max@0 250 {
max@0 251 arma_fortran_noprefix(arma_dgeqrf)(m, n, a, lda, tau, work, lwork, info);
max@0 252 }
max@0 253
max@0 254 void arma_fortran_prefix(arma_cgeqrf)(blas_int* m, blas_int* n, void* a, blas_int* lda, void* tau, void* work, blas_int* lwork, blas_int* info)
max@0 255 {
max@0 256 arma_fortran_noprefix(arma_cgeqrf)(m, n, a, lda, tau, work, lwork, info);
max@0 257 }
max@0 258
max@0 259 void arma_fortran_prefix(arma_zgeqrf)(blas_int* m, blas_int* n, void* a, blas_int* lda, void* tau, void* work, blas_int* lwork, blas_int* info)
max@0 260 {
max@0 261 arma_fortran_noprefix(arma_zgeqrf)(m, n, a, lda, tau, work, lwork, info);
max@0 262 }
max@0 263
max@0 264
max@0 265
max@0 266 void arma_fortran_prefix(arma_sorgqr)(blas_int* m, blas_int* n, blas_int* k, float* a, blas_int* lda, float* tau, float* work, blas_int* lwork, blas_int* info)
max@0 267 {
max@0 268 arma_fortran_noprefix(arma_sorgqr)(m, n, k, a, lda, tau, work, lwork, info);
max@0 269 }
max@0 270
max@0 271 void arma_fortran_prefix(arma_dorgqr)(blas_int* m, blas_int* n, blas_int* k, double* a, blas_int* lda, double* tau, double* work, blas_int* lwork, blas_int* info)
max@0 272 {
max@0 273 arma_fortran_noprefix(arma_dorgqr)(m, n, k, a, lda, tau, work, lwork, info);
max@0 274 }
max@0 275
max@0 276
max@0 277
max@0 278 void arma_fortran_prefix(arma_cungqr)(blas_int* m, blas_int* n, blas_int* k, void* a, blas_int* lda, void* tau, void* work, blas_int* lwork, blas_int* info)
max@0 279 {
max@0 280 arma_fortran_noprefix(arma_cungqr)(m, n, k, a, lda, tau, work, lwork, info);
max@0 281 }
max@0 282
max@0 283 void arma_fortran_prefix(arma_zungqr)(blas_int* m, blas_int* n, blas_int* k, void* a, blas_int* lda, void* tau, void* work, blas_int* lwork, blas_int* info)
max@0 284 {
max@0 285 arma_fortran_noprefix(arma_zungqr)(m, n, k, a, lda, tau, work, lwork, info);
max@0 286 }
max@0 287
max@0 288
max@0 289
max@0 290 void arma_fortran_prefix(arma_sgesvd)(char* jobu, char* jobvt, blas_int* m, blas_int* n, float* a, blas_int* lda, float* s, float* u, blas_int* ldu, float* vt, blas_int* ldvt, float* work, blas_int* lwork, blas_int* info)
max@0 291 {
max@0 292 arma_fortran_noprefix(arma_sgesvd)(jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, info);
max@0 293 }
max@0 294
max@0 295 void arma_fortran_prefix(arma_dgesvd)(char* jobu, char* jobvt, blas_int* m, blas_int* n, double* a, blas_int* lda, double* s, double* u, blas_int* ldu, double* vt, blas_int* ldvt, double* work, blas_int* lwork, blas_int* info)
max@0 296 {
max@0 297 arma_fortran_noprefix(arma_dgesvd)(jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, info);
max@0 298 }
max@0 299
max@0 300
max@0 301
max@0 302 void arma_fortran_prefix(arma_cgesvd)(char* jobu, char* jobvt, blas_int* m, blas_int* n, void* a, blas_int* lda, float* s, void* u, blas_int* ldu, void* vt, blas_int* ldvt, void* work, blas_int* lwork, float* rwork, blas_int* info)
max@0 303 {
max@0 304 arma_fortran_noprefix(arma_cgesvd)(jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, rwork, info);
max@0 305 }
max@0 306
max@0 307 void arma_fortran_prefix(arma_zgesvd)(char* jobu, char* jobvt, blas_int* m, blas_int* n, void* a, blas_int* lda, double* s, void* u, blas_int* ldu, void* vt, blas_int* ldvt, void* work, blas_int* lwork, double* rwork, blas_int* info)
max@0 308 {
max@0 309 arma_fortran_noprefix(arma_zgesvd)(jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, rwork, info);
max@0 310 }
max@0 311
max@0 312
max@0 313
max@0 314 void arma_fortran_prefix(arma_sgesv)(blas_int* n, blas_int* nrhs, float* a, blas_int* lda, blas_int* ipiv, float* b, blas_int* ldb, blas_int* info)
max@0 315 {
max@0 316 arma_fortran_noprefix(arma_sgesv)(n, nrhs, a, lda, ipiv, b, ldb, info);
max@0 317 }
max@0 318
max@0 319 void arma_fortran_prefix(arma_dgesv)(blas_int* n, blas_int* nrhs, double* a, blas_int* lda, blas_int* ipiv, double* b, blas_int* ldb, blas_int* info)
max@0 320 {
max@0 321 arma_fortran_noprefix(arma_dgesv)(n, nrhs, a, lda, ipiv, b, ldb, info);
max@0 322 }
max@0 323
max@0 324 void arma_fortran_prefix(arma_cgesv)(blas_int* n, blas_int* nrhs, void* a, blas_int* lda, blas_int* ipiv, void* b, blas_int* ldb, blas_int* info)
max@0 325 {
max@0 326 arma_fortran_noprefix(arma_cgesv)(n, nrhs, a, lda, ipiv, b, ldb, info);
max@0 327 }
max@0 328
max@0 329 void arma_fortran_prefix(arma_zgesv)(blas_int* n, blas_int* nrhs, void* a, blas_int* lda, blas_int* ipiv, void* b, blas_int* ldb, blas_int* info)
max@0 330 {
max@0 331 arma_fortran_noprefix(arma_zgesv)(n, nrhs, a, lda, ipiv, b, ldb, info);
max@0 332 }
max@0 333
max@0 334
max@0 335
max@0 336 void arma_fortran_prefix(arma_sgels)(char* trans, blas_int* m, blas_int* n, blas_int* nrhs, float* a, blas_int* lda, float* b, blas_int* ldb, float* work, blas_int* lwork, blas_int* info)
max@0 337 {
max@0 338 arma_fortran_noprefix(arma_sgels)(trans, m, n, nrhs, a, lda, b, ldb, work, lwork, info);
max@0 339 }
max@0 340
max@0 341 void arma_fortran_prefix(arma_dgels)(char* trans, blas_int* m, blas_int* n, blas_int* nrhs, double* a, blas_int* lda, double* b, blas_int* ldb, double* work, blas_int* lwork, blas_int* info)
max@0 342 {
max@0 343 arma_fortran_noprefix(arma_dgels)(trans, m, n, nrhs, a, lda, b, ldb, work, lwork, info);
max@0 344 }
max@0 345
max@0 346 void arma_fortran_prefix(arma_cgels)(char* trans, blas_int* m, blas_int* n, blas_int* nrhs, void* a, blas_int* lda, void* b, blas_int* ldb, void* work, blas_int* lwork, blas_int* info)
max@0 347 {
max@0 348 arma_fortran_noprefix(arma_cgels)(trans, m, n, nrhs, a, lda, b, ldb, work, lwork, info);
max@0 349 }
max@0 350
max@0 351 void arma_fortran_prefix(arma_zgels)(char* trans, blas_int* m, blas_int* n, blas_int* nrhs, void* a, blas_int* lda, void* b, blas_int* ldb, void* work, blas_int* lwork, blas_int* info)
max@0 352 {
max@0 353 arma_fortran_noprefix(arma_zgels)(trans, m, n, nrhs, a, lda, b, ldb, work, lwork, info);
max@0 354 }
max@0 355
max@0 356
max@0 357
max@0 358
max@0 359 void arma_fortran_prefix(arma_strtrs)(char* uplo, char* trans, char* diag, blas_int* n, blas_int* nrhs, const float* a, blas_int* lda, float* b, blas_int* ldb, blas_int* info)
max@0 360 {
max@0 361 arma_fortran_noprefix(arma_strtrs)(uplo, trans, diag, n, nrhs, a, lda, b, ldb, info);
max@0 362 }
max@0 363
max@0 364 void arma_fortran_prefix(arma_dtrtrs)(char* uplo, char* trans, char* diag, blas_int* n, blas_int* nrhs, const double* a, blas_int* lda, double* b, blas_int* ldb, blas_int* info)
max@0 365 {
max@0 366 arma_fortran_noprefix(arma_dtrtrs)(uplo, trans, diag, n, nrhs, a, lda, b, ldb, info);
max@0 367 }
max@0 368
max@0 369 void arma_fortran_prefix(arma_ctrtrs)(char* uplo, char* trans, char* diag, blas_int* n, blas_int* nrhs, const void* a, blas_int* lda, void* b, blas_int* ldb, blas_int* info)
max@0 370 {
max@0 371 arma_fortran_noprefix(arma_ctrtrs)(uplo, trans, diag, n, nrhs, a, lda, b, ldb, info);
max@0 372 }
max@0 373
max@0 374 void arma_fortran_prefix(arma_ztrtrs)(char* uplo, char* trans, char* diag, blas_int* n, blas_int* nrhs, const void* a, blas_int* lda, void* b, blas_int* ldb, blas_int* info)
max@0 375 {
max@0 376 arma_fortran_noprefix(arma_ztrtrs)(uplo, trans, diag, n, nrhs, a, lda, b, ldb, info);
max@0 377 }
max@0 378
max@0 379
max@0 380
max@0 381
max@0 382 void arma_fortran_prefix(arma_sgees)(char* jobvs, char* sort, blas_int* select, blas_int* n, float* a, blas_int* lda, blas_int* sdim, float* wr, float* wi, float* vs, blas_int* ldvs, float* work, blas_int* lwork, blas_int* bwork, blas_int* info)
max@0 383 {
max@0 384 arma_fortran_noprefix(arma_sgees)(jobvs, sort, select, n, a, lda, sdim, wr, wi, vs, ldvs, work, lwork, bwork, info);
max@0 385 }
max@0 386
max@0 387 void arma_fortran_prefix(arma_dgees)(char* jobvs, char* sort, blas_int* select, blas_int* n, double* a, blas_int* lda, blas_int* sdim, double* wr, double* wi, double* vs, blas_int* ldvs, double* work, blas_int* lwork, blas_int* bwork, blas_int* info)
max@0 388 {
max@0 389 arma_fortran_noprefix(arma_dgees)(jobvs, sort, select, n, a, lda, sdim, wr, wi, vs, ldvs, work, lwork, bwork, info);
max@0 390 }
max@0 391
max@0 392
max@0 393
max@0 394 void arma_fortran_prefix(arma_cgees)(char* jobvs, char* sort, blas_int* select, blas_int* n, void* a, blas_int* lda, blas_int* sdim, void* w, void* vs, blas_int* ldvs, void* work, blas_int* lwork, float* rwork, blas_int* bwork, blas_int* info)
max@0 395 {
max@0 396 arma_fortran_noprefix(arma_cgees)(jobvs, sort, select, n, a, lda, sdim, w, vs, ldvs, work, lwork, rwork, bwork, info);
max@0 397 }
max@0 398
max@0 399 void arma_fortran_prefix(arma_zgees)(char* jobvs, char* sort, blas_int* select, blas_int* n, void* a, blas_int* lda, blas_int* sdim, void* w, void* vs, blas_int* ldvs, void* work, blas_int* lwork, double* rwork, blas_int* bwork, blas_int* info)
max@0 400 {
max@0 401 arma_fortran_noprefix(arma_zgees)(jobvs, sort, select, n, a, lda, sdim, w, vs, ldvs, work, lwork, rwork, bwork, info);
max@0 402 }
max@0 403
max@0 404
max@0 405
max@0 406 void arma_fortran_prefix(arma_strsyl)(char* transa, char* transb, blas_int* isgn, blas_int* m, blas_int* n, const float* a, blas_int* lda, const float* b, blas_int* ldb, float* c, blas_int* ldc, float* scale, blas_int* info)
max@0 407 {
max@0 408 arma_fortran_noprefix(arma_strsyl)(transa, transb, isgn, m, n, a, lda, b, ldb, c, ldc, scale, info);
max@0 409 }
max@0 410
max@0 411 void arma_fortran_prefix(arma_dtrsyl)(char* transa, char* transb, blas_int* isgn, blas_int* m, blas_int* n, const double* a, blas_int* lda, const double* b, blas_int* ldb, double* c, blas_int* ldc, double* scale, blas_int* info)
max@0 412 {
max@0 413 arma_fortran_noprefix(arma_dtrsyl)(transa, transb, isgn, m, n, a, lda, b, ldb, c, ldc, scale, info);
max@0 414 }
max@0 415
max@0 416 void arma_fortran_prefix(arma_ctrsyl)(char* transa, char* transb, blas_int* isgn, blas_int* m, blas_int* n, const void* a, blas_int* lda, const void* b, blas_int* ldb, void* c, blas_int* ldc, float* scale, blas_int* info)
max@0 417 {
max@0 418 arma_fortran_noprefix(arma_ctrsyl)(transa, transb, isgn, m, n, a, lda, b, ldb, c, ldc, scale, info);
max@0 419 }
max@0 420
max@0 421 void arma_fortran_prefix(arma_ztrsyl)(char* transa, char* transb, blas_int* isgn, blas_int* m, blas_int* n, const void* a, blas_int* lda, const void* b, blas_int* ldb, void* c, blas_int* ldc, double* scale, blas_int* info)
max@0 422 {
max@0 423 arma_fortran_noprefix(arma_ztrsyl)(transa, transb, isgn, m, n, a, lda, b, ldb, c, ldc, scale, info);
max@0 424 }
max@0 425
max@0 426
max@0 427
max@0 428
max@0 429 void arma_fortran_prefix(arma_ssytrf)(char* uplo, blas_int* n, float* a, blas_int* lda, blas_int* ipiv, float* work, blas_int* lwork, blas_int* info)
max@0 430 {
max@0 431 arma_fortran_noprefix(arma_ssytrf)(uplo, n, a, lda, ipiv, work, lwork, info);
max@0 432 }
max@0 433
max@0 434 void arma_fortran_prefix(arma_dsytrf)(char* uplo, blas_int* n, double* a, blas_int* lda, blas_int* ipiv, double* work, blas_int* lwork, blas_int* info)
max@0 435 {
max@0 436 arma_fortran_noprefix(arma_dsytrf)(uplo, n, a, lda, ipiv, work, lwork, info);
max@0 437 }
max@0 438
max@0 439 void arma_fortran_prefix(arma_csytrf)(char* uplo, blas_int* n, void* a, blas_int* lda, blas_int* ipiv, void* work, blas_int* lwork, blas_int* info)
max@0 440 {
max@0 441 arma_fortran_noprefix(arma_csytrf)(uplo, n, a, lda, ipiv, work, lwork, info);
max@0 442 }
max@0 443
max@0 444 void arma_fortran_prefix(arma_zsytrf)(char* uplo, blas_int* n, void* a, blas_int* lda, blas_int* ipiv, void* work, blas_int* lwork, blas_int* info)
max@0 445 {
max@0 446 arma_fortran_noprefix(arma_zsytrf)(uplo, n, a, lda, ipiv, work, lwork, info);
max@0 447 }
max@0 448
max@0 449
max@0 450
max@0 451
max@0 452 void arma_fortran_prefix(arma_ssytri)(char* uplo, blas_int* n, float* a, blas_int* lda, blas_int* ipiv, float* work, blas_int* info)
max@0 453 {
max@0 454 arma_fortran_noprefix(arma_ssytri)(uplo, n, a, lda, ipiv, work, info);
max@0 455 }
max@0 456
max@0 457 void arma_fortran_prefix(arma_dsytri)(char* uplo, blas_int* n, double* a, blas_int* lda, blas_int* ipiv, double* work, blas_int* info)
max@0 458 {
max@0 459 arma_fortran_noprefix(arma_dsytri)(uplo, n, a, lda, ipiv, work, info);
max@0 460 }
max@0 461
max@0 462 void arma_fortran_prefix(arma_csytri)(char* uplo, blas_int* n, void* a, blas_int* lda, blas_int* ipiv, void* work, blas_int* info)
max@0 463 {
max@0 464 arma_fortran_noprefix(arma_csytri)(uplo, n, a, lda, ipiv, work, info);
max@0 465 }
max@0 466
max@0 467 void arma_fortran_prefix(arma_zsytri)(char* uplo, blas_int* n, void* a, blas_int* lda, blas_int* ipiv, void* work, blas_int* info)
max@0 468 {
max@0 469 arma_fortran_noprefix(arma_zsytri)(uplo, n, a, lda, ipiv, work, info);
max@0 470 }
max@0 471
max@0 472 #endif
max@0 473
max@0 474
max@0 475
max@0 476 #if defined(ARMA_USE_ATLAS)
max@0 477
max@0 478 float wrapper_cblas_sdot(const int N, const float *X, const int incX, const float *Y, const int incY)
max@0 479 {
max@0 480 return cblas_sdot(N, X, incX, Y, incY);
max@0 481 }
max@0 482
max@0 483 double wrapper_cblas_ddot(const int N, const double *X, const int incX, const double *Y, const int incY)
max@0 484 {
max@0 485 return cblas_ddot(N, X, incX, Y, incY);
max@0 486 }
max@0 487
max@0 488 void wrapper_cblas_cdotu_sub(const int N, const void *X, const int incX, const void *Y, const int incY, void *dotu)
max@0 489 {
max@0 490 cblas_cdotu_sub(N, X, incX, Y, incY, dotu);
max@0 491 }
max@0 492
max@0 493 void wrapper_cblas_zdotu_sub(const int N, const void *X, const int incX, const void *Y, const int incY, void *dotu)
max@0 494 {
max@0 495 cblas_zdotu_sub(N, X, incX, Y, incY, dotu);
max@0 496 }
max@0 497
max@0 498
max@0 499
max@0 500 void wrapper_cblas_sgemv(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA, const int M, const int N, const float alpha,
max@0 501 const float *A, const int lda, const float *X, const int incX, const float beta, float *Y, const int incY)
max@0 502 {
max@0 503 cblas_sgemv(Order, TransA, M, N, alpha, A, lda, X, incX, beta, Y, incY);
max@0 504 }
max@0 505
max@0 506 void wrapper_cblas_dgemv(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA, const int M, const int N, const double alpha,
max@0 507 const double *A, const int lda, const double *X, const int incX, const double beta, double *Y, const int incY)
max@0 508 {
max@0 509 cblas_dgemv(Order, TransA, M, N, alpha, A, lda, X, incX, beta, Y, incY);
max@0 510 }
max@0 511
max@0 512 void wrapper_cblas_cgemv(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA, const int M, const int N, const void *alpha,
max@0 513 const void *A, const int lda, const void *X, const int incX, const void *beta, void *Y, const int incY)
max@0 514 {
max@0 515 cblas_cgemv(Order, TransA, M, N, alpha, A, lda, X, incX, beta, Y, incY);
max@0 516 }
max@0 517
max@0 518 void wrapper_cblas_zgemv(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA, const int M, const int N, const void *alpha,
max@0 519 const void *A, const int lda, const void *X, const int incX, const void *beta, void *Y, const int incY)
max@0 520 {
max@0 521 cblas_zgemv(Order, TransA, M, N, alpha, A, lda, X, incX, beta, Y, incY);
max@0 522 }
max@0 523
max@0 524
max@0 525
max@0 526 void wrapper_cblas_sgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_TRANSPOSE TransB,
max@0 527 const int M, const int N, const int K, const float alpha,
max@0 528 const float *A, const int lda, const float *B, const int ldb, const float beta, float *C, const int ldc)
max@0 529 {
max@0 530 cblas_sgemm(Order, TransA, TransB, M, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
max@0 531 }
max@0 532
max@0 533 void wrapper_cblas_dgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_TRANSPOSE TransB,
max@0 534 const int M, const int N, const int K, const double alpha,
max@0 535 const double *A, const int lda, const double *B, const int ldb, const double beta, double *C, const int ldc)
max@0 536 {
max@0 537 cblas_dgemm(Order, TransA, TransB, M, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
max@0 538 }
max@0 539
max@0 540 void wrapper_cblas_cgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_TRANSPOSE TransB,
max@0 541 const int M, const int N, const int K, const void *alpha,
max@0 542 const void *A, const int lda, const void *B, const int ldb, const void *beta, void *C, const int ldc)
max@0 543 {
max@0 544 cblas_cgemm(Order, TransA, TransB, M, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
max@0 545 }
max@0 546
max@0 547 void wrapper_cblas_zgemm(const enum CBLAS_ORDER Order, const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_TRANSPOSE TransB,
max@0 548 const int M, const int N, const int K, const void *alpha,
max@0 549 const void *A, const int lda, const void *B, const int ldb, const void *beta, void *C, const int ldc)
max@0 550 {
max@0 551 cblas_zgemm(Order, TransA, TransB, M, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
max@0 552 }
max@0 553
max@0 554
max@0 555
max@0 556 int wrapper_clapack_sgetrf(const enum CBLAS_ORDER Order, const int M, const int N, float *A, const int lda, int *ipiv)
max@0 557 {
max@0 558 return clapack_sgetrf(Order, M, N, A, lda, ipiv);
max@0 559 }
max@0 560
max@0 561 int wrapper_clapack_dgetrf(const enum CBLAS_ORDER Order, const int M, const int N, double *A, const int lda, int *ipiv)
max@0 562 {
max@0 563 return clapack_dgetrf(Order, M, N, A, lda, ipiv);
max@0 564 }
max@0 565
max@0 566 int wrapper_clapack_cgetrf(const enum CBLAS_ORDER Order, const int M, const int N, void *A, const int lda, int *ipiv)
max@0 567 {
max@0 568 return clapack_cgetrf(Order, M, N, A, lda, ipiv);
max@0 569 }
max@0 570
max@0 571 int wrapper_clapack_zgetrf(const enum CBLAS_ORDER Order, const int M, const int N, void *A, const int lda, int *ipiv)
max@0 572 {
max@0 573 return clapack_zgetrf(Order, M, N, A, lda, ipiv);
max@0 574 }
max@0 575
max@0 576
max@0 577
max@0 578 int wrapper_clapack_sgetri(const enum CBLAS_ORDER Order, const int N, float *A, const int lda, const int *ipiv)
max@0 579 {
max@0 580 return clapack_sgetri(Order, N, A, lda, ipiv);
max@0 581 }
max@0 582
max@0 583 int wrapper_clapack_dgetri(const enum CBLAS_ORDER Order, const int N, double *A, const int lda, const int *ipiv)
max@0 584 {
max@0 585 return clapack_dgetri(Order, N, A, lda, ipiv);
max@0 586 }
max@0 587
max@0 588 int wrapper_clapack_cgetri(const enum CBLAS_ORDER Order, const int N, void *A, const int lda, const int *ipiv)
max@0 589 {
max@0 590 return clapack_cgetri(Order, N, A, lda, ipiv);
max@0 591 }
max@0 592
max@0 593 int wrapper_clapack_zgetri(const enum CBLAS_ORDER Order, const int N, void *A, const int lda, const int *ipiv)
max@0 594 {
max@0 595 return clapack_zgetri(Order, N, A, lda, ipiv);
max@0 596 }
max@0 597
max@0 598
max@0 599
max@0 600 int wrapper_clapack_sgesv(const enum CBLAS_ORDER Order, const int N, const int NRHS, float *A, const int lda, int *ipiv, float *B, const int ldb)
max@0 601 {
max@0 602 return clapack_sgesv(Order, N, NRHS, A, lda, ipiv, B, ldb);
max@0 603 }
max@0 604
max@0 605 int wrapper_clapack_dgesv(const enum CBLAS_ORDER Order, const int N, const int NRHS, double *A, const int lda, int *ipiv, double *B, const int ldb)
max@0 606 {
max@0 607 return clapack_dgesv(Order, N, NRHS, A, lda, ipiv, B, ldb);
max@0 608 }
max@0 609
max@0 610 int wrapper_clapack_cgesv(const enum CBLAS_ORDER Order, const int N, const int NRHS, void *A, const int lda, int *ipiv, void *B, const int ldb)
max@0 611 {
max@0 612 return clapack_cgesv(Order, N, NRHS, A, lda, ipiv, B, ldb);
max@0 613 }
max@0 614
max@0 615 int wrapper_clapack_zgesv(const enum CBLAS_ORDER Order, const int N, const int NRHS, void *A, const int lda, int *ipiv, void *B, const int ldb)
max@0 616 {
max@0 617 return clapack_zgesv(Order, N, NRHS, A, lda, ipiv, B, ldb);
max@0 618 }
max@0 619
max@0 620 #endif
max@0 621 }
max@0 622
max@0 623 }