Subroutine */
| 35501 | } /* sorml2_ */ |
| 35502 | |
| 35503 | /* Subroutine */ int sormlq_(char *side, char *trans, integer *m, integer *n, |
| 35504 | integer *k, real *a, integer *lda, real *tau, real *c__, integer *ldc, |
| 35505 | real *work, integer *lwork, integer *info) |
| 35506 | { |
| 35507 | /* System generated locals */ |
| 35508 | address a__1[2]; |
| 35509 | integer a_dim1, a_offset, c_dim1, c_offset, i__1, i__2, i__3[2], i__4, |
| 35510 | i__5; |
| 35511 | char ch__1[2]; |
| 35512 | |
| 35513 | /* Local variables */ |
| 35514 | static integer i__; |
| 35515 | static real t[4160] /* was [65][64] */; |
| 35516 | static integer i1, i2, i3, ib, ic, jc, nb, mi, ni, nq, nw, iws; |
| 35517 | static logical left; |
| 35518 | extern logical lsame_(char *, char *); |
| 35519 | static integer nbmin, iinfo; |
| 35520 | extern /* Subroutine */ int sorml2_(char *, char *, integer *, integer *, |
| 35521 | integer *, real *, integer *, real *, real *, integer *, real *, |
| 35522 | integer *), slarfb_(char *, char *, char *, char * |
| 35523 | , integer *, integer *, integer *, real *, integer *, real *, |
| 35524 | integer *, real *, integer *, real *, integer *), xerbla_(char *, integer *); |
| 35525 | extern integer ilaenv_(integer *, char *, char *, integer *, integer *, |
| 35526 | integer *, integer *, ftnlen, ftnlen); |
| 35527 | extern /* Subroutine */ int slarft_(char *, char *, integer *, integer *, |
| 35528 | real *, integer *, real *, real *, integer *); |
| 35529 | static logical notran; |
| 35530 | static integer ldwork; |
| 35531 | static char transt[1]; |
| 35532 | static integer lwkopt; |
| 35533 | static logical lquery; |
| 35534 | |
| 35535 | |
| 35536 | /* |
| 35537 | -- LAPACK routine (version 3.2) -- |
| 35538 | -- LAPACK is a software package provided by Univ. of Tennessee, -- |
| 35539 | -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
| 35540 | November 2006 |
| 35541 | |
| 35542 | |
| 35543 | Purpose |
| 35544 | ======= |
| 35545 | |
| 35546 | SORMLQ overwrites the general real M-by-N matrix C with |
| 35547 | |
| 35548 | SIDE = 'L' SIDE = 'R' |
| 35549 | TRANS = 'N': Q * C C * Q |
| 35550 | TRANS = 'T': Q**T * C C * Q**T |
| 35551 | |
| 35552 | where Q is a real orthogonal matrix defined as the product of k |
| 35553 | elementary reflectors |
| 35554 | |
| 35555 | Q = H(k) . . . H(2) H(1) |
| 35556 | |
| 35557 | as returned by SGELQF. Q is of order M if SIDE = 'L' and of order N |
| 35558 | if SIDE = 'R'. |
| 35559 | |
| 35560 | Arguments |