← Back to all sparks
P

paleobuddy

ANALYTICS
Velocity0.0

Simulating Diversification Dynamics

paleobuddy can now simulate trait-dependent diversification, not just birth-death.

phylogeneticsdiversificationfossil-recordsimulationresearch-software
Current state
paleobuddy simulates diversification, fossil records and phylogenetic trees, with rates that can be arbitrary functions of time — its founding idea, implemented through rexp.var() generalizing exponential and Weibull draws. The 1.1.0 release adds state-dependent speciation and extinction simulation at roughly MuHiSSE generality, and lets simulations stop at a target number of extant species instead of conditioning on time.
Where it's heading
Releases track the maintainer's publications rather than a product cadence — 1.0.0 accompanied the MEE manuscript, 1.0.0.1 exists purely as a Zenodo citation anchor, and 1.1.0 is stated as going with a paper on SSE model accuracy for trees including fossil data. That framing sets the direction: the package grows whichever capability the next study needs to test. The stated SSE limits, no quantitative traits and no cladogenetic transitions, mark exactly where that boundary currently sits.
Prediction
Quantitative traits and cladogenetic transitions are named as missing, which makes them the obvious next targets, though on this history the timing will follow a paper rather than a roadmap.

Recent moves

  1. 1y ago

    paleobuddy 1.1.0 adds SSE trait-dependent simulation

    ⚡ SPARK

    The first release to add a new model class rather than refine the birth-death core: state-dependent speciation and extinction, roughly as general as MuHiSSE. Simulating to a target number of extant species also frees users from conditioning on time, which changes how comparable simulated datasets can be made.

    View source ↗
  2. 3y ago

    paleobuddy 1.0.0.1: Zenodo citation release

    Explicitly a dummy release cut after Zenodo integration so the accepted manuscript had something to cite. No code change.

    View source ↗
  3. 4y ago

    paleobuddy 1.0.0: first release with time-varying rates

    The initial release, built around rexp.var() generalizing exponential and Weibull sampling to accept any function of time as a rate, with bd.sim() applying that flexibility to diversification. That time-varying core is what the later SSE work extends.

    View source ↗