de.lmu.ifi.dbs.elki.distance.distancefunction.subspace
Class SubspaceDistanceFunction.Instance<V extends NumberVector<?,?>>

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.database.query.AbstractDataBasedQuery<O>
      extended by de.lmu.ifi.dbs.elki.database.query.distance.AbstractDistanceQuery<O,D>
          extended by de.lmu.ifi.dbs.elki.database.query.distance.AbstractDatabaseDistanceQuery<O,D>
              extended by de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractIndexBasedDistanceFunction.Instance<V,FilteredLocalPCAIndex<V>,SubspaceDistance,SubspaceDistanceFunction>
                  extended by de.lmu.ifi.dbs.elki.distance.distancefunction.subspace.SubspaceDistanceFunction.Instance<V>
All Implemented Interfaces:
DatabaseQuery, DistanceQuery<V,SubspaceDistance>, FilteredLocalPCABasedDistanceFunction.Instance<V,FilteredLocalPCAIndex<V>,SubspaceDistance>, IndexBasedDistanceFunction.Instance<V,FilteredLocalPCAIndex<V>,SubspaceDistance>
Enclosing class:
SubspaceDistanceFunction

public static class SubspaceDistanceFunction.Instance<V extends NumberVector<?,?>>
extends AbstractIndexBasedDistanceFunction.Instance<V,FilteredLocalPCAIndex<V>,SubspaceDistance,SubspaceDistanceFunction>
implements FilteredLocalPCABasedDistanceFunction.Instance<V,FilteredLocalPCAIndex<V>,SubspaceDistance>

The actual instance bound to a particular database.


Field Summary
 
Fields inherited from class de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractIndexBasedDistanceFunction.Instance
index, parent
 
Fields inherited from class de.lmu.ifi.dbs.elki.database.query.AbstractDataBasedQuery
relation
 
Fields inherited from interface de.lmu.ifi.dbs.elki.database.query.DatabaseQuery
HINT_BULK, HINT_EXACT, HINT_HEAVY_USE, HINT_NO_CACHE, HINT_OPTIMIZED_ONLY, HINT_SINGLE
 
Constructor Summary
SubspaceDistanceFunction.Instance(Relation<V> database, FilteredLocalPCAIndex<V> index, SubspaceDistanceFunction distanceFunction)
           
 
Method Summary
 SubspaceDistance distance(DBID id1, DBID id2)
          Note, that the pca of o1 must have equal ore more strong eigenvectors than the pca of o2.
 SubspaceDistance distance(V o1, V o2, PCAFilteredResult pca1, PCAFilteredResult pca2)
          Computes the distance between two given DatabaseObjects according to this distance function.
 
Methods inherited from class de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractIndexBasedDistanceFunction.Instance
getDistanceFunction, getIndex
 
Methods inherited from class de.lmu.ifi.dbs.elki.database.query.distance.AbstractDatabaseDistanceQuery
distance, distance, distance
 
Methods inherited from class de.lmu.ifi.dbs.elki.database.query.distance.AbstractDistanceQuery
getDistanceFactory, infiniteDistance, nullDistance, undefinedDistance
 
Methods inherited from class de.lmu.ifi.dbs.elki.database.query.AbstractDataBasedQuery
getRelation
 
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.distancefunction.IndexBasedDistanceFunction.Instance
getIndex
 
Methods inherited from interface de.lmu.ifi.dbs.elki.database.query.distance.DistanceQuery
distance, distance, distance, getDistanceFactory, getDistanceFunction, getRelation, infiniteDistance, nullDistance, undefinedDistance
 

Constructor Detail

SubspaceDistanceFunction.Instance

public SubspaceDistanceFunction.Instance(Relation<V> database,
                                         FilteredLocalPCAIndex<V> index,
                                         SubspaceDistanceFunction distanceFunction)
Parameters:
database - Database
index - Index
Method Detail

distance

public SubspaceDistance distance(DBID id1,
                                 DBID id2)
Note, that the pca of o1 must have equal ore more strong eigenvectors than the pca of o2.

Specified by:
distance in interface DistanceQuery<V extends NumberVector<?,?>,SubspaceDistance>
Specified by:
distance in class AbstractDistanceQuery<V extends NumberVector<?,?>,SubspaceDistance>
Parameters:
id1 - first object id
id2 - second object id
Returns:
the distance between the two objects specified by their object ids

distance

public SubspaceDistance distance(V o1,
                                 V o2,
                                 PCAFilteredResult pca1,
                                 PCAFilteredResult pca2)
Computes the distance between two given DatabaseObjects according to this distance function. Note, that the first pca must have an equal number of strong eigenvectors than the second pca.

Parameters:
o1 - first DatabaseObject
o2 - second DatabaseObject
pca1 - first PCA
pca2 - second PCA
Returns:
the distance between two given DatabaseObjects according to this distance function

Release 0.4.0 (2011-09-20_1324)