de.lmu.ifi.dbs.elki.algorithm
Class MaterializeDistances<V extends DatabaseObject,D extends NumberDistance<D,N>,N extends Number>
java.lang.Object
de.lmu.ifi.dbs.elki.logging.AbstractLoggable
de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm<O,R>
de.lmu.ifi.dbs.elki.algorithm.DistanceBasedAlgorithm<V,D,CollectionResult<CTriple<Integer,Integer,Double>>>
de.lmu.ifi.dbs.elki.algorithm.MaterializeDistances<V,D,N>
- Type Parameters:
V
- Vector typeD
- Distance typeN
- Number type for distance
- All Implemented Interfaces:
- Algorithm<V,CollectionResult<CTriple<Integer,Integer,Double>>>, Parameterizable
@Title(value="MaterializeDistances")
@Description(value="Materialize all distances in the data set to use as cached/precalculated data.")
public class MaterializeDistances<V extends DatabaseObject,D extends NumberDistance<D,N>,N extends Number>
- extends DistanceBasedAlgorithm<V,D,CollectionResult<CTriple<Integer,Integer,Double>>>
Algorithm to materialize all the distances in a data set.
The result can then be used with the DoubleDistanceParser and
MultipleFileInput to use cached distances.
Symmetry is assumed.
- Author:
- Erich Schubert
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MaterializeDistances
public MaterializeDistances(Parameterization config)
- Constructor, adhering to
Parameterizable
- Parameters:
config
- Parameterization
runInTime
protected CollectionResult<CTriple<Integer,Integer,Double>> runInTime(Database<V> database)
throws IllegalStateException
- Iterates over all points in the database.
- Specified by:
runInTime
in class AbstractAlgorithm<V extends DatabaseObject,CollectionResult<CTriple<Integer,Integer,Double>>>
- Parameters:
database
- the database to run the algorithm on
- Returns:
- the Result computed by this algorithm
- Throws:
IllegalStateException
- if the algorithm has not been initialized
properly (e.g. the setParameters(String[]) method has been failed
to be called).