Skip to content

ebalderasr/CHOmpact-Unchained

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CHOmpact-Unchained

CHOmpact reconstructed as a COBRApy model — from supplementary tables to FBA-ready JSON


Stack Model Tests License Part of


What is this?

CHOmpact is a reduced genome-scale metabolic model of Chinese Hamster Ovary (CHO) cells, published by Jiménez del Val et al. (2023) in Biotechnology and Bioengineering. The model describes central carbon metabolism, oxidative phosphorylation, amino acid handling, and the full biosynthetic route for a recombinant IgG — in 101 metabolites and 144 reactions.

The authors released the model as supplementary Excel tables. This repository reconstructs CHOmpact as a proper COBRApy JSON model that can be loaded, constrained, and solved like any other genome-scale model, with no manual preprocessing.

Jiménez del Val, I., Kyriakopoulos, S., Woodley, J. M., & Kontoravdi, C. (2023). CHOmpact: A reduced metabolic model of Chinese hamster ovary cells with product quality outputs. Biotechnol. Bioeng., 120, 2479–2493. DOI: 10.1002/bit.28459


Why it matters

The supplementary data of CHOmpact contain everything needed to rebuild the model — reaction list (ST1), stoichiometric matrix (ST2), biomass composition (ST3), IgG composition (ST4), and experimental flux data (ST6) — but the published format is an Excel workbook, not a machine-readable model file. Without reconstruction:

  • The model cannot be loaded into COBRApy, MATLAB COBRA, or any standard FBA toolbox
  • Exchange constraints cannot be applied programmatically
  • Integration with genome-scale models (iCHOv1, iCHO2048s) requires manual, error-prone transcription

This repository automates the full reconstruction pipeline and delivers a validated, COBRApy-ready JSON that passes 57 independent tests against the supplementary and article data.


Model overview

Property Value
Metabolites 101
Reactions 144 (F1–F144)
Objective F142 (biomass export)
Product reaction F143 (IgG export)
Energy currency m26_ATP_Energy (single pool, no explicit H₂O/ADP/Pᵢ/H)
P/O ratios F18: 1.5 ATP/FADH₂ · F19: 2.5 ATP/NADH_mit
Amino acids tracked 19 (Ala, Arg, Asn, Asp, Gln, Glu, Gly, His, Ile, Leu, Lys, Met, Phe, Pro, Ser, Thr, Trp, Tyr, Val)

Sign conventions for exchange reactions

CHOmpact uses a mixed sign convention that differs from the COBRApy standard for two exchanges:

Reaction Metabolite Positive flux means
F105 Glucose Uptake (Glc coeff = +1)
F107 Lactate Secretion (Lac coeff = −1)
F108 NH₄⁺ Secretion (NH₄ coeff = −1)
F114 Glutamine Secretion (Gln coeff = −1)
F115 Glutamate Uptake (Glu coeff = +1)

F105 and F115 are inverted relative to the COBRApy convention (negative = uptake). Keep this in mind when setting exchange bounds.


Setup and usage

1 — Install dependencies

pip install cobra openpyxl pytest

2 — Clone the repository

git clone https://github.com/ebalderasr/CHOmpact-Unchained.git
cd CHOmpact-Unchained

3 — Reconstruct the model (optional)

CHOmpact.json is already included in the repository. If you want to rebuild it from scratch — for example after modifying the reconstruction script — you will need the original supplementary Excel file (not included, copyrighted publisher content). Download it from the journal as supplementary material S2 (DOI: 10.1002/bit.28459), place it in the repo root with its original filename, and run:

python build_chompact_model.py
# → overwrites CHOmpact.json in the repo root

The script reads ST1 (reactions), ST2 (stoichiometric matrix), ST3 (biomass composition), and ST4 (IgG composition) and writes a COBRApy-compatible JSON.

4 — Run the test suite

pytest tests/ -v

Expected output: 57 passed. The suite validates model structure, stoichiometric coefficients, unconstrained FBA behaviour, all 15 experimental conditions from ST6, metabolic ratios, and IgG production logic.

tests/test_chompact.py::TestModelStructure::test_metabolite_count PASSED
tests/test_chompact.py::TestModelStructure::test_reaction_count PASSED
...
tests/test_chompact.py::TestProductFormation::test_nucleotide_sugar_synthesis_for_glycosylation PASSED
57 passed in 2.7s

5 — Load and use the model

import cobra

model = cobra.io.load_json_model("CHOmpact.json")
print(len(model.metabolites), "metabolites")  # 101
print(len(model.reactions), "reactions")      # 144

sol = model.optimize()
print(f"Biomass flux: {sol.fluxes['F142']:.4f} h⁻¹")

Apply experimental constraints (ST6 data)

import cobra

model = cobra.io.load_json_model("CHOmpact.json")

# Feed C — early exponential phase
# Units: nmol / 10⁶ cells / h  (F142 in h⁻¹; F143 in mg / 10⁶ cells / h)
with model:
    model.reactions.get_by_id("F105").bounds = (85.80, 85.80)      # glucose uptake
    model.reactions.get_by_id("F107").bounds = (99.50, 99.50)      # lactate secretion
    model.reactions.get_by_id("F108").bounds = (16.87, 16.87)      # NH₄⁺ secretion
    model.reactions.get_by_id("F114").bounds = ( 0.89,  0.89)      # Gln (slight secretion)
    model.reactions.get_by_id("F115").bounds = ( 1.73,  1.73)      # glutamate uptake
    model.reactions.get_by_id("F142").bounds = ( 0.0307, 0.0307)   # biomass
    model.reactions.get_by_id("F143").bounds = (8.11e-4, 8.11e-4)  # IgG export

    sol = model.optimize()
    print(f"Status:       {sol.status}")
    print(f"LDH (F25):    {sol.fluxes['F25']:.2f}")   # Warburg flux
    print(f"CS  (F9):     {sol.fluxes['F9']:.2f}")    # TCA entry

Repository structure

CHOmpact-Unchained/
├── CHOmpact.json               ← COBRApy-ready model (101 mets, 144 rxns)
├── build_chompact_model.py     ← reconstruction script (reads Excel ST1–ST4)
└── tests/
    ├── __init__.py
    └── test_chompact.py        ← 57 pytest tests against article and supp. data

The supplementary Excel and PDF files are excluded from version control (copyrighted publisher content).


Test suite

57 tests across six categories, all passing:

Category Tests What is checked
Model structure 10 Metabolite/reaction counts, objective, reversibility bounds, exchange signs
Stoichiometry 14 F90 (biomass), F102 (IgG), F18/F19 (P/O ratios), F1 (glycolysis) coefficients against ST2–ST4
Unconstrained FBA 7 Feasibility, positive biomass, active glycolysis/TCA/OXPHOS, energy balance
ST6 feasibility 15 All 15 experimental conditions (Feed C/U/U40 × 5 timepoints) are feasible
Metabolic ratios 7 Warburg effect, late-culture lactate switch, glucose trend, glycolytic consistency
Product formation 4 IgG requires AAs, IgG export requires synthesis, glycosylation pathway active
pytest tests/ -v

Highlighted validation

The ST6 feasibility tests confirm that all 15 experimental conditions reported by Jiménez del Val et al. are stoichiometrically consistent with the reconstructed model. Notably, the negative F107 values in late culture (lactate consumption instead of secretion) are correctly handled — this is the Warburg-to-oxidative metabolic switch observed experimentally in fed-batch CHO cultures.


Methods note: S matrix sign convention

The most non-obvious aspect of the reconstruction is the stoichiometric matrix in ST2. All fi_* symbolic entries (referencing compositions defined elsewhere) are substrate coefficients and must be negated when building the COBRApy stoichiometry. Only the literal numeric values for Biomass (+1) and IgG (+1) remain positive (they are products). This is verified by comparing the F90 reaction string in ST1 (all amino acids appear before the --> arrow, confirming they are substrates) against the positive values stored in the S matrix.


Author

Emiliano Balderas Ramírez Bioengineer · PhD Candidate in Biochemical Sciences Instituto de Biotecnología (IBt), UNAM

LinkedIn Email


Related

cho-secretory-energy-model — energy cost analysis of secretory protein production in CHO cells using iCHOv1, iCHO2048s, and CHOmpact.

Clonalyzer-2 — browser-based kinetics analysis for CHO fed-batch cultures.


CHOmpact-Unchained — supplementary tables → FBA-ready model.

About

COBRApy JSON reconstruction of CHOmpact — a reduced metabolic model of CHO cells with IgG product quality outputs (Jiménez del Val et al. 2023).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages