Skip to main content

Documentation Status Test results License

SBML2Julia

SBML2Julia is a tool to for optimizing parameters of ordinary differential equation (ODE) models. SBML2Julia translates a model from SBML/PEtab format into Julia for Mathematical Programming (JuMP), performes the optimization task and returns the results.

Optimization method

SBML2Julia uses the optimization method presented in Scalable nonlinear programming framework for parameter estimation in dynamic biological system models. In brief, contrary to typical parameter optimization methods for ODE systems, SBML2Julia does not rely on simulation of the ODE system. Instead SBML2Julia uses an implicit Euler scheme to time-discretize an ODE system of n equations into m time steps. This transforms the ODE system into a system of n * (m - 1) algebraic equations with n * m variables. These n * m variables (or a subset thereof) can then be cast into an objective function. SBML2Julia then uses interior-point optimization implemented in the Julia language to minimize the objective function constraint to the n * (m - 1) algebraic equations.

Installation

SBML2Julia depends on several Python and Julia packages. If you have Docker installed on your machine, the easiest way of installing these dependencies is to pull the latest SBML2Julia docker image from Docker Hub and build a container.

user@bash:/$ docker pull paulflang/sbml2julia:latest
user@bash:/$ docker run -it paulflang/sbml2julia:latest

To install the latest SBML2Julia version in the Docker container, run:

user@bash:/$ git clone https://github.com/paulflang/sbml2julia.git
user@bash:/$ python3 -m pip install -e sbml2julia

To check if the installation was succesful, run:

user@bash:/$ sbml2julia -h

Alternatively, the SBML2Julia dependencies can be installed as indicated in the Dockerfile in the SBML2Julia GitHub repository. Once these dependencie are installed, SBML2Julia can be installed as above:

user@bash:/$ git clone https://github.com/paulflang/sbml2julia.git
user@bash:/$ python3 -m pip install -e sbml2julia
user@bash:/$ sbml2julia -h

Interfaces

Optimization tasks can be performed from a Python API or a command line interface.

Tutorial, and documentation

Please see the documentation for a description of how to use SBML2Julia.

License

The package is released under the MIT license.

Development team

This package was developed by Paul F. Lang at the University of Oxford, UK and Sungho Shin at the University of Wisconsin-Madison, USA..

Questions and comments

Please contact Paul F. Lang with any questions or comments.

Metadata

Release files for sbml2julia 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sbml2julia 0.1.1
File Size Uploaded
sbml2julia-0.1.1.tar.gz 21.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sbml2julia 0.1.1
File Interpreter ABI Platform
sbml2julia-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 42.6 kB

Release files / sbml2julia-0.1.1.tar.gz

Download URL sbml2julia-0.1.1.tar.gz
Size 21.9 kB
Tags Source
SHA-256 checksum
How to use checksums
fd989a6cabf4b67f22dfcd1a5940168a585025420c102045d932e885c3c395aa
BLAKE2b-256 checksum
How to use checksums
ff2ba5ca578c3523b2a0a61054034b9869133abf9ab8088eafc0f93af20efb07
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.5

Release files / sbml2julia-0.1.1-py3-none-any.whl

Download URL sbml2julia-0.1.1-py3-none-any.whl
Size 20.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a10e3406dfbfeab4f231b4225075e9ca6e51857abbae07f32bfb0a148a54af71
BLAKE2b-256 checksum
How to use checksums
da6cd35a575c714055c58e7a2e3d567830de85975563949a35acab9ae3a7cb98
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.5

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page