spatstat.core (version 2.3-1)

simulate.kppm: Simulate a Fitted Cluster Point Process Model


Generates simulated realisations from a fitted cluster point process model.


# S3 method for kppm
simulate(object, nsim = 1, seed=NULL, ...,
         window=NULL, covariates=NULL,
         n.cond = NULL, w.cond = NULL,
         verbose=TRUE, retry=10,



Fitted cluster point process model. An object of class "kppm".


Number of simulated realisations.


an object specifying whether and how to initialise the random number generator. Either NULL or an integer that will be used in a call to set.seed before simulating the point patterns.

Additional arguments passed to the relevant random generator. See Details.


Optional. Window (object of class "owin") in which the model should be simulated.


Optional. A named list containing new values for the covariates in the model.


Optional. Integer specifying a fixed number of points. See the section on Conditional Simulation.


Optional. Conditioning region. A window (object of class "owin") specifying the region which must contain exactly n.cond points. See the section on Conditional Simulation.


Logical. Whether to print progress reports (when nsim > 1).


Number of times to repeat the simulation if it fails (e.g. because of insufficient memory).


Logical. If nsim=1 and drop=TRUE, the result will be a point pattern, rather than a list containing a point pattern.


A list of length nsim containing simulated point patterns (objects of class "ppp"). (For conditional simulation, the length of the result may be shorter than nsim).

The return value also carries an attribute "seed" that captures the initial state of the random number generator. See Details.

Conditional Simulation

If n.cond is specified, it should be a single integer. Simulation will be conditional on the event that the pattern contains exactly n.cond points (or contains exactly n.cond points inside the region w.cond if it is given).

Conditional simulation uses the rejection algorithm described in Section 6.2 of Moller, Syversveen and Waagepetersen (1998). There is a maximum number of proposals which will be attempted. Consequently the return value may contain fewer than nsim point patterns.


This function is a method for the generic function simulate for the class "kppm" of fitted cluster point process models.

Simulations are performed by rThomas, rMatClust, rCauchy, rVarGamma or rLGCP depending on the model.

Additional arguments are passed to the relevant function performing the simulation. For example the argument saveLambda is recognised by all of the simulation functions.

The return value is a list of point patterns. It also carries an attribute "seed" that captures the initial state of the random number generator. This follows the convention used in simulate.lm (see simulate). It can be used to force a sequence of simulations to be repeated exactly, as shown in the examples for simulate.


Baddeley, A., Rubak, E. and Turner, R. (2015) Spatial Point Patterns: Methodology and Applications with R. Chapman and Hall/CRC Press.

Moller, J., Syversveen, A. and Waagepetersen, R. (1998) Log Gaussian Cox Processes. Scandinavian Journal of Statistics 25, 451--482.

See Also

kppm, rThomas, rMatClust, rCauchy, rVarGamma, rLGCP, simulate.ppm, simulate


Run this code
  if(offline <- !interactive()) {
    spatstat.options(npixel=32, ndummy.min=16)

  fit <- kppm(redwood ~x, "Thomas")
  simulate(fit, 2)

  simulate(fit, n.cond=60)

  if(offline) reset.spatstat.options()
# }

Run the code above in your browser using DataLab