dsyequb.f(3)

NAME
dsyequb.f -

SYNOPSIS

  Functions/Subroutines

subroutine dsyequb (UPLO, N, A, LDA, S, SCOND, AMAX, WORK, INFO)
DSYEQUB

Function/Subroutine Documentation

  subroutine dsyequb (characterUPLO, integerN, double precision, dimension( lda, * )A, integerLDA, double precision, dimension( * )S, double precisionSCOND, double precisionAMAX, double precision, dimension( * )WORK, integerINFO)

DSYEQUB

Purpose:

     DSYEQUB computes row and column scalings intended to equilibrate a
     symmetric matrix A and reduce its condition number
     (with respect to the two-norm).  S contains the scale factors,
     S(i) = 1/sqrt(A(i,i)), chosen so that the scaled matrix B with
     elements B(i,j) = S(i)*A(i,j)*S(j) has ones on the diagonal.  This
     choice of S puts the condition number of B within a factor N of the
     smallest possible condition number over all possible diagonal
     scalings.

Parameters:
    UPLO

              UPLO is CHARACTER*1
              Specifies whether the details of the factorization are stored
              as an upper or lower triangular matrix.
              = 'U':  Upper triangular, form is A = U*D*U**T;
              = 'L':  Lower triangular, form is A = L*D*L**T.

    N

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

    A

              A is DOUBLE PRECISION array, dimension (LDA,N)
              The N-by-N symmetric matrix whose scaling
              factors are to be computed.  Only the diagonal elements of A
              are referenced.

    LDA

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

    S

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

    SCOND

              SCOND is DOUBLE PRECISION
              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 DOUBLE PRECISION
              Absolute value of largest matrix element.  If AMAX is very
              close to overflow or very close to underflow, the matrix
              should be scaled.

    WORK

              WORK is DOUBLE PRECISION array, dimension (3*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.

Date:
    November 2011

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://ruready.utah.edu/archive/papers/bin.pdf

Definition at line 136 of file dsyequb.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.