Releases: ncsu-landscape-dynamics/pops-core
Releases · ncsu-landscape-dynamics/pops-core
v2.0.0
Added
- Network kernel. (Vaclav Petras)
- Established dispersers from a cell are now tracked. (Chris Jones)
- Collection of general-use function for container handling for internal use.
- Template parameter for random number generator to Model and Simulation.
- New frequency values, every_step and time_step, can be used to schedule action every step of the simulation. (Vaclav Petras)
- This was implemented in rpops for simple cases. The new version in Core supports all unit and n combinations for the simulation step.
Changed
- Virtual functions are used to switch between kernels instead of an ever-growing if-else statement. (Vaclav Petras)
- This is possibly faster and it has additional cost only when compared to hardcoded simple kernels.
- New code is potentially 4 times faster as measured with r.pops.spread in #152.
- Kernel parameters don't need to be provided anymore when the kernel is not used.
- Opens door for adding many kernels in a flexible way.
- Anthropogenic kernel is now different from natural kernel and contains one network kernel. (Vaclav Petras)
Fixed
- Fixed and completed documentation of function parameters. (Vaclav Petras)
Full Changelog: v1.1.0...v2.0.0
v1.1.0
Added
- Pest movement based on overpopulation (Vaclav Petras)
- When cell contains too many pests, pests leave and move to a different cell.
- Total hosts added to run_step (Chris Jones)
- Allows overpopulations to be based on total_hosts rather than total_populations
- Allows movement to be based on total_hosts rather than total_populations
- Mortality timing is now more flexible (Chris Jones)
- requires 2 new parameters mortality_frequency and mortality_frequency_n
Changed
- Model class internal attributes and functions are now protected instead of private
to allow derived classes to access them for greater flexibility (Vaclav Petras). - Model class kernels are now created and returned by protected functions (Vaclav Petras).
- Config class has now more defaults and subsequent setup now consistently fails when
required values were not set (Vaclav Petras). - Movement module has added parameters (
mortality_tracker_vector
,exposed
,resistant
,
total_exposed
, andsuitable_cells
) (Chris Jones).- Now moves exposed and resistant populations
- Now moves total_hosts
- Now moves moratility tracked hosts
- Adds a new suitable_cell if a movement creates a new location with hosts.
- Treatments now modify total hosts (Chris Jones)
- Citation updated to PoPS Frontiers paper (Chris Jones)
- Jones, C., Jones, S., Petrasova, A., Petras, V., Gaydos, D.,
Skrip, M., Takeuchi, Y., Bigsby, K., and Meentemeyer, R., 2021.
Iteratively forecasting biological invasions with PoPS and a little help from
our friends.
Frontiers in Ecology and the Environment
DOI: 10.1002/fee.2357
- Jones, C., Jones, S., Petrasova, A., Petras, V., Gaydos, D.,
PoPS 1.0.0
This is version 1.0.0 of the PoPS Core C++ library and its interfaces: rpops R package and r.pops.spread GRASS GIS module. The release of PoPS Core includes:
- Susceptible-infected (SI) and susceptible-exposed-infected (SEI) host phases,
- Host mortality tracking,
- Host removal and pesticide application treatments,
- Host resistance based on pesticide application treatments,
- Treatments applied only to a ratio of hosts,
- Seasonal spread limited to certain months,
- Limited host movement (experimental),
- Yearly pest removal based on lethal temperature,
- Two different dispersal kernels (natural and anthropogenic),
- Cauchy and exponential radial dispersal kernels,
- Reduced stochasticity options and deterministic versions of kernels,
- Spread rate measurement,
- Quarantine and study area escape measurements,
- C++ API centered around two classes: pops::Model and pops::Config.