v3.0.0
v3.0.0
Version 3 of TITAN refactors agent death and replacement into model exit and entrance, allowing for more flexible use of agents departing and entering during a model run.
Breaking changes
- params
- feature name change from
die_and_replace
toexit_enter
- introduction of class
exit
to define agent exit strategies - introduction of class
enter
to define agent entry strategies - introduction of
exit_enter
params to pair exit and enter classes demographics
have changed to account for multiple model exit possibilities
- feature name change from
Migration notes
For existing parameters that use die_and_replace
, the defaults for the new exit
, enter
, and exit_enter
are intended to mimic the behavior of the former die_and_replace
(using get_death_rate
and 100% replacement). Users should, however, ensure that this is the intended behavior for their project. More importantly, the demographics
parameters must be updated to reflect the new paradigm.
New features
- Model exit
- now allows for three separate exit strategies: death, aging out, or model departure (e.g. migration)
- the "death" exit type is the only one to use the previously ubiquitous
get_death_rate
. All others use strictly demographic-based probabilities - agents may exit the model and not be replaced/spawn new agents
- Model entrance
- no longer implicitly paired with exit as a strictly 1-to-1 replacement
- can either replace agents or generate new agents
- new agents can be generated without any agents leaving the model
Minor updates
- the
poisson
function has been moved from.utils
to.distributions
so that it can be used for distributions in params poisson
also allows negative values (returning 0) to enable use of negative numbers when timeline scaling to enforce a zero value