Class LimitEigenPairFilter

  • All Implemented Interfaces:
    EigenPairFilter

    @Title("Limit-based Eigenpair Filter")
    @Description("Filters all eigenvalues, which are lower than a given value.")
    public class LimitEigenPairFilter
    extends java.lang.Object
    implements EigenPairFilter
    The LimitEigenPairFilter marks all eigenpairs having an (absolute) eigenvalue below the specified threshold (relative or absolute) as weak eigenpairs, the others are marked as strong eigenpairs.
    Since:
    0.1
    Author:
    Elke Achtert
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  LimitEigenPairFilter.Par
      Parameterization class.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private boolean absolute
      Indicates whether delta is an absolute or a relative value.
      static double DEFAULT_DELTA
      The default value for delta.
      private double delta
      Threshold for strong eigenpairs, can be absolute or relative.
    • Constructor Summary

      Constructors 
      Constructor Description
      LimitEigenPairFilter​(double delta, boolean absolute)
      Constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int filter​(double[] eigenValues)
      Filters the specified eigenvalues into strong and weak eigenvalues, where strong eigenvalues have high variance and weak eigenvalues have small variance.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • DEFAULT_DELTA

        public static final double DEFAULT_DELTA
        The default value for delta.
        See Also:
        Constant Field Values
      • delta

        private double delta
        Threshold for strong eigenpairs, can be absolute or relative.
      • absolute

        private boolean absolute
        Indicates whether delta is an absolute or a relative value.
    • Constructor Detail

      • LimitEigenPairFilter

        public LimitEigenPairFilter​(double delta,
                                    boolean absolute)
        Constructor.
        Parameters:
        delta -
        absolute -
    • Method Detail

      • filter

        public int filter​(double[] eigenValues)
        Description copied from interface: EigenPairFilter
        Filters the specified eigenvalues into strong and weak eigenvalues, where strong eigenvalues have high variance and weak eigenvalues have small variance.
        Specified by:
        filter in interface EigenPairFilter
        Parameters:
        eigenValues - the array of eigenvalues, must be sorted descending
        Returns:
        the number of eigenvectors to keep