MultiStrauss
The Multitype Strauss Point Process Model
Creates an instance of the multitype Strauss point process model which can then be fitted to point pattern data.
Usage
MultiStrauss(types, radii)
Arguments
- types
- Vector of all possible types (i.e. the possible levels
of the
marks
variable in the data) - radii
- Matrix of interaction radii
Details
The (stationary) multitype Strauss process with $m$ types, with interaction radii $r_{ij}$ and parameters $\beta_j$ and $\gamma_{ij}$ is the pairwise interaction point process in which each point of type $j$ contributes a factor $\beta_j$ to the probability density of the point pattern, and a pair of points of types $i$ and $j$ closer than $r_{ij}$ units apart contributes a factor $\gamma_{ij}$ to the density.
The nonstationary multitype Strauss process is similar except that
the contribution of each individual point $x_i$
is a function $\beta(x_i)$
of location and type, rather than a constant beta.
The function ppm()
, which fits point process models to
point pattern data, requires an argument
of class "interact"
describing the interpoint interaction
structure of the model to be fitted.
The appropriate description of the multitype
Strauss process pairwise interaction is
yielded by the function MultiStrauss()
. See the examples below.
The matrix radii
must be symmetric, with entries
which are either positive numbers or NA
.
A value of NA
indicates that no interaction term should be included
for this combination of types.
Note that only the interaction radii are specified in MultiStrauss
.
The canonical parameters $\log(\beta_j)$
and $\log(\gamma_{ij})$
are estimated by ppm()
, not fixed in
Strauss()
.
Value
- An object of class
"interact"
describing the interpoint interaction structure of the multitype Strauss process with interaction radii $radii[i,j]$.
Warnings
The argument types
is interpreted as a
set of factor levels. That is,
in order that ppm
can fit the multitype Strauss model
correctly to a point pattern X
,
this must be a marked point pattern; the mark vector
X$marks
must be a factor; and
the argument types
must
equal levels(X$marks)
.
See Also
Examples
r <- matrix(c(1,2,2,1), nrow=2,ncol=2)
MultiStrauss(1:2, r)
# prints a sensible description of itself
data(betacells)
r <- 30.0 * matrix(c(1,2,2,1), nrow=2,ncol=2)
ppm(betacells, ~1, MultiStrauss(c("off","on"), r), rbord=60.0)
# fit the stationary multitype Strauss process to `betacells'
ppm(betacells, ~polynom(x,y,3), MultiStrauss(c("off","on"), r), rbord=60.0)
# fit a nonstationary Strauss process with log-cubic polynomial trend