pppdist {spatstat}R Documentation

Optimal Match Between Two Point Patterns

Description

Given two point patterns, find the optimal match between them.

Usage

  pppdist(X, Y, q = 1, precision = 7, show.rprimal = FALSE, belowone = TRUE, timelag = 0)

Arguments

X,Y Two point patterns (objects of class "ppp").
q Exponent of the Wasserstein distance (or Inf for the Prohorov distance).
precision Index controlling accuracy of algorithm. Interpoint distances will be rounded to the nearest multiple of 10^(-precision).
show.rprimal Logical. Whether to display a plot showing the iterative solution of the restricted primal problem.
belowone Logical. Experimental use only. Indicates whether to rescale the distances by a fudge factor.
timelag Time lag, in seconds, between successive displays of the iterative solution of the restricted primal problem.

Details

Finds the matching between the point patterns X and Y which minimises the sum of the distances between matched points (if q=1), the maximum distance between matched points (if q=Inf), and in general the 1/qth power of the sum of the qth powers of the distances between matched points. If q < 1 this is known as the Wasserstein distance, and if q = infty it is the Prohorov distance.

For finite exponents q, there is a fast C algorithm, which will handle patterns of 100 points without difficulty, but should not be used with thousands of points. If show.rprimal=TRUE, slower interpreted code is used to demonstrate the algorithm. For q=Inf, even slower interpreted R code is used, and this works only for very small point patterns.

Value

An object of class pppmatching that represents the matching. There are methods for plot, print and summary for this class.

Author(s)

Dominic Schuhmacher.

See Also

Examples

   X <- runifpoint(42)
   Y <- runifpoint(42)
   pppdist(X, Y)
   pppdist(X[1:10], Y[1:10], q=Inf)

[Package spatstat version 1.11-3 Index]