The estimateSTR()
function from the soilDB
package applies a soil temperature regime (STR) classification using rules from Soil Taxonomy (12th edition). Accurate classification of STR depends on the following properties:
The function will generate reasonable, but possibly wrong, results if missing O horizon, saturation, and permafrost values. This is only an issue for the gelic / cryic / frigid STR, e.g. in very cold climates.
STR include:
permafrost
argument)permafrost
, O.hz
, and saturated
arguments)O.hz
, and saturated
arguments)You will need the latest version of soilDB
:
# install.packages('devtools', dep=TRUE)
devtools::install_github("ncss-tech/soilDB", dependencies=FALSE, upgrade_dependencies=FALSE)
Note that this function is vectorized and works as expected, as long as each argument is the same length.
library(soilDB)
estimateSTR(mast = 12, mean.summer = 15, mean.winter = 8)
## [1] mesic
## 10 Levels: gelic cryic frigid isofrigid mesic isomesic thermic isothermic ... isohyperthermic
estimateSTR(mast = 4, mean.summer = 8, mean.winter = 1, O.hz = TRUE, saturated = FALSE, permafrost = FALSE)
## [1] frigid
## 10 Levels: gelic cryic frigid isofrigid mesic isomesic thermic isothermic ... isohyperthermic
These are quite dense. Some notes:
par(mar=c(4,1,0,1))
STRplot(mast = 0:25, msst = 10, mwst = 1)
STRplot(mast = 0:25, msst = 9, mwst = 1)
STRplot(mast = 0:25, msst = 7, mwst = 1)
STRplot(mast = 0:25, msst = 6, mwst = 1)
STRplot(mast = 0:25, msst = 5, mwst = 1)
par(mar=c(4,1,0,1))
STRplot(mast = 5, msst = 1:18, mwst = 0)
STRplot(mast = 5, msst = 1:18, mwst = 1)
STRplot(mast = 5, msst = 1:18, mwst = 2)
STRplot(mast = 5, msst = 1:18, mwst = 3)
STRplot(mast = 5, msst = 1:18, mwst = 5)
par(mar=c(4,1,0,1))
STRplot(mast = 10, msst = 1:18, mwst = 5)
This document is based on aqp
version 1.41 and soilDB
version 2.6.13.