{
 "id": "epnfe23na7",
 "slug": "flux-balance-analysis",
 "title": "Flux balance analysis",
 "updated": "2026-10-15",
 "topic_path": [
  {
   "id": "life",
   "label": "Life and health",
   "api_url": "https://www.edgepedia.org/api/v1/topics/life"
  },
  {
   "id": "life.biology",
   "label": "Biological foundations",
   "api_url": "https://www.edgepedia.org/api/v1/topics/life.biology"
  },
  {
   "id": "life.biology.biochemistry",
   "label": "Biochemistry and metabolism",
   "api_url": "https://www.edgepedia.org/api/v1/topics/life.biology.biochemistry"
  },
  {
   "id": "life.biology.biochemistry.practice",
   "label": "Biochemistry field and methods",
   "api_url": "https://www.edgepedia.org/api/v1/topics/life.biology.biochemistry.practice"
  }
 ],
 "geo": [
  {
   "id": "geo.nongeo.t1946.life.biology.biochemistry.practice",
   "label": "Non-geographic · 1946 to 2000: Biochemistry field and methods",
   "api_url": "https://www.edgepedia.org/api/v1/geo/geo.nongeo.t1946.life.biology.biochemistry.practice",
   "path": [
    {
     "id": "geo.nongeo",
     "label": "Non-geographic",
     "api_url": "https://www.edgepedia.org/api/v1/geo/geo.nongeo"
    },
    {
     "id": "geo.nongeo.t1946",
     "label": "Non-geographic · 1946 to 2000",
     "api_url": "https://www.edgepedia.org/api/v1/geo/geo.nongeo.t1946"
    },
    {
     "id": "geo.nongeo.t1946.life",
     "label": "Life and health",
     "api_url": "https://www.edgepedia.org/api/v1/geo/geo.nongeo.t1946.life"
    },
    {
     "id": "geo.nongeo.t1946.life.biology",
     "label": "Biological foundations",
     "api_url": "https://www.edgepedia.org/api/v1/geo/geo.nongeo.t1946.life.biology"
    },
    {
     "id": "geo.nongeo.t1946.life.biology.biochemistry",
     "label": "Biochemistry and metabolism",
     "api_url": "https://www.edgepedia.org/api/v1/geo/geo.nongeo.t1946.life.biology.biochemistry"
    },
    {
     "id": "geo.nongeo.t1946.life.biology.biochemistry.practice",
     "label": "Biochemistry field and methods",
     "api_url": "https://www.edgepedia.org/api/v1/geo/geo.nongeo.t1946.life.biology.biochemistry.practice"
    }
   ]
  }
 ],
 "excerpt": "Flux balance analysis (FBA) is an optimization method using linear programming on genome-scale metabolic networks to predict reaction fluxes, growth rates, and knockout phenotypes without kinetic parameters.",
 "snippet": "Flux balance analysis (FBA) is an optimization method using linear programming on genome-scale metabolic networks to predict reaction fluxes, growth rates, and knockout phenotypes without kinetic parameters.",
 "node": "life.biology.biochemistry.practice",
 "markdown": "# Flux balance analysis\n\nFlux balance analysis (FBA) is a constraint-based optimization method that uses linear programming on a genome-scale metabolic network model to predict reaction fluxes, growth rates, and knockout phenotypes without kinetic parameters. It computes the flow of metabolites through a metabolic network and can predict an organism's growth rate, uptake rates, knockout lethality, and product secretion rates.<sup>[1](https://opencobra.github.io/cobratoolbox/stable/tutorials/analysis/FBA_variants/tutorial_FBA_variants.html)</sup> Because it requires only reaction stoichiometry, metabolic growth requirements, and a few strain-specific parameters, it works where kinetic modeling is impractical.<sup>[2](https://doi.org/10.1038/nbt1094-994)</sup> Its best-studied application is [Escherichia coli](https://www.edgepedia.org/escherichia-coli), where a genome-scale implementation appeared in 2000.<sup>[3](https://doi.org/10.1073/pnas.97.10.5528)</sup>\n\n| Key fact | Value |\n|---|---|\n| Core constraint | Steady-state mass balance \\( S \\cdot v = 0 \\), with upper and lower bounds on each flux<sup>[4](https://doi.org/10.1038/nbt.1614)</sup> |\n| Objective | Maximize \\( Z \\), typically the biomass reaction<sup>[4](https://doi.org/10.1038/nbt.1614)</sup> |\n| Example output | E. coli core model on 18.5 mmol gDW⁻¹ hr⁻¹ glucose predicts 1.6531 hr⁻¹ aerobic growth, 0.4706 hr⁻¹ anaerobic<sup>[5](https://opencobra.github.io/cobratoolbox/stable/tutorials/analysis/FBA/tutorial_FBA.html)</sup> |\n| Reference E. coli model | iJO1366: 1366 genes, 2251 metabolic reactions, 1136 unique metabolites<sup>[6](https://doi.org/10.1038/msb.2011.65)</sup> |\n| Knockout prediction accuracy | 86% in the 2000 genome-scale study<sup>[3](https://doi.org/10.1073/pnas.97.10.5528)</sup>; 95.2% for EcoCyc–18.0–GEM<sup>[7](https://bmcsystbiol.biomedcentral.com/counter/pdf/10.1186/1752-0509-8-79.pdf)</sup> |\n| Solve time | Commonly under one second for a medium-sized genome-scale model<sup>[1](https://opencobra.github.io/cobratoolbox/stable/tutorials/analysis/FBA_variants/tutorial_FBA_variants.html)</sup> |\n| Main limitation | Steady state only; no metabolite concentrations, no regulatory effects<sup>[4](https://doi.org/10.1038/nbt.1614)</sup> |\n\n## How it works\n\nThe mathematical core is a stoichiometric matrix \\( S \\) of size \\( m \\times n \\), with one row per metabolite and one column per reaction, whose entries are [stoichiometric coefficients](https://www.edgepedia.org/stoichiometric-coefficient). At steady state, each internal metabolite is consumed at the same rate it is produced, where \\( v \\) is the flux vector.<sup>[4](https://doi.org/10.1038/nbt.1614)</sup> This steady-state assumption is what allows FBA to run without any kinetic information.<sup>[8](https://www.frontiersin.org/journals/microbiology/articles/10.3389/fmicb.2016.00907/full)</sup>\n\nBecause genome-scale systems have more unknown fluxes than metabolites, the linear system is underdetermined; the [Citrobacter](https://www.edgepedia.org/citrobacter) example model has 1,399 reactions and 1,301 compounds.<sup>[8](https://www.frontiersin.org/journals/microbiology/articles/10.3389/fmicb.2016.00907/full)</sup> FBA reduces the resulting solution space with capacity constraints (reversibility, experimental uptake rates) and an objective function \\( Z = c^{T} \\cdot v \\), a linear combination of fluxes where \\( c \\) is typically a vector of zeros with a one at the biomass reaction.<sup>[4](https://doi.org/10.1038/nbt.1614)</sup><sup> • </sup><sup>[9](https://royalsocietypublishing.org/rsif/article/13/124/20160627/35657/Constraint-based-stoichiometric-modelling-from)</sup> The optimal objective value is unique, but the optimal flux vector usually is not.<sup>[5](https://opencobra.github.io/cobratoolbox/stable/tutorials/analysis/FBA/tutorial_FBA.html)</sup>\n\n## How it is done\n\nA typical workflow in the COBRA Toolbox loads a model with readCbModel, sets medium constraints with changeRxnBounds (for example, a glucose uptake lower bound of −18.5 mmol gDW⁻¹ hr⁻¹), sets the objective with changeObjective, and solves with optimizeCbModel.<sup>[5](https://opencobra.github.io/cobratoolbox/stable/tutorials/analysis/FBA/tutorial_FBA.html)</sup> In COBRApy, Model.optimize() returns a Solution object with objective_value, the solver status, a flux series indexed by reaction, and shadow_prices indexed by metabolite.<sup>[10](https://cobrapy.readthedocs.io/en/latest/simulating.html)</sup>\n\nThe objective is generally a biomass function describing cell composition, dominated by ATP consumption, and is typically maximized; a positive flux through the biomass reaction generally indicates predicted growth and a value near zero indicates no growth.<sup>[8](https://www.frontiersin.org/journals/microbiology/articles/10.3389/fmicb.2016.00907/full)</sup><sup> • </sup><sup>[28](https://pmc.ncbi.nlm.nih.gov/articles/PMC3108565/)</sup> Shadow prices, the linear-programming dual variables, are used to demarcate phenotype phase planes in which optimal growth is plotted against two nutrient uptake fluxes.<sup>[11](https://arep.med.harvard.edu/pdf/Edwards01.pdf)</sup> Solver status codes flag failure modes: status 0 means the problem is overconstrained and no feasible flux vector exists, status 2 means it is underconstrained with an unbounded objective.<sup>[5](https://opencobra.github.io/cobratoolbox/stable/tutorials/analysis/FBA/tutorial_FBA.html)</sup>\n\n## Origin\n\nVarma and Palsson reported metabolic flux balancing in \"Metabolic Flux Balancing: Basic Concepts, Scientific and Practical Use\" ([Nature Biotechnology](https://www.edgepedia.org/nature-biotechnology), 1994)<sup>[2](https://doi.org/10.1038/nbt1094-994)</sup>, and in the same year showed that stoichiometric flux balance models quantitatively predict growth and by-product secretion in wild-type E. coli W3110.<sup>[12](https://doi.org/10.1128/aem.60.10.3724-3731.1994)</sup> The approach built on earlier stoichiometric analyses applied to subsets of hybridoma, yeast, and E. coli metabolism, including work predicting acetate secretion during growth of E. coli on glucose.<sup>[13](https://www.emsl.pnnl.gov/sites/default/files/2021-06/3.2.Borkum_SuppMaterials_Pramanik1997.pdf)</sup> A 2016 review states the foundations of classical FBA were developed in the 1980s.<sup>[9](https://royalsocietypublishing.org/rsif/article/13/124/20160627/35657/Constraint-based-stoichiometric-modelling-from)</sup>\n\nEdwards and Palsson's 2000 paper reconstructed the E. coli MG1655 metabolic map from the annotated genome sequence and biochemical information into a genome-specific stoichiometric matrix, a genome-scale FBA implementation.<sup>[3](https://doi.org/10.1073/pnas.97.10.5528)</sup> A 2002 review describes the resulting metabolic genotype as 695 genes encoding metabolic enzymes, catalyzing 720 internal reactions and transport processes on 436 internal metabolites.\n\n## Variants\n\nSeveral named variants address the non-uniqueness or the static nature of the FBA solution:\n\n- **pFBA** (parsimonious FBA) first solves FBA for the optimal objective, then solves a second linear program minimizing total flux through all reactions.<sup>[1](https://opencobra.github.io/cobratoolbox/stable/tutorials/analysis/FBA_variants/tutorial_FBA_variants.html)</sup>\n- **MOMA** (minimization of metabolic adjustment), reported by Segrè, Vitkup, and Church in 2002, predicts post-perturbation fluxes by minimizing the metabolic adjustment relative to the wild state.<sup>[14](https://doi.org/10.1073/pnas.232349399)</sup>\n- **ROOM** (regulatory on/off minimization), reported by Shlomi, Berkman, and Ruppin in 2005, minimizes the number of significant flux changes using mixed integer linear programming; MOMA better predicts initial transient growth rates, while ROOM and FBA better predict final steady-state growth.<sup>[15](https://doi.org/10.1073/pnas.0406346102)</sup>\n- **[Flux](https://www.edgepedia.org/flux-metabolism) variability analysis (FVA)**, reported by Mahadevan and Schilling in 2003, finds the range each flux can take at the optimum.<sup>[16](https://doi.org/10.1016/j.ymben.2003.09.002)</sup><sup> • </sup><sup>[10](https://cobrapy.readthedocs.io/en/latest/simulating.html)</sup>\n- **Dynamic FBA**, reported by Mahadevan, Edwards, and Doyle in 2002, combines dynamic optimization with static LP to capture diauxic growth.<sup>[17](https://doi.org/10.1016/s0006-3495%2802%2973903-9)</sup>\n- Alternate optimal solutions can also be enumerated by recursive mixed integer linear programming, as in the 2000 model of Lee, Phalakornkule, Domach, and Grossmann.<sup>[18](https://doi.org/10.1016/s0098-1354%2800%2900323-9)</sup>\n- **Enzyme-constrained FBA** extends \\( S \\) with protein pseudo-metabolites and exchange reactions, yielding an LP of the same time complexity as FBA but with a smaller solution space.<sup>[19](https://journals.asm.org/doi/10.1128/spectrum.01705-23)</sup> The GECKO approach of Sánchez and colleagues (2017) added enzymatic constraints to a yeast genome-scale model.<sup>[20](https://doi.org/10.15252/msb.20167411)</sup> The ETFL formulation of Salvy and Hatzimanikatis couples metabolism and expression under thermodynamic compliance.<sup>[21](https://doi.org/10.1038/s41467-019-13818-7)</sup> Thermodynamic constraints in constraint-based analysis were addressed in the 2002 energy-balance work of Beard, Liang, and Qian.<sup>[22](https://doi.org/10.1016/s0006-3495%2802%2975150-3)</sup>\n\n## Applications\n\nGenome-scale E. coli models are the reference applications. iJO1366 accounts for 1366 genes, 2251 metabolic reactions, and 1136 unique metabolites<sup>[6](https://doi.org/10.1038/msb.2011.65)</sup>; EcoCyc–18.0–GEM encompasses 1445 genes, 2286 unique reactions, and 1453 unique metabolites.<sup>[7](https://bmcsystbiol.biomedcentral.com/counter/pdf/10.1186/1752-0509-8-79.pdf)</sup> FBA predicts aerobic versus anaerobic phenotypes: on the E. coli core model, removing oxygen drops the predicted growth rate from 1.6531 to 0.4706 hr⁻¹ with acetate, formate, and ethanol secreted by fermentation pathways.<sup>[5](https://opencobra.github.io/cobratoolbox/stable/tutorials/analysis/FBA/tutorial_FBA.html)</sup> Other uses include simulating growth on different media, gap-filling incomplete reconstructions, and metabolic engineering with algorithms such as OptKnock that predict knockouts for producing desirable compounds.<sup>[4](https://doi.org/10.1038/nbt.1614)</sup> In community FBA (cFBA), all organisms must grow at the same community growth rate, which serves as the objective and allows prediction of species abundance ratios.<sup>[9](https://royalsocietypublishing.org/rsif/article/13/124/20160627/35657/Constraint-based-stoichiometric-modelling-from)</sup>\n\nOn performance, standard FBA solves in under a second for a medium-sized genome-scale model<sup>[1](https://opencobra.github.io/cobratoolbox/stable/tutorials/analysis/FBA_variants/tutorial_FBA_variants.html)</sup>, but the optimal space can be enormous: CoPE-FBA 2.0 enumerated 120,932,352 vertices for E. coli aerobic growth on iAF1260 within 15 minutes on an ordinary computer.<sup>[23](https://journals.plos.org/ploscompbiol/article?id=10.1371%2Fjournal.pcbi.1004166)</sup>\n\n## Limitations and alternatives\n\nFBA cannot predict metabolite concentrations, is limited to steady state, and does not account for regulatory effects such as enzyme activation by protein kinases.<sup>[4](https://doi.org/10.1038/nbt.1614)</sup> It strictly applies only to cell populations in balanced growth, such as exponential-phase batch culture or chemostat.<sup>[9](https://royalsocietypublishing.org/rsif/article/13/124/20160627/35657/Constraint-based-stoichiometric-modelling-from)</sup> More than one solution can lead to the same optimal growth rate, and all genome-scale reconstructions contain knowledge gaps where reactions are missing.<sup>[4](https://doi.org/10.1038/nbt.1614)</sup> Objective function selection is a key determinant of the predicted flux map, and alternative objectives should be validated against experimental data.<sup>[24](https://par.nsf.gov/servlets/purl/10515257)</sup> Medium settings can make the problem infeasible: on succinate anaerobically, maximal ATP falls below the 8.39 mmol gDW⁻¹ hr⁻¹ ATP maintenance bound, so no feasible solution exists.<sup>[5](https://opencobra.github.io/cobratoolbox/stable/tutorials/analysis/FBA/tutorial_FBA.html)</sup>\n\nThe 13C metabolic flux analysis approach shares the steady-state assumption but uses isotopic labeling data to identify a particular solution within the solution space by minimizing differences between measured and estimated mass isotopomer distributions.<sup>[24](https://par.nsf.gov/servlets/purl/10515257)</sup> 13C-MFA allows precise determination of metabolic status under a particular growth condition by tracing a 13C carbon source through the network.<sup>[25](https://pmc.ncbi.nlm.nih.gov/articles/PMC3022177/)</sup> In head-to-head validation, neither the constraint-based nor the kinetic modeling approach outperformed the other across all tested scenarios.<sup>[26](https://aiche.onlinelibrary.wiley.com/doi/10.1002/btpr.2700)</sup> FBA limitations have been addressed by dynamic extensions, integration of regulatory networks and transcript, protein, and metabolite data, and enzyme-constraint techniques.<sup>[27](https://www.sciencedirect.com/science/article/pii/S2001037021003354)</sup>\n\n## References\n\n1. [The COBRA Toolbox tutorial: FBA and its variants](https://opencobra.github.io/cobratoolbox/stable/tutorials/analysis/FBA_variants/tutorial_FBA_variants.html)\n2. [Amit Varma, Bernhard O. Palsson (1994). Metabolic Flux Balancing: Basic Concepts, Scientific and Practical Use. Nature Biotechnology.](https://doi.org/10.1038/nbt1094-994)\n3. [J. S. Edwards, B. O. Palsson (2000). The Escherichia coli MG1655 in silico metabolic genotype: Its definition, characteristics, and capabilities. Proceedings of the National Academy of Sciences.](https://doi.org/10.1073/pnas.97.10.5528)\n4. [Jeffrey D Orth, Ines Thiele, Bernhard Ø Palsson (2010). What is flux balance analysis?. Nature Biotechnology.](https://doi.org/10.1038/nbt.1614)\n5. [The COBRA Toolbox tutorial: Flux Balance Analysis](https://opencobra.github.io/cobratoolbox/stable/tutorials/analysis/FBA/tutorial_FBA.html)\n6. [Jeffrey D Orth and colleagues (2011). A comprehensive genome‐scale reconstruction of Escherichia coli metabolism, 2011. Molecular Systems Biology.](https://doi.org/10.1038/msb.2011.65)\n7. [EcoCyc–18.0–GEM: genome-scale model of E. coli K-12 MG1655](https://bmcsystbiol.biomedcentral.com/counter/pdf/10.1186/1752-0509-8-79.pdf)\n8. [From DNA to FBA: How to Build Your Own Genome-Scale Metabolic Model (Frontiers in Microbiology 2016)](https://www.frontiersin.org/journals/microbiology/articles/10.3389/fmicb.2016.00907/full)\n9. [Constraint-based stoichiometric modelling from single organisms to microbial communities (J. R. Soc. Interface 2016)](https://royalsocietypublishing.org/rsif/article/13/124/20160627/35657/Constraint-based-stoichiometric-modelling-from)\n10. [Simulating with FBA (COBRApy documentation)](https://cobrapy.readthedocs.io/en/latest/simulating.html)\n11. [In silico predictions of Escherichia coli metabolic capabilities are consistent with experimental data](https://arep.med.harvard.edu/pdf/Edwards01.pdf)\n12. [A Varma, B O Palsson (1994). Stoichiometric flux balance models quantitatively predict growth and metabolic by-product secretion in wild-type Escherichia coli W3110. Applied and Environmental Microbiology.](https://doi.org/10.1128/aem.60.10.3724-3731.1994)\n13. [Stoichiometric model of Escherichia coli metabolism: Incorporation of growth-rate dependent biomass composition and mechanistic energy requirements](https://www.emsl.pnnl.gov/sites/default/files/2021-06/3.2.Borkum_SuppMaterials_Pramanik1997.pdf)\n14. [Daniel Segrè, Dennis Vitkup, George M. Church (2002). Analysis of optimality in natural and perturbed metabolic networks. Proceedings of the National Academy of Sciences.](https://doi.org/10.1073/pnas.232349399)\n15. [Tomer Shlomi, Omer Berkman, Eytan Ruppin (2005). Regulatory on/off minimization of metabolic flux changes after genetic perturbations. Proceedings of the National Academy of Sciences.](https://doi.org/10.1073/pnas.0406346102)\n16. [R. Mahadevan, C.H. Schilling (2003). The effects of alternate optimal solutions in constraint-based genome-scale metabolic models. Metabolic Engineering.](https://doi.org/10.1016/j.ymben.2003.09.002)\n17. [Dynamic Flux Balance Analysis of Diauxic Growth in Escherichia coli (Biophysical Journal, 2002)](https://doi.org/10.1016/s0006-3495%2802%2973903-9)\n18. [Recursive MILP model for finding all the alternate optima in LP models for metabolic networks (Computers & Chemical Engineering, 2000)](https://doi.org/10.1016/s0098-1354%2800%2900323-9)\n19. [Simultaneous application of enzyme and thermodynamic constraints to metabolic models using an updated Python implementation of GECKO (geckopy 3.0)](https://journals.asm.org/doi/10.1128/spectrum.01705-23)\n20. [Benjamín J Sánchez and colleagues (2017). Improving the phenotype predictions of a yeast genome‐scale metabolic model by incorporating enzymatic constraints. Molecular Systems Biology.](https://doi.org/10.15252/msb.20167411)\n21. [Pierre Salvy, Vassily Hatzimanikatis (2020). The ETFL formulation allows multi-omics integration in thermodynamics-compliant metabolism and expression models. Nature Communications.](https://doi.org/10.1038/s41467-019-13818-7)\n22. [Energy Balance for Analysis of Complex Metabolic Networks (Biophysical Journal, 2002)](https://doi.org/10.1016/s0006-3495%2802%2975150-3)\n23. [Interplay between Constraints, Objectives, and Optimality for Genome-Scale Stoichiometric Models (CoPE-FBA 2.0)](https://journals.plos.org/ploscompbiol/article?id=10.1371%2Fjournal.pcbi.1004166)\n24. [Model validation and selection in metabolic flux analysis and flux balance analysis](https://par.nsf.gov/servlets/purl/10515257)\n25. [Bridging the Gap between Fluxomics and Industrial Biotechnology](https://pmc.ncbi.nlm.nih.gov/articles/PMC3022177/)\n26. [Assessing Escherichia coli metabolism models and simulation approaches in phenotype predictions: Validation against experimental data](https://aiche.onlinelibrary.wiley.com/doi/10.1002/btpr.2700)\n27. [Advances in flux balance analysis by integrating machine learning and mechanism-based models](https://www.sciencedirect.com/science/article/pii/S2001037021003354)\n28. [pmc.ncbi.nlm.nih.gov](https://pmc.ncbi.nlm.nih.gov/articles/PMC3108565/)\n\n---\n*Topic: Encyclopedia › Life and health › Biological foundations › Biochemistry and metabolism › Biochemistry field and methods*\n\n*Initially written Sep 29, 2026 · Edited: Oct 15, 2026*\n\n*Copyright 2026 EdgeChat AI, a subsidiary of Biostate AI.*\n\nLicense: Edgepedia Community License 1.0, https://www.edgepedia.org/edgepedia/license\n",
 "same_as": [],
 "url": "https://www.edgepedia.org/flux-balance-analysis",
 "markdown_url": "https://www.edgepedia.org/flux-balance-analysis.md",
 "license": {
  "name": "Edgepedia Community License 1.0",
  "url": "https://www.edgepedia.org/edgepedia/license",
  "summary": "Free with credit, commercial use included. AI training is open to everyone. For other uses, organizations over USD 100M in revenue or 100M monthly users license separately.",
  "spdx": "LicenseRef-Edgepedia-Community-1.0"
 },
 "credit": "\"Flux balance analysis\", Edgepedia (EdgeChat), https://www.edgepedia.org/flux-balance-analysis. Edgepedia Community License 1.0.",
 "credit_md": "\"[Flux balance analysis](https://www.edgepedia.org/flux-balance-analysis)\", Edgepedia (EdgeChat), [https://www.edgepedia.org/flux-balance-analysis](https://www.edgepedia.org/flux-balance-analysis). [Edgepedia Community License 1.0](https://www.edgepedia.org/edgepedia/license).",
 "credit_html": "\"<a href=\"https://www.edgepedia.org/flux-balance-analysis\">Flux balance analysis</a>\", Edgepedia (EdgeChat), <a href=\"https://www.edgepedia.org/flux-balance-analysis\">https://www.edgepedia.org/flux-balance-analysis</a>. <a href=\"https://www.edgepedia.org/edgepedia/license\">Edgepedia Community License 1.0</a>.",
 "speakable": "Flux balance analysis is an optimization method using linear programming on genome-scale metabolic networks to predict reaction fluxes, growth rates, and knockout phenotypes without kinetic parameters."
}
