NAME

dptcon - compute the reciprocal of the condition number (in the 1-norm) of a real symmetric positive definite tridiagonal 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 tridiagonal 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


FURTHER DETAILS

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