35 #ifndef TEMPLATE_BLAS_TPSV_HEADER
36 #define TEMPLATE_BLAS_TPSV_HEADER
41 const Treal *ap, Treal *x,
const integer *incx)
133 }
else if (*incx == 0) {
148 kx = 1 - (*n - 1) * *incx;
149 }
else if (*incx != 1) {
157 kk = *n * (*n + 1) / 2;
159 for (j = *n; j >= 1; --j) {
166 for (i__ = j - 1; i__ >= 1; --i__) {
167 x[i__] -= temp * ap[k];
176 jx = kx + (*n - 1) * *incx;
177 for (j = *n; j >= 1; --j) {
185 for (k = kk - 1; k >= i__1; --k) {
187 x[ix] -= temp * ap[k];
200 for (j = 1; j <= i__1; ++j) {
208 for (i__ = j + 1; i__ <= i__2; ++i__) {
209 x[i__] -= temp * ap[k];
220 for (j = 1; j <= i__1; ++j) {
228 for (k = kk + 1; k <= i__2; ++k) {
230 x[ix] -= temp * ap[k];
246 for (j = 1; j <= i__1; ++j) {
250 for (i__ = 1; i__ <= i__2; ++i__) {
251 temp -= ap[k] * x[i__];
256 temp /= ap[kk + j - 1];
265 for (j = 1; j <= i__1; ++j) {
269 for (k = kk; k <= i__2; ++k) {
270 temp -= ap[k] * x[ix];
275 temp /= ap[kk + j - 1];
284 kk = *n * (*n + 1) / 2;
286 for (j = *n; j >= 1; --j) {
290 for (i__ = *n; i__ >= i__1; --i__) {
291 temp -= ap[k] * x[i__];
296 temp /= ap[kk - *n + j];
303 kx += (*n - 1) * *incx;
305 for (j = *n; j >= 1; --j) {
308 i__1 = kk - (*n - (j + 1));
309 for (k = kk; k >= i__1; --k) {
310 temp -= ap[k] * x[ix];
315 temp /= ap[kk - *n + j];
int integer
Definition: template_blas_common.h:38
int template_blas_erbla(const char *srname, integer *info)
Definition: template_blas_common.cc:144
bool logical
Definition: template_blas_common.h:39
int template_blas_tpsv(const char *uplo, const char *trans, const char *diag, const integer *n, const Treal *ap, Treal *x, const integer *incx)
Definition: template_blas_tpsv.h:40
logical template_blas_lsame(const char *ca, const char *cb)
Definition: template_blas_common.cc:44