Environment for
DeveLoping
KDD-Applications
Supported by Index-Structures

de.lmu.ifi.dbs.elki.distance.similarityfunction.kernel
Class AbstractDoubleKernelFunction<O extends DatabaseObject>

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.distance.AbstractMeasurementFunction<O,D>
              extended by de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractDistanceFunction<O,D>
                  extended by de.lmu.ifi.dbs.elki.distance.similarityfunction.kernel.AbstractKernelFunction<O,DoubleDistance>
                      extended by de.lmu.ifi.dbs.elki.distance.similarityfunction.kernel.AbstractDoubleKernelFunction<O>
Type Parameters:
O - object type
All Implemented Interfaces:
DistanceFunction<O,DoubleDistance>, MeasurementFunction<O,DoubleDistance>, KernelFunction<O,DoubleDistance>, SimilarityFunction<O,DoubleDistance>, Parameterizable
Direct Known Subclasses:
ArbitraryKernelFunctionWrapper, FooKernelFunction, LinearKernelFunction, PolynomialKernelFunction

public abstract class AbstractDoubleKernelFunction<O extends DatabaseObject>
extends AbstractKernelFunction<O,DoubleDistance>

Provides an abstract superclass for KernelFunctions that are based on DoubleDistance.

Author:
Elke Achtert

Field Summary
 
Fields inherited from class de.lmu.ifi.dbs.elki.distance.AbstractMeasurementFunction
INFINITY_PATTERN
 
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, logger
 
Constructor Summary
protected AbstractDoubleKernelFunction()
          Provides a AbstractDoubleKernelFunction with a pattern defined to accept Strings that define a non-negative Double.
 
Method Summary
 DoubleDistance distance(O fv1, O fv2)
          Computes the distance between two given DatabaseObjects according to this distance function.
 DoubleDistance infiniteDistance()
          An infinite DoubleDistance is based on Double.POSITIVE_INFINITY.
 DoubleDistance nullDistance()
          A null DoubleDistance is based on 0.
 DoubleDistance undefinedDistance()
          An undefined DoubleDistance is based on Double.NaN.
 DoubleDistance valueOf(String pattern)
          As pattern is required a String defining a Double.
 
Methods inherited from class de.lmu.ifi.dbs.elki.distance.similarityfunction.kernel.AbstractKernelFunction
similarity, similarity
 
Methods inherited from class de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractDistanceFunction
distance, distance, isInfiniteDistance, isNullDistance, isUndefinedDistance
 
Methods inherited from class de.lmu.ifi.dbs.elki.distance.AbstractMeasurementFunction
getDatabase, matches, requiredInputPattern, setDatabase, setRequiredInputPattern, shortDescription
 
Methods inherited from class de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizable
addOption, addParameterizable, addParameterizable, checkGlobalParameterConstraints, collectOptions, getAttributeSettings, getParameters, rememberParametersExcept, removeOption, removeParameterizable, setParameters
 
Methods inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debugFine, debugFiner, debugFinest, exception, progress, 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.distance.similarityfunction.SimilarityFunction
similarity
 
Methods inherited from interface de.lmu.ifi.dbs.elki.distance.distancefunction.DistanceFunction
distance, distance
 
Methods inherited from interface de.lmu.ifi.dbs.elki.distance.MeasurementFunction
isInfiniteDistance, isNullDistance, isUndefinedDistance, requiredInputPattern, setDatabase
 
Methods inherited from interface de.lmu.ifi.dbs.elki.utilities.optionhandling.Parameterizable
checkGlobalParameterConstraints, collectOptions, getParameters, setParameters, shortDescription
 

Constructor Detail

AbstractDoubleKernelFunction

protected AbstractDoubleKernelFunction()
Provides a AbstractDoubleKernelFunction with a pattern defined to accept Strings that define a non-negative Double.

Method Detail

infiniteDistance

public DoubleDistance infiniteDistance()
An infinite DoubleDistance is based on Double.POSITIVE_INFINITY.

Returns:
an infinite distance

nullDistance

public DoubleDistance nullDistance()
A null DoubleDistance is based on 0.

Returns:
a null distance

undefinedDistance

public DoubleDistance undefinedDistance()
An undefined DoubleDistance is based on Double.NaN.

Returns:
an undefined distance

valueOf

public DoubleDistance valueOf(String pattern)
                       throws IllegalArgumentException
As pattern is required a String defining a Double.

Parameters:
pattern - a pattern defining a similarity suitable to this measurement function
Returns:
a measurement suitable to this measurement function based on the given pattern
Throws:
IllegalArgumentException - if the given pattern is not compatible with the requirements of this measurement function

distance

public DoubleDistance distance(O fv1,
                               O fv2)
Description copied from interface: DistanceFunction
Computes the distance between two given DatabaseObjects according to this distance function.

Parameters:
fv1 - first DatabaseObject
fv2 - second DatabaseObject
Returns:
the distance between two given DatabaseObjects according to this distance function

Release 0.2 (2009-07-06_1820)