Class SymmetricEigenByMR3

  • All Implemented Interfaces:
    Spectrum

    public class SymmetricEigenByMR3
    extends Object
    implements Spectrum
    Computes eigen decomposition for a symmetric matrix using "Algorithm of Multiple Relatively Robust Representations" (MRRR).
    • Constructor Detail

      • SymmetricEigenByMR3

        public SymmetricEigenByMR3​(Matrix A,
                                   boolean wantEigenvector)
        Creates an instance for computing the eigen decomposition for a given symmetric matrix A.
        Parameters:
        A - the matrix A
        wantEigenvector - true if eigenvectors are required
      • SymmetricEigenByMR3

        public SymmetricEigenByMR3​(Matrix A,
                                   boolean wantEigenvector,
                                   double epsilon)
        Creates an instance for computing the eigen decomposition for a given symmetric matrix A.
        Parameters:
        A - the matrix A
        wantEigenvector - true if eigenvectors are required
        epsilon - a precision parameter: when a number |x| ≤ ε, it is considered 0
    • Method Detail

      • getEigenvalues

        public List<Double> getEigenvalues()
        Description copied from interface: Spectrum
        Get all the eigenvalues.
        Specified by:
        getEigenvalues in interface Spectrum
        Returns:
        the eigenvalues
      • getEigenvectorMatrix

        public Matrix getEigenvectorMatrix()
      • getEigenvectors

        public List<Vector> getEigenvectors()