# reach

##### Interaction Distance of a Point Process

Computes the interaction distance of a point process.

##### Usage

`reach(x, …)` # S3 method for ppm
reach(x, …, epsilon=0)

# S3 method for interact
reach(x, …)

# S3 method for rmhmodel
reach(x, …)

# S3 method for fii
reach(x, …, epsilon)

##### Arguments

- x
Either a fitted point process model (object of class

`"ppm"`

), an interpoint interaction (object of class`"interact"`

), a fitted interpoint interaction (object of class`"fii"`

) or a point process model for simulation (object of class`"rmhmodel"`

).- epsilon
Numerical threshold below which interaction is treated as zero. See details.

- …
Other arguments are ignored.

##### Details

The `interaction distance' or `interaction range' of a point process model is the smallest distance \(D\) such that any two points in the process which are separated by a distance greater than \(D\) do not interact with each other.

For example, the interaction range of a Strauss process
(see `Strauss`

)
with parameters \(\beta,\gamma,r\) is equal to
\(r\), unless \(\gamma=1\) in which case the model is
Poisson and the interaction
range is \(0\).
The interaction range of a Poisson process is zero.
The interaction range of the Ord threshold process
(see `OrdThresh`

) is infinite, since two points *may*
interact at any distance apart.

The function `reach(x)`

is generic, with methods
for the case where `x`

is

a fitted point process model (object of class

`"ppm"`

, usually obtained from the model-fitting function`ppm`

);an interpoint interaction structure (object of class

`"interact"`

), created by one of the functions`Poisson`

,`Strauss`

,`StraussHard`

,`MultiStrauss`

,`MultiStraussHard`

,`Softcore`

,`DiggleGratton`

,`Pairwise`

,`PairPiece`

,`Geyer`

,`LennardJones`

,`Saturated`

,`OrdThresh`

or`Ord`

;a fitted interpoint interaction (object of class

`"fii"`

) extracted from a fitted point process model by the command`fitin`

;a point process model for simulation (object of class

`"rmhmodel"`

), usually obtained from`rmhmodel`

.

When `x`

is an `"interact"`

object,
`reach(x)`

returns the maximum possible interaction range
for any point process model with interaction structure given by `x`

.
For example, `reach(Strauss(0.2))`

returns `0.2`

.

When `x`

is a `"ppm"`

object,
`reach(x)`

returns the interaction range
for the point process model represented by `x`

.
For example, a fitted Strauss process model
with parameters `beta,gamma,r`

will return
either `0`

or `r`

, depending on whether the fitted
interaction parameter `gamma`

is equal or not equal to 1.

For some point process models, such as the soft core process
(see `Softcore`

), the interaction distance is
infinite, because the interaction terms are positive for all
pairs of points. A practical solution is to compute
the distance at which the interaction contribution
from a pair of points falls below a threshold `epsilon`

,
on the scale of the log conditional intensity. This is done
by setting the argument `epsilon`

to a positive value.

##### Value

The interaction distance, or `NA`

if this cannot be
computed from the information given.

##### See Also

`ppm`

,
`Poisson`

,
`Strauss`

,
`StraussHard`

,
`MultiStrauss`

,
`MultiStraussHard`

,
`Softcore`

,
`DiggleGratton`

,
`Pairwise`

,
`PairPiece`

,
`Geyer`

,
`LennardJones`

,
`Saturated`

,
`OrdThresh`

,
`Ord`

,
`rmhmodel`

##### Examples

```
# NOT RUN {
reach(Poisson())
# returns 0
reach(Strauss(r=7))
# returns 7
fit <- ppm(swedishpines ~ 1, Strauss(r=7))
reach(fit)
# returns 7
reach(OrdThresh(42))
# returns Inf
reach(MultiStrauss(matrix(c(1,3,3,1),2,2)))
# returns 3
# }
```

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