cunml2.f(3)

NAME
cunml2.f -

SYNOPSIS

  Functions/Subroutines

subroutine cunml2 (SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, INFO)
CUNML2 multiplies a general matrix by the unitary matrix from a LQ factorization determined by cgelqf (unblocked algorithm).

Function/Subroutine Documentation

  subroutine cunml2 (characterSIDE, characterTRANS, integerM, integerN, integerK, complex, dimension( lda, * )A, integerLDA, complex, dimension( * )TAU, complex, dimension( ldc, * )C, integerLDC, complex, dimension( * )WORK, integerINFO)

CUNML2 multiplies a general matrix by the unitary matrix from a LQ factorization determined by cgelqf (unblocked algorithm).

Purpose:

     CUNML2 overwrites the general complex m-by-n matrix C with

           Q * C  if SIDE = 'L' and TRANS = 'N', or

           Q**H* C  if SIDE = 'L' and TRANS = 'C', or

           C * Q  if SIDE = 'R' and TRANS = 'N', or

           C * Q**H if SIDE = 'R' and TRANS = 'C',

     where Q is a complex unitary matrix defined as the product of k
     elementary reflectors

           Q = H(k)**H . . . H(2)**H H(1)**H

     as returned by CGELQF. Q is of order m if SIDE = 'L' and of order n
     if SIDE = 'R'.

Parameters:
    SIDE

              SIDE is CHARACTER*1
              = 'L': apply Q or Q**H from the Left
              = 'R': apply Q or Q**H from the Right

    TRANS

              TRANS is CHARACTER*1
              = 'N': apply Q  (No transpose)
              = 'C': apply Q**H (Conjugate transpose)

    M

              M is INTEGER
              The number of rows of the matrix C. 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 COMPLEX array, dimension
                                   (LDA,M) if SIDE = 'L',
                                   (LDA,N) if SIDE = 'R'
              The i-th row must contain the vector which defines the
              elementary reflector H(i), for i = 1,2,...,k, as returned by
              CGELQF in the first k rows of its array argument A.
              A is modified by the routine but restored on exit.

    LDA

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

    TAU

              TAU is COMPLEX array, dimension (K)
              TAU(i) must contain the scalar factor of the elementary
              reflector H(i), as returned by CGELQF.

    C

              C is COMPLEX array, dimension (LDC,N)
              On entry, the m-by-n matrix C.
              On exit, C is overwritten by Q*C or Q**H*C or C*Q**H or C*Q.

    LDC

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

    WORK

              WORK is COMPLEX array, dimension
                                       (N) if SIDE = 'L',
                                       (M) if SIDE = 'R'

    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.

Date:
    September 2012

Definition at line 159 of file cunml2.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.