37 #ifndef TEMPLATE_BLAS_TRMM_HEADER 38 #define TEMPLATE_BLAS_TRMM_HEADER 45 lda, Treal *b,
const integer *ldb)
48 integer a_dim1, a_offset, b_dim1, b_offset, i__1, i__2, i__3;
57 #define a_ref(a_1,a_2) a[(a_2)*a_dim1 + a_1] 58 #define b_ref(a_1,a_2) b[(a_2)*b_dim1 + a_1] 144 a_offset = 1 + a_dim1 * 1;
147 b_offset = 1 + b_dim1 * 1;
173 }
else if (*lda <
maxMACRO(1,nrowa)) {
189 for (j = 1; j <= i__1; ++j) {
191 for (i__ = 1; i__ <= i__2; ++i__) {
205 for (j = 1; j <= i__1; ++j) {
207 for (k = 1; k <= i__2; ++k) {
208 if (
b_ref(k, j) != 0.) {
209 temp = *alpha *
b_ref(k, j);
211 for (i__ = 1; i__ <= i__3; ++i__) {
227 for (j = 1; j <= i__1; ++j) {
228 for (k = *m; k >= 1; --k) {
229 if (
b_ref(k, j) != 0.) {
230 temp = *alpha *
b_ref(k, j);
236 for (i__ = k + 1; i__ <= i__2; ++i__) {
251 for (j = 1; j <= i__1; ++j) {
252 for (i__ = *m; i__ >= 1; --i__) {
253 temp =
b_ref(i__, j);
255 temp *=
a_ref(i__, i__);
258 for (k = 1; k <= i__2; ++k) {
262 b_ref(i__, j) = *alpha * temp;
269 for (j = 1; j <= i__1; ++j) {
271 for (i__ = 1; i__ <= i__2; ++i__) {
272 temp =
b_ref(i__, j);
274 temp *=
a_ref(i__, i__);
277 for (k = i__ + 1; k <= i__3; ++k) {
281 b_ref(i__, j) = *alpha * temp;
292 for (j = *n; j >= 1; --j) {
298 for (i__ = 1; i__ <= i__1; ++i__) {
303 for (k = 1; k <= i__1; ++k) {
304 if (
a_ref(k, j) != 0.) {
305 temp = *alpha *
a_ref(k, j);
307 for (i__ = 1; i__ <= i__2; ++i__) {
319 for (j = 1; j <= i__1; ++j) {
325 for (i__ = 1; i__ <= i__2; ++i__) {
330 for (k = j + 1; k <= i__2; ++k) {
331 if (
a_ref(k, j) != 0.) {
332 temp = *alpha *
a_ref(k, j);
334 for (i__ = 1; i__ <= i__3; ++i__) {
349 for (k = 1; k <= i__1; ++k) {
351 for (j = 1; j <= i__2; ++j) {
352 if (
a_ref(j, k) != 0.) {
353 temp = *alpha *
a_ref(j, k);
355 for (i__ = 1; i__ <= i__3; ++i__) {
369 for (i__ = 1; i__ <= i__2; ++i__) {
377 for (k = *n; k >= 1; --k) {
379 for (j = k + 1; j <= i__1; ++j) {
380 if (
a_ref(j, k) != 0.) {
381 temp = *alpha *
a_ref(j, k);
383 for (i__ = 1; i__ <= i__2; ++i__) {
397 for (i__ = 1; i__ <= i__1; ++i__) {
int integer
Definition: template_blas_common.h:40
int template_blas_trmm(const char *side, const char *uplo, const char *transa, const char *diag, const integer *m, const integer *n, const Treal *alpha, const Treal *a, const integer *lda, Treal *b, const integer *ldb)
Definition: template_blas_trmm.h:43
#define maxMACRO(a, b)
Definition: template_blas_common.h:45
int template_blas_erbla(const char *srname, integer *info)
Definition: template_blas_common.cc:146
bool logical
Definition: template_blas_common.h:41
side
Definition: Matrix.h:75
logical template_blas_lsame(const char *ca, const char *cb)
Definition: template_blas_common.cc:46