gromovdist: Gromov-Hausdorff-type distances of labelled metric spaces

Description Usage Arguments Details Value Author(s) References See Also Examples

View source: R/gromovinterface.R

Description

The function gromovdist calculates the matched Gromov-\ell^p distances of two metrics on a finite space X:

D_p(ρ_1,ρ_2)=\inf\{\|(|d(φ_1(x),φ_2(x))|)_{x \in X}\|_p\}.

There, the infimum is taken over all isometric embeddings φ_1 of (X,ρ_1), φ_2 of (X,ρ_2) into a common metric space (Y,d). Only 1≤ p≤ ∞ is considered.

At the basis is the reformulation of the metric as value of a convex program, see Liebscher (2015).

Methods for various classes are provided:

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
gromovdist(d1,d2=NULL,type="l1",p=NULL,...)

## S3 method for class 'list'
gromovdist(d1,d2=NULL,type="l1",p=NULL,...)
## S3 method for class 'multiPhylo'
gromovdist(d1,d2=NULL,type="l1",p=NULL,...)
## S3 method for class 'phylo'
gromovdist(d1,d2=NULL,type="l1",p=NULL,...)
## S3 method for class 'dist'
gromovdist(d1,d2=NULL,type="l1",p=NULL,...)
## S3 method for class 'dissimilarity'
gromovdist(d1,d2=NULL,type="l1",p=NULL,...)
## S3 method for class 'matrix'
gromovdist(d1,d2=NULL,type="l1",p=NULL,...)
## S3 method for class 'igraph'
gromovdist(d1,d2=NULL,type="l1",p=NULL,leavesonly=TRUE,...)

Arguments

type

type of metric to use

d1,d2

distance object(s).

p

if type="lp" the value of p. If not supplied, p=2 is used.

leavesonly

compute the distances between the leaves of the graph/tree only?

...

further parameters

Details

type="l1" yields p=1

type="l2" yields p=2

type="linfinity" yields p=∞

type="lp" is for (not so efficient) computation using constrOptim for arbitrary 1≤ p<∞

If d1 is a list, the distance matrix between all elements of the list is computed. It is represented as an object of class dissimiliarity, see dissimilarity.object.

The distance is only computed for that part of the objects where the labels are present in both objects. If there are no labels the elements are numbered consecutively.

Value

The distance (one numeric) or a distance matrix for the list and multiPhylo methods

Author(s)

Volkmar Liebscher

References

V.Liebscher, Gromov meets Phylogenetics - new Animals for the Zoo of Metrics on Tree Space. preprint 2015 arXiv:1504.05795

See Also

dist, dissimilarity.object,phangorn-package, igraph-package,constrOptim.

Examples

1
2
3
4
5
6
7
8
library("ape")
tr1<-rtree(n=10)
tr2<-rtree(n=10)
gromovdist(tr1,tr2,"l1")
gromovdist(tr1,tr2,"l2")
#thesame, but slower
gromovdist(d1=tr1,d2=tr2,type="lp",p=2)
gromovdist(tr1,tr2,"linf")

gromovlab documentation built on Feb. 4, 2021, 9:05 a.m.