R: Perfect Simulation of the Strauss Process

rStrauss {spatstat.core} | R Documentation

## Perfect Simulation of the Strauss Process

### Description

Generate a random pattern of points, a simulated realisation of the Strauss process, using a perfect simulation algorithm.

### Usage

      rStrauss(beta, gamma = 1, R = 0, W = owin(), expand=TRUE, nsim=1, drop=TRUE)

### Arguments

`beta` | intensity parameter (a positive number).
`gamma` | interaction parameter (a number between 0 and 1, inclusive).
`R` | interaction radius (a non-negative number).
`W` | window (object of class `"owin"`) in which to generate the random pattern.
`expand` | Logical. If `FALSE`, simulation is performed in the window `W`, which must be rectangular. If `TRUE` (the default), simulation is performed on a larger window, and the result is clipped to the original window `W`. Alternatively `expand` can be an object of class `"rmhexpand"` (see `rmhexpand`) determining the expansion method.
`nsim` | Number of simulated realisations to be generated.
`drop` | Logical. If `nsim=1` and `drop=TRUE` (the default), the result will be a point pattern, rather than a list containing a point pattern.

### Details

This function generates a realisation of the Strauss point process in the window `W` using a ‘perfect simulation’ algorithm.

The Strauss process (Strauss, 1975; Kelly and Ripley, 1976) is a model for spatial inhibition, ranging from a strong ‘hard core’ inhibition to a completely random pattern according to the value of `gamma`.

The Strauss process with interaction radius R and parameters beta and gamma is the pairwise interaction point process with probability density

f(x_1,…,x_n) = alpha . beta^n(x) gamma^s(x)

where x[1],…,x[n] represent the points of the pattern, n(x) is the number of points in the pattern, s(x) is the number of distinct unordered pairs of points that are closer than R units apart, and alpha is the normalising constant. Intuitively, each point of the pattern contributes a factor beta to the probability density, and each pair of points closer than r units apart contributes a factor gamma to the density.

The interaction parameter gamma must be less than or equal to 1 in order that the process be well-defined (Kelly and Ripley, 1976). This model describes an “ordered” or “inhibitive” pattern. If gamma=1 it reduces to a Poisson process (complete spatial randomness) with intensity beta. If gamma=0 it is called a “hard core process” with hard core radius R/2, since no pair of points is permitted to lie closer than R units apart.

The simulation algorithm used to generate the point pattern is ‘dominated coupling from the past’ as implemented by Berthelsen and Moller (2002, 2003). This is a ‘perfect simulation’ or ‘exact simulation’ algorithm, so called because the output of the algorithm is guaranteed to have the correct probability distribution exactly (unlike the Metropolis-Hastings algorithm used in `rmh`, whose output is only approximately correct).

There is a tiny chance that the algorithm will run out of space before it has terminated. If this occurs, an error message will be generated.

### Value

If `nsim = 1`, a point pattern (object of class `"ppp"`). If `nsim > 1`, a list of point patterns.

### Author(s)

Kasper Klitgaard Berthelsen, adapted for spatstat by Adrian Baddeley Adrian.Baddeley@curtin.edu.au

### References

Berthelsen, K.K. and Moller, J. (2002) A primer on perfect simulation for spatial point processes. Bulletin of the Brazilian Mathematical Society 33, 351-367.

Berthelsen, K.K. and Moller, J. (2003) Likelihood and non-parametric Bayesian MCMC inference for spatial point processes based on perfect simulation and path sampling. Scandinavian Journal of Statistics 30, 549-564.

Kelly, F.P. and Ripley, B.D. (1976) On Strauss's model for clustering. Biometrika 63, 357–360.

Moller, J. and Waagepetersen, R. (2003). Statistical Inference and Simulation for Spatial Point Processes. Chapman and Hall/CRC.

Strauss, D.J. (1975) A model for clustering. Biometrika 62, 467–475.

### See Also

`rmh`, `Strauss`, `rHardcore`, `rStraussHard`, `rDiggleGratton`, `rDGS`, `rPenttinen`.

### Examples

      X <- rStrauss(0.05,0.2,1.5,square(50))

[Package spatstat.core version 2.3-0 Index]