SRC/cheequb.f(3)

NAME
SRC/cheequb.f

SYNOPSIS

  Functions/Subroutines
subroutine cheequb (uplo, n, a, lda, s, scond, amax, work, info)
CHEEQUB

Function/Subroutine Documentation

  subroutine cheequb (character uplo, integer n, complex, dimension( lda, * ) a, integer lda, real, dimension( * ) s, real scond, real amax, complex, dimension( * ) work, integer info)

CHEEQUB

Purpose:

     CHEEQUB computes row and column scalings intended to equilibrate a
     Hermitian matrix A (with respect to the Euclidean norm) and reduce
     its condition number. The scale factors S are computed by the BIN
     algorithm (see references) so that the scaled matrix B with elements
     B(i,j) = S(i)*A(i,j)*S(j) has a condition number within a factor N of
     the smallest possible condition number over all possible diagonal
     scalings.

Parameters
    UPLO

              UPLO is CHARACTER*1
              = 'U':  Upper triangle of A is stored;
              = 'L':  Lower triangle of A is stored.

    N

              N is INTEGER
              The order of the matrix A. N >= 0.

    A

              A is COMPLEX array, dimension (LDA,N)
              The N-by-N Hermitian matrix whose scaling factors are to be
              computed.

    LDA

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

    S

              S is REAL array, dimension (N)
              If INFO = 0, S contains the scale factors for A.

    SCOND

              SCOND is REAL
              If INFO = 0, S contains the ratio of the smallest S(i) to
              the largest S(i). If SCOND >= 0.1 and AMAX is neither too
              large nor too small, it is not worth scaling by S.

    AMAX

              AMAX is REAL
              Largest absolute value of any matrix element. If AMAX is
              very close to overflow or very close to underflow, the
              matrix should be scaled.

    WORK

              WORK is COMPLEX array, dimension (2*N)

    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 is nonpositive.

Author
    Univ. of Tennessee

    Univ. of California Berkeley

    Univ. of Colorado Denver

    NAG Ltd.

References:
    Livne, O.E. and Golub, G.H., 'Scaling by Binormalization',
     Numerical Algorithms, vol. 35, no. 1, pp. 97-120, January 2004.
     DOI 10.1023/B:NUMA.0000016606.32820.69
     Tech report version: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.3.1679

Definition at line 131 of file cheequb.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.