Once all trees were detected from the normalized point cloud and the tree list was generated, metrics and variables at stand level can be estimated. These estimations can be based on different plot designs, that are circular fixed area, k-tree and angle-count plots. The sizes of the plots can be regulated by defining the radius, k and the basal area factor (BAF) respectively.

In order to calculate metrics and variables at stand level, the
function ** metrics.variables** is applied as
follows:

```
metrics <- metrics.variables(tree.tls = tree.list,
tree.ds = tree.ds, tree.field = tree.field,
plot.design = c("fixed.area", "k.tree", "angle.count"),
plot.parameters = data.frame(radius = 10, k = 10, BAF = 1),
scan.approach = "single", var.metr = NULL,
dbh.min = 4, h.min = 1.3, max.dist = Inf,
dir.data = dir.data, save.result = FALSE, dir.result = NULL)
```

The input data frame is introduced in
** tree.tls** and should contain information
about the trees detected from TLS based data e.g., the output data frame
of the functions

`tree.detection.single.scan`

or
`tree.detection.multi.scan`

. The path of the directory of the
.txt files containing the reduced point cloud data generated by the
function `normalize`

can be specified in
`dir.data`

`save.result`

`save.result = TRUE`

(default setting), the output files will
be saved to the directory indicated in
`dir.result`

The scan approach, either TLS single-scan (`"single"`

) or
TLS multi-scan and SLAM point clouds approaches (`"multi"`

)
has to be specified in the argument
** scan.approach**. By default, the argument is
set to

`"multi"`

.If only a selection of metrics and variables should be calculated,
the metrics and variables of interest can be specified as a vector in
** var.metr**. If nothing is specified, the
argument is set to

`NULL`

and all possible metrics and
variables will be calculated.`distance.sampling`

function)The distance sampling method is used for the correction of occlusion
effects. When the `distance.sampling`

function was applied,
the list with tree detection probabilities (i.e., the output file of the
mentioned function) can be introduced in
** tree.ds**. By default, this argument is set
to

`NULL`

and metrics using distance sampling corrections
will not be calculated. The `distance.sampling`

is applied as
follows:The ** distance.sampling** function computes
the probability of detection of trees depending on their distance to the
TLS device. Detection functions are fitted to the histogram representing
the distribution of the trees relative to their horizontal distances.
The computation of the detection functions is based on the data frame of
the detected trees, i.e. the output file of the

`tree.detection.single.scan`

or
`tree.detection.multi.scan`

(here `tree.list`

),
which is introduced in the argument
`tree.tls`

`id.plots`

`id.plots = NULL`

and all plots will
be considered.Two detection functions are fitted, that are the half normal and hazard rate functions, with and without \(dbh\) as covariate. These functions describe the decreasing detection probability with increasing distance. The probabilities are used for correcting estimation bias of the stand-level variables caused by the lack of detection of trees due to occlusion.

A list with three elements is generated by the
`distance.sampling`

function. The data frame
** tree** represents the detection
probabilities for each tree of all plots according to the four different
detection functions. The columns

`P.hn`

and
`P.hn.cov`

show the detection probabilities calculated by the
half normal function without and with \(dbh\) as covariate, while `P.hr`

and `P.hr.cov`

contain the probabilities according to the
hazard rate function without and with covariate respectively.```
head(tree.ds$tree)
#> stratum id tree P.hn P.hn.cov P.hr P.hr.cov
#> 1 1 1 1 0.922808 0.9293580 0.9388107 0.9519734
#> 2 1 1 2 0.922808 0.8922843 0.9388107 0.9199997
#> 3 1 1 3 0.922808 0.9146826 0.9388107 0.9389643
#> 4 1 1 4 0.922808 0.9017652 0.9388107 0.9278849
#> 5 1 1 5 0.922808 0.9277925 0.9388107 0.9505678
#> 6 1 1 6 0.922808 0.9424095 0.9388107 0.9637861
```

The data frame ** par** shows the parameters
of the detection functions and

`AIC`

```
head(tree.ds$par)
#> P.hn.scale P.hn.cov.scale.intercept P.hn.cov.dbh P.hr.scale
#> X.Intercept. 35.84341 64.17593 -2.231185 21.85271
#> P.hr.shape P.hr.cov.scale.intercept P.hr.cov.dbh P.hr.cov.shape
#> X.Intercept. 3.544516 26.38362 -0.7110327 3.832857
head(tree.ds$AIC)
#> P.hn P.hn.cov P.hr P.hr.cov
#> 1 3375.162 3376.521 3374.114 3375.123
```

If supplementary field data is available for the sample plots, a data
frame containing this information can be included in
** tree.field**. Each row of the data frame
must represent a tree and the data frame must contain at least the
following columns:

`id`

: plot identification number (character string or numeric), which must coincide with those in the`id`

column of the`tree.tls`

argument i.e., the list of trees yielded by the tree detection functions`tree`

: number of the tree`h.dist`

: horizontal distance (in m) of the tree’s center to the plot’s center, which must coincide with the centers of their corresponding TLS plots`dbh`

: tree diameter (in cm) at breast height (1.3 m)`h`

: total tree height (in m)`dead`

: integer value indicating whether the tree is dead (1) or not (NA)

Further optional columns are `h.blc`

(height based live
crown, in m), `h.bdc`

(height based dead crown, in m),
`v.user`

(tree volume, in m\(^3\)) and `w.user`

(tree
biomass, in Mg).

The arguments ** dbh.min**,

`h.min`

`max.dist`

`dbh.min`

(in cm) and
`h.min`

(in m) and are set to 4 cm and 1.3 m respectively by
default. In `max.dist`

, the maximal horizontal distance (in
m) of a tree from the plot’s center to be included in the calculations
can be defined. If not specified, no trees are discarded because of
their distance.The metrics and variables can be computed for different plot designs
which are specified by ** plot.design** and

`plot.parameters`

`plot.design`

. By default, all plot designs will
be considered.As the name implies, circular fixed area plots
(`"fixed.area"`

) are plots with a circular area defined by
the plot radius (in m). The size of k-tree plots (`"k.tree"`

)
is determined by the number of trees (k) that enter the plot. The basal
area factor (BAF in m\(^2\)/ha) defines
the size of angle-count plots (`"angle.count"`

). The
parameters `radius`

, `k`

and `BAF`

have
to be specified as data frame in `plot.parameters`

. If one of
these parameters is not specified, the corresponding plot design will
not be considered in the calculations. To calculate the dominant height
and diameter, the number of dominant trees per ha (trees/ha) can be
indicated by the argument `num.tree`

. By default, the number
of dominant trees is set to 100 trees/ha.

The function `metrics.variables`

generates a list in which
each element represents one of the considered plot designs (fixed area,
k-tree and angle-count plots). These elements are data frames containing
the estimated metrics and variables at stand-level as columns (described
below). Further columns include information about the plot, such as the
identification number (`id`

) and the stratum identification
(`stratum`

) both coinciding with the respective columns in
the output file of the `tree.detection`

functions. Each row
represents a simulated plot i.e., a plot with a certain size (defined by
the values for `radius`

, `k`

and `BAF`

shown in the respective columns).

If `save.result = TRUE`

, the data frames will be saved as
seperate .csv files (one for each plot design) to the directory
indicated in `dir.result`

(or if not specified to the working
directory). The .csv files (without row names) will be created using the
`write.csv`

function from the utils package.

id | radius | n.pts | n.pts.est | n.pts.red | n.pts.red.est | P01 | P05 | P10 | P20 | P25 | P30 | P40 | P50 | P60 | P70 | P75 | P80 | P90 | P95 | P99 | mean.z | mean.q.z | mean.g.z | mean.h.z | median.z | mode.z | max.z | min.z | var.z | sd.z | CV.z | D.z | ID.z | kurtosis.z | skewness.z | p.a.mean.z | p.a.mode.z | p.a.2m.z | p.b.mean.z | p.b.mode.z | p.b.2m.z | CRR.z | L2.z | L3.z | L4.z | L3.mu.z | L4.mu.z | L.CV.z | median.a.d.z | mode.a.d.z | weibull_c.z | weibull_b.z | mean.rho | mean.q.rho | mean.g.rho | mean.h.rho | median.rho | mode.rho | max.rho | min.rho | var.rho | sd.rho | CV.rho | D.rho | ID.rho | kurtosis.rho | skewness.rho | p.a.mean.rho | p.a.mode.rho | p.b.mean.rho | p.b.mode.rho | CRR.rho | L2.rho | L3.rho | L4.rho | L3.mu.rho | L4.mu.rho | L.CV.rho | median.a.d.rho | mode.a.d.rho | weibull_c.rho | weibull_b.rho | mean.r | mean.q.r | mean.g.r | mean.h.r | median.r | mode.r | max.r | min.r | var.r | sd.r | CV.r | D.r | ID.r | kurtosis.r | skewness.r | p.a.mean.r | p.a.mode.r | p.b.mean.r | p.b.mode.r | CRR.r | L2.r | L3.r | L4.r | L3.mu.r | L4.mu.r | L.CV.r | median.a.d.r | mode.a.d.r | weibull_c.r | weibull_b.r |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|

1 | 10 | 9788.667 | 1796.620 | 444.6667 | 322.3520 | 1.1763271 | 4.149327 | 5.984327 | 7.555327 | 7.824327 | 7.932327 | 8.176327 | 8.646327 | 9.357327 | 10.00233 | 10.32033 | 10.68533 | 11.39733 | 12.03533 | 13.43333 | 8.686622 | 8.991724 | 8.185912 | 6.949452 | 8.601327 | 7.935327 | 15.11633 | 0.2503271 | 5.393706 | 2.322435 | 0.2673577 | 14.866 | 2.423 | 4.535413 | -0.8176501 | 48.55133 | 69.29800 | 98.07203 | 51.44867 | 30.64412 | 1.927974 | 0.5746516 | 112023087 | 1088745309 | 10962245432 | -1830560027 | 23849979309 | 1e-07 | 1.223295 | 0.7512949 | 4.218465 | 9.554482 | 4.455202 | 5.325242 | 3.203021 | 1.745464 | 3.977145 | 0.1000033 | 9.999991 | 0.1000033 | 8.509383 | 2.917085 | 0.6547593 | 9.899988 | 5.068693 | 1.782223 | 0.2812223 | 46.60337 | 99.99993 | 53.39663 | 0 | 0.4455206 | 39291647 | 289779246 | 2301164191 | -235377229 | 1816420654 | 1e-07 | 2.562719 | 4.355199 | 1.560419 | 4.957027 | 10.17625 | 10.45033 | 9.878583 | 9.541126 | 10.03613 | 7.939957 | 18.04629 | 1.9854031 | 5.653233 | 2.377653 | 0.2336472 | 16.06089 | 3.486677 | 2.864220 | 0.0953509 | 48.15005 | 85.54384 | 51.84995 | 14.45609 | 0.5638970 | 151314734 | 1701009907 | 19924353576 | -2918437931 | 44702069599 | 1e-07 | 1.765318 | 2.2362936 | 4.892407 | 11.09717 |

2 | 10 | 11222.000 | 2815.061 | 611.1667 | 506.5021 | 1.0425898 | 4.121590 | 5.898590 | 7.335590 | 7.912590 | 8.448590 | 9.110590 | 9.663590 | 10.223590 | 10.64959 | 10.79059 | 10.87959 | 11.37959 | 11.90259 | 13.43459 | 9.052322 | 9.383953 | 8.475137 | 7.020125 | 9.605590 | 10.788590 | 16.82859 | 0.2505898 | 6.114052 | 2.472661 | 0.2731521 | 16.578 | 2.933 | 4.501117 | -1.0871433 | 60.10169 | 23.93897 | 97.82422 | 39.89831 | 75.97166 | 2.175783 | 0.5379133 | 101884570 | 1031348422 | 10753389699 | -1735525894 | 23502278857 | 1e-07 | 1.586268 | 1.7362678 | 4.119804 | 9.970272 | 5.443356 | 6.210808 | 4.027388 | 1.859293 | 5.913727 | 0.1000035 | 9.999995 | 0.1000035 | 8.944021 | 2.990656 | 0.5494140 | 9.899991 | 5.164815 | 1.754274 | -0.2467470 | 52.36865 | 99.99991 | 47.63135 | 0 | 0.5443358 | 44630617 | 347962930 | 2851615225 | -380857693 | 3209731874 | 1e-07 | 2.607957 | 5.343352 | 1.892479 | 6.133511 | 11.06990 | 11.25312 | 10.857815 | 10.592588 | 10.95586 | 10.778054 | 18.13256 | 1.1552180 | 4.090119 | 2.022404 | 0.1826941 | 16.97734 | 2.092208 | 4.720474 | -0.3191920 | 47.73584 | 57.02047 | 52.26416 | 42.97944 | 0.6104983 | 146515187 | 1723625155 | 20809992902 | -3142095776 | 52214652344 | 1e-07 | 1.040121 | 0.2918422 | 6.395220 | 11.89079 |

3 | 10 | 7931.000 | 3522.606 | 644.6667 | 676.3987 | 0.7535283 | 3.119528 | 5.446528 | 7.362528 | 7.852528 | 8.331528 | 8.914528 | 9.612528 | 10.219528 | 10.81653 | 11.00853 | 11.29753 | 12.37553 | 13.04753 | 14.07753 | 9.177116 | 9.598251 | 8.419140 | 6.533724 | 9.612528 | 10.845528 | 15.92853 | 0.2505283 | 7.906972 | 2.811934 | 0.3064071 | 15.678 | 3.156 | 3.930470 | -0.9284260 | 56.40392 | 29.20901 | 96.89650 | 43.59608 | 70.75913 | 3.103504 | 0.5761434 | 92236146 | 971093853 | 10589014798 | -1568290062 | 21550099741 | 1e-07 | 1.685412 | 1.6684122 | 3.627730 | 10.180048 | 6.672340 | 6.885693 | 6.452606 | 6.234672 | 6.568161 | 1.0608273 | 9.999985 | 1.0608273 | 2.892645 | 1.700778 | 0.2548997 | 8.939158 | 3.089093 | 1.845899 | 0.1775212 | 48.04518 | 99.99990 | 51.95482 | 0 | 0.6672350 | 47469238 | 356252676 | 2796808210 | -593939497 | 5968664998 | 1e-07 | 1.542566 | 5.611513 | 4.446252 | 7.316667 | 11.64407 | 11.81267 | 11.457447 | 11.243853 | 11.75383 | 1.180774 | 18.26309 | 1.1807736 | 3.954716 | 1.988647 | 0.1707862 | 17.08232 | 2.547107 | 3.769785 | -0.2945041 | 52.92946 | 99.99990 | 47.07054 | 0.00000 | 0.6375741 | 139705385 | 1716628700 | 21577086613 | -3163588038 | 55274110885 | 1e-07 | 1.274854 | 10.4633013 | 6.878014 | 12.45916 |

4 | 10 | 14815.833 | 2391.316 | 253.5000 | 228.6277 | 0.8293213 | 3.240321 | 5.588321 | 7.137321 | 7.584321 | 7.896321 | 8.796321 | 9.439321 | 9.999321 | 10.67532 | 11.14432 | 11.66732 | 13.05332 | 13.78632 | 15.08332 | 9.208836 | 9.676083 | 8.445007 | 6.697945 | 9.439321 | 9.490321 | 35.28932 | 0.2503213 | 8.823948 | 2.970513 | 0.3225720 | 35.039 | 3.560 | 3.513803 | -0.5324590 | 54.14860 | 48.89439 | 97.14021 | 45.85140 | 51.07578 | 2.859793 | 0.2609525 | 28567998 | 308407516 | 3490877952 | -480824942 | 6666412747 | 3e-07 | 1.767485 | 0.2814852 | 3.426340 | 10.246363 | 4.801007 | 5.401068 | 4.067086 | 3.284440 | 4.668175 | 0.6118197 | 9.999958 | 0.6118197 | 6.121887 | 2.474245 | 0.5153596 | 9.388139 | 3.940113 | 2.071634 | 0.2721649 | 47.95151 | 99.99967 | 52.04849 | 0 | 0.4801027 | 8901023 | 61927806 | 468289564 | -66273596 | 510018428 | 5e-07 | 2.021859 | 4.189187 | 2.031767 | 5.418747 | 10.78393 | 11.08143 | 10.423270 | 9.950309 | 10.50525 | 9.212659 | 35.48690 | 2.2008590 | 6.504908 | 2.550472 | 0.2365066 | 33.28604 | 3.332113 | 3.510630 | -0.3286589 | 44.53457 | 77.13968 | 55.46543 | 22.85999 | 0.3038850 | 37469021 | 445207961 | 5485056120 | -766979859 | 12425003393 | 3e-07 | 1.618794 | 1.5712744 | 4.827566 | 11.76894 |

5 | 10 | 13582.333 | 4682.324 | 574.6667 | 445.8058 | 0.8972930 | 4.469293 | 7.796293 | 8.695293 | 9.044293 | 9.561293 | 10.514293 | 10.960293 | 11.478293 | 12.07729 | 12.46029 | 12.85829 | 13.79829 | 14.36229 | 15.39429 | 10.584187 | 10.963716 | 9.863618 | 7.785157 | 10.964293 | 10.945293 | 16.88629 | 0.2502930 | 8.178051 | 2.859729 | 0.2701888 | 16.636 | 3.426 | 5.038409 | -1.1877711 | 58.91270 | 50.64919 | 97.66575 | 41.08730 | 49.31287 | 2.334252 | 0.6267916 | 151746390 | 1789588757 | 21722917667 | -3028745442 | 47953862766 | 1e-07 | 1.718894 | 0.3611058 | 4.169715 | 11.649419 | 5.359885 | 6.080607 | 4.037565 | 2.053025 | 5.693991 | 0.1000073 | 9.999996 | 0.1000073 | 8.245425 | 2.871485 | 0.5357363 | 9.899989 | 4.844945 | 1.909141 | -0.2794109 | 54.17449 | 99.99992 | 45.82551 | 0 | 0.5359887 | 46676336 | 353412044 | 2820930172 | -397127026 | 3289545553 | 1e-07 | 2.451160 | 5.259878 | 1.946119 | 6.044389 | 12.22845 | 12.53702 | 11.850902 | 11.333547 | 12.47152 | 11.346734 | 18.43135 | 0.8785378 | 7.641773 | 2.764376 | 0.2260609 | 17.55282 | 4.173565 | 2.992009 | -0.5124616 | 53.34442 | 63.06284 | 46.65558 | 36.93708 | 0.6634594 | 198422726 | 2648674843 | 36436151565 | -4630530899 | 84906244333 | 1e-07 | 2.160321 | 0.8817201 | 5.072474 | 13.30724 |

6 | 10 | 6254.500 | 1674.809 | 448.0000 | 364.1714 | 0.6060312 | 3.035031 | 6.009031 | 8.205031 | 8.697031 | 9.233031 | 10.052031 | 10.662031 | 11.199031 | 11.60703 | 11.80803 | 12.04303 | 12.86603 | 13.40603 | 14.68603 | 9.948021 | 10.370678 | 9.078045 | 6.626844 | 10.662031 | 11.459031 | 16.45303 | 0.2500312 | 8.587836 | 2.930501 | 0.2945813 | 16.203 | 3.111 | 4.773276 | -1.3195711 | 61.54501 | 33.64629 | 96.60452 | 38.45499 | 66.31770 | 3.395478 | 0.6046315 | 85730909 | 962580012 | 11098719111 | -1595976775 | 23700818001 | 1e-07 | 1.688990 | 1.5110099 | 3.789572 | 11.008726 | 6.594068 | 6.949814 | 6.180656 | 5.719248 | 6.507049 | 0.9677901 | 9.999993 | 0.9677901 | 4.818198 | 2.195039 | 0.3328809 | 9.032203 | 3.993594 | 1.867432 | -0.0993663 | 48.84616 | 99.99987 | 51.15384 | 0 | 0.6594072 | 38500784 | 303690374 | 2521537499 | -457939362 | 4555795906 | 2e-07 | 1.978972 | 5.626277 | 3.308526 | 7.350166 | 12.25927 | 12.48402 | 11.988194 | 11.639040 | 12.45260 | 1.071134 | 18.74465 | 1.0711337 | 5.561109 | 2.358200 | 0.1923605 | 17.67352 | 2.645716 | 4.167097 | -0.6340967 | 54.22377 | 99.99987 | 45.77623 | 0.00000 | 0.6540144 | 124231693 | 1625048934 | 21779500092 | -2943918051 | 54116275529 | 1e-07 | 1.326611 | 11.1881392 | 6.047834 | 13.20862 |

The stand-level metrics are statistical descriptive values, such as percentiles, standard deviation or means, as well as the number of points belonging to the normal section of the point cloud.

The values ** n.pts**,

`n.pts.est`

`n.pts.red`

`n.pts.red.est`

`n.pts`

, `n.pts.est`

) and
the reduced point cloud (`n.pts.red`

,
`n.pts.red.est`

).Furthermore, the height percentiles (`P01`

,
`P05`

, `P10`

, `P20`

, `P25`

,
`P30`

, `P40`

, `P50`

, `P60`

,
`P70`

, `P75`

, `P80`

, `P90`

,
`P95`

, `P99`

, numbers indicating the *k*-th
percentile) are calculated for the \(z\) coordinate of the TLS point cloud.
Therefore they denominate the height (in m) above ground level.

To describe the tendencies and distribution of the spherical
coordinates `z`

, \(\rho\)
(horizontal distance, `rho`

) and `r`

(euclidean
distance), the following statistics are calculated:

- arithmetic (
`mean.arit.z/rho/r`

), quadratic (`mean.qua.z/rho/r`

), geometric (`mean.geom.z/rho/r`

) and harmonic means (`mean.harm.z/rho/r`

) - median (
`median.z/rho/r`

) - mode (
`mode.z/rho/r`

) - variance (
`var.z/rho/r`

) - standard deviation (
`sd.z/rho/r`

) - coefficient of variation (
`CV.z/rho/r`

) - range (
`D.z/rho/r`

) - interquartile range (
`ID.z/rho/r`

) - maximum (
`max.z/rho/r`

) - minimum (
`min.z/rho/r`

) - kurtosis (
`kurtosis.z/rho/r`

) - skewness (
`skewness.z/rho/r`

) - percentage of points above the arithmetic mean
(
`p.a.mean.z/rho/r`

) and the mode (`p.a.mode.z/rho/r`

) - percentage of points below the arithmetic mean
(
`p.b.mean.z/rho/r`

) and the mode (`p.b.mode.z/rho/r`

) - percentage of points above a height of 2 m (
`p.a.2m.z`

, only for the \(z\) coordinate) - percentage of points below a height of 2 m (
`p.b.2m.z`

, only for the \(z\) coordinate) - L-moments of order 2, 3 and 4 (
`L2.z/rho/r`

,`L3.z/rho/r`

and`L4.z/rho/r`

) - third and forth central L-moments (
`L3.mu.z/rho/r`

and`L4.mu.z/rho/r`

) - ratio of L1 and L2 moments (
`L.CV.z/rho/r`

) - median of the absolute deviation from the overall median
(
`median.a.d.z/rho/r`

) - mode of the absolute deviation from the overall mode
(
`mode.a.d.z/rho/r`

) - Canopy relief ratio i.e., the ration of
`mean.z/rho/r`

to`max.z/rho/r`

(`CRR.z/rho/r`

) - scale and shape parameters of the Weibull distribution fitted for
the spherical coordinates (
`weibull_c.z/rho/r`

,`weibull_b.z/rho/r`

)

id | radius | N.tls | N.hn | N.hr | N.hn.cov | N.hr.cov | N.sh | G.tls | G.hn | G.hr | G.hn.cov | G.hr.cov | G.sh | V.tls | V.hn | V.hr | V.hn.cov | V.hr.cov | V.sh | d.tls | dg.tls | dgeom.tls | dharm.tls | h.tls | hg.tls | hgeom.tls | hharm.tls | d.0.tls | dg.0.tls | dgeom.0.tls | dharm.0.tls | h.0.tls | hg.0.tls | hgeom.0.tls | hharm.0.tls |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|

1 | 10 | 222.8169 | 241.4554 | 237.3396 | 239.9341 | 234.2128 | 230.5601 | 12.83139 | 13.90472 | 13.66770 | 13.81712 | 13.48764 | 13.27729 | 72.26462 | 78.30949 | 76.97464 | 77.81611 | 75.96057 | 74.77589 | 26.63218 | 27.07807 | 26.17896 | 25.72557 | 11.98963 | 12.02086 | 11.95768 | 11.92508 | 31.50910 | 31.60757 | 31.40772 | 31.30362 | 12.77989 | 12.78591 | 12.77382 | 12.76769 |

2 | 10 | 350.1409 | 379.4298 | 372.9622 | 374.9814 | 366.2799 | 364.2843 | 18.91537 | 20.49762 | 20.14823 | 20.25731 | 19.78724 | 19.67943 | 101.80664 | 110.32268 | 108.44214 | 109.02925 | 106.49921 | 105.91896 | 25.75150 | 26.22655 | 25.29375 | 24.86175 | 11.59380 | 11.66199 | 11.51966 | 11.43902 | 32.68378 | 32.75790 | 32.60870 | 32.53280 | 12.41950 | 12.44332 | 12.39576 | 12.37212 |

3 | 10 | 381.9719 | 413.9235 | 406.8678 | 414.2445 | 403.9974 | 392.6248 | 23.55858 | 25.52924 | 25.09407 | 25.54904 | 24.91703 | 24.21562 | 115.70695 | 125.38573 | 123.24843 | 125.48298 | 122.37892 | 118.93393 | 27.86976 | 28.02296 | 27.71227 | 27.55093 | 11.38201 | 11.44246 | 11.32332 | 11.26633 | 31.17303 | 31.20949 | 31.13698 | 31.10141 | 11.78541 | 11.93916 | 11.62884 | 11.47255 |

4 | 10 | 254.6479 | 275.9490 | 271.2452 | 274.7699 | 268.1497 | 265.5833 | 22.15673 | 24.01012 | 23.60084 | 23.90752 | 23.33151 | 23.10820 | 124.40696 | 134.81348 | 132.51548 | 134.23744 | 131.00320 | 129.74938 | 32.71822 | 33.28417 | 32.14873 | 31.58609 | 12.69636 | 12.81602 | 12.56975 | 12.43597 | 38.69937 | 38.87412 | 38.53131 | 38.37101 | 12.55974 | 12.57650 | 12.54186 | 12.52257 |

5 | 10 | 318.3099 | 344.9362 | 339.0565 | 360.7488 | 349.0381 | 334.1288 | 21.34794 | 23.13368 | 22.73934 | 24.19417 | 23.40878 | 22.40886 | 117.11494 | 126.91149 | 124.74819 | 132.72937 | 128.42070 | 122.93514 | 28.64160 | 29.22187 | 27.98239 | 27.23715 | 12.77420 | 12.99329 | 12.47878 | 12.08340 | 34.98638 | 35.05872 | 34.91178 | 34.83518 | 13.39910 | 13.40467 | 13.39359 | 13.38812 |

6 | 10 | 254.6479 | 275.9490 | 271.2452 | 276.1346 | 269.3076 | 260.6298 | 15.96468 | 17.30011 | 17.00522 | 17.31175 | 16.88375 | 16.33971 | 89.59139 | 97.08563 | 95.43073 | 97.15093 | 94.74903 | 91.69596 | 28.06921 | 28.25304 | 27.88269 | 27.69453 | 12.82381 | 12.84689 | 12.80020 | 12.77611 | 31.41186 | 31.44841 | 31.37513 | 31.33830 | 12.79379 | 12.81666 | 12.77130 | 12.74923 |

The variables are estimated based on the tree attributes of the
detected trees from the point cloud data (output of the functions
`tree.deteection.single.scan`

and
`tree.deteection.multi.scan`

) similar to the procedure of
conventional forest inventories. The values are computed at stand-level
and are therefore extended to an area of one ha.

The stand density (** N.tls**, trees/ha) is
calculated by the following equations. For the circular fixed area and
k-tree plots,

`N.tls`

is calculated by\[ N.tls=\frac{10000}{\pi R^2}\cdot n \]

with \(R\) being the radius of the plot (in m) and \(n\) the number of detected trees. The density of angle-count plots is calculated by

\[ N.tls=\sum_{i=1}^{n} \frac{BAF}{g_i} \]

with \(BAF\) being the basal area factor (in m\(^2\)/ha) and \(g_i\) the basal area of the tree \(i\) (in m\(^2\)).

The basal area (** G.tls**, in m\(^2\)/ha) is estimated for circular fixed
area and k-tree plots by the following equation:

\[ G.tls=\frac{10000}{\pi R^2}\sum_{i=1}^{n} g_i \]

and for angle-count plots, the following equation is applied:

\[ G.tls=BAF \cdot n \]

The stem volume (** V.tls**, in m\(^3\)/ha) is estimated by modelling the stem
profile as a paraboloid. The volume is calculated as the volume of the
revolution of the paraboloid function. The total heights of the detected
trees are estimated as the 99th percentile of the points of the \(z\) coordinate delimited by Voronoi
polygons (\(h_{P_{99}i}\), in m). The
equation used for the calculation for circular fixed area and k-tree
plots is

\[ V.tls=\frac{10000}{\pi R^2}\sum_{i=1}^{n} \pi \cdot \frac{h_{P_{99}i}^2}{2} \cdot \frac{(\frac{1}{2} \cdot dbh_i)^2}{(h_{P_{99}i} - 1.3)^2} \]

and for angle-count plots is

\[ V.tls=\sum_{i=1}^{n} \frac{BAF}{g_i} \cdot \pi \cdot \frac{h_{P_{99}i}^2}{2} \cdot \frac{(\frac{1}{2} \cdot dbh_i)^2}{(h_{P_{99}i} - 1.3)^2} \]

The above mentioned calculations of the stand-level variables \(N\), \(V\) and \(G\) do not consider possible occlusions of trees. Therefore, different occlusion correction approaches are included in the function.

For angle-count plots, the occlusion correction is based on the
Poisson attenuation model. This approach calculates geometric gap
probabilities which decreases with increasing distance from the TLS
device and follow a Poisson distribution. The calculations of stand
density, volume and basal area are corrected with a factor accounting
for the gap probabilities and the corrected variables are called
** N.pam**,

`V.pam`

`G.pam`

For the other two plot designs (circular fixed area and k-tree plots)
different occlusion correction approaches are applied. One approach is
based on distance sampling data and can therefore only be used when the
function `distance.sampling`

was used (i.e., when the
`tree.ds`

argument is specified other than
`NULL`

). Functions based on point transect sampling that
describe how the probability of tree detection decreases with increasing
distance from the TLS device are used for the calculation. These
functions are applied for the calculation of the variables
** N.hn**/

`V.hn`

`G.hn`

`N.hr`

`V.hr`

`G.hr`

`N.hn.cov`

`V.hn.cov`

`G.hn.cov`

`N.hr.cov`

`V.hr.cov`

`G.hr.cov`

The other approach corrects shadowing effects. Tthis method
calculates an expansion factor to correct the variables. The expansion
factor is based on the percentage of the shaded area i.e., unsample area
which is not seen from the TLS device due to masking by trees. The
corrected calculated variables are called
** N.sh**/

`V.sh`

`G.sh`

The mean heights (in m) and diameters (in cm) are calculated by the
arithmetic (** h.tls**,

`d.tls`

`h.g`

`d.g`

`h.geom`

`d.geom`

`h.harm`

`d.harm`

`num.tree`

(see above), the number of dominant trees
per hectare is set to 100 trees/ha. Dominant heights and diameters are
also calculated as the arithmetic
(`h.0.tls`

`d.0.tls`

`h.0.g`

`d.0.g`

`h.0.geom`

`d.0.geom`

`h.0.harm`

`d.0.harm`

Strahler, A.H., Jupp, D.L.B., Woodcock, C.E., Schaaf, C.B., Yao, T., Zhao, F., Yang, X., Lovell, J., Culvenor, D., Newnham, G., Ni-Miester, W., Boykin-Morris, W., 2008. Retrieval of forest structural parameters using a ground-based lidar instrument (Echidna®). Can. J. Rem. Sens. 34 (Suppl. 2), S426–S440. https://doi.org/10.5589/m08-046.↩︎

Lovell, J.L., Jupp, D.L.B., Newnham, G.J., Culvenor, D.S., 2011. Measuring tree stem diameters using intensity profiles from ground-based scanning lidar from a fixed viewpoint. ISPRS J. Photogrammetry Remote Sens. 66 (1), 46–55. https://doi.org/10.1016/j.isprsjprs.2010.08.006.↩︎

Seidel, D., Ammer, C., 2014. Efficient measurements of basal area in short rotation forests based on terrestrial laser scanning under special consideration of shadowing. iFor. Biogeosci. For. 7 (4), 227–232. https://doi.org/10.3832/ifor1084-007.↩︎