---
name: "zppcon"
section: "3lapack"
platform: "linux"
package: "liblapack-doc"
version: "3.2.1-8"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/zppcon/3lapack"
---

# zppcon(3lapack)

estimates the reciprocal of the condition number (in the 1-norm) of a complex Hermitian positive definite packed matrix using the Cholesky factorization A = U\*\*H\*U or A = L\*L\*\*H computed by ZPPTRF

## NAME

ZPPCON - estimates the reciprocal of the condition number (in the 1-norm) of a complex Hermitian positive definite packed matrix using the Cholesky factorization A = U\*\*H\*U or A = L\*L\*\*H computed by ZPPTRF

## SYNOPSIS

- SUBROUTINE ZPPCON(

  UPLO, N, AP, ANORM, RCOND, WORK, RWORK, INFO )

- CHARACTER

  UPLO

- INTEGER

  INFO, N

- DOUBLE

  PRECISION ANORM, RCOND

- DOUBLE

  PRECISION RWORK( \* )

- COMPLEX\*16

  AP( \* ), WORK( \* )

## PURPOSE

ZPPCON estimates the reciprocal of the condition number (in the 1-norm) of a complex Hermitian positive definite packed matrix using the Cholesky factorization A = U\*\*H\*U or A = L\*L\*\*H computed by ZPPTRF. 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.

- AP (input) COMPLEX\*16 array, dimension (N\*(N+1)/2)

  The triangular factor U or L from the Cholesky factorization A = U\*\*H\*U or A = L\*L\*\*H, packed columnwise in a linear array.  The j-th column of U or L is stored in the array AP as follows: if UPLO = 'U', AP(i + (j-1)\*j/2) = U(i,j) for 1\<=i\<=j; if UPLO = 'L', AP(i + (j-1)\*(2n-j)/2) = L(i,j) for j\<=i\<=n.

- ANORM (input) DOUBLE PRECISION

  The 1-norm (or infinity-norm) of the Hermitian matrix A.

- RCOND (output) DOUBLE PRECISION

  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) COMPLEX\*16 array, dimension (2\*N)

  - RWORK (workspace) DOUBLE PRECISION array, dimension (N)

  - INFO (output) INTEGER

  \= 0:  successful exit\
   \< 0:  if INFO = -i, the i-th argument had an illegal value
