Compute Pairwise Competition Indices

Share:

Description

This function computes competition indices based on pairs of plants, ignoring higher-order interactions.

Usage

1
2
pairwise(plants, maxN = NULL, maxR = NULL, select = NULL, selpar =
         NULL, kernel, kerpar = NULL)

Arguments

plants

A spatstat point pattern object (class ppp), containing the plants coordinates and marks with the plant size and possibly other attributes.

maxN

Maximum number of nearest neighbors to include as potential competitors. Default is NULL (no restriction).

maxR

Maximum radius to search for potential competitors. Default is NULL (no restriction).

select

Optional user-supplied selection function for choosing competitors. Must have arguments (imarks, jmarks, dists, dranks, par), where imarks are the marks for the subject plant (a 1-row data frame), jmarks is a data frame with the marks of the potential competitors, dists is a vector distances between subject plant and the potential competitors, dranks are the distance ranks, and par receives the value of the selpar argument. It must return a logical vector with the same length as dists. Examples are provided in the functions *.sel (powlinear.sel, etc.). Default is NULL (no selection).

selpar

Parameter(s) for select, usually a list or vector. Default: NULL.

kernel

Competition kernel function for computing the effect of competitor j on the subject plant i. Must have arguments (imarks, jmarks, dists, dranks, par), where imarks are the marks for the subject plant (a 1-row data frame), jmarks is a data frame with the marks of the potential competitors, dists is a vector of distances between subject plant and the potential competitors, dranks are the distance ranks, and par receives the value of the kerpar argument. It must return a numeric vector with the same length as dists. Examples are provided in the functions *.ker (powers.ker, etc.).

kerpar

Parameter(s) for kernel, usually a list or vector. Default: NULL.

Details

Traditionally, a competition index for a subject plant i is obtained in two stages: (1) Choose a set of competitors of i by some selection rule. (2) Compute a measure of the effect of each competitor j on plant i, and add over j. This effect of j on i is normally a function of the sizes of both plants and of the distance between them, which we call a competition kernel. The kernel may depend on other plant attributes, like species, and in some rare instances on the distance ranks or on the number of competitors. Conceptually, the first stage is not strictly necessary, it could be replaced by specifying zero kernel values (the effect of the selection is usually to truncate the kernel function beyond some distance). However, a separate selection rule may be more transparent, and may reduce the computational effort of searching for neighbors.

Some simple selection rules can be implemented by giving a value to maxN and/or maxR. In any case, reasonable limits on these variables may be advisable for reducing computation. If both arguments maxN and maxR are given, the neighbourhood is defined as the intersection of the neighbourhoods specified by these arguments.

More complex rules can be specified by the select function, with parameters in selpar. See select for examples.

Kernel computation is specified by the kernel function and the parameters in kerpar. See kernel for examples.

Value

Returns the point pattern plants, with the competition indices added to marks(plants) as a data frame column cindex.

Note

Requires the spatstat package.

Author(s)

Oscar García.

References

http://forestgrowth.unbc.ca/siplab

García, O. “Siplab, a spatial individual-based plant modelling system”. Computational Ecology and Software 4(4), 215-222. 2014.

See Also

select, kernel, edges

Examples

1
2
3
# Hegyi (1974) index
summary(pairwise(finpines, maxR = 6, kernel=powers.ker, kerpar =
  list(pi=1, pj=1, pr=1, smark="diameter")))