cholcov
              Cholesky-like decomposition for covariance matrix.
 T = cholcov (sigma) computes matrix T such that
 sigma = T’  T.  sigma must be square, symmetric, and
 positive semi-definite.
If sigma is positive definite, then T is the square, upper triangular Cholesky factor. If sigma is not positive definite, T is computed with an eigenvalue decomposition of sigma, but in this case T is not necessarily triangular or square. Any eigenvectors whose corresponding eigenvalue is close to zero (within a tolerance) are omitted. If any remaining eigenvalues are negative, T is empty.
 The tolerance is calculated as 10 * eps (max (abs (diag (sigma)))).
 [T, p = cholcov (sigma) returns in p the
 number of negative eigenvalues of sigma.  If p > 0, then T
 is empty, whereas if p = 0, sigma) is positive semi-definite.
If sigma is not square and symmetric, P is NaN and T is empty.
 [T, p = cholcov (sigma, 0) returns p = 0 if
 sigma is positive definite, in which case T is the Cholesky
 factor.  If sigma is not positive definite, p is a positive
 integer and T is empty.
 […] = cholcov (sigma, 1) is equivalent to
  […] = cholcov (sigma).
See also: chov
Source Code: cholcov
| 
 C1 = [2, 1, 1, 2; 1, 2, 1, 2; 1, 1, 2, 2; 2, 2, 2, 3]
 T = cholcov (C1)
 C2 = T'*T
C1 =
   2   1   1   2
   1   2   1   2
   1   1   2   2
   2   2   2   3
T =
  -0.1247  -0.6365   0.7612        0
   0.8069  -0.5114  -0.2955        0
   1.1547   1.1547   1.1547   1.7321
C2 =
   2   1   1   2
   1   2   1   2
   1   1   2   2
   2   2   2   3
                     |