Skip to main content
13CFLUX

Pipeline Status Coverage Report Latest Release PyPI License DOI

13CFLUX is a high-performance simulator for isotopically stationary and non-stationary simulation of isotope labeling experiments. It is build on highly optimized C++ code, made available in Python through pybind11. It comprises the following main functions:

  • Read metabolic models and labeling data from standardized FluxML
  • Simulation of labeling distributions and data residuals given fluxes and metabolite concentrations
  • Fitting and statistical analysis (Frequentist and Bayesian) of 13C labeling experiments

13CFLUX is being developed by the Modelling and Simulation group under the supervision of Katharina Nöh at the IBG-1, Forschungszentrum Jülich, Germany.

Data formats

Models and labeling data are read from FluxML, a standardized XML format for 13C metabolic flux analysis shared across the 13CFLUX tool family (see the FluxML paper and the libFluxML documentation for the full schema).

Results (fluxes, residuals, covariances, sampling output, etc.) are returned as plain numpy arrays and Python objects rather than written to a fixed file format, so they can be persisted or post-processed with whatever tooling fits your pipeline, e.g.:

import numpy as np
np.savetxt("fluxes.csv", fluxes, delimiter=",")

Installation

The recommended way for practitioners to install 13CFLUX is via pip from the Python Package Index (PyPI). It is recommended to do this in a Python environment. Before installation, you should make sure to have ipopt installed (either directly or by installing cyipopt via conda). Then just run

pip install x3cflux

To verify the installation:

python -c "import x3cflux; print(x3cflux.__version__)"

To run the test suite and confirm the software produces correct results, clone the repository and run:

pip install ".[test]"
cd src/test
pytest python

Alternatively, a container image with 13CFLUX pre-installed (built and pushed automatically from every main commit) is available and requires no local build toolchain:

docker run --rm -it jugit-registry.fz-juelich.de/ibg-1/modsim/fluxomics/13cflux:latest

This drops you into a Python shell with x3cflux ready to import.

Documentation

We provide a Read The Docs documentation. Check it out!

Getting help and contributing

For questions, troubleshooting, and modelling discussions, visit the 13CFLUX forum. Some categories are currently restricted and require free registration for full access.

Development takes place on JuGit, where we have access to powerful continuous integration and a Docker registry. Please report issues and request features only on JuGit.

Contributions are welcome. CONTRIBUTING.md covers how to get a JuGit account, how to build and test from source, the branching model, and the formatting and metadata checks that run on every commit. Participation is governed by our Code of Conduct, and contributions are accepted under a Contributor License Agreement.

Versioning

13CFLUX follows Semantic Versioning (MAJOR.MINOR.PATCH). Pre-releases (e.g. towards a new major version) are tagged with an aN suffix, e.g. 3.0.0a0. The package version is not set manually; it is derived automatically from the git tag of a release via setuptools_scm.

There are no long-term-support (LTS) branches; only the latest release receives fixes (see SECURITY.md). Every release has an entry in CHANGELOG.md. How releases are prepared and cut is described in CONTRIBUTING.md.

Citation

Every release is also archived on Zenodo. The concept DOI below always resolves to the latest version; see CITATION.cff for how to cite a specific version:

DOI

If you use this software, please also cite the paper describing it:

@article{Stratmann2025,
    author = {Stratmann, Anton and Beyß, Martin and Jadebeck, Johann F and Wiechert, Wolfgang and Nöh, Katharina},
    title = {13CFLUX — Third-generation high-performance engine for isotopically (non)stationary 13C metabolic flux analysis},
    journal = {Bioinformatics},
    pages = {btaf630},
    year = {2025},
    issn = {1367-4811},
    doi = {10.1093/bioinformatics/btaf630},
    url = {https://doi.org/10.1093/bioinformatics/btaf630},
}

Metadata

Release files for x3cflux 3.1.0

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

Built distributions (wheels)

Table of built distributions (wheels) for x3cflux 3.1.0
File
x3cflux-3.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
x3cflux-3.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
x3cflux-3.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
x3cflux-3.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
x3cflux-3.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details

Total release size: 62.7 MB

Release files / x3cflux-3.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL x3cflux-3.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 12.5 MB
Tags CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
64ad43b6fb3deb95f8d257e8f5ea06cb86f428e53e89c8a21884e59430499137
BLAKE2b-256 checksum
How to use checksums
52ff6c6c962de6ccec1eab6f24c7bab4a4717d3f6362ea2e7c6faa03afec9352
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15

Release files / x3cflux-3.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL x3cflux-3.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 12.5 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
a099bcdf40dec75e8cdbb9a23636f7f50516a873e2a61596e1f4ad1968d59512
BLAKE2b-256 checksum
How to use checksums
9aa52d6adacc2156ea9cdded122e9ac5f26439b1cc279cf38ecf61c3178f178d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15

Release files / x3cflux-3.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL x3cflux-3.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 12.5 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
2646d99c105f67cfab4454aea1b27a28334a6c79268937be198090545a57a67f
BLAKE2b-256 checksum
How to use checksums
50b0f680d1f4db7a2ef5a45334da2186d6ddb0b7b4b9a70ed99d7940e77d36de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15

Release files / x3cflux-3.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL x3cflux-3.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 12.5 MB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
4b37345ed22f4c1e20f1c7f17b40482d7b407db4957cc9908eb73b291bb4e1d5
BLAKE2b-256 checksum
How to use checksums
9f8e2df06e14717cf2a1be82297224ccd6c3ca314bbaec94c6b2f1d11d94ad10
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15

Release files / x3cflux-3.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL x3cflux-3.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 12.5 MB
Tags CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f202884f955f3ef0a7fbdab8f0754473f3223d0e3510aa5998a3bd1d68f4a552
BLAKE2b-256 checksum
How to use checksums
6987c5c1e29ff1b6f51e63f59e642304cb8c48bc86330f587265c72ad5d89550
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15
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