Previous: cdotu Up: ../linpack.html Next: chidi


CHICO

       SUBROUTINE CHICO(A,LDA,N,KPVT,RCOND,Z)
       INTEGER LDA,N,KPVT(1)
       COMPLEX A(LDA,1),Z(1)
       REAL RCOND
 C
 C     CHICO FACTORS A COMPLEX HERMITIAN MATRIX BY ELIMINATION WITH
 C     SYMMETRIC PIVOTING AND ESTIMATES THE CONDITION OF THE MATRIX.
 C
 C     IF  RCOND  IS NOT NEEDED, CHIFA IS SLIGHTLY FASTER.
 C     TO SOLVE  A*X = B , FOLLOW CHICO BY CHISL.
 C     TO COMPUTE  INVERSE(A)*C , FOLLOW CHICO BY CHISL.
 C     TO COMPUTE  INVERSE(A) , FOLLOW CHICO BY CHIDI.
 C     TO COMPUTE  DETERMINANT(A) , FOLLOW CHICO BY CHIDI.
 C     TO COMPUTE  INERTIA(A), FOLLOW CHICO BY CHIDI.
 C
 C     ON ENTRY
 C
 C        A       COMPLEX(LDA, N)
 C                THE HERMITIAN MATRIX TO BE FACTORED.
 C                ONLY THE DIAGONAL AND UPPER TRIANGLE ARE USED.
 C
 C        LDA     INTEGER
 C                THE LEADING DIMENSION OF THE ARRAY  A .
 C
 C        N       INTEGER
 C                THE ORDER OF THE MATRIX  A .
 C
 C     OUTPUT
 C
 C        A       A BLOCK DIAGONAL MATRIX AND THE MULTIPLIERS WHICH
 C                WERE USED TO OBTAIN IT.
 C                THE FACTORIZATION CAN BE WRITTEN  A = U*D*CTRANS(U)
 C                WHERE  U  IS A PRODUCT OF PERMUTATION AND UNIT
 C                UPPER TRIANGULAR MATRICES , CTRANS(U) IS THE
 C                CONJUGATE TRANSPOSE OF  U , AND  D  IS BLOCK DIAGONAL
 C                WITH 1 BY 1 AND 2 BY 2 BLOCKS.
 C
 C        KPVT    INTEGER(N)
 C                AN INTEGER VECTOR OF PIVOT INDICES.
 C
 C        RCOND   REAL
 C                AN ESTIMATE OF THE RECIPROCAL CONDITION OF  A .
 C                FOR THE SYSTEM  A*X = B , RELATIVE PERTURBATIONS
 C                IN  A  AND  B  OF SIZE  EPSILON  MAY CAUSE
 C                RELATIVE PERTURBATIONS IN  X  OF SIZE  EPSILON/RCOND .
 C                IF  RCOND  IS SO SMALL THAT THE LOGICAL EXPRESSION
 C                           1.0 + RCOND .EQ. 1.0
 C                IS TRUE, THEN  A  MAY BE SINGULAR TO WORKING
 C                PRECISION.  IN PARTICULAR,  RCOND  IS ZERO  IF
 C                EXACT SINGULARITY IS DETECTED OR THE ESTIMATE
 C                UNDERFLOWS.
 C
 C        Z       COMPLEX(N)
 C                A WORK VECTOR WHOSE CONTENTS ARE USUALLY UNIMPORTANT.
 C                IF  A  IS CLOSE TO A SINGULAR MATRIX, THEN  Z  IS
 C                AN APPROXIMATE NULL VECTOR IN THE SENSE THAT
 C                NORM(A*Z) = RCOND*NORM(A)*NORM(Z) .
 C
 C     LINPACK. THIS VERSION DATED 08/14/78 .
 C     CLEVE MOLER, UNIVERSITY OF NEW MEXICO, ARGONNE NATIONAL LAB.
 C
 C     SUBROUTINES AND FUNCTIONS
 C
 C     LINPACK CHIFA
 C     BLAS CAXPY,CDOTC,CSSCAL,SCASUM
 C     FORTRAN ABS,AIMAG,AMAX1,CMPLX,CONJG,IABS,REAL
 C