SRC/sgemlq.f(3)

NAME
SRC/sgemlq.f

SYNOPSIS

  Functions/Subroutines
subroutine sgemlq (side, trans, m, n, k, a, lda, t, tsize, c, ldc, work, lwork, info)
SGEMLQ

Function/Subroutine Documentation

  subroutine sgemlq (character side, character trans, integer m, integer n, integer k, real, dimension( lda, * ) a, integer lda, real, dimension( * ) t, integer tsize, real, dimension( ldc, * ) c, integer ldc, real, dimension( * ) work, integer lwork, integer info)

SGEMLQ

Purpose:

    !>
    !>     SGEMLQ overwrites the general real M-by-N matrix C with
    !>
    !>                    SIDE = 'L'     SIDE = 'R'
    !>    TRANS = 'N':      Q * C          C * Q
    !>    TRANS = 'T':      Q**T * C       C * Q**T
    !>    where Q is a real orthogonal matrix defined as the product
    !>    of blocked elementary reflectors computed by short wide LQ
    !>    factorization (SGELQ)
    !>
    !>

Parameters
    SIDE

    !>          SIDE is CHARACTER*1
    !>          = 'L': apply Q or Q**T from the Left;
    !>          = 'R': apply Q or Q**T from the Right.
    !>

    TRANS

    !>          TRANS is CHARACTER*1
    !>          = 'N':  No transpose, apply Q;
    !>          = 'T':  Transpose, apply Q**T.
    !>

    M

    !>          M is INTEGER
    !>          The number of rows of the matrix A.  M >=0.
    !>

    N

    !>          N is INTEGER
    !>          The number of columns of the matrix C. N >= 0.
    !>

    K

    !>          K is INTEGER
    !>          The number of elementary reflectors whose product defines
    !>          the matrix Q.
    !>          If SIDE = 'L', M >= K >= 0;
    !>          if SIDE = 'R', N >= K >= 0.
    !>

    A

    !>          A is REAL array, dimension
    !>                               (LDA,M) if SIDE = 'L',
    !>                               (LDA,N) if SIDE = 'R'
    !>          Part of the data structure to represent Q as returned by SGELQ.
    !>

    LDA

    !>          LDA is INTEGER
    !>          The leading dimension of the array A. LDA >= max(1,K).
    !>

    T

    !>          T is REAL array, dimension (MAX(5,TSIZE)).
    !>          Part of the data structure to represent Q as returned by SGELQ.
    !>

    TSIZE

    !>          TSIZE is INTEGER
    !>          The dimension of the array T. TSIZE >= 5.
    !>

    C

    !>          C is REAL array, dimension (LDC,N)
    !>          On entry, the M-by-N matrix C.
    !>          On exit, C is overwritten by Q*C or Q**T*C or C*Q**T or C*Q.
    !>

    LDC

    !>          LDC is INTEGER
    !>          The leading dimension of the array C. LDC >= max(1,M).
    !>

    WORK

    !>          (workspace) DOUBLE PRECISION array, dimension (MAX(1,LWORK))
    !>          On exit, if INFO = 0, WORK(1) returns the minimal LWORK.
    !>

    LWORK

    !>          LWORK is INTEGER
    !>          The dimension of the array WORK. LWORK >= 1.
    !>          If LWORK = -1, then a workspace query is assumed. The routine
    !>          only calculates the size of the WORK array, returns this
    !>          value as WORK(1), and no error message related to WORK
    !>          is issued by XERBLA.
    !>

    INFO

    !>          INFO is INTEGER
    !>          = 0:  successful exit
    !>          < 0:  if INFO = -i, the i-th argument had an illegal value
    !>

Author
    Univ. of Tennessee

    Univ. of California Berkeley

    Univ. of Colorado Denver

    NAG Ltd.

Further Details

    !>
    !> These details are particular for this LAPACK implementation. Users should not
    !> take them for granted. These details may change in the future, and are not likely
    !> true for another LAPACK implementation. These details are relevant if one wants
    !> to try to understand the code. They are not part of the interface.
    !>
    !> In this version,
    !>
    !>          T(2): row block size (MB)
    !>          T(3): column block size (NB)
    !>          T(6:TSIZE): data structure needed for Q, computed by
    !>                           SLASWLQ or SGELQT
    !>
    !>  Depending on the matrix dimensions M and N, and row and column
    !>  block sizes MB and NB returned by ILAENV, SGELQ will use either
    !>  SLASWLQ (if the matrix is wide-and-short) or SGELQT to compute
    !>  the LQ factorization.
    !>  This version of SGEMLQ will use either SLAMSWLQ or SGEMLQT to
    !>  multiply matrix Q by another matrix.
    !>  Further Details in SLAMSWLQ or SGEMLQT.
    !>

Definition at line 171 of file sgemlq.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.