Skip to content

sebapersson/PEtab.jl

Repository files navigation

PEtab.jl

Create parameter estimation problems for dynamic models

Stable Dev Build Status Aqua QA codecov SciML Code Style

PEtab.jl is a Julia package for creating parameter estimation problems for fitting Ordinary Differential Equation (ODE) models to data in Julia. Some major highlights of PEtab.jl are:

  • It supports coding parameter estimation problems directly in Julia, where the dynamic model can be provided as a Catalyst ReactionSystem, a ModelingToolkit ODESystem, or as an SBML file imported through SBMLImporter.
  • It can import and has full support for parameter estimation problems in the PEtab standard format
  • It supports a wide range of features for parameter estimation problems, including multiple observables, multiple simulation conditions, models with events, and models with steady-state pre-equilibration simulations.
  • It integrates with Julia's DifferentialEquations.jl ecosystem, which among other things, means it supports any of the state-of-the-art ODE solvers in OrdinaryDiffEq.jl.
  • It supports efficient forward and adjoint gradient methods, suitable for small and large models, respectively.
  • It supports exact Hessian's for small models and good approximations for large models.
  • It includes wrappers for performing parameter estimation with optimization packages Optim.jl, Ipopt, Optimization.jl, and Fides.py.
  • It includes wrappers for performing Bayesian inference using state-of-the-art methods such as NUTS (the same sampler used in Turing.jl) or AdaptiveMCMC.jl.

Additional information and tutorials can be found in the documentation.

Citation

We will soon publish a paper you can cite if you found PEtab helpful in your work.