Environment for
DeveLoping
KDD-Applications
Supported by Index-Structures

de.lmu.ifi.dbs.elki.varianceanalysis
Class LimitEigenPairFilter

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.logging.AbstractLoggable
      extended by de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
          extended by de.lmu.ifi.dbs.elki.varianceanalysis.LimitEigenPairFilter
All Implemented Interfaces:
Loggable, Parameterizable, EigenPairFilter

public class LimitEigenPairFilter
extends AbstractParameterizable
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.

Author:
Elke Achtert

Field Summary
private  boolean absolute
          Indicates wether delta is an absolute or a relative value.
static String ABSOLUTE_D
          Description for flag abs.
static String ABSOLUTE_F
          Flag for marking parameter delta as an absolute value.
static double DEFAULT_DELTA
          The default value for delta.
private  double delta
          Threshold for strong eigenpairs, can be absolute or relative.
static String DELTA_D
          Description for parameter delta.
static String DELTA_P
          Option string for parameter delta.
 
Fields inherited from class de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
optionHandler
 
Fields inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debug
 
Constructor Summary
LimitEigenPairFilter()
          Provides a new EigenPairFilter that marks all eigenpairs having an (absolute) eigenvalue below the specified threshold (relative or absolute) as weak eigenpairs, the others are marked as strong eigenpairs.
 
Method Summary
 String description()
          Returns a description of the class and the required parameters.
 FilteredEigenPairs filter(SortedEigenPairs eigenPairs)
          Filters the specified eigenpairs into strong and weak eigenpairs, where strong eigenpairs having high variances and weak eigenpairs having small variances.
 String[] setParameters(String[] args)
          Sets the attributes of the class accordingly to the given parameters.
 
Methods inherited from class de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
addOption, checkGlobalParameterConstraints, deleteOption, description, description, getAttributeSettings, getParameters, getParameterValue, getPossibleOptions, inlineDescription, isSet, setParameters
 
Methods inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debugFine, debugFiner, debugFinest, exception, message, progress, progress, progress, verbose, verbose, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.lmu.ifi.dbs.elki.utilities.optionhandling.Parameterizable
checkGlobalParameterConstraints, getAttributeSettings, getParameters, getPossibleOptions, inlineDescription
 

Field Detail

ABSOLUTE_F

public static final String ABSOLUTE_F
Flag for marking parameter delta as an absolute value.

See Also:
Constant Field Values

ABSOLUTE_D

public static final String ABSOLUTE_D
Description for flag abs.

See Also:
Constant Field Values

DEFAULT_DELTA

public static final double DEFAULT_DELTA
The default value for delta.

See Also:
Constant Field Values

DELTA_P

public static final String DELTA_P
Option string for parameter delta.

See Also:
Constant Field Values

DELTA_D

public static final String DELTA_D
Description for parameter delta.

See Also:
Constant Field Values

delta

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


absolute

private boolean absolute
Indicates wether delta is an absolute or a relative value.

Constructor Detail

LimitEigenPairFilter

public LimitEigenPairFilter()
Provides a new EigenPairFilter that marks all eigenpairs having an (absolute) eigenvalue below the specified threshold (relative or absolute) as weak eigenpairs, the others are marked as strong eigenpairs.

Method Detail

filter

public FilteredEigenPairs filter(SortedEigenPairs eigenPairs)
Description copied from interface: EigenPairFilter
Filters the specified eigenpairs into strong and weak eigenpairs, where strong eigenpairs having high variances and weak eigenpairs having small variances.

Specified by:
filter in interface EigenPairFilter
Parameters:
eigenPairs - the eigenPairs (i.e. the eigenvectors and
Returns:
the filtered eigenpairs
See Also:
EigenPairFilter.filter(de.lmu.ifi.dbs.elki.math.linearalgebra.SortedEigenPairs)

setParameters

public String[] setParameters(String[] args)
                       throws ParameterException
Description copied from interface: Parameterizable
Sets the attributes of the class accordingly to the given parameters. Returns a new String array containing those entries of the given array that are neither expected nor used by this Parameterizable.

Specified by:
setParameters in interface Parameterizable
Overrides:
setParameters in class AbstractParameterizable
Parameters:
args - parameters to set the attributes accordingly to
Returns:
String[] an array containing the unused parameters
Throws:
ParameterException - in case of wrong parameter-setting
See Also:
Parameterizable.setParameters(String[])

description

public String description()
Description copied from interface: Parameterizable
Returns a description of the class and the required parameters.

This description should be suitable for a usage description as for a standalone application.

Specified by:
description in interface Parameterizable
Overrides:
description in class AbstractParameterizable
Returns:
String a description of the class and the required parameters
See Also:
Parameterizable.description()

Release 0.1 (2008-07-10_1838)