Go to the documentation of this file.
37 #ifndef TEMPLATE_BLAS_TPMV_HEADER
38 #define TEMPLATE_BLAS_TPMV_HEADER
43 const Treal *ap, Treal *x,
const integer *incx)
133 }
else if (*incx == 0) {
148 kx = 1 - (*n - 1) * *incx;
149 }
else if (*incx != 1) {
160 for (j = 1; j <= i__1; ++j) {
165 for (i__ = 1; i__ <= i__2; ++i__) {
166 x[i__] += temp * ap[k];
171 x[j] *= ap[kk + j - 1];
180 for (j = 1; j <= i__1; ++j) {
185 for (k = kk; k <= i__2; ++k) {
186 x[ix] += temp * ap[k];
191 x[jx] *= ap[kk + j - 1];
200 kk = *n * (*n + 1) / 2;
202 for (j = *n; j >= 1; --j) {
207 for (i__ = *n; i__ >= i__1; --i__) {
208 x[i__] += temp * ap[k];
213 x[j] *= ap[kk - *n + j];
220 kx += (*n - 1) * *incx;
222 for (j = *n; j >= 1; --j) {
226 i__1 = kk - (*n - (j + 1));
227 for (k = kk; k >= i__1; --k) {
228 x[ix] += temp * ap[k];
233 x[jx] *= ap[kk - *n + j];
245 kk = *n * (*n + 1) / 2;
247 for (j = *n; j >= 1; --j) {
253 for (i__ = j - 1; i__ >= 1; --i__) {
254 temp += ap[k] * x[i__];
263 jx = kx + (*n - 1) * *incx;
264 for (j = *n; j >= 1; --j) {
271 for (k = kk - 1; k >= i__1; --k) {
273 temp += ap[k] * x[ix];
286 for (j = 1; j <= i__1; ++j) {
293 for (i__ = j + 1; i__ <= i__2; ++i__) {
294 temp += ap[k] * x[i__];
305 for (j = 1; j <= i__1; ++j) {
312 for (k = kk + 1; k <= i__2; ++k) {
314 temp += ap[k] * x[ix];
int template_blas_tpmv(const char *uplo, const char *trans, const char *diag, const integer *n, const Treal *ap, Treal *x, const integer *incx)
Definition: template_blas_tpmv.h:42
double realtype
Definition: template_blas_test.cc:44
int template_blas_gemm(const char *transa, const char *transb, const integer *m, const integer *n, const integer *k, const Treal *alpha, const Treal *a, const integer *lda, const Treal *b, const integer *ldb, const Treal *beta, Treal *c__, const integer *ldc)
Definition: template_blas_gemm.h:43
bool logical
Definition: template_blas_common.h:41
Treal template_blas_nrm2(const integer *n, const Treal *x, const integer *incx)
Definition: template_blas_nrm2.h:42
double realtype
Definition: template_blas_test_threaded.cc:46
int template_blas_erbla(const char *srname, integer *info)
Definition: template_blas_common.cc:146
logical template_blas_lsame(const char *ca, const char *cb)
Definition: template_blas_common.cc:46
int integer
Definition: template_blas_common.h:40
static void * thread_func(void *arg)
Definition: template_blas_test_threaded.cc:52
Treal template_blas_compute_pi_BBP(Treal dummy)
Definition: template_blas_basicmath.h:77
pthread_mutex_t mutex
Definition: template_blas_test_threaded.cc:48
int main()
Definition: template_blas_test.cc:46
int main()
Definition: template_blas_test_threaded.cc:123