Class EigenDecompositionImpl

  • All Implemented Interfaces:
    EigenDecomposition

    public class EigenDecompositionImpl
    extends Object
    implements EigenDecomposition
    Calculates the eigen decomposition of a real symmetric matrix.

    The eigen decomposition of matrix A is a set of two matrices: V and D such that A = V D VT. A, V and D are all m × m matrices.

    As of 2.0, this class supports only symmetric matrices, and hence computes only real realEigenvalues. This implies the D matrix returned by getD() is always diagonal and the imaginary values returned getImagEigenvalue(int) and getImagEigenvalues() are always null.

    When called with a RealMatrix argument, this implementation only uses the upper part of the matrix, the part below the diagonal is not accessed at all.

    This implementation is based on the paper by A. Drubrulle, R.S. Martin and J.H. Wilkinson 'The Implicit QL Algorithm' in Wilksinson and Reinsch (1971) Handbook for automatic computation, vol. 2, Linear algebra, Springer-Verlag, New-York

    Since:
    2.0