package Jampack; /** Zchol implements the Cholesky decomposition of a positive definite matrix. Specifically if A is (Hermitian) positive definite then there is an upper triangular matrix R with positive diagonal elements such that
*     A = R^H R
The matrix R is implemented as a Zutmat. @version Pre-alpha @author G. W. Stewart */ public class Zchol{ /** The order of A and R */ public int n; /** The Cholesky factor */ public Zutmat R; /** Constructs a Zchol from a Zmat A. The matrix that is actually decomposed is taken from the upper triangle of $A$ and the imaginary part of its diagonal is set to zero. Throws a JampackException for inconsistent dimensions on failure of the algorithm to complete. @param A The matrix whose Cholesky decomposition is to be computed. @return The Cholesky decomposition of A @exception JampackException Thrown if A is not square or Hermitian.
Thrown if the doecomposition does not exist. */ public Zchol(Zmat A) throws JampackException{ double mu; int i, j, k; A.getProperties(); if (A.nr != A.nc){ throw new JampackException ("Matrix not square."); } n = A.nr; /* Set up R from the upper triangle of A */ R = new Zutmat(A); /* Check for A Hermitian and initialize R. */ for (i=0; i