class HilOut.HilbertFeatures
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
(package private) double |
diameter
Data space diameter
|
(package private) double[] |
min
Data space minimums
|
private ObjectHeap<HilOut.HilFeature> |
out
"OUT"
|
(package private) HilOut.HilFeature[] |
pf
Hilbert representation ("point features")
|
(package private) Relation<O> |
relation
Relation indexed
|
(package private) double |
shift
Current curve shift
|
private java.util.Set<HilOut.HilFeature> |
top
Top candidates
|
private ObjectHeap<HilOut.HilFeature> |
wlb
"WLB"
|
| Constructor and Description |
|---|
HilbertFeatures(Relation<O> relation,
double[] min,
double diameter)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
private double |
boxRadius(int i,
int a,
int b)
boxRadius function calculate the Boxradius
|
private double |
fastUpperBound(int i)
fastUpperBound function calculates an upper Bound as k*maxDist(pf[i],
smallest neighborhood)
|
private double |
getDimForObject(NumberVector obj,
int dim)
Get the (projected) position of the object in dimension dim.
|
private void |
initialize(double shift)
Hilbert function to fill pf with shifted Hilbert values.
|
private double |
maxDistLevel(DBID id,
int level)
maxDist function calculate the maximal Distance from Vector p to the
border of the corresponding r-region at the given level
|
private int |
maxRegLevel(int ref,
int q)
Level of the maximum region containing ref but not q
|
private double |
minDistLevel(DBID id,
int level)
minDist function calculate the minimal Distance from Vector p to the
border of the corresponding r-region at the given level
|
private int |
minRegLevel(int a,
int b)
minReg function calculate the minimal r-region level containing two
points
|
private int |
numberSharedLevels(long[] a,
long[] b)
Number of levels shared
|
private void |
updateOUT(int i)
updateOUT function inserts pf[i] in out.
|
private void |
updateWLB(int i)
updateWLB function inserts pf[i] in wlb.
|
Relation<O extends NumberVector> relation
HilOut.HilFeature[] pf
double[] min
double diameter
double shift
private java.util.Set<HilOut.HilFeature> top
private ObjectHeap<HilOut.HilFeature> out
private ObjectHeap<HilOut.HilFeature> wlb
private void initialize(double shift)
shift - the new shift factorprivate void updateOUT(int i)
i - position in pf of the feature to be insertedprivate void updateWLB(int i)
i - position in pf of the feature to be insertedprivate double fastUpperBound(int i)
i - position in pf of the feature for which the bound should be
calculatedprivate double minDistLevel(DBID id, int level)
id - Object IDlevel - Level of the corresponding r-regionprivate double maxDistLevel(DBID id, int level)
id - Object IDlevel - Level of the corresponding r-regionprivate int numberSharedLevels(long[] a,
long[] b)
a - First bitsetb - Second bitsetprivate int minRegLevel(int a,
int b)
a - index of first point in pfb - index of second point in pfprivate int maxRegLevel(int ref,
int q)
ref - Reference pointq - Query pointprivate double boxRadius(int i,
int a,
int b)
i - index of first pointa - index of second pointb - index of third pointprivate double getDimForObject(NumberVector obj, int dim)
obj - Objectdim - DimensionCopyright © 2019 ELKI Development Team. License information.