# 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))
# fit the stationary multitype Strauss process to `betacells'
ppm(betacells, ~polynom(x,y,3), MultiStrauss(c("off","on"), r))
# fit a nonstationary Strauss process with log-cubic polynomial trend
```

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