Type: | Package |
Title: | Forest Carbon Sequestration and Potential Productivity Calculation |
Version: | 1.1.0 |
Description: | Include assessing site classes based on the stand height growth and establishing a nonlinear mixed-effect biomass model under different site classes based on the whole stand model to achieve more accurate estimation of carbon sequestration. In particular, a carbon sequestration potential productivity calculation method based on the potential mean annual increment is proposed. This package is applicable to both natural forests and plantations. It can quantitatively assess stand’s potential productivity, realized productivity, and possible improvement under certain site, and can be used in many aspects such as site quality assessment, tree species suitability evaluation, and forest degradation evaluation. Reference: Lei X, Fu L, Li H, et al (2018) <doi:10.11707/j.1001-7488.20181213>. Fu L, Sharma R P, Zhu G, et al (2017) <doi:10.3390/f8040119>. |
License: | GPL (≥ 3) |
Maintainer: | Yuanyuan Han <jackhanyuan@foxmail.com> |
URL: | https://github.com/caf-ifrit/forestat |
BugReports: | https://github.com/caf-ifrit/forestat/issues |
Repository: | CRAN |
Encoding: | UTF-8 |
Language: | en-US |
LazyData: | true |
Depends: | R (≥ 3.5.0) |
RoxygenNote: | 7.2.3 |
Imports: | dplyr, ggplot2, graphics, nlme, stats, rlang |
Suggests: | knitr, rmarkdown |
VignetteBuilder: | knitr |
NeedsCompilation: | no |
Packaged: | 2023-10-10 05:33:47 UTC; jackhanyuan |
Author: | Liyong Fu [aut], Shirong Liu [aut], Shouzheng Tang [aut], Guangshuang Duan [aut], Zhong Wang [aut], Linyan Feng [aut], Dongbo Xie [aut], Yuanyuan Han [aut, cre] |
Date/Publication: | 2023-10-10 05:50:02 UTC |
Calculating degraded forest grade
Description
Calculation of degraded forest grade.
Usage
calc_degraded_forest_grade(plot_data)
Arguments
plot_data |
Preprocessed plot_data |
Details
Calculation of degraded forest grade, icluding p1, p2,p3, p4, p5, p1m, p2m, p3m, p4m, Z1, Z2, Z3, Z4, Z5, Z, Z_weights, Z_grade, Z_weights_grade etc.
Value
res_data with degraded forest grade
Examples
# Load forest survey data
data(tree_1)
data(tree_2)
data(tree_3)
data(plot_1)
data(plot_2)
data(plot_3)
# Preprocess the degraded forest data
plot_data <- degraded_forest_preprocess(tree_1,tree_2,tree_3,plot_1,plot_2,plot_3)
# Calculation of degraded forest grade
res_data <- calc_degraded_forest_grade(plot_data)
Calculate the site classes based on stand height growth
Description
class.plot adds new variables: the original height classes and the adjusted height classes. And the existing variables are retained.
Usage
class.plot(
data,
model = "Richards",
interval = 5,
number = 5,
maxiter = 1000,
H_start = c(a = 20, b = 0.05, c = 1),
BA_start = c(a = 80, b = 1e-04, c = 8, d = 0.1),
Bio_start = c(a = 450, b = 1e-04, c = 12, d = 0.1)
)
Arguments
data |
A data.frame data in which at least four columns are required as input: ID, code, AGE, H. |
model |
Type of model used for building the H-model (stand height model), options are 'Logistic', 'Richards', 'Korf', 'Gompertz', 'Weibull', or 'Schumacher'. |
interval |
The initial stand age interval for height classes. |
number |
The maximum number of initial height classes. |
maxiter |
The maximum number of iterations to fit the H-model. |
H_start |
The initial parameters for fitting the H-model, the default value is c(a=20,b=0.05,c=1.0). |
BA_start |
The initial parameters for fitting the BA-model, the default value is c(a = 80, b = 0.0001, c = 8, d = 0.1). |
Bio_start |
The initial parameters for fitting the Bio-model, the default value is c(a=450, b=0.0001, c=12, d=0.1). |
Details
Input takes a data.frame with three variables ID, AGE, H and returns height classes of every sample (rows in the data.frame).
Value
A data of forestData class with output values, models and model parameters.
Examples
# Load sample data
data("forestData")
# Build a model based on the forestData and return a forestData class object
forestData <- class.plot(forestData,model="Richards",
interval=5,number=5,maxiter=1000,
H_start=c(a=20,b=0.05,c=1.0))
Preprocess the degraded forest data
Description
Preprocess the degraded forest data and return the plot_data.
Usage
degraded_forest_preprocess(tree_1, tree_2, tree_3, plot_1, plot_2, plot_3)
Arguments
tree_1 |
Tree data for the 1st period |
tree_2 |
Tree data for the 2nd period |
tree_3 |
Tree data for the 3rd period |
plot_1 |
Sample plot data for the 1st period |
plot_2 |
Sample plot data for the 2nd period |
plot_3 |
Sample plot data for the 3rd period |
Details
tree_1, tree_2, tree_3 are required to include the fields "plot_id", "inspection_type", and "tree_species_code". plot_1, plot_2, and plot_3 are required to include the fields "plot_id", "standing_stock", "forest_cutting_stock", "crown_density", "disaster_level", "origin", "dominant_tree_species", "age_group", "naturalness", and "land_type".
Value
Preprocessed plot_data
Examples
# Load forest survey data
data(tree_1)
data(tree_2)
data(tree_3)
data(plot_1)
data(plot_2)
data(plot_3)
# Preprocess the degraded forest data
plot_data <- degraded_forest_preprocess(tree_1,tree_2,tree_3,plot_1,plot_2,plot_3)
Mixed birch-broadleaf forest data
Description
Mixed birch-broadleaf forest data
Usage
forestData
Format
'forestData' A data frame with 320 rows and 16 columns:
- ID
Plot ID
- AGE
The average age of the stand
- H
Stand height
- BA
Stand basal area
- Bio
Stand biomass
- S
Stand density index
- code
Forest type code of plot
...
ForestData Plot
Description
Plot graphs about the forestData.
Usage
## S3 method for class 'forestData'
plot(
x,
model.type = "H",
plot.type = "Curve",
xlab = NA,
ylab = NA,
legend.lab = "Site class",
title = "Mixed birch-broadleaf forest",
...
)
Arguments
x |
A data of forestData class. |
model.type |
Type of model used for fitting, options are 'H' (stand height growth model), 'BA' (stand basal area model), or 'Bio' (stand biomass model). |
plot.type |
Type of plot, options are 'Curve' (curve plot), 'Scatter_Curve' (scatter plot with curve), 'Residual' (residual plot), or 'Scatter' (scatter plot). |
xlab |
The title for the x axis. |
ylab |
The title for the y axis. |
legend.lab |
The title for the legends. |
title |
The text for the Plot title. |
... |
Additional arguments affecting the figure plotted. |
Value
A trellis plot object
Examples
# Load sample data
data("forestData")
# Build a model based on the forestData and return a forestData class object
forestData <- class.plot(forestData,model="Richards",
interval=5,number=5,maxiter=1000,
H_start=c(a=20,b=0.05,c=1.0))
# Plot the curve of the height classes
plot(forestData, model.type="H",
plot.type="Curve",
xlab="Stand age (year)",ylab="Height (m)",legend.lab="Site class",
title="The H-model curve of the mixed birch-broadleaf forest")
1st period sample plot survey data
Description
The 1st period sample plot survey data (e.g. 2005)
Usage
plot_1
Format
'plot_1' A data frame with 62 rows and 23 columns:
- plot_id
Plot ID
- standing_stock
Standing stock
- forest_cutting_stock
Forest cutting stock
- crown_density
Crown density
- disaster_level
Disaster level
- origin
origin
- dominant_tree_species
Dominant tree species
- age_group
Age group
- naturalness
Naturalness
- land_type
Land type
...
2nd period sample plot survey data
Description
The 2nd period sample plot survey data (e.g. 2010)
Usage
plot_2
Format
'plot_2' A data frame with 100 rows and 5 columns:
- plot_id
Plot ID
- standing_stock
Standing stock
- forest_cutting_stock
Forest cutting stock
- crown_density
Crown density
- disaster_level
Disaster level
- origin
origin
- dominant_tree_species
Dominant tree species
- age_group
Age group
- naturalness
Naturalness
- land_type
Land type
...
3rd period sample plot survey data
Description
The 3rd period sample plot survey data (e.g. 2015)
Usage
plot_3
Format
'plot_3' A data frame with 100 rows and 5 columns:
- plot_id
Plot ID
- standing_stock
Standing stock
- forest_cutting_stock
Forest cutting stock
- crown_density
Crown density
- disaster_level
Disaster level
- origin
origin
- dominant_tree_species
Dominant tree species
- age_group
Age group
- naturalness
Naturalness
- land_type
Land type
...
Calculate the potential productivity.
Description
potential.productivity calculate the potential productivity of stand based on model parameters(obtained from the parameterOutput function).
Usage
potential.productivity(
forestData,
code = 1,
age.min = 5,
age.max = 150,
left = 0.05,
right = 100,
e = 1e-05,
maxiter = 50
)
Arguments
forestData |
A forestData class data |
code |
Codes for forest types. |
age.min |
The minimum age of the stand. |
age.max |
The maximum age of the stand. |
left |
Solving for the left boundary of the potential productivity. |
right |
Solving for the right boundary of the potential productivity. |
e |
Accuracy parameters for solving the stand density index according to Newton's iterative method. |
maxiter |
Maximum number of iterations parameter for solving the stand density index according to Newton's iteration method. |
Details
potential.productivity takes data_BA,data_V parameters as required inputs.
Value
A forestData class in which a data.frame with potential productivity parameters is added.
Examples
# Load sample data
data("forestData")
# Build a model based on the forestData and return a forestData class object
forestData <- class.plot(forestData,model="Richards",
interval=5,number=5,maxiter=1000,
H_start=c(a=20,b=0.05,c=1.0))
# Calculate the potential productivity of the forestData object
forestData <- potential.productivity(forestData,code=1,
age.min=5,age.max=150,
left=0.05,right=100,
e=1e-05,maxiter=50)
Calculate the realized productivity.
Description
realized.productivity calculate the realized productivity of each stand based on model parameters (obtained from the parameterOutput function).
Usage
realized.productivity(forestData, left = 0.05, right = 100)
Arguments
forestData |
A forestData class data |
left |
Solving for the left boundary of the realized productivity. |
right |
Solving for the right boundary of the realized productivity. |
Details
realized.productivity takes data,data_BA,data_V parameters as required inputs.
Value
A forestData class in which a data.frame with realized productivity parameters is added.
Examples
# Load sample data
data("forestData")
# Build a model based on the forestData and return a forestData class object
forestData <- class.plot(forestData,model="Richards",
interval=5,number=5,maxiter=1000,
H_start=c(a=20,b=0.05,c=1.0))
# Calculate the realized productivity of the forestData object
forestData <- realized.productivity(forestData,left=0.05,right=100)
Summary of forestData
Description
Generates summary statistics for forestData objects.
Usage
## S3 method for class 'forestData'
summary(object, ...)
Arguments
object |
A forestData object (after class.plot). |
... |
Additional arguments affecting the summary produced. |
Details
The summary includes the summary of raw data, the model, the model parameters, potential productivity and real productivity in forestData(if available)
Value
A summary object of class "summary.forestData"
Examples
# Load sample data
data("forestData")
# Build a model based on the forestData and return a forestData class object
forestData <- class.plot(forestData,model="Richards",
interval=5,number=5,maxiter=1000,
H_start=c(a=20,b=0.05,c=1.0))
# Get the summary data of the forestData object
summary(forestData)
1st period trees survey data
Description
The 1st period trees survey data (e.g. 2005)
Usage
tree_1
Format
'tree_1' A data frame with 1634 rows and 5 columns:
- plot_id
Plot ID
- inspection_type
Inspection type
- tree_species_code
Tree species code
...
2nd period trees survey data
Description
The 2nd period trees survey data (e.g. 2010)
Usage
tree_2
Format
'tree_2' A data frame with 4778 rows and 5 columns:
- plot_id
Plot ID
- inspection_type
Inspection type
- tree_species_code
Tree species code
...
3rd period trees survey data
Description
The 3rd period trees survey data (e.g. 2015)
Usage
tree_3
Format
'tree_3' A data frame with 4528 rows and 5 columns:
- plot_id
Plot ID
- inspection_type
Inspection type
- tree_species_code
Tree species code
...