- fix bug in
vegTypeMapGenerator()
whenmixedType = 1
; - allow
mixedType = 0
invegTypeMapGenerator()
;
- fixed an assertion;
- delete NTEMS file (24 GB) after use in
prepInputs_NTEMS_LCC_FAO()
; - update Quebec PSP column in
speciesEquivalencies_CA
;
- more conversion from
raster
toterra
throughout; - remove
gdalUtilities
dependency; - fix bug in
prepInputLCC
:orig
argument no longer accepted byterra::compareGeom
; - fix bug in
calcSeverityB
: output table was missing the proportion of B killed; - new functions used to estimate maximum biomass (
maxB
) and species establishment probabilities (SEP
); - new function to update the
speciesEcoregion
table (brought over fromBiomass_speciesParameters
module), using estimatedinflationFactor
andmANPPproportion
to adjustmaxB
andmaxANPP
, respectively; - new functions to simulate disturbances -
FireDisturbance
andFireDisturbancePM
pulled from;Biomass_regeneration
andBiomass_regenerationPM
modules, respectively; overlayLCCs()
now works correctly with terra (#99);- fixed partial argument match warnings (#100);
- new function
standAgeMapGenerator()
to producestandAgeMap
fromcohortData
; - new functions
prepInputs_NTEMS_Nonforest()
andprepInputs_NTEMS_LCC_FAO()
; - add new assertions:
assertSpeciesTable()
andassertSpeciesTableRaw()
;
- move LandWeb-specific functions to
LandWebUtils
package (#86) Colors
-- new function to help withterra
migration.prepInputsFireYear
can now handlerasterToMatch
that is aSpatRaster
- drop support for R < 4.2 due to change in dependency package
MuMIn
(Sept 2022) - new functions to download a set of default biogeoclimatic variables used across several modules, and subset data layers from different time periods according to a year. These functions may only be here temporarily.
- new
raster
/terra
utility and plotting functions - new functions related to producing default permafrost input data for modules. These functions may only be here temporarily.
- new function:
nonForestedPixels
used to detect pixels without species cover or a non-forested land-cover class; - new function:
prepRawBiomassMap
used to createrawBiomassMap
; - new function:
prepRasterToMatch
used to createRasterToMatch
andRasterToMatchLarge
;
- drop support for R 3.6
prepInputsStandAgeMap
can now acceptfirePerimeters
layer, avoiding inner download if layer is present;- new assertion (
assertSppVectors
) to check that species match between vectors (e.g. tables, colours and species list vector); - new function
sppHarmonize
that deals with the 3 potential ways for a user to input thesim$sppEquiv
,P(sim)$sppEquivCol
, andsim$sppNameVector
; - update Eliot's email address;
- new functions:
speciesInStudyArea
and `species; - remove undeclared dependency package
Require
; - age imputation in
makeAndCleanInitialCohortData
can now be turned off; - fix bug in
LANDISDisp()
: skip dispersal whensrc
orrcv
data.tables are empty; - initial cohort biomass (calculated in
.initiateNewCohorts
) can now be a fixed integer or, as before, calculated using the LANDIS-II Biomass Succession Extension v3.2.1 approach (Scheller & Miranda 2015); - fix bug in
prepInputsFireYear()
; - drop single-level factor terms in
statsModel
;
- Several changes to accommodate the tracking and optional removal of pixels;
data suffered data imputation in
Biomass_borealDataPrep
; assertColumns
gives better message for which columns are incorrect/missing;minRelativeBDefaults
is now a function so they are more easily accessible ;statsModel
was pulling along with it all the data, 5x. Now it does not. The Caching of this should be fast and small now.
- Support for refitting
modelBiomass
(seeBiomass_boreaDataPrep
) with scaled data or different optimizer; - Changes to
loadkNNSpeciesLayers
andprepSpeciesLayers_KNN
prevent issues when default URL is down, or working offline (but layers are present locally); - Several changes to accommodate LCC 2010 dataset;
- New columns to
sppEquivalenciesCA
(PSP
,BC_Forestry
andFuelClass
); - Lowered values of dummy
rawBiomassMap
; - passing
fireURL = NULL
toprepStandAgeMap()
bypasses age imputation;
- New assertion for validation data;
- New function
sppEquivCheck
; loadKNNSpeciesLayers
can accept asppEquiv
table with one column- Improved documentation for
speciesEquivalencies_CA
data;
- new function to calculate fire severity as biomass loss;
- bug fixes and improvements to to
speciesTableUpdate
;
- Fixes and further speed improvements to seed dispersal functions and general code cleaning;
- Complete rewrite of
LANDISDisp
now (back to) native R. It is about 15x faster than the Rcpp implementation, and much simpler, with about 30% of the number of lines of code. It was inspired by the "spiral" approach as was used in the Rcpp in the pre-1.0.0 version ofLandR
, but much more efficiently as it is now correctly identifies every pixel outward from a centre pixel usingraster::focalWeight
, with the maximum of theseeddispersal_max
across all species. RAM use appears under control, even for large problems (tested on 50M pixel Raster with 8M potential Source pixels and 500,000 Receiving pixels, with a peak additional RAM of 3 GB duringLANDISDisp
);LANDISDisp
now accommodates sub-cellSize
dispersal distances, using the original Ward Dispersal equation. Previously, the sub-pixel dispersal was treated as if it was starting from the centre of the pixel. So, if less than a full pixel, then very little horizontal transfer. This has the effect that there will be a large increase in horizontal transfer for the species that have smallseeddistance_max
(i.e., less than cell size); - add new function
prepSpeciesLayers_ONFRI
;
LANDISDisp
did not correctly handlespeciesCode
when it is a factor. This is a common possibility. It now handles these correctly.
- new function
updateSpeciesTable
(moved fromLandWebUtils
) to allow user to update species parameters by passing a named list.
assignLightProb
now allows interpolating germination probability between species shade tolerance levels for any given stand shade value. This allows for for decimal values in species shade tolerance traits and greater fine tuning of shade-related germination probabilities.
- rounding of age classes and biomass now occurs only inside
makeCohortDataFiles
, as it is the last thing to do before makingcohortData
- rounding of age and biomass has been taken out of 3 other functions --
.createCohortData
,makeAndCleanInitialCohortData
, and a hard coded bit inBiomass_borealDataPrep
- updated source for kNN databases (now using v1, instead of v0) - this involved changes in the URLs and how the data is downloaded;
statsModel
function has a new argument to improve caching withreproducible::Cache
(i.e. not used internally);- function arguments that where previously called
time
, are now calledcurrentTime
- these changes are matched inLandR
Biomass modules - minor code clean-ups/bugfixes and improved clarity
- Bug fixes in imports (DESCRIPTION)
- new function
overlayLCCs
which will help with overlaying more than one land cover classification raster. - major revisions to
convertUnwantedLCC
to accommodate more cases and eliminate redundant arguments. prepInputsLCC()
now works with "LCC10"