cern.colt.matrix.linalg

## Class CholeskyDecomposition

- java.lang.Object
- - cern.colt.matrix.linalg.CholeskyDecomposition

- All Implemented Interfaces:
    java.io.Serializable

      public class CholeskyDecomposition
      extends java.lang.Object
      implements java.io.Serializable

  For a symmetric, positive definite matrix `A`, the Cholesky decomposition is a lower triangular matrix `L` so that `A = L*L'`; If the matrix is not symmetric or positive definite, the constructor returns a partial decomposition and sets an internal flag that may be queried by the `isSymmetricPositiveDefinite()` method.
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `CholeskyDecomposition(DoubleMatrix2D A)` Constructs and returns a new Cholesky decomposition object for a symmetric and positive definite matrix; The decomposed matrices can be retrieved via instance methods of the returned decomposition object.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `DoubleMatrix2D` | `getL()` Returns the triangular factor, `L`.
    `boolean` | `isSymmetricPositiveDefinite()` Returns whether the matrix `A` is symmetric and positive definite.
    `DoubleMatrix2D` | `solve(DoubleMatrix2D B)` Solves `A*X = B`; returns `X`.
    `java.lang.String` | `toString()` Returns a String with (propertyName, propertyValue) pairs.

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### CholeskyDecomposition

          public CholeskyDecomposition(DoubleMatrix2D A)

      Constructs and returns a new Cholesky decomposition object for a symmetric and positive definite matrix; The decomposed matrices can be retrieved via instance methods of the returned decomposition object.
      Parameters:
        `A` - Square, symmetric matrix.
      Throws:
        `java.lang.IllegalArgumentException` - if `A` is not square.

  - ### Method Detail

    - #### getL

          public DoubleMatrix2D getL()

      Returns the triangular factor, `L`.
      Returns:
        `L`

    - #### isSymmetricPositiveDefinite

          public boolean isSymmetricPositiveDefinite()

      Returns whether the matrix `A` is symmetric and positive definite.
      Returns:
        true if `A` is symmetric and positive definite; false otherwise

    - #### solve

          public DoubleMatrix2D solve(DoubleMatrix2D B)

      Solves `A*X = B`; returns `X`.
      Parameters:
        `B` - A Matrix with as many rows as `A` and any number of columns.
      Returns:
        `X` so that `L*L'*X = B`.
      Throws:
        `java.lang.IllegalArgumentException` - if `B.rows() != A.rows()`.
        `java.lang.IllegalArgumentException` - if `!isSymmetricPositiveDefinite()`.

    - #### toString

          public java.lang.String toString()

      Returns a String with (propertyName, propertyValue) pairs. Useful for debugging or to quickly get the rough picture. For example,

          rank          : 3
          trace         : 0

      Overrides:
        `toString` in class `java.lang.Object`

Jump to the Colt Homepage