Estimates rooting depth parameters for forest objects following Cabon et al. (2018).

estimateRootingDepth(
  forest,
  soil,
  PET_summer,
  P_summer,
  SpParams,
  fillMissing = FALSE
)

estimateRootingDepthList(
  forestlist,
  soillist,
  PET_summer,
  P_summer,
  SpParams,
  fillMissing = FALSE
)

Arguments

forest

An object of class forest.

soil

An object of class soil or a data frame with soil parameters.

PET_summer

Average (climatic) potential evapotranspiration (mm) corresponding to summer months.

P_summer

Average (climatic) precipitation (mm) corresponding to summer months.

SpParams

A data frame with species parameters (see SpParamsMED).

fillMissing

A boolean flag to indicate that missing estimates should be filled with mean values.

forestlist

A list of objects of class forest.

soillist

A list with objects of class soil or data frames with soil parameters.

Value

Function estimateRootingDepth returns object of class forest with modified values for Z50 and Z95. Function estimateRootingDepthList returns a list of forest objects with modified root distribution parameters.

Details

If PET_summer or P_summer are of length one, their elements are repeated for all elements in forestlist. Similarly, if soillist is an object of class soil or a data frame with soil parameters, the same soil parameters are repeated for all elements in forestlist.

References

Cabon, A., Martinez-Vilalta, J., de Aragon, J.M., Poyatos, R., De Caceres, M., 2018. Applying the eco-hydrological equilibrium hypothesis to model root distribution in water-limited forests. Ecohydrology 11, e2015. https://doi.org/10.1002/eco.2015

See also

Author

Miquel De Cáceres Ainsa, EMF-CREAF

Examples

# Builds from IFN3 data a list whose elements are 'forest' objects
data(IFN_species_mapping)
data(piesMayoresIFN3)
data(regeneraIFN3)
data(matorralIFN3)
l1 <- IFN2forest(piesMayoresIFN3, IFN_species_mapping, SpParamsMED,
               matorral = matorralIFN3, regenera = regeneraIFN3)
#> Number of plots: 5
#> Filtering missing and zero values...
#> Filtering small trees (DBH < 1) ...
#> Filtering dead trees...
#> Translating species codes...
#> Filtering wrong growth forms ...
#> Setting default root distribution ...
#> Building forest objects...
#> done.

# Estimate rooting depth
soilpar <- defaultSoilParams()
l2 <- estimateRootingDepthList(l1, soilpar, 300, 100, SpParamsMED)

# Compare tree rooting depths
print(l1[[1]]$treeData)
#>    IFNcode     Species   DBH Height          N      Z50 Z95 OrdenIf2 OrdenIf3
#> 1     0025 Pinus nigra  9.55    750  127.32395 173.1933 813      000      001
#> 2     0025 Pinus nigra  9.40    650  127.32395 173.1933 813      000      002
#> 3     0025 Pinus nigra 21.00   1600   31.83099 173.1933 813      002      003
#> 4     0025 Pinus nigra 23.30   1450   14.14711 173.1933 813      000      004
#> 5     0025 Pinus nigra 22.15   1450   31.83099 173.1933 813      004      005
#> 6     0025 Pinus nigra 23.10   1450   14.14711 173.1933 813      000      006
#> 7     0025 Pinus nigra 19.00   1350   31.83099 173.1933 813      005      007
#> 8     0025 Pinus nigra 25.40   1450   14.14711 173.1933 813      009      008
#> 9     0025 Pinus nigra 18.50   1250   31.83099 173.1933 813      011      009
#> 10    0025 Pinus nigra  8.20    750  127.32395 173.1933 813      000      010
#> 11    0025 Pinus nigra 21.25   1400   31.83099 173.1933 813      013      011
#> 12    0025 Pinus nigra 19.30   1300   31.83099 173.1933 813      014      012
#> 13    0025 Pinus nigra 33.95   1900   14.14711 173.1933 813      017      013
#> 14    0025 Pinus nigra 11.35    750  127.32395 173.1933 813      000      014
#> 15    0025 Pinus nigra  8.75    750  127.32395 173.1933 813      000      015
#> 16    0025 Pinus nigra 10.50    750  127.32395 173.1933 813      000      016
#> 17    0025 Pinus nigra  5.00    350 1400.56350 173.1933 813     <NA>     <NA>
#> 18    0025 Pinus nigra  1.50    100 1273.23955 173.1933 813     <NA>     <NA>
print(l2[[1]]$treeData)
#>    IFNcode     Species   DBH Height          N Z50 Z95 OrdenIf2 OrdenIf3
#> 1     0025 Pinus nigra  9.55    750  127.32395  NA  NA      000      001
#> 2     0025 Pinus nigra  9.40    650  127.32395  NA  NA      000      002
#> 3     0025 Pinus nigra 21.00   1600   31.83099  NA  NA      002      003
#> 4     0025 Pinus nigra 23.30   1450   14.14711  NA  NA      000      004
#> 5     0025 Pinus nigra 22.15   1450   31.83099  NA  NA      004      005
#> 6     0025 Pinus nigra 23.10   1450   14.14711  NA  NA      000      006
#> 7     0025 Pinus nigra 19.00   1350   31.83099  NA  NA      005      007
#> 8     0025 Pinus nigra 25.40   1450   14.14711  NA  NA      009      008
#> 9     0025 Pinus nigra 18.50   1250   31.83099  NA  NA      011      009
#> 10    0025 Pinus nigra  8.20    750  127.32395  NA  NA      000      010
#> 11    0025 Pinus nigra 21.25   1400   31.83099  NA  NA      013      011
#> 12    0025 Pinus nigra 19.30   1300   31.83099  NA  NA      014      012
#> 13    0025 Pinus nigra 33.95   1900   14.14711  NA  NA      017      013
#> 14    0025 Pinus nigra 11.35    750  127.32395  NA  NA      000      014
#> 15    0025 Pinus nigra  8.75    750  127.32395  NA  NA      000      015
#> 16    0025 Pinus nigra 10.50    750  127.32395  NA  NA      000      016
#> 17    0025 Pinus nigra  5.00    350 1400.56350  NA  NA     <NA>     <NA>
#> 18    0025 Pinus nigra  1.50    100 1273.23955  NA  NA     <NA>     <NA>