cpbcon
cpbcon - estimate the reciprocal of the condition number (in the 1-norm) of a complex Hermitian positive definite band matrix using the Cholesky factorization A = U**H*U or A = L*L**H computed by CPBTRF
SUBROUTINE CPBCON( UPLO, N, NDIAG, A, LDA, ANORM, RCOND, WORK,
* WORK2, INFO)
CHARACTER * 1 UPLO
COMPLEX A(LDA,*), WORK(*)
INTEGER N, NDIAG, LDA, INFO
REAL ANORM, RCOND
REAL WORK2(*)
SUBROUTINE CPBCON_64( UPLO, N, NDIAG, A, LDA, ANORM, RCOND, WORK,
* WORK2, INFO)
CHARACTER * 1 UPLO
COMPLEX A(LDA,*), WORK(*)
INTEGER*8 N, NDIAG, LDA, INFO
REAL ANORM, RCOND
REAL WORK2(*)
SUBROUTINE PBCON( UPLO, [N], NDIAG, A, [LDA], ANORM, RCOND, [WORK],
* [WORK2], [INFO])
CHARACTER(LEN=1) :: UPLO
COMPLEX, DIMENSION(:) :: WORK
COMPLEX, DIMENSION(:,:) :: A
INTEGER :: N, NDIAG, LDA, INFO
REAL :: ANORM, RCOND
REAL, DIMENSION(:) :: WORK2
SUBROUTINE PBCON_64( UPLO, [N], NDIAG, A, [LDA], ANORM, RCOND, [WORK],
* [WORK2], [INFO])
CHARACTER(LEN=1) :: UPLO
COMPLEX, DIMENSION(:) :: WORK
COMPLEX, DIMENSION(:,:) :: A
INTEGER(8) :: N, NDIAG, LDA, INFO
REAL :: ANORM, RCOND
REAL, DIMENSION(:) :: WORK2
#include <sunperf.h>
void cpbcon(char uplo, int n, int ndiag, complex *a, int lda, float anorm, float *rcond, int *info);
void cpbcon_64(char uplo, long n, long ndiag, complex *a, long lda, float anorm, float *rcond, long *info);
cpbcon estimates the reciprocal of the condition number (in the
1-norm) of a complex Hermitian positive definite band matrix using
the Cholesky factorization A = U**H*U or A = L*L**H computed by
CPBTRF.
An estimate is obtained for norm(inv(A)), and the reciprocal of the
condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).
-
* UPLO (input)
-
-
* N (input)
-
The order of the matrix A. N >= 0.
-
* NDIAG (input)
-
The number of superdiagonals of the matrix A if UPLO = 'U',
or the number of sub-diagonals if UPLO = 'L'. NDIAG >= 0.
-
* A (input)
-
The triangular factor U or L from the Cholesky factorization
A = U**H*U or A = L*L**H of the band matrix A, stored in the
first NDIAG+1 rows of the array. The j-th column of U or L is
stored in the j-th column of the array A as follows:
if UPLO ='U', A(kd+1+i-j,j) = U(i,j) for max(1,j-kd)<=i<=j;
if UPLO ='L', A(1+i-j,j) = L(i,j) for j<=i<=min(n,j+kd).
-
* LDA (input)
-
The leading dimension of the array A. LDA >= NDIAG+1.
-
* ANORM (input)
-
The 1-norm (or infinity-norm) of the Hermitian band matrix A.
-
* RCOND (output)
-
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) computed in this routine.
-
* WORK (workspace)
-
dimension(2*N)
-
* WORK2 (workspace)
-
-
* INFO (output)
-