select {siplab} | R Documentation |
Competitor Selection Rules
Description
Functions returning TRUE for plants that compete with a given subject plant, or FALSE otherwise. The decision can depend on distance and plant marks. For use in pairwise()
.
Note: In previous versions of siplab the function names had
.sel
in place of _sel
.
Usage
size_sel(imarks, jmarks, dists, dranks, par = list(k = 0.2, smark
= 1))
powlinear_sel(imarks, jmarks, dists, dranks, par = list(ki = 0.2,
kj = 0, p = 1, r0 = 0, smark=1))
Arguments
imarks |
Marks for the subject plant, a 1-row data frame. |
jmarks |
Data frame with marks for potential competitors |
dists |
Vector of distances between the subject plant and the potential competitors. |
dranks |
Distance ranks. |
par |
List of parameters. |
Details
The values of par
are taken from the argument selpar
of pairwise()
, if not NULL
.
smark
in par
must be 1 or “mark” if there is only one mark. If the marks are a data frame, smark
must be the number or name of the column with the plant size variable.
size_sel()
is a simple example where competitors are selected within a radius proportional to plant size. This corresponds to the second example in Section 9.2.1 of Burkhart and Tomé (2012).
Note that their first example (fixed radius) is implemented by giving a value to maxR
in pairwise()
, no select
function is needed. Similarly, their third example (fixed number of nearest neighbors) is obtained by giving a value to maxN
.
powlinear_sel()
is a general form that covers all the other examples in Burkhart and Tomé (2012) by choosing specific parameters values (except for the competition elimination angle, which depends on relative positions among competitors and not only on distances).
It implements a condition distance < ki * sizei^p + kj * sizej^p + r0
, with the following special cases:
Multiple of crown radius:
kj=0, p=1, r0=0, smark="crownwidth"
.Angle count sampling:
ki=0, p=1, r0=0, smark="dbh"
.Areas of influence overlap:
ki=kj, p=1, r0=0
, if the radius is a linear function of size (p
not 1 for an allometric relationship).Vertical search cone: If the height of the cone vertex is constant, proportional to tree height, or more generally some linear function
c_1 h_i + c_2
, thenki
=- c_1 / \tan(90 - \beta/2)
,kj
=1 / \tan(90 - \beta/2)
,p=1
,r0
=- c_2 / \tan(90 - \beta/2)
,smark="height"
.
These and other examples could be coded directly if computational efficiency is important.
Value
Logical vector of length equal to the length of dists
.
Author(s)
Oscar García.
References
https://github.com/ogarciav/siplab
Burkhart, H. E. and Tomé, M. (2012) Modeling Forest Trees and Stands. Springer.