Previous: spbtrs Up: ../lapack-s.html Next: spoequ


spocon


 NAME
      SPOCON - estimate the reciprocal of the condition number (in
      the 1-norm) of a real symmetric positive definite matrix
      using the Cholesky factorization A = U**T*U or A = L*L**T
      computed by SPOTRF

 SYNOPSIS
      SUBROUTINE SPOCON( UPLO, N, A, LDA, ANORM, RCOND, WORK,
                         IWORK, INFO )

          CHARACTER      UPLO

          INTEGER        INFO, LDA, N

          REAL           ANORM, RCOND

          INTEGER        IWORK( * )

          REAL           A( LDA, * ), WORK( * )

 PURPOSE
      SPOCON estimates the reciprocal of the condition number (in
      the 1-norm) of a real symmetric positive definite matrix
      using the Cholesky factorization A = U**T*U or A = L*L**T
      computed by SPOTRF.

      An estimate is obtained for norm(inv(A)), and the reciprocal
      of the condition number is computed as RCOND = 1 / (ANORM *
      norm(inv(A))).

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

      N       (input) INTEGER
              The order of the matrix A.  N >= 0.

      A       (input) REAL array, dimension (LDA,N)
              The triangular factor U or L from the Cholesky fac-
              torization A = U**T*U or A = L*L**T, as computed by
              SPOTRF.

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

      ANORM   (input) REAL
              The 1-norm (or infinity-norm) of the symmetric
              matrix A.

      RCOND   (output) REAL
              The reciprocal of the condition number of the matrix
              A, computed as RCOND = 1/(ANORM * AINVNM), where
              AINVNM is an estimate of the 1-norm of inv(A) com-
              puted in this routine.

      WORK    (workspace) REAL array, dimension (3*N)

      IWORK   (workspace) INTEGER array, dimension (N)

      INFO    (output) INTEGER
              = 0:  successful exit
              < 0:  if INFO = -i, the i-th argument had an illegal
              value