CTFS.densdepend {CTFS} | R Documentation

## Counting Neighbors and their Attributes - Investigating Density Dependence

### Description

In order to identify the presence of density dependence for a focal species, attributes of the neighborhood surrounding the individuals of that species need to be determined. In the CTFS package, this is done using `neighbordens.1sp`, described in greater detail below. The result of this function is a dataframe containing measures of neighborhood attributes for each defined neighborhood for each tree of a focal species. This file can be used to analyse the effect of neighborhood conditions on the size, growth, mortality and recruitment of individuals for each species by combining it with the data for each tree of the focal species.

### Details

PREPARATIONS

In order to run these functions, a dataset structured by quadrate needs to be created. It must be a list containing dataframes for each quadrate which, in turn, have the data for a single census for all the trees in each quadrate. This list is created from a CTFS census file. Use `sep.quadinfo` first to create a vector containing the quadrate number for each tree. Then `sep.quadinfo`, using this vector, will create an appropriately structured list. The example data sets are: `tst.bci90.quad` and `tst.bci95.quad`.

FUNCTIONS FOR COMPUTING NEIGHBORHOOD ATTRIBUTES

`neighbordens.1sp`

Cover function that returns a dataframe with neighborhood attributes for individuals of a single species (focal species). This function can be called from other functions to produce dataframes for many species.

`neighbordens.1quad`

Called by `neighborhdens.1sp` for each quadrate in the plot. Calls `findborderquads` to locate surrounding quadrates that constitute the area of the neighborhoods. This limits the searching for neighbors to only surrounding quadrates within the radius of the neighborhood. Then it calls `countdens.1quad` to compute neighborhood attributes for individuals of the focal species in a single quad.

`countdens.1quad`

Called by `neighbordens.1quad` for each quadrate using the subset of the data that contains the trees in the neighboring quadrates and the trees of the focal species. Using `borderdist`, the neighborhood attributes are set to NA for trees that are sufficiently close to a border of the plot such that for a given neighborhood distance, that neighborhood is not entirely within the plot.

`countdens.1tree`

This function actually computes the number and basal area of conspecifics and heterospecifics in a given neighborhood for a given individual tree of the focal species.

LIST OF FUNCTIONS CALLED BY USER FUNCTIONS

`findborderquads` identified bordering quadrates

`xydistvect` computes xy distance between points for vectors of points

`fill.distclasses` fills a matrix of values, structured for density dependent functions

`borderdist` computes distance to the plot border for a given coordinate pair

NEIGHBORHOOD ATTRIBUTES COMPUTED AND HOW TO COMPUTE OTHER ATTRIBUTES

Number of conspecifics, `Ncon` and sum of the basal area of all conspecifics, `BAcon` Number of heterospecifics, `Nhet` and sum of the basal area of all heterospecifics, `BAhet`

If the user wishes to compute other attributes of neighbors or select neighbors on other basis than being alive (or alive and broken), then the user should write new versions of `countdens.1tree` and/or `countdens.1tree.1quad`. The tree data for the focal species is contained in the variable `focaldata` and the data for the trees in the neighboring quadrates that could be valid neighbors is in the variable `neighdata`. These are both dataframes.

Changing the types of attributes computed from all living neighbors involves rewriting `countdens.1tree`. At this time `countdens.1tree` is passed only the `dbh` of a neighbor tree. If the desired attribute can be computed from that, then only `countdens.1tree` needs to be rewritten. If other information about the neighbor tree is needed, then the user needs to rewrite `countdens.1tree` and `countdens.1tree.1quad` so that the calling statements provide the needed variables for the user defined neighbor attribute.

If the user wishes to select neighbors based on other attributes than species name and status of alive (or alive but broken), it is suggested that the user rewrite `countdens.1tree.1quad` as this is where the subsetting of the focal species tree data and the neighbor tree data take place. The logical vector `inc` defines which neighbor trees to use. Redefining this vector would, most likely, be the simpliest adjustment. There is a comment in the code at the location of the definition of `inc`.

### Author(s)

Rick Condit and Pamela Hall

### See Also

`CTFS.mortality`, `CTFS.growth`, `CTFS.recruitment`, `|link{CTFS-internal}`

### Examples

    ## Not run:
    data(tst.bci90.quad)
    data(tst.bci90.spp)
    socrex90.neigh <- neighbordens.1sp("socrex",tst.bci90.quad, tst.bci90.spp)
    str(socrex90.neigh)
    plot(socrex90.neigh$Ncon.0.5,tst.bci90.spp$socrex$dbh)
    ## End(Not run)

[Package CTFS version 1.00 Index]