Skip to contents

list of distance-based competition index functions for the use with compete_inv().

Usage

CI_Hegyi(target, neigh)

CI_Braathe(target, neigh)

CI_size(target, neigh)

CI_RK1(target, neigh)

CI_RK2(target, neigh)

CI_RK3(target, neigh)

CI_RK4(target, neigh)

Arguments

target

single row forest_inv class data.table object containing all the variables needed to calculate the corresponding competition index for the target tree (i.e. ´x´, ´y´, as well as ´dbh´, ´height´, ´size´ and/or other size-related attributes).

neigh

forest_inv class data.table object containing all the variables needed to calculate the corresponding competition index for all neighbor trees in the search radius of the target tree (i.e. ´x´, ´y´, as well as´dbh´, ´height´, ´size´ and/or other size-related attributes), that moreover includes their distance to the target tree in m (dist).

Value

A single numeric value (the competition index for the target tree).

Details

TreeCompR provides a number of distance-based competition indices for the use with compete_inv().

Available competition indices

The competition indices are computed according to the following equations, where \(d_i\) and \(h_i\) are the dbh and height of neighbor tree \(i\), \(d\) and \(h\) are dbh and height of the target tree, and \(dist_i\) is the distance from neighbor tree \(i\) to the target tree.

Diameter-based competition indices

  • CI_Hegyi introduced by Hegyi (1974):
    \(CI_{Hegyi} = \sum_{i=1}^{n} d_{i} / (d \cdot dist_{i})\)

  • CI_RK1 according to CI1 Rouvinen & Kuuluvainen (1997):
    \(CI_{RK1} = \sum_{i=1}^{n} \mathrm{arctan}(d_{i} / dist_{i})\)

  • CI_RK2 according to CI3 in Rouvinen & Kuuluvainen (1997):
    \(CI_{RK2} =\sum_{i=1}^{n} (d_{i} / d) \cdot \mathrm{arctan}(d_{i} / dist_{i})\)

Height-based competition indices

  • CI_Braathe according to Braathe (1980):
    \(CI_{Braathe} = \sum_{i=1}^{n} h_{i} / (h \cdot dist_{i})\)

  • CI_RK3 according to CI5 in Rouvinen & Kuuluvainen (1997):
    \(CI_{RK3} = \sum_{i=1}^{n} \mathrm{arctan}(h_{i} / dist_{i})\) for all trees with \(h_{i} > h\)

  • CI_RK4 based on CI3 in Rouvinen & Kuuluvainen (1997) and Contreras et al. (2011):
    \(CI_{RK4} = \sum_{i=1}^{n} (h_{i} / h) \cdot \mathrm{arctan}(h_{i} / dist_{i})\)

Generic size-based Hegyi-type competition index

  • CI_size based on Hegyi (1974), but with a user-specified size-related variable (\(s_i\): size for neighbor tree \(i\), \(s\): size of the target tree): \($CI_{size} = \sum_{i=1}^{n} s_{i} / (s \cdot dist_{i})\)

User-specified competition indices

The creation of new user-specified competition indices is easily possible, the only requirement is that they take two arguments, target (a single-row forest_inv class data.table with data for the target tree) and neigh (a multi-row forest_inv class data.table with data for the neighbor trees), and return a single numeric value. This function will then be called internally for each tree and its neighborhood inside compete_inv(). For example, a working implementation of the classical Hegyi index would look like this:

CI_Hegyi <- function(target, neigh) sum(neigh$dbh / (target$dbh * neigh$dist))

It is advisable to add checks to ensure the function does the right thing when it gets passed on empty datasets (e.g. because no trees are in the neighborhood of a tree) because sum(NULL) evaluates to 0 which may not always be intended.

Literature

  • Hegyi, F., 1974. A simulation model for managing jackpine stands. In: Fries, J. (Ed.), Proceedings of IUFRO meeting S4.01.04 on Growth models for tree and stand simulation, Royal College of Forestry, Stockholm.

  • Braathe, P., 1980. Height increment of young single trees in relation to height and distance of neighboring trees. Mitt. Forstl. VersAnst. 130, 43–48.

  • Rouvinen, S., Kuuluvainen, T., 1997. Structure and asymmetry of tree crowns in relation to local competition in a natural mature Scot pine forest. Can. J. For. Res. 27, 890–902.

  • Contreras, M.A., Affleck, D. & Chung, W., 2011. Evaluating tree competition indices as predictors of basal area increment in western Montana forests. Forest Ecology and Management, 262(11): 1939-1949.

See also

read_inv() to read forest inventory data, define_target() for designating target trees, compete_inv() for computing tree competition from inventory data, plot_target() to plot target tree positions in target_inv and compete_inv objects.

Examples

if (FALSE) { # \dontrun{
  # read data from all trees in a plot
  data <- read_inv("path/to/data.csv")

  # compute the Hegyi for the first tree in the dataset, assuming that all
  # others were in its search radius
  CI_Hegyi(data[1,], data[-1, ])
} # }