whitespace fixes
This commit is contained in:
@ -1,13 +1,13 @@
|
||||
/* fortran/dormqr.f -- translated by f2c (version 20200916).
|
||||
You must link the resulting object file with libf2c:
|
||||
on Microsoft Windows system, link with libf2c.lib;
|
||||
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||
-- in that order, at the end of the command line, as in
|
||||
cc *.o -lf2c -lm
|
||||
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||
on Microsoft Windows system, link with libf2c.lib;
|
||||
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||
-- in that order, at the end of the command line, as in
|
||||
cc *.o -lf2c -lm
|
||||
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||
|
||||
http://www.netlib.org/f2c/libf2c.zip
|
||||
http://www.netlib.org/f2c/libf2c.zip
|
||||
*/
|
||||
|
||||
#ifdef __cplusplus
|
||||
@ -189,15 +189,15 @@ f"> */
|
||||
/* > \ingroup doubleOTHERcomputational */
|
||||
|
||||
/* ===================================================================== */
|
||||
/* Subroutine */ int dormqr_(char *side, char *trans, integer *m, integer *n,
|
||||
integer *k, doublereal *a, integer *lda, doublereal *tau, doublereal *
|
||||
c__, integer *ldc, doublereal *work, integer *lwork, integer *info,
|
||||
ftnlen side_len, ftnlen trans_len)
|
||||
/* Subroutine */ int dormqr_(char *side, char *trans, integer *m, integer *n,
|
||||
integer *k, doublereal *a, integer *lda, doublereal *tau, doublereal *
|
||||
c__, integer *ldc, doublereal *work, integer *lwork, integer *info,
|
||||
ftnlen side_len, ftnlen trans_len)
|
||||
{
|
||||
/* System generated locals */
|
||||
address a__1[2];
|
||||
integer a_dim1, a_offset, c_dim1, c_offset, i__1, i__2, i__3[2], i__4,
|
||||
i__5;
|
||||
integer a_dim1, a_offset, c_dim1, c_offset, i__1, i__2, i__3[2], i__4,
|
||||
i__5;
|
||||
char ch__1[2];
|
||||
|
||||
/* Builtin functions */
|
||||
@ -208,17 +208,17 @@ f"> */
|
||||
logical left;
|
||||
extern logical lsame_(char *, char *, ftnlen, ftnlen);
|
||||
integer nbmin, iinfo;
|
||||
extern /* Subroutine */ int dorm2r_(char *, char *, integer *, integer *,
|
||||
integer *, doublereal *, integer *, doublereal *, doublereal *,
|
||||
integer *, doublereal *, integer *, ftnlen, ftnlen), dlarfb_(char
|
||||
*, char *, char *, char *, integer *, integer *, integer *,
|
||||
doublereal *, integer *, doublereal *, integer *, doublereal *,
|
||||
integer *, doublereal *, integer *, ftnlen, ftnlen, ftnlen,
|
||||
ftnlen), dlarft_(char *, char *, integer *, integer *, doublereal
|
||||
*, integer *, doublereal *, doublereal *, integer *, ftnlen,
|
||||
ftnlen), xerbla_(char *, integer *, ftnlen);
|
||||
extern integer ilaenv_(integer *, char *, char *, integer *, integer *,
|
||||
integer *, integer *, ftnlen, ftnlen);
|
||||
extern /* Subroutine */ int dorm2r_(char *, char *, integer *, integer *,
|
||||
integer *, doublereal *, integer *, doublereal *, doublereal *,
|
||||
integer *, doublereal *, integer *, ftnlen, ftnlen), dlarfb_(char
|
||||
*, char *, char *, char *, integer *, integer *, integer *,
|
||||
doublereal *, integer *, doublereal *, integer *, doublereal *,
|
||||
integer *, doublereal *, integer *, ftnlen, ftnlen, ftnlen,
|
||||
ftnlen), dlarft_(char *, char *, integer *, integer *, doublereal
|
||||
*, integer *, doublereal *, doublereal *, integer *, ftnlen,
|
||||
ftnlen), xerbla_(char *, integer *, ftnlen);
|
||||
extern integer ilaenv_(integer *, char *, char *, integer *, integer *,
|
||||
integer *, integer *, ftnlen, ftnlen);
|
||||
logical notran;
|
||||
integer ldwork, lwkopt;
|
||||
logical lquery;
|
||||
@ -268,28 +268,28 @@ f"> */
|
||||
/* NQ is the order of Q and NW is the minimum dimension of WORK */
|
||||
|
||||
if (left) {
|
||||
nq = *m;
|
||||
nw = max(1,*n);
|
||||
nq = *m;
|
||||
nw = max(1,*n);
|
||||
} else {
|
||||
nq = *n;
|
||||
nw = max(1,*m);
|
||||
nq = *n;
|
||||
nw = max(1,*m);
|
||||
}
|
||||
if (! left && ! lsame_(side, (char *)"R", (ftnlen)1, (ftnlen)1)) {
|
||||
*info = -1;
|
||||
*info = -1;
|
||||
} else if (! notran && ! lsame_(trans, (char *)"T", (ftnlen)1, (ftnlen)1)) {
|
||||
*info = -2;
|
||||
*info = -2;
|
||||
} else if (*m < 0) {
|
||||
*info = -3;
|
||||
*info = -3;
|
||||
} else if (*n < 0) {
|
||||
*info = -4;
|
||||
*info = -4;
|
||||
} else if (*k < 0 || *k > nq) {
|
||||
*info = -5;
|
||||
*info = -5;
|
||||
} else if (*lda < max(1,nq)) {
|
||||
*info = -7;
|
||||
*info = -7;
|
||||
} else if (*ldc < max(1,*m)) {
|
||||
*info = -10;
|
||||
*info = -10;
|
||||
} else if (*lwork < nw && ! lquery) {
|
||||
*info = -12;
|
||||
*info = -12;
|
||||
}
|
||||
|
||||
if (*info == 0) {
|
||||
@ -298,112 +298,112 @@ f"> */
|
||||
|
||||
/* Computing MIN */
|
||||
/* Writing concatenation */
|
||||
i__3[0] = 1, a__1[0] = side;
|
||||
i__3[1] = 1, a__1[1] = trans;
|
||||
s_cat(ch__1, a__1, i__3, &c__2, (ftnlen)2);
|
||||
i__1 = 64, i__2 = ilaenv_(&c__1, (char *)"DORMQR", ch__1, m, n, k, &c_n1, (
|
||||
ftnlen)6, (ftnlen)2);
|
||||
nb = min(i__1,i__2);
|
||||
lwkopt = nw * nb + 4160;
|
||||
work[1] = (doublereal) lwkopt;
|
||||
i__3[0] = 1, a__1[0] = side;
|
||||
i__3[1] = 1, a__1[1] = trans;
|
||||
s_cat(ch__1, a__1, i__3, &c__2, (ftnlen)2);
|
||||
i__1 = 64, i__2 = ilaenv_(&c__1, (char *)"DORMQR", ch__1, m, n, k, &c_n1, (
|
||||
ftnlen)6, (ftnlen)2);
|
||||
nb = min(i__1,i__2);
|
||||
lwkopt = nw * nb + 4160;
|
||||
work[1] = (doublereal) lwkopt;
|
||||
}
|
||||
|
||||
if (*info != 0) {
|
||||
i__1 = -(*info);
|
||||
xerbla_((char *)"DORMQR", &i__1, (ftnlen)6);
|
||||
return 0;
|
||||
i__1 = -(*info);
|
||||
xerbla_((char *)"DORMQR", &i__1, (ftnlen)6);
|
||||
return 0;
|
||||
} else if (lquery) {
|
||||
return 0;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Quick return if possible */
|
||||
|
||||
if (*m == 0 || *n == 0 || *k == 0) {
|
||||
work[1] = 1.;
|
||||
return 0;
|
||||
work[1] = 1.;
|
||||
return 0;
|
||||
}
|
||||
|
||||
nbmin = 2;
|
||||
ldwork = nw;
|
||||
if (nb > 1 && nb < *k) {
|
||||
if (*lwork < lwkopt) {
|
||||
nb = (*lwork - 4160) / ldwork;
|
||||
if (*lwork < lwkopt) {
|
||||
nb = (*lwork - 4160) / ldwork;
|
||||
/* Computing MAX */
|
||||
/* Writing concatenation */
|
||||
i__3[0] = 1, a__1[0] = side;
|
||||
i__3[1] = 1, a__1[1] = trans;
|
||||
s_cat(ch__1, a__1, i__3, &c__2, (ftnlen)2);
|
||||
i__1 = 2, i__2 = ilaenv_(&c__2, (char *)"DORMQR", ch__1, m, n, k, &c_n1, (
|
||||
ftnlen)6, (ftnlen)2);
|
||||
nbmin = max(i__1,i__2);
|
||||
}
|
||||
i__3[0] = 1, a__1[0] = side;
|
||||
i__3[1] = 1, a__1[1] = trans;
|
||||
s_cat(ch__1, a__1, i__3, &c__2, (ftnlen)2);
|
||||
i__1 = 2, i__2 = ilaenv_(&c__2, (char *)"DORMQR", ch__1, m, n, k, &c_n1, (
|
||||
ftnlen)6, (ftnlen)2);
|
||||
nbmin = max(i__1,i__2);
|
||||
}
|
||||
}
|
||||
|
||||
if (nb < nbmin || nb >= *k) {
|
||||
|
||||
/* Use unblocked code */
|
||||
|
||||
dorm2r_(side, trans, m, n, k, &a[a_offset], lda, &tau[1], &c__[
|
||||
c_offset], ldc, &work[1], &iinfo, (ftnlen)1, (ftnlen)1);
|
||||
dorm2r_(side, trans, m, n, k, &a[a_offset], lda, &tau[1], &c__[
|
||||
c_offset], ldc, &work[1], &iinfo, (ftnlen)1, (ftnlen)1);
|
||||
} else {
|
||||
|
||||
/* Use blocked code */
|
||||
|
||||
iwt = nw * nb + 1;
|
||||
if (left && ! notran || ! left && notran) {
|
||||
i1 = 1;
|
||||
i2 = *k;
|
||||
i3 = nb;
|
||||
} else {
|
||||
i1 = (*k - 1) / nb * nb + 1;
|
||||
i2 = 1;
|
||||
i3 = -nb;
|
||||
}
|
||||
iwt = nw * nb + 1;
|
||||
if (left && ! notran || ! left && notran) {
|
||||
i1 = 1;
|
||||
i2 = *k;
|
||||
i3 = nb;
|
||||
} else {
|
||||
i1 = (*k - 1) / nb * nb + 1;
|
||||
i2 = 1;
|
||||
i3 = -nb;
|
||||
}
|
||||
|
||||
if (left) {
|
||||
ni = *n;
|
||||
jc = 1;
|
||||
} else {
|
||||
mi = *m;
|
||||
ic = 1;
|
||||
}
|
||||
if (left) {
|
||||
ni = *n;
|
||||
jc = 1;
|
||||
} else {
|
||||
mi = *m;
|
||||
ic = 1;
|
||||
}
|
||||
|
||||
i__1 = i2;
|
||||
i__2 = i3;
|
||||
for (i__ = i1; i__2 < 0 ? i__ >= i__1 : i__ <= i__1; i__ += i__2) {
|
||||
i__1 = i2;
|
||||
i__2 = i3;
|
||||
for (i__ = i1; i__2 < 0 ? i__ >= i__1 : i__ <= i__1; i__ += i__2) {
|
||||
/* Computing MIN */
|
||||
i__4 = nb, i__5 = *k - i__ + 1;
|
||||
ib = min(i__4,i__5);
|
||||
i__4 = nb, i__5 = *k - i__ + 1;
|
||||
ib = min(i__4,i__5);
|
||||
|
||||
/* Form the triangular factor of the block reflector */
|
||||
/* H = H(i) H(i+1) . . . H(i+ib-1) */
|
||||
|
||||
i__4 = nq - i__ + 1;
|
||||
dlarft_((char *)"Forward", (char *)"Columnwise", &i__4, &ib, &a[i__ + i__ *
|
||||
a_dim1], lda, &tau[i__], &work[iwt], &c__65, (ftnlen)7, (
|
||||
ftnlen)10);
|
||||
if (left) {
|
||||
i__4 = nq - i__ + 1;
|
||||
dlarft_((char *)"Forward", (char *)"Columnwise", &i__4, &ib, &a[i__ + i__ *
|
||||
a_dim1], lda, &tau[i__], &work[iwt], &c__65, (ftnlen)7, (
|
||||
ftnlen)10);
|
||||
if (left) {
|
||||
|
||||
/* H or H**T is applied to C(i:m,1:n) */
|
||||
|
||||
mi = *m - i__ + 1;
|
||||
ic = i__;
|
||||
} else {
|
||||
mi = *m - i__ + 1;
|
||||
ic = i__;
|
||||
} else {
|
||||
|
||||
/* H or H**T is applied to C(1:m,i:n) */
|
||||
|
||||
ni = *n - i__ + 1;
|
||||
jc = i__;
|
||||
}
|
||||
ni = *n - i__ + 1;
|
||||
jc = i__;
|
||||
}
|
||||
|
||||
/* Apply H or H**T */
|
||||
|
||||
dlarfb_(side, trans, (char *)"Forward", (char *)"Columnwise", &mi, &ni, &ib, &a[
|
||||
i__ + i__ * a_dim1], lda, &work[iwt], &c__65, &c__[ic +
|
||||
jc * c_dim1], ldc, &work[1], &ldwork, (ftnlen)1, (ftnlen)
|
||||
1, (ftnlen)7, (ftnlen)10);
|
||||
dlarfb_(side, trans, (char *)"Forward", (char *)"Columnwise", &mi, &ni, &ib, &a[
|
||||
i__ + i__ * a_dim1], lda, &work[iwt], &c__65, &c__[ic +
|
||||
jc * c_dim1], ldc, &work[1], &ldwork, (ftnlen)1, (ftnlen)
|
||||
1, (ftnlen)7, (ftnlen)10);
|
||||
/* L10: */
|
||||
}
|
||||
}
|
||||
}
|
||||
work[1] = (doublereal) lwkopt;
|
||||
return 0;
|
||||
@ -413,5 +413,5 @@ f"> */
|
||||
} /* dormqr_ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user