TESTING/EIG/dbdt04.f(3)

NAME
TESTING/EIG/dbdt04.f

SYNOPSIS

  Functions/Subroutines
subroutine dbdt04 (uplo, n, d, e, s, ns, u, ldu, vt, ldvt, work, resid)
DBDT04

Function/Subroutine Documentation

  subroutine dbdt04 (character uplo, integer n, double precision, dimension( * ) d, double precision, dimension( * ) e, double precision, dimension( * ) s, integer ns, double precision, dimension( ldu, * ) u, integer ldu, double precision, dimension( ldvt, * ) vt, integer ldvt, double precision, dimension( * ) work, double precision resid)

DBDT04

Purpose:

    !>
    !> DBDT04 reconstructs a bidiagonal matrix B from its (partial) SVD:
    !>    S = U' * B * V
    !> where U and V are orthogonal matrices and S is diagonal.
    !>
    !> The test ratio to test the singular value decomposition is
    !>    RESID = norm( S - U' * B * V ) / ( n * norm(B) * EPS )
    !> where VT = V' and EPS is the machine precision.
    !>

Parameters
    UPLO

    !>          UPLO is CHARACTER*1
    !>          Specifies whether the matrix B is upper or lower bidiagonal.
    !>          = 'U':  Upper bidiagonal
    !>          = 'L':  Lower bidiagonal
    !>

    N

    !>          N is INTEGER
    !>          The order of the matrix B.
    !>

    D

    !>          D is DOUBLE PRECISION array, dimension (N)
    !>          The n diagonal elements of the bidiagonal matrix B.
    !>

    E

    !>          E is DOUBLE PRECISION array, dimension (N-1)
    !>          The (n-1) superdiagonal elements of the bidiagonal matrix B
    !>          if UPLO = 'U', or the (n-1) subdiagonal elements of B if
    !>          UPLO = 'L'.
    !>

    S

    !>          S is DOUBLE PRECISION array, dimension (NS)
    !>          The singular values from the (partial) SVD of B, sorted in
    !>          decreasing order.
    !>

    NS

    !>          NS is INTEGER
    !>          The number of singular values/vectors from the (partial)
    !>          SVD of B.
    !>

    U

    !>          U is DOUBLE PRECISION array, dimension (LDU,NS)
    !>          The n by ns orthogonal matrix U in S = U' * B * V.
    !>

    LDU

    !>          LDU is INTEGER
    !>          The leading dimension of the array U.  LDU >= max(1,N)
    !>

    VT

    !>          VT is DOUBLE PRECISION array, dimension (LDVT,N)
    !>          The n by ns orthogonal matrix V in S = U' * B * V.
    !>

    LDVT

    !>          LDVT is INTEGER
    !>          The leading dimension of the array VT.
    !>

    WORK

    !>          WORK is DOUBLE PRECISION array, dimension (2*N)
    !>

    RESID

    !>          RESID is DOUBLE PRECISION
    !>          The test ratio:  norm(S - U' * B * V) / ( n * norm(B) * EPS )
    !>

Author
    Univ. of Tennessee

    Univ. of California Berkeley

    Univ. of Colorado Denver

    NAG Ltd.

Definition at line 129 of file dbdt04.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.