# lgcp.estK

##### Fit a Log-Gaussian Cox Point Process by Minimum Contrast

Fits a log-Gaussian Cox point process model to a point pattern dataset by the Method of Minimum Contrast.

##### Usage

```
lgcp.estK(X, startpar=c(sigma2=1,alpha=1),
covmodel=list(model="exponential"),
lambda=NULL,
q = 1/4, p = 2, rmin = NULL, rmax = NULL, ...)
```

##### Arguments

- X
- Data to which the model will be fitted. Either a point pattern or a summary statistic. See Details.
- startpar
- Vector of starting values for the parameters of the log-Gaussian Cox process model.
- covmodel
- Specification of the covariance model for the log-Gaussian field. See Details.
- lambda
- Optional. An estimate of the intensity of the point process.
- q,p
- Optional. Exponents for the contrast criterion.
- rmin, rmax
- Optional. The interval of $r$ values for the contrast criterion.
- ...
- Optional arguments passed to
`optim`

to control the optimisation algorithm. See Details.

##### Details

This algorithm fits a log-Gaussian Cox point process model to a point pattern dataset by the Method of Minimum Contrast, using the K function.

The argument `X`

can be either
[object Object],[object Object]
The algorithm fits a log-Gaussian Cox point process (LGCP)
model to `X`

, by finding the parameters of the LGCP model
which give the closest match between the
theoretical $K$ function of the LGCP model
and the observed $K$ function.
For a more detailed explanation of the Method of Minimum Contrast,
see `mincontrast`

.

The model fitted is a stationary, isotropic log-Gaussian Cox process (Moller and Waagepetersen, 2003, pp. 72-76). To define this process we start with a stationary Gaussian random field $Z$ in the two-dimensional plane, with constant mean $\mu$ and covariance function $C(r)$. Given $Z$, we generate a Poisson point process $Y$ with intensity function $\lambda(u) = \exp(Z(u))$ at location $u$. Then $Y$ is a log-Gaussian Cox process.

The $K$-function of the LGCP is $$K(r) = \int_0^r 2\pi s \exp(C(s)) \, {\rm d}s.$$ The intensity of the LGCP is $$\lambda = \exp(\mu + \frac{C(0)}{2}).$$ The covariance function $C(r)$ is parametrised in the form $$C(r) = \sigma^2 c(r/\alpha)$$ where $\sigma^2$ and $\alpha$ are parameters controlling the strength and the scale of autocorrelation, respectively, and $c(r)$ is a known covariance function determining the shape of the covariance. The strength and scale parameters $\sigma^2$ and $\alpha$ will be estimated by the algorithm. The template covariance function $c(r)$ must be specified as explained below. In this algorithm, the Method of Minimum Contrast is first used to find optimal values of the parameters $\sigma^2$ and $\alpha$. Then the remaining parameter $\mu$ is inferred from the estimated intensity $\lambda$.

The template covariance function $c(r)$ is specified
using the argument `covmodel`

. It may be any of the
covariance functions recognised by the command
`Covariance`

in the
`covmodel`

should be of the form
`list(model="modelname", ...)`

where
`modelname`

is the string name of one of the covariance models
recognised by the command
`Covariance`

in the
`...`

are arguments of the
form `tag=value`

giving the values of parameters controlling the
shape of these models. For example the exponential covariance is
specified by `covmodel=list(model="exponential")`

while the
Matern covariance with exponent $\nu=0.3$ is specified
by `covmodel=list(model="matern", nu=0.3)`

.
If the argument `lambda`

is provided, then this is used
as the value of $\lambda$. Otherwise, if `X`

is a
point pattern, then $\lambda$
will be estimated from `X`

.
If `X`

is a summary statistic and `lambda`

is missing,
then the intensity $\lambda$ cannot be estimated, and
the parameter $\mu$ will be returned as `NA`

.

The remaining arguments `rmin,rmax,q,p`

control the
method of minimum contrast; see `mincontrast`

.

The optimisation algorithm can be controlled through the
additional arguments `"..."`

which are passed to the
optimisation function `optim`

. For example,
to constrain the parameter values to a certain range,
use the argument `method="L-BFGS-B"`

to select an optimisation
algorithm that respects box constraints, and use the arguments
`lower`

and `upper`

to specify (vectors of) minimum and
maximum values for each parameter.

##### Value

- An object of class
`"minconfit"`

. There are methods for printing and plotting this object. It contains the following main components: par Vector of fitted parameter values. fit Function value table (object of class `"fv"`

) containing the observed values of the summary statistic (`observed`

) and the theoretical values of the summary statistic computed from the fitted model parameters.

##### Note

This function is considerably slower than `lgcp.estpcf`

because of the computation time required for the integral
in the $K$-function.

Computation can be accelerated, at the cost of less accurate results,
by setting `spatstat.options(fastK.lgcp=TRUE)`

.

##### References

Moller, J, Syversveen, A. and Waagepetersen, R. (1998)
Log Gaussian Cox Processes.
*Scandinavian Journal of Statistics* **25**, 451--482.
Moller, J. and Waagepetersen, R. (2003).
Statistical Inference and Simulation for Spatial Point Processes.
Chapman and Hall/CRC, Boca Raton.

Waagepetersen, R. (2007)
An estimating function approach to inference for
inhomogeneous Neyman-Scott processes.
*Biometrics* **63**, 252--258.

##### See Also

`lgcp.estpcf`

for alternative method of fitting LGCP.
`matclust.estK`

,
`thomas.estK`

for other models.
`mincontrast`

for the generic minimum contrast
fitting algorithm, including important parameters that affect
the accuracy of the fit.
`Covariance`

in the
`Kest`

for the $K$ function.

##### Examples

```
u <- lgcp.estK(redwood, c(sigma2=0.1, alpha=1))
u
if(interactive()) plot(u)
<testonly>if(require(RandomFields) && RandomFieldsSafe()) {
K <- Kest(redwood, r=seq(0, 0.1, length=9))
op <- spatstat.options(fastK.lgcp=TRUE)
lgcp.estK(K, covmodel=list(model="matern", nu=0.3),
control=list(maxit=3))
spatstat.options(op)
}</testonly>
if(require(RandomFields) && RandomFieldsSafe()) {
lgcp.estK(redwood, covmodel=list(model="matern", nu=0.3))
}
```

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