IFNsubmodels: Dynamic model components

Description Usage Arguments Details Value References See Also Examples

Description

Set of basic model functions to simulate forest dynamics in IFN plots:

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
IFNgrowth(
  treeData,
  plotData,
  numYears = 10,
  params = "defaultGrowthParams",
  response = "DI",
  prepared = FALSE,
  useProvince = TRUE,
  useRP = TRUE,
  stochastic = FALSE,
  verbose = FALSE
)

IFNsurvival(
  treeData,
  plotData,
  numYears = 10,
  params = "defaultSurvivalParams",
  prepared = FALSE,
  killVeryLargeTrees = TRUE,
  verbose = FALSE
)

IFNsurvivalPG(
  treeData,
  plotData,
  numYears = 10,
  params = "defaultSurvivalPGParams",
  prepared = FALSE,
  killVeryLargeTrees = TRUE,
  verbose = FALSE
)

IFNingrowth(
  treeData,
  plotData,
  numYears = 10,
  paramsB = "defaultIngrowthBParams",
  paramsN = "defaultIngrowthNParams",
  paramsDBH = "defaultIngrowthDBHParams",
  prepared = FALSE,
  stochastic = FALSE,
  thresholdIngrowth = FALSE,
  speciesNames = TRUE,
  verbose = FALSE
)

IFNingrowthdisp(
  treeData,
  plotData,
  nb,
  NspNmatrix,
  numYears = 10,
  paramsB = "defaultIngrowthBParams_disp",
  paramsN = "defaultIngrowthNParams_disp",
  paramsDBH = "defaultIngrowthDBHParams_disp",
  prepared = FALSE,
  stochastic = FALSE,
  thresholdIngrowth = FALSE,
  speciesNames = TRUE,
  verbose = FALSE
)

IFNheight(
  treeData,
  plotData,
  params = "defaultHeightParams",
  useProvince = TRUE,
  useRP = TRUE,
  verbose = FALSE
)

IFNheightgrowth(
  treeData,
  plotData,
  numYears = 10,
  params = "defaultHeightGrowthParams",
  prepared = FALSE,
  useProvince = TRUE,
  useRP = TRUE,
  stochastic = FALSE,
  verbose = FALSE
)

IFNfire(treeData, plotData)

Arguments

treeData

A data frame with tree records in rows and columns 'ID', 'Species', 'DBH' (in cm) and 'N' (ha-1). Additionally, column 'OIFFIN' may be defined to indicate trees that are signaled to be cut during the following step.

plotData

A data frame with plot 'ID' in rows and columns 'SWHC' (mm), 'Rad' (MJ), 'Temp' (degrees C) and 'slope' (degrees).

numYears

An integer or integer vector with the number of years corresponding to one time step (by default 10-yr time steps are assumed)

params

Name of parameter data set or data frame with parameter values per species

response

Type of output: "BAI" (basal area increment, cm2), "DI" (diameter increment, cm) or "DBH" (new diameter at breast height, cm)

prepared

A flag to indicate that treeData is the result of calling function prepareTreeCompetitionTable (for IFNgrowth and IFNsurvival), prepareSpeciesCompetitionTable (for IFNingrowth) or prepareSpatialSpeciesCompetitionTable (for IFNingrowthdisp). Otherwise these functions are called internally.

useProvince

A flag to indicate that province information should be used in growth/height estimation.

useRP

A flag to indicate that "region de procedencia" should be used in growth/height estimation

stochastic

A flag to indicate that simulation of growth, mortality and ingrowth should be stochastic (i.e. non-deterministic)

verbose

A flag to indicate console output of the process

killVeryLargeTrees

Flag to indicate that trees with diameters larger than species-specific thresholds should be forced to die.

paramsB

Name of binomial model parameter data set or data frame with parameter values per species

paramsN

Name of Gamma model parameter data set or data frame with parameter values per species

paramsDBH

Name of Gamma model parameter data set or data frame with parameter values per species

thresholdIngrowth

Boolean flag to indicate that ingrowth should occur only when a given probability threshold is surpassed.

speciesNames

A flag to include species names in the output

nb

An object of class listw (see functions IFNknn and nb2listw).

NspNmatrix

A numeric matrix with the density proportion of each species (columns) in each plot (rows).

Details

All functions check whether plot IDs in treeData exist as row names of plotData and whether species codes in treeData have models defined. If plotData contains field 'Province', this will be used to overwrite any province especification in treeData. Option stochastic = TRUE causes the models to be run in stochastic mode, which means that: (a) binomial draws are made for each tree to determine survival; (b) predicted growth (e.g. diameter increment) is stochastic (Gamma distribution); (c) Ingrowth density is stochastic (Gamma distribution coupled to a binomial draw); (d) Ingrowth diameter is stochastic (Gamma distribution). Stochasticity is not available for IFNsurvival and IFNsurvivalPG because these function return survival probabilities. Function IFNheight is only deterministic, because it is a static model. Function IFNfire implements the fire probability model of González et al. (2006) and the fire damage model of González et al. (2007), both calibrated for Catalonia. Height growht estimates of function IFNheightgrowth return NA values whenever the province is not included in the set of provinces with enough data to define height growth models for the target species.

Value

Depends on the function:

References

González, J.R., Trasobares, A., Palahí, M., Pukkala, T., 2007. Predicting stand damage and tree survival in burned forests in Catalonia (North-East Spain). Ann. For. Sci. 64, 733–742. https://doi.org/10.1051/forest

González, J.R., Palahí, M., Trasobares, A., Pukkala, T., 2006. A fire probability model for forest stands in Catalonia (north-east Spain). Ann. For. Sci. 63, 169–176. https://doi.org/10.1051/forest:2005109

See Also

IFNdynamics, prepareTreeCompetitionTable

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# Load example tree data (two forest plots)
data(exampleTreeData)
head(exampleTreeData)

# Load IFN environmental data
data(plotDataIFN)
head(plotDataIFN)

# Load Regiones de Procedencia for IFN plots
data(plotRPIFN)

# Add Regiones de Procedencia to plot data
plotDataIFN = cbind(plotDataIFN, plotRPIFN)

# (1) Growth
IFNgrowth(exampleTreeData, plotDataIFN)

# (2) Survival probabilities
IFNsurvival(exampleTreeData, plotDataIFN)

# (3) Ingrowth model (local recruiment)
IFNingrowth(exampleTreeData, plotDataIFN)

# (4) Ingrowth model (colonization)
data(examplePlotCoords)
nb = IFNknn(examplePlotCoords, k = 1)
Nmatrix = tapply(exampleTreeData$N, list(exampleTreeData$ID, exampleTreeData$Species),
                 sum, na.rm=T)
NspNmatrix = sweep(Nmatrix, 1, rowSums(Nmatrix, na.rm=T), "/")
NspNmatrix = rbind(NspNmatrix,c(0.5, NA, NA, NA))
rownames(NspNmatrix)[4] = "80003"
NspNmatrix = cbind(NspNmatrix, c(NA,NA,NA,0.5))
colnames(NspNmatrix)[5] = "25"
IFNingrowthdisp(exampleTreeData, plotDataIFN, nb, NspNmatrix)

# (5) Static height model
IFNheight(exampleTreeData, plotDataIFN)

# (6) Height increment model
IFNheightgrowth(exampleTreeData, plotDataIFN)

# (7) Stochastic fire model
IFNfire(exampleTreeData, plotDataIFN)

miquelcaceres/IFNdyn documentation built on Feb. 1, 2021, 10:55 a.m.