Contents


NAME

     dptcon - compute the reciprocal of the condition number  (in
     the  1-norm) of a real symmetric positive definite tridiago-
     nal matrix using the factorization  A  =  L*D*L**T  or  A  =
     U**T*D*U computed by SPTTRF

SYNOPSIS

     SUBROUTINE DPTCON(N, DIAG, OFFD, ANORM, RCOND, WORK, INFO)

     INTEGER N, INFO
     DOUBLE PRECISION ANORM, RCOND
     DOUBLE PRECISION DIAG(*), OFFD(*), WORK(*)

     SUBROUTINE DPTCON_64(N, DIAG, OFFD, ANORM, RCOND, WORK, INFO)

     INTEGER*8 N, INFO
     DOUBLE PRECISION ANORM, RCOND
     DOUBLE PRECISION DIAG(*), OFFD(*), WORK(*)

  F95 INTERFACE
     SUBROUTINE PTCON([N], DIAG, OFFD, ANORM, RCOND, [WORK], [INFO])

     INTEGER :: N, INFO
     REAL(8) :: ANORM, RCOND
     REAL(8), DIMENSION(:) :: DIAG, OFFD, WORK

     SUBROUTINE PTCON_64([N], DIAG, OFFD, ANORM, RCOND, [WORK], [INFO])

     INTEGER(8) :: N, INFO
     REAL(8) :: ANORM, RCOND
     REAL(8), DIMENSION(:) :: DIAG, OFFD, WORK

  C INTERFACE
     #include <sunperf.h>

     void dptcon(int n, double *diag, double *offd, double anorm,
               double *rcond, int *info);

     void dptcon_64(long n, double *diag,  double  *offd,  double
               anorm, double *rcond, long *info);

PURPOSE

     dptcon computes the reciprocal of the condition  number  (in
     the  1-norm) of a real symmetric positive definite tridiago-
     nal matrix using the factorization  A  =  L*D*L**T  or  A  =
     U**T*D*U computed by SPTTRF.
     Norm(inv(A))  is  computed  by  a  direct  method,  and  the
     reciprocal of the condition number is computed as
                  RCOND = 1 / (ANORM * norm(inv(A))).

ARGUMENTS

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

     DIAG (input)
               The n diagonal elements  of  the  diagonal  matrix
               DIAG  from  the factorization of A, as computed by
               SPTTRF.

     OFFD (input)
               The (n-1) off-diagonal elements of the unit  bidi-
               agonal  factor U or L from the factorization of A,
               as computed by SPTTRF.

     ANORM (input)
               The 1-norm of the original matrix A.

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

     WORK (workspace)
               dimension(N)

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

FURTHER DETAILS

     The method used is described in Nicholas J.  Higham,  "Effi-
     cient  Algorithms  for  Computing  the Condition Number of a
     Tridiagonal Matrix", SIAM J. Sci. Stat. Comput., Vol. 7, No.
     1, January 1986.