This is a simple wrap of some of the libSBML functionality, mainly the model loading for purposes of COBRA analysis methods and exploration of ODE system and reaction dynamics.
You might like to try the packages that use SBML.jl; these now include:
- COBREXA.jl, the exascale-ready constraint-based analysis and reconstruction toolkit for finding and modeling steady metabolic fluxes with the models
- SBMLToolkit.jl, for working with the reaction dynamics of the models as ODE systems, well connected to the SciML ModelingToolkit ecosystem.
Other functionality will be added as needed. Feel free to submit a PR that increases the loading "coverage".
SBML.jl was developed at the Luxembourg Centre for Systems Biomedicine of the
University of Luxembourg (uni.lu/lcsb), and the UCL
Research Software Development Group
(ucl.ac.uk/arc). The development was supported by
European Union's Horizon 2020 Programme under PerMedCoE project
(permedcoe.eu) agreement no. 951773, and Chan
Zuckerberg Initiative (chanzuckerberg.com) under
grant 2020-218578 (5022).
]add SBML # or using Pkg; Pkg.add("SBML")
using SBML m = readSBML("myModel.xml") # m is now a Model structure with: m.reactions m.species m.compartments ...
There are several helper functions, for example you can get a nice list of reactions, metabolites and the stoichiometric matrix as follows:
mets, rxns, S = stoichiometry_matrix(m)