Learn R Programming

spatstat (version 1.52-1)

MultiStraussHard: The Multitype/Hard Core Strauss Point Process Model

Description

Creates an instance of the multitype/hard core Strauss point process model which can then be fitted to point pattern data.

Usage

MultiStraussHard(iradii, hradii, types=NULL)

Arguments

iradii

Matrix of interaction radii

hradii

Matrix of hard core radii

types

Optional; vector of all possible types (i.e. the possible levels of the marks variable in the data)

Value

An object of class "interact" describing the interpoint interaction structure of the multitype/hard core Strauss process with interaction radii \(iradii[i,j]\) and hard core radii \(hradii[i,j]\).

Warnings

In order that ppm can fit the multitype/hard core Strauss model correctly to a point pattern X, this pattern must be marked, with markformat equal to vector and the mark vector marks(X) must be a factor. If the argument types is specified it is interpreted as a set of factor levels and this set must equal levels(marks(X)).

Changed Syntax

Before spatstat version 1.37-0, the syntax of this function was different: MultiStraussHard(types=NULL, iradii, hradii). The new code attempts to handle the old syntax as well.

Details

This is a hybrid of the multitype Strauss process (see MultiStrauss) and the hard core process (case \(\gamma=0\) of the Strauss process). A pair of points of types \(i\) and \(j\) must not lie closer than \(h_{ij}\) units apart; if the pair lies more than \(h_{ij}\) and less than \(r_{ij}\) units apart, it contributes a factor \(\gamma_{ij}\) to the probability density.

The argument types need not be specified in normal use. It will be determined automatically from the point pattern data set to which the MultiStraussHard interaction is applied, when the user calls ppm. However, the user should be confident that the ordering of types in the dataset corresponds to the ordering of rows and columns in the matrices iradii and hradii.

The matrices iradii and hradii 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 and hardcore radii are specified in MultiStraussHard. The canonical parameters \(\log(\beta_j)\) and \(\log(\gamma_{ij})\) are estimated by ppm(), not fixed in MultiStraussHard().

See Also

ppm, pairwise.family, ppm.object, MultiStrauss, MultiHard, Strauss

Examples

Run this code
# NOT RUN {
   r <- matrix(3, nrow=2,ncol=2)
   h <- matrix(c(1,2,2,1), nrow=2,ncol=2)
   MultiStraussHard(r,h)
   # prints a sensible description of itself
   r <- 0.04 * matrix(c(1,2,2,1), nrow=2,ncol=2)
   h <- 0.02 * matrix(c(1,NA,NA,1), nrow=2,ncol=2)
   X <- amacrine
   
# }
# NOT RUN {
   fit <- ppm(X ~1, MultiStraussHard(r,h))
   # fit stationary multitype hardcore Strauss process to `amacrine'
# }

Run the code above in your browser using DataLab