Skip to content

Commit 5991437

Browse files
committed
Improved docs
1 parent 721c971 commit 5991437

File tree

1 file changed

+46
-1
lines changed

1 file changed

+46
-1
lines changed

src/tdamapper/cover.py

Lines changed: 46 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -316,7 +316,11 @@ def _get_bounds(self, X):
316316
class CubicalCover(_GridOverlap, Proximity):
317317
"""
318318
Cover algorithm based on the `cubical proximity function`, covering data
319-
with open hypercubes of uniform size and overlap.
319+
with open hypercubes of uniform size and overlap. The cubical cover is
320+
obtained by selecting a subsect of all the hypercubes that intersect the
321+
dataset using proximity net (see :class:`tdamapper.core.Proximity`).
322+
For an open cover containing all the hypercubes interecting the dataset
323+
use :class:`tdamapper.core.StandardCover`.
320324
321325
A hypercube is a multidimensional generalization of a square or a cube.
322326
The size and overlap of the hypercubes are determined by the number of
@@ -403,6 +407,47 @@ def search(self, x):
403407

404408

405409
class StandardCover(_GridOverlap, Cover):
410+
"""
411+
Cover algorithm based on the standard open cover for Mapper, covering data
412+
with open hypercubes of uniform size and overlap. The standard cover is
413+
obtained by selecting all the hypercubes that intersect the dataset.
414+
415+
A hypercube is a multidimensional generalization of a square or a cube.
416+
The size and overlap of the hypercubes are determined by the number of
417+
intervals and the overlap fraction parameters. This class maps each point
418+
to the hypercube with the nearest center.
419+
420+
:param n_intervals: The number of intervals to use for each dimension.
421+
Must be positive and less than or equal to the length of the dataset.
422+
Defaults to 1.
423+
:type n_intervals: int
424+
:param overlap_frac: The fraction of overlap between adjacent intervals on
425+
each dimension, must be in the range (0.0, 0.5]. If not specified, the
426+
overlap_frac is computed such that the volume of the overlap within
427+
each hypercube is half the total volume. Defaults to None.
428+
:type overlap_frac: float
429+
:param metric: The metric used to define the distance between points.
430+
Accepts any value compatible with `tdamapper.utils.metrics.get_metric`.
431+
Defaults to 'euclidean'.
432+
:type metric: str or callable
433+
:param metric_params: Additional parameters for the metric function, to be
434+
passed to `tdamapper.utils.metrics.get_metric`. Defaults to None.
435+
:type metric_params: dict, optional
436+
:param kind: Specifies whether to use a flat or a hierarchical vantage
437+
point tree. Acceptable values are 'flat' or 'hierarchical'. Defaults to
438+
'flat'.
439+
:type kind: str
440+
:param leaf_capacity: The maximum number of points in a leaf node of the
441+
vantage point tree. Must be a positive value. Defaults to 1.
442+
:type leaf_capacity: int
443+
:param leaf_radius: The radius of the leaf nodes. If not specified, it
444+
defaults to the value of `radius`. Must be a positive value. Defaults
445+
to None.
446+
:type leaf_radius: float, optional
447+
:param pivoting: The method used for pivoting in the vantage point tree.
448+
Acceptable values are None, 'random', or 'furthest'. Defaults to None.
449+
:type pivoting: str or callable, optional
450+
"""
406451

407452
def __init__(
408453
self,

0 commit comments

Comments
 (0)