cgetsls.f(3)

NAME
cgetsls.f

SYNOPSIS

  Functions/Subroutines
subroutine cgetsls (TRANS, M, N, NRHS, A, LDA, B, LDB, WORK, LWORK, INFO)

Function/Subroutine Documentation

  subroutine cgetsls (character TRANS, integer M, integer N, integer NRHS, complex, dimension( lda, * ) A, integer LDA, complex, dimension( ldb, * ) B, integer LDB, complex, dimension( * ) WORK, integer LWORK, integer INFO)

Purpose:

CGETSLS solves overdetermined or underdetermined complex linear systems involving an M-by-N matrix A, using a tall skinny QR or short wide LQ factorization of A. It is assumed that A has full rank.

The following options are provided:

1.  If TRANS = 'N' and m >= n: find the least squares solution of an overdetermined system, i.e., solve the least squares problem minimize || B - A*X ||.

2.  If TRANS = 'N' and m < n: find the minimum norm solution of an underdetermined system A * X = B.

3.  If TRANS = 'C' and m >= n: find the minimum norm solution of an undetermined system A**T * X = B.

4.  If TRANS = 'C' and m < n: find the least squares solution of an overdetermined system, i.e., solve the least squares problem minimize || B - A**T * X ||.

Several right hand side vectors b and solution vectors x can be handled in a single call; they are stored as the columns of the M-by-NRHS right hand side matrix B and the N-by-NRHS solution matrix X.

Parameters:
    TRANS

              TRANS is CHARACTER*1
              = 'N': the linear system involves A;
              = 'C': the linear system involves A**H.

    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 A.  N >= 0.

    NRHS

              NRHS is INTEGER
              The number of right hand sides, i.e., the number of
              columns of the matrices B and X. NRHS >=0.

    A

              A is COMPLEX array, dimension (LDA,N)
              On entry, the M-by-N matrix A.
              On exit,
              A is overwritten by details of its QR or LQ
              factorization as returned by CGEQR or CGELQ.

    LDA

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

    B

              B is COMPLEX array, dimension (LDB,NRHS)
              On entry, the matrix B of right hand side vectors, stored
              columnwise; B is M-by-NRHS if TRANS = 'N', or N-by-NRHS
              if TRANS = 'C'.
              On exit, if INFO = 0, B is overwritten by the solution
              vectors, stored columnwise:
              if TRANS = 'N' and m >= n, rows 1 to n of B contain the least
              squares solution vectors.
              if TRANS = 'N' and m < n, rows 1 to N of B contain the
              minimum norm solution vectors;
              if TRANS = 'C' and m >= n, rows 1 to M of B contain the
              minimum norm solution vectors;
              if TRANS = 'C' and m < n, rows 1 to M of B contain the
              least squares solution vectors.

    LDB

              LDB is INTEGER
              The leading dimension of the array B. LDB >= MAX(1,M,N).

    WORK

              (workspace) COMPLEX array, dimension (MAX(1,LWORK))
              On exit, if INFO = 0, WORK(1) contains optimal (or either minimal
              or optimal, if query was assumed) LWORK.
              See LWORK for details.

    LWORK

              LWORK is INTEGER
              The dimension of the array WORK.
              If LWORK = -1 or -2, then a workspace query is assumed.
              If LWORK = -1, the routine calculates optimal size of WORK for the
              optimal performance and returns this value in WORK(1).
              If LWORK = -2, the routine calculates minimal size of WORK and
              returns this value in WORK(1).

    INFO

              INFO is INTEGER
              = 0:  successful exit
              < 0:  if INFO = -i, the i-th argument had an illegal value
              > 0:  if INFO =  i, the i-th diagonal element of the
                    triangular factor of A is zero, so that A does not have
                    full rank; the least squares solution could not be
                    computed.

Author:
    Univ. of Tennessee

    Univ. of California Berkeley

    Univ. of Colorado Denver

    NAG Ltd.

Date:
    June 2017

Definition at line 162 of file cgetsls.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.