SatPiece: Piecewise Constant Saturated Pairwise Interaction Point...

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


Creates an instance of a saturated pairwise interaction point process model with piecewise constant potential function. The model can then be fitted to point pattern data.


  SatPiece(r, sat)



vector of jump points for the potential function


vector of saturation values, or a single saturation value


This is a generalisation of the Geyer saturation point process model, described in Geyer, to the case of multiple interaction distances. It can also be described as the saturated analogue of a pairwise interaction process with piecewise-constant pair potential, described in PairPiece.

The saturated point process with interaction radii r[1], ..., r[k], saturation thresholds s[1],...,s[k], intensity parameter beta and interaction parameters gamma[1], ..., gamma[k], is the point process in which each point x[i] in the pattern X contributes a factor

beta gamma[1]^v(1, x_i, X) ... gamma[k]^v(k, x_i, X)

to the probability density of the point pattern, where

v(j, x_i, X) = min(s[j], t(j, x_i, X))

where t(j,x[i],X) denotes the number of points in the pattern X which lie at a distance between r[j-1] and r[j] from the point x[i]. We take r[0] = 0 so that t(1, x[i], X) is the number of points of X that lie within a distance r[1] of the point x[i].

SatPiece is used to fit this model to data. The function ppm(), which fits point process models to point pattern data, requires an argument of class "interact" describing the interpoint interaction structure of the model to be fitted. The appropriate description of the piecewise constant Saturated pairwise interaction is yielded by the function SatPiece(). See the examples below.

Simulation of this point process model is not yet implemented. This model is not locally stable (the conditional intensity is unbounded).

The argument r specifies the vector of interaction distances. The entries of r must be strictly increasing, positive numbers.

The argument sat specifies the vector of saturation parameters. It should be a vector of the same length as r, and its entries should be nonnegative numbers. Thus sat[1] corresponds to the distance range from 0 to r[1], and sat[2] to the distance range from r[1] to r[2], etc. Alternatively sat may be a single number, and this saturation value will be applied to every distance range.

Infinite values of the saturation parameters are also permitted; in this case v(j, x_i, X) = t(j, x_i, X) and there is effectively no ‘saturation’ for the distance range in question. If all the saturation parameters are set to Inf then the model is effectively a pairwise interaction process, equivalent to PairPiece (however the interaction parameters gamma obtained from SatPiece are the square roots of the parameters gamma obtained from PairPiece).

If r is a single number, this model is virtually equivalent to the Geyer process, see Geyer.


An object of class "interact" describing the interpoint interaction structure of a point process.



and \rolf

in collaboration with Hao Wang and Jeff Picka

See Also

ppm,, Geyer, PairPiece, BadGey.


   SatPiece(c(0.1,0.2), c(1,1))
   # prints a sensible description of itself
   SatPiece(c(0.1,0.2), 1)
   ppm(cells, ~1, SatPiece(c(0.07, 0.1, 0.13), 2))
   # fit a stationary piecewise constant Saturated pairwise interaction process

   ## Not run: 
   ppm(cells, ~polynom(x,y,3), SatPiece(c(0.07, 0.1, 0.13), 2))
   # nonstationary process with log-cubic polynomial trend
## End(Not run)

Search within the spatstat package
Search all R packages, documentation and source code

Questions? Problems? Suggestions? or email at

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.