siaf.simulatePC: Simulation from an Isotropic Spatial Kernel via Polar Coordinates
Description
To sample points from isotropic power-law kernels
$f_2(s) = f(||s||)$ such as siaf.powerlaw on a
bounded domain (i.e., $||s|| < \code{ub}$), it is
convenient to switch to polar coordinates $(r,\theta)$,
which have a density proportional to
$r f_2((r \cos(\theta), r \sin(\theta))) = r f(r)$
(independent of the angle $\theta$ due to isotropy).
The angle is thus simply drawn uniformly in $[0,2\pi)$, and
$r$ can be sampled by the inversion method, where numeric root
finding is used for the quantiles (since the quantile function is not
available in closed form).
Usage
siaf.simulatePC(intrfr)
Arguments
intrfr
a function computing the integral of $r f(r)$ from 0 to R
(first argument, not necessarily named R). Parameters of the
function are passed as its second argument and a third argument is
the event type.
Value
a function with arguments (n, siafpars, type, ub), which
samples n points from the spatial kernel $f_2(s)$ within the
disc of radius ub, where siafpars and type are
passed as second and third argument to intrfr.
The environment of the returned function will be the caller's environment.