35 #ifndef TEMPLATE_BLAS_TRMV_HEADER 36 #define TEMPLATE_BLAS_TRMV_HEADER 44 integer a_dim1, a_offset, i__1, i__2;
51 #define a_ref(a_1,a_2) a[(a_2)*a_dim1 + a_1] 119 a_offset = 1 + a_dim1 * 1;
138 }
else if (*incx == 0) {
153 kx = 1 - (*n - 1) * *incx;
154 }
else if (*incx != 1) {
164 for (j = 1; j <= i__1; ++j) {
168 for (i__ = 1; i__ <= i__2; ++i__) {
169 x[i__] += temp *
a_ref(i__, j);
181 for (j = 1; j <= i__1; ++j) {
186 for (i__ = 1; i__ <= i__2; ++i__) {
187 x[ix] += temp *
a_ref(i__, j);
192 x[jx] *=
a_ref(j, j);
201 for (j = *n; j >= 1; --j) {
205 for (i__ = *n; i__ >= i__1; --i__) {
206 x[i__] += temp *
a_ref(i__, j);
216 kx += (*n - 1) * *incx;
218 for (j = *n; j >= 1; --j) {
223 for (i__ = *n; i__ >= i__1; --i__) {
224 x[ix] += temp *
a_ref(i__, j);
229 x[jx] *=
a_ref(j, j);
241 for (j = *n; j >= 1; --j) {
246 for (i__ = j - 1; i__ >= 1; --i__) {
247 temp +=
a_ref(i__, j) * x[i__];
254 jx = kx + (*n - 1) * *incx;
255 for (j = *n; j >= 1; --j) {
261 for (i__ = j - 1; i__ >= 1; --i__) {
263 temp +=
a_ref(i__, j) * x[ix];
274 for (j = 1; j <= i__1; ++j) {
280 for (i__ = j + 1; i__ <= i__2; ++i__) {
281 temp +=
a_ref(i__, j) * x[i__];
290 for (j = 1; j <= i__1; ++j) {
297 for (i__ = j + 1; i__ <= i__2; ++i__) {
299 temp +=
a_ref(i__, j) * x[ix];
int integer
Definition: template_blas_common.h:38
int template_blas_trmv(const char *uplo, const char *trans, const char *diag, const integer *n, const Treal *a, const integer *lda, Treal *x, const integer *incx)
Definition: template_blas_trmv.h:40
#define maxMACRO(a, b)
Definition: template_blas_common.h:43
int template_blas_erbla(const char *srname, integer *info)
Definition: template_blas_common.cc:144
bool logical
Definition: template_blas_common.h:39
logical template_blas_lsame(const char *ca, const char *cb)
Definition: template_blas_common.cc:44