SBMLImporter.jl

Import dynamic models in the SBML format into a ReactionSystem for Gillespie, SDE and ODE simulations
Author sebapersson
Popularity
16 Stars
Updated Last
4 Months Ago
Started In
November 2023

SBMLImporter.jl

Julia Importer for SBML models

Stable Dev Build Status codecov Aqua QA SciML Code Style

SBMLImporter is a Julia package for importing dynamic Systems Biology Markup Language (SBML) models into either a JumpProblem for Gillespie simulations, a SDEProblem for chemical Langevin simulations, or an ODEProblem for deterministic simulations. Some major highlights of SBMLImporter are:

  • It imports models into a Catalyst.jl ReactionSystem. This allows for easy conversion to a JumpProblem, a SDEProblem, or an ODEProblem.
  • It supports a majority of SBML features, such as dynamic compartments, events, rules, piecewise (ifelse) expressions, and units.
  • It is thoroughly tested against both the SBML test suite and a large collection of published models.
  • It integrates with PEtab.jl for fitting SBML models to data.

Additional information on features and tutorials can be found in the documentation.

Other SBML related Julia packages

There are currently three other SBML related packages in Julia:

  1. SBML.jl wraps a subset of the libSBML functionality and is used by SBMLImporter and other SBML related packages for parsing SBML models.
  2. COBREXA.jl is designed for constraint-based metabolic modeling. Constraint-based models, which are often referred to as flux-balance analysis (FBA) models, are not supported by SBMLImporter.
  3. SBMLToolkit.jl is the most similar package to SBMLImporter as it imports an SBML model into a ReactionSystem. Still, we recommend to use SBMLImporter as it supports more SBML features, has more efficient event handling, and supports efficient JumpProblem (Gillespie) simulations. An extensive list of differences can be found in the documentation.

Citation

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