# rHardcore

##### Perfect Simulation of the Hardcore Process

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

##### Usage

`rHardcore(beta, R = 0, W = owin(), expand=TRUE, nsim=1, drop=TRUE)`

##### Arguments

- beta
intensity parameter (a positive number).

- R
hard core distance (a non-negative number).

- W
window (object of class

`"owin"`

) in which to generate the random pattern. Currently this must be a rectangular window.- 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
Hardcore point process in the window `W`

using a ‘perfect simulation’ algorithm.

The Hardcore process is a model for strong spatial inhibition.
Two points of the process are forbidden to lie closer than
`R`

units apart.
The Hardcore process is the special case of the Strauss process
(see `rStrauss`

)
with interaction parameter \(\gamma\) equal to zero.

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.

##### 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.

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

##### See Also

`rmh`

,
`Hardcore`

,
`rStrauss`

,
`rStraussHard`

,
`rDiggleGratton`

.
`rDGS`

,
`rPenttinen`

.

##### Examples

```
# NOT RUN {
X <- rHardcore(0.05,1.5,square(141.4))
Z <- rHardcore(100,0.05, nsim=2)
# }
```

*Documentation reproduced from package spatstat, version 1.64-1, License: GPL (>= 2)*