rThomas
Simulate Thomas Process
Generate a random point pattern, a realisation of the Thomas cluster process.
Usage
rThomas(kappa, sigma, mu, win = owin(c(0,1),c(0,1)))
Arguments
- kappa
- Intensity of the Poisson process of cluster centres. A single positive number, a function, or a pixel image.
- sigma
- Standard deviation of random displacement (along each coordinate axis) of a point from its cluster centre.
- mu
- Mean number of points per cluster (a single positive number) or reference intensity for the cluster points (a function or a pixel image).
- win
- Window in which to simulate the pattern.
An object of class
"owin"
or something acceptable toas.owin
.
Details
This algorithm generates a realisation of the (`modified')
Thomas process, a special case of the Neyman-Scott process,
inside the window win
.
In the simplest case, where kappa
and mu
are single numbers, the algorithm
generates a uniform Poisson point process of kappa
. Then each parent point is
replaced by a random cluster of mu
)
distributed, and their
positions being isotropic Gaussian displacements from the
cluster parent location. The resulting point pattern
is a realisation of the classical
win
.
This point process has intensity kappa * mu
.
The algorithm can also generate spatially inhomogeneous versions of the Thomas process:
- The parent points can be spatially inhomogeneous.
If the argument
kappa
is afunction(x,y)
or a pixel image (object of class"im"
), then it is taken as specifying the intensity function of an inhomogeneous Poisson process that generates the parent points. - The offspring points can be inhomogeneous. If the
argument
mu
is afunction(x,y)
or a pixel image (object of class"im"
), then it is interpreted as the reference density for offspring points, in the sense of Waagepetersen (2007). For a given parent point, the offspring constitute a Poisson process with intensity function equal tomu * f
, wheref
is the Gaussian probability density centred at the parent point. Equivalently we first generate, for each parent point, a Poisson (mumax
) random number of offspring (where$M$is the maximum value ofmu
) with independent Gaussian displacements from the parent location, and then randomly thin the offspring points, with retention probabilitymu/M
. - Both the parent points and the offspring points can be spatially inhomogeneous, as described above.
Note that if kappa
is a pixel image, its domain must be larger
than the window win
. This is because an offspring point inside
win
could have its parent point lying outside win
.
In order to allow this, the simulation algorithm
first expands the original window win
by a distance 4 * sigma
and generates the Poisson process of
parent points on this larger window. If kappa
is a pixel image,
its domain must contain this larger window.
The intensity of the Thomas process is kappa * mu
if either kappa
or mu
is a single number. In the general
case the intensity is an integral involving kappa
, mu
and f
.
The Thomas process with homogeneous parents
(i.e. where kappa
is a single number)
can be fitted to data using kppm
or related functions.
Currently it is not possible to fit the Thomas model
with inhomogeneous parents.
Value
- The simulated point pattern (an object of class
"ppp"
).Additionally, some intermediate results of the simulation are returned as attributes of this point pattern. See
rNeymanScott
.
References
Waagepetersen, R. (2007) An estimating function approach to inference for inhomogeneous Neyman-Scott processes. Biometrics 63, 252--258.
See Also
rpoispp
,
rMatClust
,
rGaussPoisson
,
rNeymanScott
,
thomas.estK
,
thomas.estpcf
,
kppm
Examples
#homogeneous
X <- rThomas(10, 0.2, 5)
#inhomogeneous
Z <- as.im(function(x,y){ 5 * exp(2 * x - 1) }, owin())
Y <- rThomas(10, 0.2, Z)