diff --git a/dev/advanced/1_modifications/index.html b/dev/advanced/1_modifications/index.html index 6b82a2f567d77b141f97f6bdcc9f08460177baf5..4913db25a321ce45b086139a5b5224f037d70e4c 100644 --- a/dev/advanced/1_modifications/index.html +++ b/dev/advanced/1_modifications/index.html @@ -1,2 +1,2 @@ <!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Screening with modifications · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="../.."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../../assets/documenter.js"></script><script src="../../siteinfo.js"></script><script src="../../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../../assets/themeswap.js"></script><link href="../../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../../"><img class="docs-light-only" src="../../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../../">Home</a></li><li><a class="tocitem" href="../../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../../functions/">Function reference</a></li><li><a class="tocitem" href="../../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Screening with modifications</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Screening with modifications</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/advanced/1_modifications.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Screening-with-modifications"><a class="docs-heading-anchor" href="#Screening-with-modifications">Screening with modifications</a><a id="Screening-with-modifications-1"></a><a class="docs-heading-anchor-permalink" href="#Screening-with-modifications" title="Permalink"></a></h1></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Screening with modifications · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="../.."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../../assets/documenter.js"></script><script src="../../siteinfo.js"></script><script src="../../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../../assets/themeswap.js"></script><link href="../../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../../"><img class="docs-light-only" src="../../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../../">Home</a></li><li><a class="tocitem" href="../../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../../functions/">Function reference</a></li><li><a class="tocitem" href="../../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Screening with modifications</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Screening with modifications</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/advanced/1_modifications.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Screening-with-modifications"><a class="docs-heading-anchor" href="#Screening-with-modifications">Screening with modifications</a><a id="Screening-with-modifications-1"></a><a class="docs-heading-anchor-permalink" href="#Screening-with-modifications" title="Permalink"></a></h1></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/advanced/2_custom_model/index.html b/dev/advanced/2_custom_model/index.html index e10a5267d3285bf1c9f12ab3582aa952a90670d4..cb54a84f5a1eb59abd38a462aaae03dedfc8e1e9 100644 --- a/dev/advanced/2_custom_model/index.html +++ b/dev/advanced/2_custom_model/index.html @@ -1,2 +1,2 @@ <!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Custom models · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="../.."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../../assets/documenter.js"></script><script src="../../siteinfo.js"></script><script src="../../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../../assets/themeswap.js"></script><link href="../../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../../"><img class="docs-light-only" src="../../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../../">Home</a></li><li><a class="tocitem" href="../../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../../functions/">Function reference</a></li><li><a class="tocitem" href="../../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Custom models</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Custom models</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/advanced/2_custom_model.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Custom-models"><a class="docs-heading-anchor" href="#Custom-models">Custom models</a><a id="Custom-models-1"></a><a class="docs-heading-anchor-permalink" href="#Custom-models" title="Permalink"></a></h1></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Custom models · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="../.."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../../assets/documenter.js"></script><script src="../../siteinfo.js"></script><script src="../../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../../assets/themeswap.js"></script><link href="../../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../../"><img class="docs-light-only" src="../../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../../">Home</a></li><li><a class="tocitem" href="../../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../../functions/">Function reference</a></li><li><a class="tocitem" href="../../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Custom models</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Custom models</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/advanced/2_custom_model.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Custom-models"><a class="docs-heading-anchor" href="#Custom-models">Custom models</a><a id="Custom-models-1"></a><a class="docs-heading-anchor-permalink" href="#Custom-models" title="Permalink"></a></h1></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/advanced/3_custom_models_on_hpc/index.html b/dev/advanced/3_custom_models_on_hpc/index.html index ebd2ccc3d26bbfa0e1f252e88aa0eb5a154cb0f9..a0de04e0419f03eb8399f792bd06d852d6553884 100644 --- a/dev/advanced/3_custom_models_on_hpc/index.html +++ b/dev/advanced/3_custom_models_on_hpc/index.html @@ -1,2 +1,2 @@ <!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Using customized models on HPC · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="../.."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../../assets/documenter.js"></script><script src="../../siteinfo.js"></script><script src="../../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../../assets/themeswap.js"></script><link href="../../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../../"><img class="docs-light-only" src="../../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../../">Home</a></li><li><a class="tocitem" href="../../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../../functions/">Function reference</a></li><li><a class="tocitem" href="../../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Using customized models on HPC</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Using customized models on HPC</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/advanced/3_custom_models_on_hpc.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Using-customized-models-on-HPC"><a class="docs-heading-anchor" href="#Using-customized-models-on-HPC">Using customized models on HPC</a><a id="Using-customized-models-on-HPC-1"></a><a class="docs-heading-anchor-permalink" href="#Using-customized-models-on-HPC" title="Permalink"></a></h1></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Using customized models on HPC · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="../.."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../../assets/documenter.js"></script><script src="../../siteinfo.js"></script><script src="../../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../../assets/themeswap.js"></script><link href="../../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../../"><img class="docs-light-only" src="../../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../../">Home</a></li><li><a class="tocitem" href="../../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../../functions/">Function reference</a></li><li><a class="tocitem" href="../../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Using customized models on HPC</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Using customized models on HPC</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/advanced/3_custom_models_on_hpc.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Using-customized-models-on-HPC"><a class="docs-heading-anchor" href="#Using-customized-models-on-HPC">Using customized models on HPC</a><a id="Using-customized-models-on-HPC-1"></a><a class="docs-heading-anchor-permalink" href="#Using-customized-models-on-HPC" title="Permalink"></a></h1></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/advanced/4_advanced_screening/index.html b/dev/advanced/4_advanced_screening/index.html index 775cba0c9675a8397f10ac3cfe1fe6c39e65d608..91975d5dd50c376f78ac54f16734b30f96a8112c 100644 --- a/dev/advanced/4_advanced_screening/index.html +++ b/dev/advanced/4_advanced_screening/index.html @@ -1,2 +1,2 @@ <!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Advanced model screening · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="../.."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../../assets/documenter.js"></script><script src="../../siteinfo.js"></script><script src="../../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../../assets/themeswap.js"></script><link href="../../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../../"><img class="docs-light-only" src="../../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../../">Home</a></li><li><a class="tocitem" href="../../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../../functions/">Function reference</a></li><li><a class="tocitem" href="../../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Advanced model screening</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Advanced model screening</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/advanced/4_advanced_screening.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Advanced-model-screening"><a class="docs-heading-anchor" href="#Advanced-model-screening">Advanced model screening</a><a id="Advanced-model-screening-1"></a><a class="docs-heading-anchor-permalink" href="#Advanced-model-screening" title="Permalink"></a></h1><h2 id="Example:-Gene-knockouts"><a class="docs-heading-anchor" href="#Example:-Gene-knockouts">Example: Gene knockouts</a><a id="Example:-Gene-knockouts-1"></a><a class="docs-heading-anchor-permalink" href="#Example:-Gene-knockouts" title="Permalink"></a></h2></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Advanced model screening · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="../.."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../../assets/documenter.js"></script><script src="../../siteinfo.js"></script><script src="../../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../../assets/themeswap.js"></script><link href="../../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../../"><img class="docs-light-only" src="../../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../../">Home</a></li><li><a class="tocitem" href="../../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../../functions/">Function reference</a></li><li><a class="tocitem" href="../../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Advanced model screening</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Advanced model screening</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/advanced/4_advanced_screening.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Advanced-model-screening"><a class="docs-heading-anchor" href="#Advanced-model-screening">Advanced model screening</a><a id="Advanced-model-screening-1"></a><a class="docs-heading-anchor-permalink" href="#Advanced-model-screening" title="Permalink"></a></h1><h2 id="Example:-Gene-knockouts"><a class="docs-heading-anchor" href="#Example:-Gene-knockouts">Example: Gene knockouts</a><a id="Example:-Gene-knockouts-1"></a><a class="docs-heading-anchor-permalink" href="#Example:-Gene-knockouts" title="Permalink"></a></h2></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/advanced/5_debugging/index.html b/dev/advanced/5_debugging/index.html index ff9346ec62313601be8a0ada6b702a9b49c0c053..6c9374ecac1e5e3688d37aa1ddb36d4b0f40b444 100644 --- a/dev/advanced/5_debugging/index.html +++ b/dev/advanced/5_debugging/index.html @@ -1,2 +1,2 @@ <!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Tracing and debugging · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="../.."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../../assets/documenter.js"></script><script src="../../siteinfo.js"></script><script src="../../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../../assets/themeswap.js"></script><link href="../../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../../"><img class="docs-light-only" src="../../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../../">Home</a></li><li><a class="tocitem" href="../../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../../functions/">Function reference</a></li><li><a class="tocitem" href="../../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Tracing and debugging</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Tracing and debugging</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/advanced/5_debugging.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Tracing-and-debugging"><a class="docs-heading-anchor" href="#Tracing-and-debugging">Tracing and debugging</a><a id="Tracing-and-debugging-1"></a><a class="docs-heading-anchor-permalink" href="#Tracing-and-debugging" title="Permalink"></a></h1></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Tracing and debugging · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="../.."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../../assets/documenter.js"></script><script src="../../siteinfo.js"></script><script src="../../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../../assets/themeswap.js"></script><link href="../../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../../"><img class="docs-light-only" src="../../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../../">Home</a></li><li><a class="tocitem" href="../../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../../functions/">Function reference</a></li><li><a class="tocitem" href="../../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Tracing and debugging</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Tracing and debugging</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/advanced/5_debugging.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Tracing-and-debugging"><a class="docs-heading-anchor" href="#Tracing-and-debugging">Tracing and debugging</a><a id="Tracing-and-debugging-1"></a><a class="docs-heading-anchor-permalink" href="#Tracing-and-debugging" title="Permalink"></a></h1></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/assets/output.gif.REMOVED.git-id b/dev/assets/output.gif.REMOVED.git-id index 76ca4a31afda2b5706ca3bc9461e2548d877810c..778d3e098d4478754a46cd990970c4ca66d845b9 100644 --- a/dev/assets/output.gif.REMOVED.git-id +++ b/dev/assets/output.gif.REMOVED.git-id @@ -1 +1 @@ -9072adfddf1441f48e16fbf596f5c186f6c0c815 \ No newline at end of file +d7b79d07466f31804771a18f256ac9306270b243 \ No newline at end of file diff --git a/dev/functions/index.html b/dev/functions/index.html index 4f790656bada4f8efe16eb0afadc28a517a81f2b..f55da290a4d7a8f930b459ef3a977354241a9251 100644 --- a/dev/functions/index.html +++ b/dev/functions/index.html @@ -1,23 +1,23 @@ <!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Function reference · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script><link href="../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../"><img class="docs-light-only" src="../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li><a class="tocitem" href="../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../notebooks/">Examples and notebooks</a></li><li class="is-active"><a class="tocitem" href>Function reference</a><ul class="internal"><li><a class="tocitem" href="#Base-Types"><span>Base Types</span></a></li><li><a class="tocitem" href="#Model-types-and-contents"><span>Model types and contents</span></a></li><li><a class="tocitem" href="#Base-functions"><span>Base functions</span></a></li><li><a class="tocitem" href="#File-I/O-and-serialization"><span>File I/O and serialization</span></a></li><li><a class="tocitem" href="#Model-reconstruction"><span>Model reconstruction</span></a></li><li><a class="tocitem" href="#Analysis-functions"><span>Analysis functions</span></a></li><li><a class="tocitem" href="#Miscellaneous-utilities"><span>Miscellaneous utilities</span></a></li></ul></li><li><a class="tocitem" href="../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Function reference</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Function reference</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/functions.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Functions"><a class="docs-heading-anchor" href="#Functions">Functions</a><a id="Functions-1"></a><a class="docs-heading-anchor-permalink" href="#Functions" title="Permalink"></a></h1><h2 id="Base-Types"><a class="docs-heading-anchor" href="#Base-Types">Base Types</a><a id="Base-Types-1"></a><a class="docs-heading-anchor-permalink" href="#Base-Types" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="COBREXA.Maybe" href="#COBREXA.Maybe"><code>COBREXA.Maybe</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">Maybe{T} = Union{Nothing, T}</code></pre><p>A nice name for "nullable" type.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/Maybe.jl#L2-L6">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._default-Union{Tuple{T}, Tuple{T, Union{Nothing, T}}} where T" href="#COBREXA._default-Union{Tuple{T}, Tuple{T, Union{Nothing, T}}} where T"><code>COBREXA._default</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_default(d::T, x::Maybe{T})::T where {T}</code></pre><p>Fold the <code>Maybe{T}</code> down to <code>T</code> by defaulting.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/Maybe.jl#L9-L13">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._maybemap-Tuple{Any, Union{Nothing, T} where T}" href="#COBREXA._maybemap-Tuple{Any, Union{Nothing, T} where T}"><code>COBREXA._maybemap</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_maybemap(f, x::Maybe)::Maybe</code></pre><p>Apply a function to <code>x</code> only if it is not <code>nothing</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/Maybe.jl#L18-L22">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.Annotations" href="#COBREXA.Annotations"><code>COBREXA.Annotations</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">Annotations = Dict{String,Vector{String}}</code></pre><p>Dictionary used to store (possible multiple) standardized annotations of something, such as a <a href="#COBREXA.Metabolite"><code>Metabolite</code></a> and a <a href="#COBREXA.Reaction"><code>Reaction</code></a>.</p><p><strong>Example</strong></p><pre><code class="language-none">Annotations("PubChem" => ["CID12345", "CID54321"])</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L39-L49">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.GeneAssociation" href="#COBREXA.GeneAssociation"><code>COBREXA.GeneAssociation</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">GeneAssociation = Vector{Vector{String}}</code></pre><p>An association to genes, represented as a logical formula in a positive disjunctive normal form (DNF). (The 2nd-level vectors of strings are connected by "and" to form conjunctions, and the 1st-level vectors of these conjunctions are connected by "or" to form the DNF.)</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L22-L29">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.MetabolicModel" href="#COBREXA.MetabolicModel"><code>COBREXA.MetabolicModel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">abstract type MetabolicModel end</code></pre><p>A helper supertype that wraps everything usable as a linear-like model for COBREXA functions.</p><p>If you want your model type to work with COBREXA, add the <code>MetabolicModel</code> as its supertype, and implement the accessor functions. Accessors <a href="#COBREXA.reactions-Tuple{MetabolicModel}"><code>reactions</code></a>, <a href="#COBREXA.metabolites-Tuple{MetabolicModel}"><code>metabolites</code></a>, <a href="#COBREXA.stoichiometry-Tuple{MetabolicModel}"><code>stoichiometry</code></a>, <a href="#COBREXA.bounds-Tuple{MetabolicModel}"><code>bounds</code></a> and <a href="#COBREXA.objective-Tuple{MetabolicModel}"><code>objective</code></a> must be implemented; others are not mandatory and default to safe "empty" values.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L2-L13">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.MetaboliteFormula" href="#COBREXA.MetaboliteFormula"><code>COBREXA.MetaboliteFormula</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">MetaboliteFormula = Dict{String,Int}</code></pre><p>Dictionary of atoms and their abundances in a molecule.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L32-L36">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.Notes" href="#COBREXA.Notes"><code>COBREXA.Notes</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">Notes = Dict{String,Vector{String}}</code></pre><p>Free-form notes about something (e.g. a <a href="#COBREXA.Gene"><code>Gene</code></a>), categorized by "topic".</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L52-L57">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.balance-Tuple{MetabolicModel}" href="#COBREXA.balance-Tuple{MetabolicModel}"><code>COBREXA.balance</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">balance(a::MetabolicModel)::SparseVec</code></pre><p>Get the sparse balance vector of a model (ie. the <code>b</code> from <code>S x = b</code>).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L116-L120">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.bounds-Tuple{MetabolicModel}" href="#COBREXA.bounds-Tuple{MetabolicModel}"><code>COBREXA.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">bounds(a::MetabolicModel)::Tuple{SparseVec,SparseVec}</code></pre><p>Get the lower and upper flux bounds of a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L107-L111">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.coupling-Tuple{MetabolicModel}" href="#COBREXA.coupling-Tuple{MetabolicModel}"><code>COBREXA.coupling</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">coupling(a::MetabolicModel)::SparseMat</code></pre><p>Get a matrix of coupling constraint definitions of a model. By default, there is no coupling in the models.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L134-L139">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.coupling_bounds-Tuple{MetabolicModel}" href="#COBREXA.coupling_bounds-Tuple{MetabolicModel}"><code>COBREXA.coupling_bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">coupling_bounds(a::MetabolicModel)::Tuple{SparseVec,SparseVec}</code></pre><p>Get the lower and upper bounds for each coupling bound in a model, as specified by <code>coupling</code>. By default, the model does not have any coupling bounds.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L153-L158">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.gene_annotations-Tuple{MetabolicModel, String}" href="#COBREXA.gene_annotations-Tuple{MetabolicModel, String}"><code>COBREXA.gene_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">gene_annotations(a::MetabolicModel, gene_id::String)::Annotations</code></pre><p>Return standardized names that identify the corresponding gene or product. The dictionary assigns vectors of possible identifiers to identifier system names, e.g. <code>"PDB" => ["PROT01"]</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L251-L257">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.gene_notes-Tuple{MetabolicModel, String}" href="#COBREXA.gene_notes-Tuple{MetabolicModel, String}"><code>COBREXA.gene_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">gene_notes(model::MetabolicModel, gene_id::String)::Notes</code></pre><p>Return the notes associated with the gene <code>gene_id</code> in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L280-L284">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.genes-Tuple{MetabolicModel}" href="#COBREXA.genes-Tuple{MetabolicModel}"><code>COBREXA.genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">genes(a::MetabolicModel)::Vector{String}</code></pre><p>Return identifiers of all genes contained in the model. By default, there are no genes.</p><p>In SBML, these are usually called "gene products" but we write <code>genes</code> for simplicity.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L163-L171">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_annotations-Tuple{MetabolicModel, String}" href="#COBREXA.metabolite_annotations-Tuple{MetabolicModel, String}"><code>COBREXA.metabolite_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_annotations(a::MetabolicModel, metabolite_id::String)::Annotations</code></pre><p>Return standardized names that may help to reliably identify the metabolite. The dictionary assigns vectors of possible identifiers to identifier system names, e.g. <code>"ChEMBL" => ["123"]</code> or <code>"PubChem" => ["CID123", "CID654645645"]</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L240-L246">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_charge-Tuple{MetabolicModel, String}" href="#COBREXA.metabolite_charge-Tuple{MetabolicModel, String}"><code>COBREXA.metabolite_charge</code></a> — <span class="docstring-category">Method</span></header><section><div><p>metabolite<em>charge(model::MetabolicModel, metabolite</em>id::String)::Maybe{Int}</p><p>Return the charge associated with metabolite <code>metabolite_id</code> in <code>model</code>. Returns <code>nothing</code> if charge not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L219-L224">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_compartment-Tuple{MetabolicModel, String}" href="#COBREXA.metabolite_compartment-Tuple{MetabolicModel, String}"><code>COBREXA.metabolite_compartment</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_compartment(model::MetabolicModel, metabolite_id::String)::Maybe{String}</code></pre><p>Return the compartment of metabolite <code>metabolite_id</code> in <code>model</code> if it is assigned. If not, return <code>nothing</code>. </p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L289-L294">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_formula-Tuple{MetabolicModel, String}" href="#COBREXA.metabolite_formula-Tuple{MetabolicModel, String}"><code>COBREXA.metabolite_formula</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_formula( +<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Function reference · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script><link href="../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../"><img class="docs-light-only" src="../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li><a class="tocitem" href="../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../notebooks/">Examples and notebooks</a></li><li class="is-active"><a class="tocitem" href>Function reference</a><ul class="internal"><li><a class="tocitem" href="#Base-Types"><span>Base Types</span></a></li><li><a class="tocitem" href="#Model-types-and-contents"><span>Model types and contents</span></a></li><li><a class="tocitem" href="#Base-functions"><span>Base functions</span></a></li><li><a class="tocitem" href="#File-I/O-and-serialization"><span>File I/O and serialization</span></a></li><li><a class="tocitem" href="#Model-reconstruction"><span>Model reconstruction</span></a></li><li><a class="tocitem" href="#Analysis-functions"><span>Analysis functions</span></a></li><li><a class="tocitem" href="#Miscellaneous-utilities"><span>Miscellaneous utilities</span></a></li></ul></li><li><a class="tocitem" href="../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Function reference</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Function reference</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/functions.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Functions"><a class="docs-heading-anchor" href="#Functions">Functions</a><a id="Functions-1"></a><a class="docs-heading-anchor-permalink" href="#Functions" title="Permalink"></a></h1><h2 id="Base-Types"><a class="docs-heading-anchor" href="#Base-Types">Base Types</a><a id="Base-Types-1"></a><a class="docs-heading-anchor-permalink" href="#Base-Types" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="COBREXA.Maybe" href="#COBREXA.Maybe"><code>COBREXA.Maybe</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">Maybe{T} = Union{Nothing, T}</code></pre><p>A nice name for "nullable" type.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/Maybe.jl#L2-L6">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._default-Union{Tuple{T}, Tuple{T, Union{Nothing, T}}} where T" href="#COBREXA._default-Union{Tuple{T}, Tuple{T, Union{Nothing, T}}} where T"><code>COBREXA._default</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_default(d::T, x::Maybe{T})::T where {T}</code></pre><p>Fold the <code>Maybe{T}</code> down to <code>T</code> by defaulting.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/Maybe.jl#L9-L13">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._maybemap-Tuple{Any, Union{Nothing, T} where T}" href="#COBREXA._maybemap-Tuple{Any, Union{Nothing, T} where T}"><code>COBREXA._maybemap</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_maybemap(f, x::Maybe)::Maybe</code></pre><p>Apply a function to <code>x</code> only if it is not <code>nothing</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/Maybe.jl#L18-L22">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.Annotations" href="#COBREXA.Annotations"><code>COBREXA.Annotations</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">Annotations = Dict{String,Vector{String}}</code></pre><p>Dictionary used to store (possible multiple) standardized annotations of something, such as a <a href="#COBREXA.Metabolite"><code>Metabolite</code></a> and a <a href="#COBREXA.Reaction"><code>Reaction</code></a>.</p><p><strong>Example</strong></p><pre><code class="language-none">Annotations("PubChem" => ["CID12345", "CID54321"])</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L39-L49">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.GeneAssociation" href="#COBREXA.GeneAssociation"><code>COBREXA.GeneAssociation</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">GeneAssociation = Vector{Vector{String}}</code></pre><p>An association to genes, represented as a logical formula in a positive disjunctive normal form (DNF). (The 2nd-level vectors of strings are connected by "and" to form conjunctions, and the 1st-level vectors of these conjunctions are connected by "or" to form the DNF.)</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L22-L29">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.MetabolicModel" href="#COBREXA.MetabolicModel"><code>COBREXA.MetabolicModel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">abstract type MetabolicModel end</code></pre><p>A helper supertype that wraps everything usable as a linear-like model for COBREXA functions.</p><p>If you want your model type to work with COBREXA, add the <code>MetabolicModel</code> as its supertype, and implement the accessor functions. Accessors <a href="#COBREXA.reactions-Tuple{MetabolicModel}"><code>reactions</code></a>, <a href="#COBREXA.metabolites-Tuple{MetabolicModel}"><code>metabolites</code></a>, <a href="#COBREXA.stoichiometry-Tuple{MetabolicModel}"><code>stoichiometry</code></a>, <a href="#COBREXA.bounds-Tuple{MetabolicModel}"><code>bounds</code></a> and <a href="#COBREXA.objective-Tuple{MetabolicModel}"><code>objective</code></a> must be implemented; others are not mandatory and default to safe "empty" values.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L2-L13">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.MetaboliteFormula" href="#COBREXA.MetaboliteFormula"><code>COBREXA.MetaboliteFormula</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">MetaboliteFormula = Dict{String,Int}</code></pre><p>Dictionary of atoms and their abundances in a molecule.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L32-L36">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.Notes" href="#COBREXA.Notes"><code>COBREXA.Notes</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">Notes = Dict{String,Vector{String}}</code></pre><p>Free-form notes about something (e.g. a <a href="#COBREXA.Gene"><code>Gene</code></a>), categorized by "topic".</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L52-L57">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.balance-Tuple{MetabolicModel}" href="#COBREXA.balance-Tuple{MetabolicModel}"><code>COBREXA.balance</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">balance(a::MetabolicModel)::SparseVec</code></pre><p>Get the sparse balance vector of a model (ie. the <code>b</code> from <code>S x = b</code>).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L116-L120">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.bounds-Tuple{MetabolicModel}" href="#COBREXA.bounds-Tuple{MetabolicModel}"><code>COBREXA.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">bounds(a::MetabolicModel)::Tuple{SparseVec,SparseVec}</code></pre><p>Get the lower and upper flux bounds of a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L107-L111">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.coupling-Tuple{MetabolicModel}" href="#COBREXA.coupling-Tuple{MetabolicModel}"><code>COBREXA.coupling</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">coupling(a::MetabolicModel)::SparseMat</code></pre><p>Get a matrix of coupling constraint definitions of a model. By default, there is no coupling in the models.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L134-L139">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.coupling_bounds-Tuple{MetabolicModel}" href="#COBREXA.coupling_bounds-Tuple{MetabolicModel}"><code>COBREXA.coupling_bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">coupling_bounds(a::MetabolicModel)::Tuple{SparseVec,SparseVec}</code></pre><p>Get the lower and upper bounds for each coupling bound in a model, as specified by <code>coupling</code>. By default, the model does not have any coupling bounds.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L153-L158">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.gene_annotations-Tuple{MetabolicModel, String}" href="#COBREXA.gene_annotations-Tuple{MetabolicModel, String}"><code>COBREXA.gene_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">gene_annotations(a::MetabolicModel, gene_id::String)::Annotations</code></pre><p>Return standardized names that identify the corresponding gene or product. The dictionary assigns vectors of possible identifiers to identifier system names, e.g. <code>"PDB" => ["PROT01"]</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L251-L257">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.gene_notes-Tuple{MetabolicModel, String}" href="#COBREXA.gene_notes-Tuple{MetabolicModel, String}"><code>COBREXA.gene_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">gene_notes(model::MetabolicModel, gene_id::String)::Notes</code></pre><p>Return the notes associated with the gene <code>gene_id</code> in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L280-L284">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.genes-Tuple{MetabolicModel}" href="#COBREXA.genes-Tuple{MetabolicModel}"><code>COBREXA.genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">genes(a::MetabolicModel)::Vector{String}</code></pre><p>Return identifiers of all genes contained in the model. By default, there are no genes.</p><p>In SBML, these are usually called "gene products" but we write <code>genes</code> for simplicity.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L163-L171">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_annotations-Tuple{MetabolicModel, String}" href="#COBREXA.metabolite_annotations-Tuple{MetabolicModel, String}"><code>COBREXA.metabolite_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_annotations(a::MetabolicModel, metabolite_id::String)::Annotations</code></pre><p>Return standardized names that may help to reliably identify the metabolite. The dictionary assigns vectors of possible identifiers to identifier system names, e.g. <code>"ChEMBL" => ["123"]</code> or <code>"PubChem" => ["CID123", "CID654645645"]</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L240-L246">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_charge-Tuple{MetabolicModel, String}" href="#COBREXA.metabolite_charge-Tuple{MetabolicModel, String}"><code>COBREXA.metabolite_charge</code></a> — <span class="docstring-category">Method</span></header><section><div><p>metabolite<em>charge(model::MetabolicModel, metabolite</em>id::String)::Maybe{Int}</p><p>Return the charge associated with metabolite <code>metabolite_id</code> in <code>model</code>. Returns <code>nothing</code> if charge not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L219-L224">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_compartment-Tuple{MetabolicModel, String}" href="#COBREXA.metabolite_compartment-Tuple{MetabolicModel, String}"><code>COBREXA.metabolite_compartment</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_compartment(model::MetabolicModel, metabolite_id::String)::Maybe{String}</code></pre><p>Return the compartment of metabolite <code>metabolite_id</code> in <code>model</code> if it is assigned. If not, return <code>nothing</code>. </p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L289-L294">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_formula-Tuple{MetabolicModel, String}" href="#COBREXA.metabolite_formula-Tuple{MetabolicModel, String}"><code>COBREXA.metabolite_formula</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_formula( a::MetabolicModel, metabolite_id::String, -)::Maybe{MetaboliteFormula}</code></pre><p>Return the formula of metabolite <code>metabolite_id</code> in <code>model</code>. Return <code>nothing</code> in case the formula is not known or irrelevant.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L203-L211">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_notes-Tuple{MetabolicModel, String}" href="#COBREXA.metabolite_notes-Tuple{MetabolicModel, String}"><code>COBREXA.metabolite_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_notes(model::MetabolicModel, metabolite_id::String)::Notes</code></pre><p>Return the notes associated with metabolite <code>reaction_id</code> in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L271-L275">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolites-Tuple{MetabolicModel}" href="#COBREXA.metabolites-Tuple{MetabolicModel}"><code>COBREXA.metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolites(a::MetabolicModel)::Vector{String}</code></pre><p>Return a vector of metabolite identifiers in a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L71-L75">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_coupling_constraints-Tuple{MetabolicModel}" href="#COBREXA.n_coupling_constraints-Tuple{MetabolicModel}"><code>COBREXA.n_coupling_constraints</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_coupling_constraints(a::MetabolicModel)::Int</code></pre><p>Get the number of coupling constraints in a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L144-L148">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_genes-Tuple{MetabolicModel}" href="#COBREXA.n_genes-Tuple{MetabolicModel}"><code>COBREXA.n_genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_genes(a::MetabolicModel)::Int</code></pre><p>Return the number of genes in the model (as returned by <a href="#COBREXA.genes-Tuple{MetabolicModel}"><code>genes</code></a>). If you just need the number of the genes, this may be much more efficient than calling <a href="#COBREXA.genes-Tuple{MetabolicModel}"><code>genes</code></a> and measuring the array.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L176-L182">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_metabolites-Tuple{MetabolicModel}" href="#COBREXA.n_metabolites-Tuple{MetabolicModel}"><code>COBREXA.n_metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_metabolites(a::MetabolicModel)::Int</code></pre><p>Get the number of metabolites in a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L89-L93">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_reactions-Tuple{MetabolicModel}" href="#COBREXA.n_reactions-Tuple{MetabolicModel}"><code>COBREXA.n_reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_reactions(a::MetabolicModel)::Int</code></pre><p>Get the number of reactions in a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L80-L84">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective-Tuple{MetabolicModel}" href="#COBREXA.objective-Tuple{MetabolicModel}"><code>COBREXA.objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">objective(a::MetabolicModel)::SparseVec</code></pre><p>Get the objective vector of a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L125-L129">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.precache!-Tuple{MetabolicModel}" href="#COBREXA.precache!-Tuple{MetabolicModel}"><code>COBREXA.precache!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">precache!(a::MetabolicModel)::Nothing</code></pre><p>Do whatever is feasible to get the model into a state that can be read from as-quickly-as-possible. This may include e.g. generating helper index structures and loading delayed parts of the model from disk. The model should be modified "transparently" in-place. Analysis functions call this right before applying modifications or converting the model to the optimization model using <a href="#COBREXA.make_optimization_model-Tuple{MetabolicModel, Any}"><code>make_optimization_model</code></a>; usually on the same machine where the optimizers (and, generally, the core analysis algorithms) will run. The calls are done in a good hope that the performance will be improved.</p><p>By default, it should be safe to do nothing.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L309-L322">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_annotations-Tuple{MetabolicModel, String}" href="#COBREXA.reaction_annotations-Tuple{MetabolicModel, String}"><code>COBREXA.reaction_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_annotations(a::MetabolicModel, reaction_id::String)::Annotations</code></pre><p>Return standardized names that may help identifying the reaction. The dictionary assigns vectors of possible identifiers to identifier system names, e.g. <code>"Reactome" => ["reactomeID123"]</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L229-L235">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_gene_association-Tuple{MetabolicModel, String}" href="#COBREXA.reaction_gene_association-Tuple{MetabolicModel, String}"><code>COBREXA.reaction_gene_association</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_gene_association(a::MetabolicModel, gene_id::String)::Maybe{GeneAssociation}</code></pre><p>Returns the sets of genes that need to be present so that the reaction can work (technically, a DNF on gene availability, with positive atoms only).</p><p>For simplicity, <code>nothing</code> may be returned, meaning that the reaction always takes place. (in DNF, that would be equivalent to returning <code>[[]]</code>.)</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L187-L195">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_notes-Tuple{MetabolicModel, String}" href="#COBREXA.reaction_notes-Tuple{MetabolicModel, String}"><code>COBREXA.reaction_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_notes(model::MetabolicModel, reaction_id::String)::Notes</code></pre><p>Return the notes associated with reaction <code>reaction_id</code> in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L262-L266">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_subsystem-Tuple{MetabolicModel, String}" href="#COBREXA.reaction_subsystem-Tuple{MetabolicModel, String}"><code>COBREXA.reaction_subsystem</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_subsystem(model::MetabolicModel, reaction_id::String)::Maybe{String}</code></pre><p>Return the subsystem of reaction <code>reaction_id</code> in <code>model</code> if it is assigned. If not, return <code>nothing</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L299-L304">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reactions-Tuple{MetabolicModel}" href="#COBREXA.reactions-Tuple{MetabolicModel}"><code>COBREXA.reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reactions(a::MetabolicModel)::Vector{String}</code></pre><p>Return a vector of reaction identifiers in a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L62-L66">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.stoichiometry-Tuple{MetabolicModel}" href="#COBREXA.stoichiometry-Tuple{MetabolicModel}"><code>COBREXA.stoichiometry</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">stoichiometry(a::MetabolicModel)::SparseMat</code></pre><p>Get the sparse stoichiometry matrix of a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/abstract/MetabolicModel.jl#L98-L102">source</a></section></article><h2 id="Model-types-and-contents"><a class="docs-heading-anchor" href="#Model-types-and-contents">Model types and contents</a><a id="Model-types-and-contents-1"></a><a class="docs-heading-anchor-permalink" href="#Model-types-and-contents" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="COBREXA.CoreModel" href="#COBREXA.CoreModel"><code>COBREXA.CoreModel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">struct CoreModel <: MetabolicModel</code></pre><p>A "bare bones" core linear optimization problem of the form, with reaction and metabolite names.</p><pre><code class="language-none">min c^T x +)::Maybe{MetaboliteFormula}</code></pre><p>Return the formula of metabolite <code>metabolite_id</code> in <code>model</code>. Return <code>nothing</code> in case the formula is not known or irrelevant.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L203-L211">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_notes-Tuple{MetabolicModel, String}" href="#COBREXA.metabolite_notes-Tuple{MetabolicModel, String}"><code>COBREXA.metabolite_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_notes(model::MetabolicModel, metabolite_id::String)::Notes</code></pre><p>Return the notes associated with metabolite <code>reaction_id</code> in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L271-L275">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolites-Tuple{MetabolicModel}" href="#COBREXA.metabolites-Tuple{MetabolicModel}"><code>COBREXA.metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolites(a::MetabolicModel)::Vector{String}</code></pre><p>Return a vector of metabolite identifiers in a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L71-L75">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_coupling_constraints-Tuple{MetabolicModel}" href="#COBREXA.n_coupling_constraints-Tuple{MetabolicModel}"><code>COBREXA.n_coupling_constraints</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_coupling_constraints(a::MetabolicModel)::Int</code></pre><p>Get the number of coupling constraints in a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L144-L148">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_genes-Tuple{MetabolicModel}" href="#COBREXA.n_genes-Tuple{MetabolicModel}"><code>COBREXA.n_genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_genes(a::MetabolicModel)::Int</code></pre><p>Return the number of genes in the model (as returned by <a href="#COBREXA.genes-Tuple{MetabolicModel}"><code>genes</code></a>). If you just need the number of the genes, this may be much more efficient than calling <a href="#COBREXA.genes-Tuple{MetabolicModel}"><code>genes</code></a> and measuring the array.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L176-L182">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_metabolites-Tuple{MetabolicModel}" href="#COBREXA.n_metabolites-Tuple{MetabolicModel}"><code>COBREXA.n_metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_metabolites(a::MetabolicModel)::Int</code></pre><p>Get the number of metabolites in a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L89-L93">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_reactions-Tuple{MetabolicModel}" href="#COBREXA.n_reactions-Tuple{MetabolicModel}"><code>COBREXA.n_reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_reactions(a::MetabolicModel)::Int</code></pre><p>Get the number of reactions in a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L80-L84">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective-Tuple{MetabolicModel}" href="#COBREXA.objective-Tuple{MetabolicModel}"><code>COBREXA.objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">objective(a::MetabolicModel)::SparseVec</code></pre><p>Get the objective vector of a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L125-L129">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.precache!-Tuple{MetabolicModel}" href="#COBREXA.precache!-Tuple{MetabolicModel}"><code>COBREXA.precache!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">precache!(a::MetabolicModel)::Nothing</code></pre><p>Do whatever is feasible to get the model into a state that can be read from as-quickly-as-possible. This may include e.g. generating helper index structures and loading delayed parts of the model from disk. The model should be modified "transparently" in-place. Analysis functions call this right before applying modifications or converting the model to the optimization model using <a href="#COBREXA.make_optimization_model-Tuple{MetabolicModel, Any}"><code>make_optimization_model</code></a>; usually on the same machine where the optimizers (and, generally, the core analysis algorithms) will run. The calls are done in a good hope that the performance will be improved.</p><p>By default, it should be safe to do nothing.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L309-L322">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_annotations-Tuple{MetabolicModel, String}" href="#COBREXA.reaction_annotations-Tuple{MetabolicModel, String}"><code>COBREXA.reaction_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_annotations(a::MetabolicModel, reaction_id::String)::Annotations</code></pre><p>Return standardized names that may help identifying the reaction. The dictionary assigns vectors of possible identifiers to identifier system names, e.g. <code>"Reactome" => ["reactomeID123"]</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L229-L235">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_gene_association-Tuple{MetabolicModel, String}" href="#COBREXA.reaction_gene_association-Tuple{MetabolicModel, String}"><code>COBREXA.reaction_gene_association</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_gene_association(a::MetabolicModel, gene_id::String)::Maybe{GeneAssociation}</code></pre><p>Returns the sets of genes that need to be present so that the reaction can work (technically, a DNF on gene availability, with positive atoms only).</p><p>For simplicity, <code>nothing</code> may be returned, meaning that the reaction always takes place. (in DNF, that would be equivalent to returning <code>[[]]</code>.)</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L187-L195">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_notes-Tuple{MetabolicModel, String}" href="#COBREXA.reaction_notes-Tuple{MetabolicModel, String}"><code>COBREXA.reaction_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_notes(model::MetabolicModel, reaction_id::String)::Notes</code></pre><p>Return the notes associated with reaction <code>reaction_id</code> in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L262-L266">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_subsystem-Tuple{MetabolicModel, String}" href="#COBREXA.reaction_subsystem-Tuple{MetabolicModel, String}"><code>COBREXA.reaction_subsystem</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_subsystem(model::MetabolicModel, reaction_id::String)::Maybe{String}</code></pre><p>Return the subsystem of reaction <code>reaction_id</code> in <code>model</code> if it is assigned. If not, return <code>nothing</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L299-L304">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reactions-Tuple{MetabolicModel}" href="#COBREXA.reactions-Tuple{MetabolicModel}"><code>COBREXA.reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reactions(a::MetabolicModel)::Vector{String}</code></pre><p>Return a vector of reaction identifiers in a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L62-L66">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.stoichiometry-Tuple{MetabolicModel}" href="#COBREXA.stoichiometry-Tuple{MetabolicModel}"><code>COBREXA.stoichiometry</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">stoichiometry(a::MetabolicModel)::SparseMat</code></pre><p>Get the sparse stoichiometry matrix of a model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/abstract/MetabolicModel.jl#L98-L102">source</a></section></article><h2 id="Model-types-and-contents"><a class="docs-heading-anchor" href="#Model-types-and-contents">Model types and contents</a><a id="Model-types-and-contents-1"></a><a class="docs-heading-anchor-permalink" href="#Model-types-and-contents" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="COBREXA.CoreModel" href="#COBREXA.CoreModel"><code>COBREXA.CoreModel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">struct CoreModel <: MetabolicModel</code></pre><p>A "bare bones" core linear optimization problem of the form, with reaction and metabolite names.</p><pre><code class="language-none">min c^T x s.t. S x = b - xâ‚— ≤ x ≤ xᵤ</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModel.jl#L2-L12">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Base.convert-Union{Tuple{M}, Tuple{Type{CoreModel}, M}} where M<:MetabolicModel" href="#Base.convert-Union{Tuple{M}, Tuple{Type{CoreModel}, M}} where M<:MetabolicModel"><code>Base.convert</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">Base.convert(::Type{CoreModel}, m::M) where {M <: MetabolicModel}</code></pre><p>Make a <code>CoreModel</code> out of any compatible model type.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModel.jl#L96-L100">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.balance-Tuple{CoreModel}" href="#COBREXA.balance-Tuple{CoreModel}"><code>COBREXA.balance</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">balance(a::CoreModel)::SparseVec</code></pre><p><code>CoreModel</code> target flux balance.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModel.jl#L78-L82">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.bounds-Tuple{CoreModel}" href="#COBREXA.bounds-Tuple{CoreModel}"><code>COBREXA.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">bounds(a::CoreModel)::Tuple{SparseVec,SparseVec}</code></pre><p><code>CoreModel</code> flux bounds.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModel.jl#L69-L73">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolites-Tuple{CoreModel}" href="#COBREXA.metabolites-Tuple{CoreModel}"><code>COBREXA.metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolites(a::CoreModel)::Vector{String}</code></pre><p>Metabolites in a <code>CoreModel</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModel.jl#L51-L55">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective-Tuple{CoreModel}" href="#COBREXA.objective-Tuple{CoreModel}"><code>COBREXA.objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">objective(a::CoreModel)::SparseVec</code></pre><p><code>CoreModel</code> objective vector.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModel.jl#L87-L91">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reactions-Tuple{CoreModel}" href="#COBREXA.reactions-Tuple{CoreModel}"><code>COBREXA.reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reactions(a::CoreModel)::Vector{String}</code></pre><p>Get the reactions in a <code>CoreModel</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModel.jl#L42-L46">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.stoichiometry-Tuple{CoreModel}" href="#COBREXA.stoichiometry-Tuple{CoreModel}"><code>COBREXA.stoichiometry</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">stoichiometry(a::CoreModel)::SparseMat</code></pre><p><code>CoreModel</code> stoichiometry matrix.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModel.jl#L60-L64">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.CoreModelCoupled" href="#COBREXA.CoreModelCoupled"><code>COBREXA.CoreModelCoupled</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">struct CoreModelCoupled <: MetabolicModel</code></pre><p>The linear model with additional coupling constraints in the form</p><pre><code class="language-none"> câ‚— ≤ C x ≤ cᵤ</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModelCoupled.jl#L2-L9">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Base.convert-Tuple{Type{CoreModelCoupled}, MetabolicModel}" href="#Base.convert-Tuple{Type{CoreModelCoupled}, MetabolicModel}"><code>Base.convert</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">Base.convert(::Type{CoreModelCoupled}, mm::MetabolicModel)</code></pre><p>Make a <code>CoreModelCoupled</code> out of any compatible model type.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModelCoupled.jl#L107-L111">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.balance-Tuple{CoreModelCoupled}" href="#COBREXA.balance-Tuple{CoreModelCoupled}"><code>COBREXA.balance</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">balance(a::CoreModelCoupled)</code></pre><p>Extract balance from <a href="#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a> (uses the internal <a href="#COBREXA.CoreModel"><code>CoreModel</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModelCoupled.jl#L64-L69">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.bounds-Tuple{CoreModelCoupled}" href="#COBREXA.bounds-Tuple{CoreModelCoupled}"><code>COBREXA.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">bounds(a::CoreModelCoupled)</code></pre><p>Extract bounds from <a href="#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a> (uses the internal <a href="#COBREXA.CoreModel"><code>CoreModel</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModelCoupled.jl#L56-L61">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.coupling-Tuple{CoreModelCoupled}" href="#COBREXA.coupling-Tuple{CoreModelCoupled}"><code>COBREXA.coupling</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">coupling(a::CoreModelCoupled)::SparseMat</code></pre><p>Coupling constraint matrix for a <code>CoreModelCoupled</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModelCoupled.jl#L80-L84">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.coupling_bounds-Tuple{CoreModelCoupled}" href="#COBREXA.coupling_bounds-Tuple{CoreModelCoupled}"><code>COBREXA.coupling_bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">coupling_bounds(a::CoreModelCoupled)::Tuple{SparseVec,SparseVec}</code></pre><p>Coupling bounds for a <code>CoreModelCoupled</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModelCoupled.jl#L98-L102">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolites-Tuple{CoreModelCoupled}" href="#COBREXA.metabolites-Tuple{CoreModelCoupled}"><code>COBREXA.metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolites(a::CoreModelCoupled)</code></pre><p>Extract metabolites from <a href="#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a> (uses the internal <a href="#COBREXA.CoreModel"><code>CoreModel</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModelCoupled.jl#L40-L45">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_coupling_constraints-Tuple{CoreModelCoupled}" href="#COBREXA.n_coupling_constraints-Tuple{CoreModelCoupled}"><code>COBREXA.n_coupling_constraints</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_coupling_constraints(a::CoreModelCoupled)::Int</code></pre><p>The number of coupling constraints in a <code>CoreModelCoupled</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModelCoupled.jl#L89-L93">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective-Tuple{CoreModelCoupled}" href="#COBREXA.objective-Tuple{CoreModelCoupled}"><code>COBREXA.objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">objective(a::CoreModelCoupled)</code></pre><p>Extract objective from <a href="#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a> (uses the internal <a href="#COBREXA.CoreModel"><code>CoreModel</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModelCoupled.jl#L72-L77">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reactions-Tuple{CoreModelCoupled}" href="#COBREXA.reactions-Tuple{CoreModelCoupled}"><code>COBREXA.reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reactions(a::CoreModelCoupled)</code></pre><p>Extract reactions from <a href="#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a> (uses the internal <a href="#COBREXA.CoreModel"><code>CoreModel</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModelCoupled.jl#L32-L37">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.stoichiometry-Tuple{CoreModelCoupled}" href="#COBREXA.stoichiometry-Tuple{CoreModelCoupled}"><code>COBREXA.stoichiometry</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">stoichiometry(a::CoreModelCoupled)</code></pre><p>Extract stoichiometry from <a href="#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a> (uses the internal <a href="#COBREXA.CoreModel"><code>CoreModel</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/CoreModelCoupled.jl#L48-L53">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.Gene" href="#COBREXA.Gene"><code>COBREXA.Gene</code></a> — <span class="docstring-category">Type</span></header><section><div><p>Gene struct.</p><p><strong>Fields</strong></p><pre><code class="language-none">id :: String + xâ‚— ≤ x ≤ xᵤ</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModel.jl#L2-L12">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Base.convert-Union{Tuple{M}, Tuple{Type{CoreModel}, M}} where M<:MetabolicModel" href="#Base.convert-Union{Tuple{M}, Tuple{Type{CoreModel}, M}} where M<:MetabolicModel"><code>Base.convert</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">Base.convert(::Type{CoreModel}, m::M) where {M <: MetabolicModel}</code></pre><p>Make a <code>CoreModel</code> out of any compatible model type.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModel.jl#L96-L100">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.balance-Tuple{CoreModel}" href="#COBREXA.balance-Tuple{CoreModel}"><code>COBREXA.balance</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">balance(a::CoreModel)::SparseVec</code></pre><p><code>CoreModel</code> target flux balance.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModel.jl#L78-L82">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.bounds-Tuple{CoreModel}" href="#COBREXA.bounds-Tuple{CoreModel}"><code>COBREXA.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">bounds(a::CoreModel)::Tuple{SparseVec,SparseVec}</code></pre><p><code>CoreModel</code> flux bounds.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModel.jl#L69-L73">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolites-Tuple{CoreModel}" href="#COBREXA.metabolites-Tuple{CoreModel}"><code>COBREXA.metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolites(a::CoreModel)::Vector{String}</code></pre><p>Metabolites in a <code>CoreModel</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModel.jl#L51-L55">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective-Tuple{CoreModel}" href="#COBREXA.objective-Tuple{CoreModel}"><code>COBREXA.objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">objective(a::CoreModel)::SparseVec</code></pre><p><code>CoreModel</code> objective vector.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModel.jl#L87-L91">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reactions-Tuple{CoreModel}" href="#COBREXA.reactions-Tuple{CoreModel}"><code>COBREXA.reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reactions(a::CoreModel)::Vector{String}</code></pre><p>Get the reactions in a <code>CoreModel</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModel.jl#L42-L46">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.stoichiometry-Tuple{CoreModel}" href="#COBREXA.stoichiometry-Tuple{CoreModel}"><code>COBREXA.stoichiometry</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">stoichiometry(a::CoreModel)::SparseMat</code></pre><p><code>CoreModel</code> stoichiometry matrix.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModel.jl#L60-L64">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.CoreModelCoupled" href="#COBREXA.CoreModelCoupled"><code>COBREXA.CoreModelCoupled</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">struct CoreModelCoupled <: MetabolicModel</code></pre><p>The linear model with additional coupling constraints in the form</p><pre><code class="language-none"> câ‚— ≤ C x ≤ cᵤ</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModelCoupled.jl#L2-L9">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Base.convert-Tuple{Type{CoreModelCoupled}, MetabolicModel}" href="#Base.convert-Tuple{Type{CoreModelCoupled}, MetabolicModel}"><code>Base.convert</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">Base.convert(::Type{CoreModelCoupled}, mm::MetabolicModel)</code></pre><p>Make a <code>CoreModelCoupled</code> out of any compatible model type.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModelCoupled.jl#L107-L111">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.balance-Tuple{CoreModelCoupled}" href="#COBREXA.balance-Tuple{CoreModelCoupled}"><code>COBREXA.balance</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">balance(a::CoreModelCoupled)</code></pre><p>Extract balance from <a href="#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a> (uses the internal <a href="#COBREXA.CoreModel"><code>CoreModel</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModelCoupled.jl#L64-L69">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.bounds-Tuple{CoreModelCoupled}" href="#COBREXA.bounds-Tuple{CoreModelCoupled}"><code>COBREXA.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">bounds(a::CoreModelCoupled)</code></pre><p>Extract bounds from <a href="#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a> (uses the internal <a href="#COBREXA.CoreModel"><code>CoreModel</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModelCoupled.jl#L56-L61">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.coupling-Tuple{CoreModelCoupled}" href="#COBREXA.coupling-Tuple{CoreModelCoupled}"><code>COBREXA.coupling</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">coupling(a::CoreModelCoupled)::SparseMat</code></pre><p>Coupling constraint matrix for a <code>CoreModelCoupled</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModelCoupled.jl#L80-L84">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.coupling_bounds-Tuple{CoreModelCoupled}" href="#COBREXA.coupling_bounds-Tuple{CoreModelCoupled}"><code>COBREXA.coupling_bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">coupling_bounds(a::CoreModelCoupled)::Tuple{SparseVec,SparseVec}</code></pre><p>Coupling bounds for a <code>CoreModelCoupled</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModelCoupled.jl#L98-L102">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolites-Tuple{CoreModelCoupled}" href="#COBREXA.metabolites-Tuple{CoreModelCoupled}"><code>COBREXA.metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolites(a::CoreModelCoupled)</code></pre><p>Extract metabolites from <a href="#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a> (uses the internal <a href="#COBREXA.CoreModel"><code>CoreModel</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModelCoupled.jl#L40-L45">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_coupling_constraints-Tuple{CoreModelCoupled}" href="#COBREXA.n_coupling_constraints-Tuple{CoreModelCoupled}"><code>COBREXA.n_coupling_constraints</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_coupling_constraints(a::CoreModelCoupled)::Int</code></pre><p>The number of coupling constraints in a <code>CoreModelCoupled</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModelCoupled.jl#L89-L93">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective-Tuple{CoreModelCoupled}" href="#COBREXA.objective-Tuple{CoreModelCoupled}"><code>COBREXA.objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">objective(a::CoreModelCoupled)</code></pre><p>Extract objective from <a href="#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a> (uses the internal <a href="#COBREXA.CoreModel"><code>CoreModel</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModelCoupled.jl#L72-L77">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reactions-Tuple{CoreModelCoupled}" href="#COBREXA.reactions-Tuple{CoreModelCoupled}"><code>COBREXA.reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reactions(a::CoreModelCoupled)</code></pre><p>Extract reactions from <a href="#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a> (uses the internal <a href="#COBREXA.CoreModel"><code>CoreModel</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModelCoupled.jl#L32-L37">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.stoichiometry-Tuple{CoreModelCoupled}" href="#COBREXA.stoichiometry-Tuple{CoreModelCoupled}"><code>COBREXA.stoichiometry</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">stoichiometry(a::CoreModelCoupled)</code></pre><p>Extract stoichiometry from <a href="#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a> (uses the internal <a href="#COBREXA.CoreModel"><code>CoreModel</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/CoreModelCoupled.jl#L48-L53">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.Gene" href="#COBREXA.Gene"><code>COBREXA.Gene</code></a> — <span class="docstring-category">Type</span></header><section><div><p>Gene struct.</p><p><strong>Fields</strong></p><pre><code class="language-none">id :: String name :: Union{String, Nothing} notes :: Dict{String, Vector{String}} -annotation :: Dict{String, Union{Vector{String}, String}}</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/Gene.jl#L1-L11">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.JSONModel" href="#COBREXA.JSONModel"><code>COBREXA.JSONModel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">struct JSONModel <: MetabolicModel +annotation :: Dict{String, Union{Vector{String}, String}}</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/Gene.jl#L1-L11">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.JSONModel" href="#COBREXA.JSONModel"><code>COBREXA.JSONModel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">struct JSONModel <: MetabolicModel json::Dict{String,Any} end</code></pre><p>A struct used to store the contents of a JSON model, i.e. a model read from a file ending with <code>.json</code>. These model files typically store all the model parameters in arrays of JSON objects (i.e. Julia dictionaries).</p><p>Usually, not all of the fields of the input JSON can be easily represented when converting to other models, care should be taken to avoid losing information.</p><p>Direct work on this precise model type is not very efficient, as the accessor functions need to repeatedly find the information in the JSON tree. This gets very slow especially if calling many accessor functions sequentially. To avoid that, convert to e.g. <a href="#COBREXA.StandardModel"><code>StandardModel</code></a> as soon as possible.</p><p><strong>Example</strong></p><pre><code class="language-none">model = load_json_model("some_model.json") model.json # see the actual underlying JSON -reactions(model) # see the list of reactions</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L1-L24">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Base.convert-Tuple{Type{JSONModel}, MetabolicModel}" href="#Base.convert-Tuple{Type{JSONModel}, MetabolicModel}"><code>Base.convert</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">Base.convert(::Type{JSONModel}, mm::MetabolicModel)</code></pre><p>Convert any <a href="#COBREXA.MetabolicModel"><code>MetabolicModel</code></a> to <a href="#COBREXA.JSONModel"><code>JSONModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L280-L284">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.bounds-Tuple{JSONModel}" href="#COBREXA.bounds-Tuple{JSONModel}"><code>COBREXA.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">bounds(model::JSONModel)</code></pre><p>Get the bounds for reactions, assuming the information is stored in <code>.lower_bound</code> and <code>.upper_bound</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L141-L146">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.gene_annotations-Tuple{JSONModel, String}" href="#COBREXA.gene_annotations-Tuple{JSONModel, String}"><code>COBREXA.gene_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">gene_annotations(model::JSONModel, gid::String)::Annotations</code></pre><p>Gene annotations from the <a href="#COBREXA.JSONModel"><code>JSONModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L219-L223">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.gene_notes-Tuple{JSONModel, String}" href="#COBREXA.gene_notes-Tuple{JSONModel, String}"><code>COBREXA.gene_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">gene_notes(model::JSONModel, gid::String)::Notes</code></pre><p>Gene notes from the <a href="#COBREXA.JSONModel"><code>JSONModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L229-L233">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.genes-Tuple{JSONModel}" href="#COBREXA.genes-Tuple{JSONModel}"><code>COBREXA.genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">genes(model::JSONModel)</code></pre><p>Extract gene names from a JSON model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L97-L101">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_annotations-Tuple{JSONModel, String}" href="#COBREXA.metabolite_annotations-Tuple{JSONModel, String}"><code>COBREXA.metabolite_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_annotations(model::JSONModel, mid::String)::Annotations</code></pre><p>Metabolite annotations from the <a href="#COBREXA.JSONModel"><code>JSONModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L259-L263">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_charge-Tuple{JSONModel, String}" href="#COBREXA.metabolite_charge-Tuple{JSONModel, String}"><code>COBREXA.metabolite_charge</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_charge(model::JSONModel, mid::String)</code></pre><p>Return the metabolite <code>.charge</code></p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L199-L203">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_compartment-Tuple{JSONModel, String}" href="#COBREXA.metabolite_compartment-Tuple{JSONModel, String}"><code>COBREXA.metabolite_compartment</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_compartment(model::JSONModel, mid::String)</code></pre><p>Return the metabolite <code>.compartment</code></p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L209-L213">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_formula-Tuple{JSONModel, String}" href="#COBREXA.metabolite_formula-Tuple{JSONModel, String}"><code>COBREXA.metabolite_formula</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_formula(model::JSONModel, mid::String)</code></pre><p>Parse and return the metabolite <code>.formula</code></p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L189-L193">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_notes-Tuple{JSONModel, String}" href="#COBREXA.metabolite_notes-Tuple{JSONModel, String}"><code>COBREXA.metabolite_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_notes(model::JSONModel, mid::String)::Notes</code></pre><p>Metabolite notes from the <a href="#COBREXA.JSONModel"><code>JSONModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L269-L273">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolites-Tuple{JSONModel}" href="#COBREXA.metabolites-Tuple{JSONModel}"><code>COBREXA.metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolites(model::JSONModel)</code></pre><p>Extract metabolite names (stored as <code>.id</code>) from JSON model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L84-L88">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective-Tuple{JSONModel}" href="#COBREXA.objective-Tuple{JSONModel}"><code>COBREXA.objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">objective(model::JSONModel)</code></pre><p>Collect <code>.objective_coefficient</code> keys from model reactions.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L158-L162">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_annotations-Tuple{JSONModel, String}" href="#COBREXA.reaction_annotations-Tuple{JSONModel, String}"><code>COBREXA.reaction_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_annotations(model::JSONModel, rid::String)::Annotations</code></pre><p>Reaction annotations from the <a href="#COBREXA.JSONModel"><code>JSONModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L239-L243">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_gene_association-Tuple{JSONModel, String}" href="#COBREXA.reaction_gene_association-Tuple{JSONModel, String}"><code>COBREXA.reaction_gene_association</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_gene_associaton(model::JSONModel, rid::String)</code></pre><p>Parses the <code>.gene_reaction_rule</code> from reactions.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L169-L173">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_notes-Tuple{JSONModel, String}" href="#COBREXA.reaction_notes-Tuple{JSONModel, String}"><code>COBREXA.reaction_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_notes(model::JSONModel, rid::String)::Notes</code></pre><p>Reaction notes from the <a href="#COBREXA.JSONModel"><code>JSONModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L249-L253">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_subsystem-Tuple{JSONModel, String}" href="#COBREXA.reaction_subsystem-Tuple{JSONModel, String}"><code>COBREXA.reaction_subsystem</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_subsystem(model::JSONModel, rid::String)</code></pre><p>Parses the <code>.subsystem</code> out from reactions.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L179-L183">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reactions-Tuple{JSONModel}" href="#COBREXA.reactions-Tuple{JSONModel}"><code>COBREXA.reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reactions(model::JSONModel)</code></pre><p>Extract reaction names (stored as <code>.id</code>) from JSON model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L71-L75">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.stoichiometry-Tuple{JSONModel}" href="#COBREXA.stoichiometry-Tuple{JSONModel}"><code>COBREXA.stoichiometry</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">stoichiometry(model::JSONModel)</code></pre><p>Get the stoichiometry. Assuming the information is stored in reaction object under key <code>.metabolites</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/JSONModel.jl#L108-L113">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.MATModel" href="#COBREXA.MATModel"><code>COBREXA.MATModel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">struct MATModel</code></pre><p>Wrapper around the models loaded in dictionaries from the MATLAB representation.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L1-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Base.convert-Tuple{Type{MATModel}, MetabolicModel}" href="#Base.convert-Tuple{Type{MATModel}, MetabolicModel}"><code>Base.convert</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">Base.convert(::Type{MATModel}, m::MetabolicModel)</code></pre><p>Convert any metabolic model to <code>MATModel</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L177-L181">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._mat_has_squashed_coupling-Tuple{Any}" href="#COBREXA._mat_has_squashed_coupling-Tuple{Any}"><code>COBREXA._mat_has_squashed_coupling</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_mat_has_squashed_coupling(mat)</code></pre><p>Guesses whether C in the MAT file is stored in A=[S;C].</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L26-L30">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.balance-Tuple{MATModel}" href="#COBREXA.balance-Tuple{MATModel}"><code>COBREXA.balance</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">balance(m::MATModel)</code></pre><p>Extracts balance from the MAT model, defaulting to zeroes if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L66-L70">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.bounds-Tuple{MATModel}" href="#COBREXA.bounds-Tuple{MATModel}"><code>COBREXA.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">bounds(m::MATModel)</code></pre><p>Extracts bounds from the MAT file, saved under <code>lb</code> and <code>ub</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L56-L60">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.coupling-Tuple{MATModel}" href="#COBREXA.coupling-Tuple{MATModel}"><code>COBREXA.coupling</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">coupling(m::MATModel)</code></pre><p>Extract coupling matrix stored, in <code>C</code> key.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L87-L91">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.coupling_bounds-Tuple{MATModel}" href="#COBREXA.coupling_bounds-Tuple{MATModel}"><code>COBREXA.coupling_bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">coupling_bounds(m::MATModel)</code></pre><p>Extracts the coupling constraints. Currently, there are several accepted ways to store these in MATLAB models; this takes the constraints from vectors <code>cl</code> and <code>cu</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L96-L100">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.genes-Tuple{MATModel}" href="#COBREXA.genes-Tuple{MATModel}"><code>COBREXA.genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">genes(m::MATModel)</code></pre><p>Extracts the possible gene list from <code>genes</code> key.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L116-L120">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_charge-Tuple{MATModel, String}" href="#COBREXA.metabolite_charge-Tuple{MATModel, String}"><code>COBREXA.metabolite_charge</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_charge(m::MATModel, mid::String)</code></pre><p>Extract metabolite charge from <code>metCharge</code> or <code>metCharges</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L150-L154">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_compartment-Tuple{MATModel, String}" href="#COBREXA.metabolite_compartment-Tuple{MATModel, String}"><code>COBREXA.metabolite_compartment</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_compartment(m::MATModel, mid::String)</code></pre><p>Extract metabolite compartment from <code>metCompartment</code> or <code>metCompartments</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L160-L164">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_formula-Tuple{MATModel, String}" href="#COBREXA.metabolite_formula-Tuple{MATModel, String}"><code>COBREXA.metabolite_formula</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_formula(m::MATModel, mid::String)</code></pre><p>Extract metabolite formula from key <code>metFormula</code> or <code>metFormulas</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L140-L144">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolites-Tuple{MATModel}" href="#COBREXA.metabolites-Tuple{MATModel}"><code>COBREXA.metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolites(m::MATModel)::Vector{String}</code></pre><p>Extracts metabolite names from <code>mets</code> key in the MAT file.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L35-L39">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective-Tuple{MATModel}" href="#COBREXA.objective-Tuple{MATModel}"><code>COBREXA.objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">objective(m::MATModel)</code></pre><p>Extracts the objective from the MAT model (defaults to zeroes).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L79-L83">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_gene_association-Tuple{MATModel, String}" href="#COBREXA.reaction_gene_association-Tuple{MATModel, String}"><code>COBREXA.reaction_gene_association</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_gene_association(m::MATModel, rid::String)</code></pre><p>Extracts the associations from <code>grRules</code> key, if present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L126-L130">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reactions-Tuple{MATModel}" href="#COBREXA.reactions-Tuple{MATModel}"><code>COBREXA.reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reactions(m::MATModel)::Vector{String}</code></pre><p>Extracts reaction names from <code>rxns</code> key in the MAT file.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L13-L17">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.stoichiometry-Tuple{MATModel}" href="#COBREXA.stoichiometry-Tuple{MATModel}"><code>COBREXA.stoichiometry</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">stoichiometry(m::MATModel)</code></pre><p>Extract the stoichiometry matrix, stored under key <code>S</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/MATModel.jl#L49-L53">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.Metabolite" href="#COBREXA.Metabolite"><code>COBREXA.Metabolite</code></a> — <span class="docstring-category">Type</span></header><section><div><p>Metabolite structure.</p><p><strong>Fields</strong></p><pre><code class="language-none">id :: String +reactions(model) # see the list of reactions</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L1-L24">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Base.convert-Tuple{Type{JSONModel}, MetabolicModel}" href="#Base.convert-Tuple{Type{JSONModel}, MetabolicModel}"><code>Base.convert</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">Base.convert(::Type{JSONModel}, mm::MetabolicModel)</code></pre><p>Convert any <a href="#COBREXA.MetabolicModel"><code>MetabolicModel</code></a> to <a href="#COBREXA.JSONModel"><code>JSONModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L280-L284">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.bounds-Tuple{JSONModel}" href="#COBREXA.bounds-Tuple{JSONModel}"><code>COBREXA.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">bounds(model::JSONModel)</code></pre><p>Get the bounds for reactions, assuming the information is stored in <code>.lower_bound</code> and <code>.upper_bound</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L141-L146">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.gene_annotations-Tuple{JSONModel, String}" href="#COBREXA.gene_annotations-Tuple{JSONModel, String}"><code>COBREXA.gene_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">gene_annotations(model::JSONModel, gid::String)::Annotations</code></pre><p>Gene annotations from the <a href="#COBREXA.JSONModel"><code>JSONModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L219-L223">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.gene_notes-Tuple{JSONModel, String}" href="#COBREXA.gene_notes-Tuple{JSONModel, String}"><code>COBREXA.gene_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">gene_notes(model::JSONModel, gid::String)::Notes</code></pre><p>Gene notes from the <a href="#COBREXA.JSONModel"><code>JSONModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L229-L233">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.genes-Tuple{JSONModel}" href="#COBREXA.genes-Tuple{JSONModel}"><code>COBREXA.genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">genes(model::JSONModel)</code></pre><p>Extract gene names from a JSON model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L97-L101">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_annotations-Tuple{JSONModel, String}" href="#COBREXA.metabolite_annotations-Tuple{JSONModel, String}"><code>COBREXA.metabolite_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_annotations(model::JSONModel, mid::String)::Annotations</code></pre><p>Metabolite annotations from the <a href="#COBREXA.JSONModel"><code>JSONModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L259-L263">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_charge-Tuple{JSONModel, String}" href="#COBREXA.metabolite_charge-Tuple{JSONModel, String}"><code>COBREXA.metabolite_charge</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_charge(model::JSONModel, mid::String)</code></pre><p>Return the metabolite <code>.charge</code></p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L199-L203">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_compartment-Tuple{JSONModel, String}" href="#COBREXA.metabolite_compartment-Tuple{JSONModel, String}"><code>COBREXA.metabolite_compartment</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_compartment(model::JSONModel, mid::String)</code></pre><p>Return the metabolite <code>.compartment</code></p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L209-L213">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_formula-Tuple{JSONModel, String}" href="#COBREXA.metabolite_formula-Tuple{JSONModel, String}"><code>COBREXA.metabolite_formula</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_formula(model::JSONModel, mid::String)</code></pre><p>Parse and return the metabolite <code>.formula</code></p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L189-L193">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_notes-Tuple{JSONModel, String}" href="#COBREXA.metabolite_notes-Tuple{JSONModel, String}"><code>COBREXA.metabolite_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_notes(model::JSONModel, mid::String)::Notes</code></pre><p>Metabolite notes from the <a href="#COBREXA.JSONModel"><code>JSONModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L269-L273">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolites-Tuple{JSONModel}" href="#COBREXA.metabolites-Tuple{JSONModel}"><code>COBREXA.metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolites(model::JSONModel)</code></pre><p>Extract metabolite names (stored as <code>.id</code>) from JSON model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L84-L88">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective-Tuple{JSONModel}" href="#COBREXA.objective-Tuple{JSONModel}"><code>COBREXA.objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">objective(model::JSONModel)</code></pre><p>Collect <code>.objective_coefficient</code> keys from model reactions.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L158-L162">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_annotations-Tuple{JSONModel, String}" href="#COBREXA.reaction_annotations-Tuple{JSONModel, String}"><code>COBREXA.reaction_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_annotations(model::JSONModel, rid::String)::Annotations</code></pre><p>Reaction annotations from the <a href="#COBREXA.JSONModel"><code>JSONModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L239-L243">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_gene_association-Tuple{JSONModel, String}" href="#COBREXA.reaction_gene_association-Tuple{JSONModel, String}"><code>COBREXA.reaction_gene_association</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_gene_associaton(model::JSONModel, rid::String)</code></pre><p>Parses the <code>.gene_reaction_rule</code> from reactions.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L169-L173">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_notes-Tuple{JSONModel, String}" href="#COBREXA.reaction_notes-Tuple{JSONModel, String}"><code>COBREXA.reaction_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_notes(model::JSONModel, rid::String)::Notes</code></pre><p>Reaction notes from the <a href="#COBREXA.JSONModel"><code>JSONModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L249-L253">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_subsystem-Tuple{JSONModel, String}" href="#COBREXA.reaction_subsystem-Tuple{JSONModel, String}"><code>COBREXA.reaction_subsystem</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_subsystem(model::JSONModel, rid::String)</code></pre><p>Parses the <code>.subsystem</code> out from reactions.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L179-L183">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reactions-Tuple{JSONModel}" href="#COBREXA.reactions-Tuple{JSONModel}"><code>COBREXA.reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reactions(model::JSONModel)</code></pre><p>Extract reaction names (stored as <code>.id</code>) from JSON model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L71-L75">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.stoichiometry-Tuple{JSONModel}" href="#COBREXA.stoichiometry-Tuple{JSONModel}"><code>COBREXA.stoichiometry</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">stoichiometry(model::JSONModel)</code></pre><p>Get the stoichiometry. Assuming the information is stored in reaction object under key <code>.metabolites</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/JSONModel.jl#L108-L113">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.MATModel" href="#COBREXA.MATModel"><code>COBREXA.MATModel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">struct MATModel</code></pre><p>Wrapper around the models loaded in dictionaries from the MATLAB representation.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L1-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Base.convert-Tuple{Type{MATModel}, MetabolicModel}" href="#Base.convert-Tuple{Type{MATModel}, MetabolicModel}"><code>Base.convert</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">Base.convert(::Type{MATModel}, m::MetabolicModel)</code></pre><p>Convert any metabolic model to <code>MATModel</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L177-L181">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._mat_has_squashed_coupling-Tuple{Any}" href="#COBREXA._mat_has_squashed_coupling-Tuple{Any}"><code>COBREXA._mat_has_squashed_coupling</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_mat_has_squashed_coupling(mat)</code></pre><p>Guesses whether C in the MAT file is stored in A=[S;C].</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L26-L30">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.balance-Tuple{MATModel}" href="#COBREXA.balance-Tuple{MATModel}"><code>COBREXA.balance</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">balance(m::MATModel)</code></pre><p>Extracts balance from the MAT model, defaulting to zeroes if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L66-L70">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.bounds-Tuple{MATModel}" href="#COBREXA.bounds-Tuple{MATModel}"><code>COBREXA.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">bounds(m::MATModel)</code></pre><p>Extracts bounds from the MAT file, saved under <code>lb</code> and <code>ub</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L56-L60">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.coupling-Tuple{MATModel}" href="#COBREXA.coupling-Tuple{MATModel}"><code>COBREXA.coupling</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">coupling(m::MATModel)</code></pre><p>Extract coupling matrix stored, in <code>C</code> key.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L87-L91">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.coupling_bounds-Tuple{MATModel}" href="#COBREXA.coupling_bounds-Tuple{MATModel}"><code>COBREXA.coupling_bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">coupling_bounds(m::MATModel)</code></pre><p>Extracts the coupling constraints. Currently, there are several accepted ways to store these in MATLAB models; this takes the constraints from vectors <code>cl</code> and <code>cu</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L96-L100">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.genes-Tuple{MATModel}" href="#COBREXA.genes-Tuple{MATModel}"><code>COBREXA.genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">genes(m::MATModel)</code></pre><p>Extracts the possible gene list from <code>genes</code> key.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L116-L120">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_charge-Tuple{MATModel, String}" href="#COBREXA.metabolite_charge-Tuple{MATModel, String}"><code>COBREXA.metabolite_charge</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_charge(m::MATModel, mid::String)</code></pre><p>Extract metabolite charge from <code>metCharge</code> or <code>metCharges</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L150-L154">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_compartment-Tuple{MATModel, String}" href="#COBREXA.metabolite_compartment-Tuple{MATModel, String}"><code>COBREXA.metabolite_compartment</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_compartment(m::MATModel, mid::String)</code></pre><p>Extract metabolite compartment from <code>metCompartment</code> or <code>metCompartments</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L160-L164">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_formula-Tuple{MATModel, String}" href="#COBREXA.metabolite_formula-Tuple{MATModel, String}"><code>COBREXA.metabolite_formula</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_formula(m::MATModel, mid::String)</code></pre><p>Extract metabolite formula from key <code>metFormula</code> or <code>metFormulas</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L140-L144">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolites-Tuple{MATModel}" href="#COBREXA.metabolites-Tuple{MATModel}"><code>COBREXA.metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolites(m::MATModel)::Vector{String}</code></pre><p>Extracts metabolite names from <code>mets</code> key in the MAT file.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L35-L39">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective-Tuple{MATModel}" href="#COBREXA.objective-Tuple{MATModel}"><code>COBREXA.objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">objective(m::MATModel)</code></pre><p>Extracts the objective from the MAT model (defaults to zeroes).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L79-L83">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_gene_association-Tuple{MATModel, String}" href="#COBREXA.reaction_gene_association-Tuple{MATModel, String}"><code>COBREXA.reaction_gene_association</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_gene_association(m::MATModel, rid::String)</code></pre><p>Extracts the associations from <code>grRules</code> key, if present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L126-L130">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reactions-Tuple{MATModel}" href="#COBREXA.reactions-Tuple{MATModel}"><code>COBREXA.reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reactions(m::MATModel)::Vector{String}</code></pre><p>Extracts reaction names from <code>rxns</code> key in the MAT file.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L13-L17">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.stoichiometry-Tuple{MATModel}" href="#COBREXA.stoichiometry-Tuple{MATModel}"><code>COBREXA.stoichiometry</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">stoichiometry(m::MATModel)</code></pre><p>Extract the stoichiometry matrix, stored under key <code>S</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/MATModel.jl#L49-L53">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.Metabolite" href="#COBREXA.Metabolite"><code>COBREXA.Metabolite</code></a> — <span class="docstring-category">Type</span></header><section><div><p>Metabolite structure.</p><p><strong>Fields</strong></p><pre><code class="language-none">id :: String name :: String formula :: String charge :: Int compartment :: String notes :: Dict{String, Vector{String}} -annotation :: Dict{String, Union{Vector{String}, String}}</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/Metabolite.jl#L1-L14">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.Reaction" href="#COBREXA.Reaction"><code>COBREXA.Reaction</code></a> — <span class="docstring-category">Type</span></header><section><div><p>Reaction struct.</p><p><strong>Fields</strong></p><pre><code class="language-none">id :: String +annotation :: Dict{String, Union{Vector{String}, String}}</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/Metabolite.jl#L1-L14">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.Reaction" href="#COBREXA.Reaction"><code>COBREXA.Reaction</code></a> — <span class="docstring-category">Type</span></header><section><div><p>Reaction struct.</p><p><strong>Fields</strong></p><pre><code class="language-none">id :: String name :: String metabolites :: Dict{Metabolite, Float64} lb :: Float64 @@ -26,29 +26,29 @@ grr :: Vector{Vector{Gene}} subsystem :: String notes :: Dict{String, Vector{String}} annotation :: Dict{String, Union{Vector{String}, String}} -objective_coefficient :: Float64</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/Reaction.jl#L1-L17">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.ReactionStatus" href="#COBREXA.ReactionStatus"><code>COBREXA.ReactionStatus</code></a> — <span class="docstring-category">Type</span></header><section><div><p>Used for concise reporting of modeling results.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/ReactionStatus.jl#L1-L3">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.SBMLModel" href="#COBREXA.SBMLModel"><code>COBREXA.SBMLModel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">struct SBMLModel</code></pre><p>Thin wrapper around the model from SBML.jl library. Allows easy conversion from SBML to any other model format.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L1-L6">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Base.convert-Tuple{Type{SBMLModel}, MetabolicModel}" href="#Base.convert-Tuple{Type{SBMLModel}, MetabolicModel}"><code>Base.convert</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">Base.convert(::Type{SBMLModel}, mm::MetabolicModel)</code></pre><p>Convert any metabolic model to <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L139-L143">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.balance-Tuple{SBMLModel}" href="#COBREXA.balance-Tuple{SBMLModel}"><code>COBREXA.balance</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">balance(model::SBMLModel)::SparseVec</code></pre><p>Balance vector of a <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>. This is always zero.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L74-L78">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.bounds-Tuple{SBMLModel}" href="#COBREXA.bounds-Tuple{SBMLModel}"><code>COBREXA.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">bounds(model::SBMLModel)::Tuple{SparseVec,SparseVec}</code></pre><p>Get the lower and upper flux bounds of model <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>. Throws <code>DomainError</code> in case if the SBML contains mismatching units.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L49-L54">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.genes-Tuple{SBMLModel}" href="#COBREXA.genes-Tuple{SBMLModel}"><code>COBREXA.genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">genes(model::SBMLModel)::Vector{String}</code></pre><p>Get genes of a <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L88-L92">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_charge-Tuple{SBMLModel, String}" href="#COBREXA.metabolite_charge-Tuple{SBMLModel, String}"><code>COBREXA.metabolite_charge</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_charge(model::SBMLModel, mid::String)::Maybe{Int}</code></pre><p>Get charge of a chosen metabolite from <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L118-L122">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_formula-Tuple{SBMLModel, String}" href="#COBREXA.metabolite_formula-Tuple{SBMLModel, String}"><code>COBREXA.metabolite_formula</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_formula(model::SBMLModel, mid::String)::Maybe{MetaboliteFormula}</code></pre><p>Get <a href="#COBREXA.MetaboliteFormula"><code>MetaboliteFormula</code></a> from a chosen metabolite from <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L110-L114">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolites-Tuple{SBMLModel}" href="#COBREXA.metabolites-Tuple{SBMLModel}"><code>COBREXA.metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolites(model::SBMLModel)::Vector{String}</code></pre><p>Get metabolites from a <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L18-L22">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_genes-Tuple{SBMLModel}" href="#COBREXA.n_genes-Tuple{SBMLModel}"><code>COBREXA.n_genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_genes(model::SBMLModel)::Int</code></pre><p>Get number of genes in <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L95-L99">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_metabolites-Tuple{SBMLModel}" href="#COBREXA.n_metabolites-Tuple{SBMLModel}"><code>COBREXA.n_metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_metabolites(model::SBMLModel)::Int</code></pre><p>Efficient counting of metabolites in <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L32-L36">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_reactions-Tuple{SBMLModel}" href="#COBREXA.n_reactions-Tuple{SBMLModel}"><code>COBREXA.n_reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_reactions(model::SBMLModel)::Int</code></pre><p>Efficient counting of reactions in <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L25-L29">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective-Tuple{SBMLModel}" href="#COBREXA.objective-Tuple{SBMLModel}"><code>COBREXA.objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">objective(model::SBMLModel)::SparseVec</code></pre><p>Objective of the <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>. </p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L81-L85">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_gene_association-Tuple{SBMLModel, String}" href="#COBREXA.reaction_gene_association-Tuple{SBMLModel, String}"><code>COBREXA.reaction_gene_association</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_gene_association(model::SBMLModel, rid::String)::Maybe{GeneAssociation}</code></pre><p>Retrieve the <a href="#COBREXA.GeneAssociation"><code>GeneAssociation</code></a> from <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L102-L106">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reactions-Tuple{SBMLModel}" href="#COBREXA.reactions-Tuple{SBMLModel}"><code>COBREXA.reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reactions(model::SBMLModel)::Vector{String}</code></pre><p>Get reactions from a <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L11-L15">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.stoichiometry-Tuple{SBMLModel}" href="#COBREXA.stoichiometry-Tuple{SBMLModel}"><code>COBREXA.stoichiometry</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">stoichiometry(model::SBMLModel)::SparseMat</code></pre><p>Recreate the stoichiometry matrix from the <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/SBMLModel.jl#L39-L43">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.Serialized" href="#COBREXA.Serialized"><code>COBREXA.Serialized</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">mutable struct Serialized{M <: MetabolicModel} +objective_coefficient :: Float64</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/Reaction.jl#L1-L17">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.ReactionStatus" href="#COBREXA.ReactionStatus"><code>COBREXA.ReactionStatus</code></a> — <span class="docstring-category">Type</span></header><section><div><p>Used for concise reporting of modeling results.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/ReactionStatus.jl#L1-L3">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.SBMLModel" href="#COBREXA.SBMLModel"><code>COBREXA.SBMLModel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">struct SBMLModel</code></pre><p>Thin wrapper around the model from SBML.jl library. Allows easy conversion from SBML to any other model format.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L1-L6">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Base.convert-Tuple{Type{SBMLModel}, MetabolicModel}" href="#Base.convert-Tuple{Type{SBMLModel}, MetabolicModel}"><code>Base.convert</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">Base.convert(::Type{SBMLModel}, mm::MetabolicModel)</code></pre><p>Convert any metabolic model to <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L139-L143">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.balance-Tuple{SBMLModel}" href="#COBREXA.balance-Tuple{SBMLModel}"><code>COBREXA.balance</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">balance(model::SBMLModel)::SparseVec</code></pre><p>Balance vector of a <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>. This is always zero.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L74-L78">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.bounds-Tuple{SBMLModel}" href="#COBREXA.bounds-Tuple{SBMLModel}"><code>COBREXA.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">bounds(model::SBMLModel)::Tuple{SparseVec,SparseVec}</code></pre><p>Get the lower and upper flux bounds of model <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>. Throws <code>DomainError</code> in case if the SBML contains mismatching units.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L49-L54">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.genes-Tuple{SBMLModel}" href="#COBREXA.genes-Tuple{SBMLModel}"><code>COBREXA.genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">genes(model::SBMLModel)::Vector{String}</code></pre><p>Get genes of a <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L88-L92">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_charge-Tuple{SBMLModel, String}" href="#COBREXA.metabolite_charge-Tuple{SBMLModel, String}"><code>COBREXA.metabolite_charge</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_charge(model::SBMLModel, mid::String)::Maybe{Int}</code></pre><p>Get charge of a chosen metabolite from <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L118-L122">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_formula-Tuple{SBMLModel, String}" href="#COBREXA.metabolite_formula-Tuple{SBMLModel, String}"><code>COBREXA.metabolite_formula</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_formula(model::SBMLModel, mid::String)::Maybe{MetaboliteFormula}</code></pre><p>Get <a href="#COBREXA.MetaboliteFormula"><code>MetaboliteFormula</code></a> from a chosen metabolite from <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L110-L114">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolites-Tuple{SBMLModel}" href="#COBREXA.metabolites-Tuple{SBMLModel}"><code>COBREXA.metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolites(model::SBMLModel)::Vector{String}</code></pre><p>Get metabolites from a <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L18-L22">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_genes-Tuple{SBMLModel}" href="#COBREXA.n_genes-Tuple{SBMLModel}"><code>COBREXA.n_genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_genes(model::SBMLModel)::Int</code></pre><p>Get number of genes in <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L95-L99">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_metabolites-Tuple{SBMLModel}" href="#COBREXA.n_metabolites-Tuple{SBMLModel}"><code>COBREXA.n_metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_metabolites(model::SBMLModel)::Int</code></pre><p>Efficient counting of metabolites in <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L32-L36">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_reactions-Tuple{SBMLModel}" href="#COBREXA.n_reactions-Tuple{SBMLModel}"><code>COBREXA.n_reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_reactions(model::SBMLModel)::Int</code></pre><p>Efficient counting of reactions in <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L25-L29">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective-Tuple{SBMLModel}" href="#COBREXA.objective-Tuple{SBMLModel}"><code>COBREXA.objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">objective(model::SBMLModel)::SparseVec</code></pre><p>Objective of the <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>. </p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L81-L85">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_gene_association-Tuple{SBMLModel, String}" href="#COBREXA.reaction_gene_association-Tuple{SBMLModel, String}"><code>COBREXA.reaction_gene_association</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_gene_association(model::SBMLModel, rid::String)::Maybe{GeneAssociation}</code></pre><p>Retrieve the <a href="#COBREXA.GeneAssociation"><code>GeneAssociation</code></a> from <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L102-L106">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reactions-Tuple{SBMLModel}" href="#COBREXA.reactions-Tuple{SBMLModel}"><code>COBREXA.reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reactions(model::SBMLModel)::Vector{String}</code></pre><p>Get reactions from a <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L11-L15">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.stoichiometry-Tuple{SBMLModel}" href="#COBREXA.stoichiometry-Tuple{SBMLModel}"><code>COBREXA.stoichiometry</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">stoichiometry(model::SBMLModel)::SparseMat</code></pre><p>Recreate the stoichiometry matrix from the <a href="#COBREXA.SBMLModel"><code>SBMLModel</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/SBMLModel.jl#L39-L43">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.Serialized" href="#COBREXA.Serialized"><code>COBREXA.Serialized</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">mutable struct Serialized{M <: MetabolicModel} m::Maybe{M} filename::String -end</code></pre><p>A meta-model that represents a model that is serialized on the disk. The internal model will be loaded on-demand by using any accessor, or by calling <a href="#COBREXA.precache!-Tuple{MetabolicModel}"><code>precache!</code></a> directly.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/Serialized.jl#L2-L11">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.precache!-Tuple{Serialized}" href="#COBREXA.precache!-Tuple{Serialized}"><code>COBREXA.precache!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">precache!(model::Serialized{MetabolicModel})::Nothing</code></pre><p>Load the <code>Serialized</code> model from disk in case it's not alreadly loaded.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/Serialized.jl#L48-L52">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.StandardModel" href="#COBREXA.StandardModel"><code>COBREXA.StandardModel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">mutable struct StandardModel</code></pre><p><code>StandardModel</code> is used to store a constraint based metabolic model with meta-information. Meta-information is defined as annotation details, which include gene-reaction-rules, formulas, etc.</p><p>This model type seeks to keep as much meta-information as possible, as opposed to <code>CoreModel</code> and <code>CoreModelCoupled</code>, which keep the bare neccessities only. When merging models and keeping meta-information is important, use this as the model type. If meta-information is not important, use the more efficient core model types. See <a href="#COBREXA.CoreModel"><code>CoreModel</code></a> and <a href="#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a> for comparison.</p><p>In this model, reactions, metabolites, and genes are stored in ordered dictionaries indexed by each struct's <code>id</code> field. For example, <code>model.reactions["rxn1_id"]</code> returns a <code>Reaction</code> where the field <code>id</code> equals <code>"rxn1_id"</code>. This makes adding and removing reactions efficient. </p><p>Note that the stoichiometric matrix (or any other core data, e.g. flux bounds) is not stored directly as in <code>CoreModel</code>. When this model type is used in analysis functions, these core data structures are built from scratch each time an analysis function is called. This can cause performance issues if you run many small analysis functions sequentially. Consider using the core model types if performance is critical.</p><p>See also: <a href="#COBREXA.Reaction"><code>Reaction</code></a>, <a href="#COBREXA.Metabolite"><code>Metabolite</code></a>, <a href="#COBREXA.Gene"><code>Gene</code></a></p><p><strong>Fields</strong></p><pre><code class="language-none">id :: String +end</code></pre><p>A meta-model that represents a model that is serialized on the disk. The internal model will be loaded on-demand by using any accessor, or by calling <a href="#COBREXA.precache!-Tuple{MetabolicModel}"><code>precache!</code></a> directly.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/Serialized.jl#L2-L11">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.precache!-Tuple{Serialized}" href="#COBREXA.precache!-Tuple{Serialized}"><code>COBREXA.precache!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">precache!(model::Serialized{MetabolicModel})::Nothing</code></pre><p>Load the <code>Serialized</code> model from disk in case it's not alreadly loaded.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/Serialized.jl#L48-L52">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.StandardModel" href="#COBREXA.StandardModel"><code>COBREXA.StandardModel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia">mutable struct StandardModel</code></pre><p><code>StandardModel</code> is used to store a constraint based metabolic model with meta-information. Meta-information is defined as annotation details, which include gene-reaction-rules, formulas, etc.</p><p>This model type seeks to keep as much meta-information as possible, as opposed to <code>CoreModel</code> and <code>CoreModelCoupled</code>, which keep the bare neccessities only. When merging models and keeping meta-information is important, use this as the model type. If meta-information is not important, use the more efficient core model types. See <a href="#COBREXA.CoreModel"><code>CoreModel</code></a> and <a href="#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a> for comparison.</p><p>In this model, reactions, metabolites, and genes are stored in ordered dictionaries indexed by each struct's <code>id</code> field. For example, <code>model.reactions["rxn1_id"]</code> returns a <code>Reaction</code> where the field <code>id</code> equals <code>"rxn1_id"</code>. This makes adding and removing reactions efficient. </p><p>Note that the stoichiometric matrix (or any other core data, e.g. flux bounds) is not stored directly as in <code>CoreModel</code>. When this model type is used in analysis functions, these core data structures are built from scratch each time an analysis function is called. This can cause performance issues if you run many small analysis functions sequentially. Consider using the core model types if performance is critical.</p><p>See also: <a href="#COBREXA.Reaction"><code>Reaction</code></a>, <a href="#COBREXA.Metabolite"><code>Metabolite</code></a>, <a href="#COBREXA.Gene"><code>Gene</code></a></p><p><strong>Fields</strong></p><pre><code class="language-none">id :: String reactions :: OrderedDict{String, Reaction} metabolites :: OrderedDict{String, Metabolite} -genes :: OrderedDict{String, Gene}</code></pre><p><strong>Example</strong></p><pre><code class="language-none">model = load_model(StandardModel, "model_location")</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L1-L36">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Base.convert-Tuple{Type{StandardModel}, MetabolicModel}" href="#Base.convert-Tuple{Type{StandardModel}, MetabolicModel}"><code>Base.convert</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Base.convert(::Type{StandardModel}, model::MetabolicModel)</p><p>Convert any <code>MetabolicModel</code> into a <code>StandardModel</code>. Note, some data loss may occur since only the generic interface is used during the conversion process.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L285-L291">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.balance-Tuple{StandardModel}" href="#COBREXA.balance-Tuple{StandardModel}"><code>COBREXA.balance</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">balance(model::StandardModel)</code></pre><p>Return the balance of the linear problem, i.e. b in Sv = 0 where S is the stoichiometric matrix and v is the flux vector.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L156-L161">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.bounds-Tuple{StandardModel}" href="#COBREXA.bounds-Tuple{StandardModel}"><code>COBREXA.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">bounds(model::StandardModel)</code></pre><p>Return the lower and upper bounds, respectively, for reactions in <code>model</code>. Order matches that of the reaction ids returned in <code>reactions()</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L144-L149">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.gene_annotations-Tuple{StandardModel, String}" href="#COBREXA.gene_annotations-Tuple{StandardModel, String}"><code>COBREXA.gene_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">gene_annotations(model::StandardModel, id::String)::Annotations</code></pre><p>Return the annotation associated with gene <code>id</code> in <code>model</code>. Return an empty Dict if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L255-L260">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.gene_notes-Tuple{StandardModel, String}" href="#COBREXA.gene_notes-Tuple{StandardModel, String}"><code>COBREXA.gene_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">gene_notes(model::StandardModel, id::String)::Notes</code></pre><p>Return the notes associated with gene <code>id</code> in <code>model</code>. Return an empty Dict if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L245-L250">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.genes-Tuple{StandardModel}" href="#COBREXA.genes-Tuple{StandardModel}"><code>COBREXA.genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">genes(model::StandardModel)</code></pre><p>Return a vector of gene id strings in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L85-L89">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.lower_bounds-Tuple{StandardModel}" href="#COBREXA.lower_bounds-Tuple{StandardModel}"><code>COBREXA.lower_bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">lower_bounds(model::StandardModel)</code></pre><p>Return the lower bounds for all reactions in <code>model</code> in sparse format.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L125-L129">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_annotations-Tuple{StandardModel, String}" href="#COBREXA.metabolite_annotations-Tuple{StandardModel, String}"><code>COBREXA.metabolite_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_annotations(model::StandardModel, id::String)::Annotations</code></pre><p>Return the annotation associated with metabolite <code>id</code> in <code>model</code>. Return an empty Dict if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L235-L240">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_charge-Tuple{StandardModel, String}" href="#COBREXA.metabolite_charge-Tuple{StandardModel, String}"><code>COBREXA.metabolite_charge</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_charge(model::StandardModel, id::String)</code></pre><p>Return the charge associated with metabolite <code>id</code> in <code>model</code>. Return nothing if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L195-L200">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_compartment-Tuple{StandardModel, String}" href="#COBREXA.metabolite_compartment-Tuple{StandardModel, String}"><code>COBREXA.metabolite_compartment</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_compartment(model::StandardModel, id::String)</code></pre><p>Return compartment associated with metabolite <code>id</code> in <code>model</code>. Return <code>nothing</code> if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L205-L210">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_formula-Tuple{StandardModel, String}" href="#COBREXA.metabolite_formula-Tuple{StandardModel, String}"><code>COBREXA.metabolite_formula</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_formula(model::StandardModel, id::String)</code></pre><p>Return the formula of reaction <code>id</code> in <code>model</code>. Return <code>nothing</code> if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L185-L190">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_notes-Tuple{StandardModel, String}" href="#COBREXA.metabolite_notes-Tuple{StandardModel, String}"><code>COBREXA.metabolite_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_notes(model::StandardModel, id::String)::Notes</code></pre><p>Return the notes associated with metabolite <code>id</code> in <code>model</code>. Return an empty Dict if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L225-L230">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolites-Tuple{StandardModel}" href="#COBREXA.metabolites-Tuple{StandardModel}"><code>COBREXA.metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolites(model::StandardModel)</code></pre><p>Return a vector of metabolite id strings contained in <code>model</code>. The order of metabolite strings returned here matches the order used to construct the stoichiometric matrix.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L69-L75">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_genes-Tuple{StandardModel}" href="#COBREXA.n_genes-Tuple{StandardModel}"><code>COBREXA.n_genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_genes(model::StandardModel)</code></pre><p>Return the number of genes in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L92-L96">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_metabolites-Tuple{StandardModel}" href="#COBREXA.n_metabolites-Tuple{StandardModel}"><code>COBREXA.n_metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><p>n_metabolites(model::StandardModel)</p><p>Return the number of metabolites in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L78-L82">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_reactions-Tuple{StandardModel}" href="#COBREXA.n_reactions-Tuple{StandardModel}"><code>COBREXA.n_reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_reactions(model::StandardModel)</code></pre><p>Return the number of reactions contained in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L61-L65">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective-Tuple{StandardModel}" href="#COBREXA.objective-Tuple{StandardModel}"><code>COBREXA.objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">objective(model::StandardModel)</code></pre><p>Return sparse objective vector for <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L164-L168">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_annotations-Tuple{StandardModel, String}" href="#COBREXA.reaction_annotations-Tuple{StandardModel, String}"><code>COBREXA.reaction_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_annotations(model::StandardModel, id::String)::Annotations</code></pre><p>Return the annotation associated with reaction <code>id</code> in <code>model</code>. Return an empty Dict if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L275-L280">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_gene_association-Tuple{StandardModel, String}" href="#COBREXA.reaction_gene_association-Tuple{StandardModel, String}"><code>COBREXA.reaction_gene_association</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_gene_association(model::StandardModel, id::String)</code></pre><p>Return the gene reaction rule in string format for reaction with <code>id</code> in <code>model</code>. Return <code>nothing</code> if not available.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L175-L180">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_notes-Tuple{StandardModel, String}" href="#COBREXA.reaction_notes-Tuple{StandardModel, String}"><code>COBREXA.reaction_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_notes(model::StandardModel, id::String)::Notes</code></pre><p>Return the notes associated with reaction <code>id</code> in <code>model</code>. Return an empty Dict if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L265-L270">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_subsystem-Tuple{StandardModel, String}" href="#COBREXA.reaction_subsystem-Tuple{StandardModel, String}"><code>COBREXA.reaction_subsystem</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_subsystem(id::String, model::StandardModel)</code></pre><p>Return the subsystem associated with reaction <code>id</code> in <code>model</code>. Return <code>nothing</code> if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L215-L220">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reactions-Tuple{StandardModel}" href="#COBREXA.reactions-Tuple{StandardModel}"><code>COBREXA.reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reactions(model::StandardModel)</code></pre><p>Return a vector of reaction id strings contained in <code>model</code>. The order of reaction ids returned here matches the order used to construct the stoichiometric matrix.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L52-L58">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.stoichiometry-Tuple{StandardModel}" href="#COBREXA.stoichiometry-Tuple{StandardModel}"><code>COBREXA.stoichiometry</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">stoichiometry(model::StandardModel)</code></pre><p>Return the stoichiometric matrix associated with <code>model</code> in sparse format.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L99-L103">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.upper_bounds-Tuple{StandardModel}" href="#COBREXA.upper_bounds-Tuple{StandardModel}"><code>COBREXA.upper_bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">upper_bounds(model::StandardModel)</code></pre><p>Return the upper bounds for all reactions in <code>model</code> in sparse format. Order matches that of the reaction ids returned in <code>reactions()</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/types/StandardModel.jl#L134-L139">source</a></section></article><h2 id="Base-functions"><a class="docs-heading-anchor" href="#Base-functions">Base functions</a><a id="Base-functions-1"></a><a class="docs-heading-anchor-permalink" href="#Base-functions" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="COBREXA._constants" href="#COBREXA._constants"><code>COBREXA._constants</code></a> — <span class="docstring-category">Constant</span></header><section><div><p>A named tuple that contains the magic values that are used globally for whatever purposes.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/constants.jl#L2-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.get_bound_vectors-Tuple{Any}" href="#COBREXA.get_bound_vectors-Tuple{Any}"><code>COBREXA.get_bound_vectors</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">get_bound_vectors(opt_model)</code></pre><p>Returns vectors of the lower and upper bounds of <code>opt_model</code> constraints, where <code>opt_model</code> is a JuMP model constructed by e.g. <a href="#COBREXA.make_optimization_model-Tuple{MetabolicModel, Any}"><code>make_optimization_model</code></a> or <a href="#COBREXA.flux_balance_analysis-Union{Tuple{M}, Tuple{M, Any}} where M<:MetabolicModel"><code>flux_balance_analysis</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/solver.jl#L62-L68">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.is_solved-Tuple{Any}" href="#COBREXA.is_solved-Tuple{Any}"><code>COBREXA.is_solved</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">is_solved(optmodel)</code></pre><p>Return <code>true</code> if <code>optmodel</code> solved successfully (solution is optimal or locally optimal). Return <code>false</code> if any other termination status is reached. Termination status is defined in the documentation of <code>JuMP</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/solver.jl#L50-L56">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.make_optimization_model-Tuple{MetabolicModel, Any}" href="#COBREXA.make_optimization_model-Tuple{MetabolicModel, Any}"><code>COBREXA.make_optimization_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">make_optimization_model( +genes :: OrderedDict{String, Gene}</code></pre><p><strong>Example</strong></p><pre><code class="language-none">model = load_model(StandardModel, "model_location")</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L1-L36">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Base.convert-Tuple{Type{StandardModel}, MetabolicModel}" href="#Base.convert-Tuple{Type{StandardModel}, MetabolicModel}"><code>Base.convert</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Base.convert(::Type{StandardModel}, model::MetabolicModel)</p><p>Convert any <code>MetabolicModel</code> into a <code>StandardModel</code>. Note, some data loss may occur since only the generic interface is used during the conversion process.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L285-L291">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.balance-Tuple{StandardModel}" href="#COBREXA.balance-Tuple{StandardModel}"><code>COBREXA.balance</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">balance(model::StandardModel)</code></pre><p>Return the balance of the linear problem, i.e. b in Sv = 0 where S is the stoichiometric matrix and v is the flux vector.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L156-L161">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.bounds-Tuple{StandardModel}" href="#COBREXA.bounds-Tuple{StandardModel}"><code>COBREXA.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">bounds(model::StandardModel)</code></pre><p>Return the lower and upper bounds, respectively, for reactions in <code>model</code>. Order matches that of the reaction ids returned in <code>reactions()</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L144-L149">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.gene_annotations-Tuple{StandardModel, String}" href="#COBREXA.gene_annotations-Tuple{StandardModel, String}"><code>COBREXA.gene_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">gene_annotations(model::StandardModel, id::String)::Annotations</code></pre><p>Return the annotation associated with gene <code>id</code> in <code>model</code>. Return an empty Dict if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L255-L260">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.gene_notes-Tuple{StandardModel, String}" href="#COBREXA.gene_notes-Tuple{StandardModel, String}"><code>COBREXA.gene_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">gene_notes(model::StandardModel, id::String)::Notes</code></pre><p>Return the notes associated with gene <code>id</code> in <code>model</code>. Return an empty Dict if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L245-L250">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.genes-Tuple{StandardModel}" href="#COBREXA.genes-Tuple{StandardModel}"><code>COBREXA.genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">genes(model::StandardModel)</code></pre><p>Return a vector of gene id strings in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L85-L89">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.lower_bounds-Tuple{StandardModel}" href="#COBREXA.lower_bounds-Tuple{StandardModel}"><code>COBREXA.lower_bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">lower_bounds(model::StandardModel)</code></pre><p>Return the lower bounds for all reactions in <code>model</code> in sparse format.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L125-L129">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_annotations-Tuple{StandardModel, String}" href="#COBREXA.metabolite_annotations-Tuple{StandardModel, String}"><code>COBREXA.metabolite_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_annotations(model::StandardModel, id::String)::Annotations</code></pre><p>Return the annotation associated with metabolite <code>id</code> in <code>model</code>. Return an empty Dict if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L235-L240">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_charge-Tuple{StandardModel, String}" href="#COBREXA.metabolite_charge-Tuple{StandardModel, String}"><code>COBREXA.metabolite_charge</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_charge(model::StandardModel, id::String)</code></pre><p>Return the charge associated with metabolite <code>id</code> in <code>model</code>. Return nothing if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L195-L200">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_compartment-Tuple{StandardModel, String}" href="#COBREXA.metabolite_compartment-Tuple{StandardModel, String}"><code>COBREXA.metabolite_compartment</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_compartment(model::StandardModel, id::String)</code></pre><p>Return compartment associated with metabolite <code>id</code> in <code>model</code>. Return <code>nothing</code> if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L205-L210">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_formula-Tuple{StandardModel, String}" href="#COBREXA.metabolite_formula-Tuple{StandardModel, String}"><code>COBREXA.metabolite_formula</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_formula(model::StandardModel, id::String)</code></pre><p>Return the formula of reaction <code>id</code> in <code>model</code>. Return <code>nothing</code> if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L185-L190">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_notes-Tuple{StandardModel, String}" href="#COBREXA.metabolite_notes-Tuple{StandardModel, String}"><code>COBREXA.metabolite_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_notes(model::StandardModel, id::String)::Notes</code></pre><p>Return the notes associated with metabolite <code>id</code> in <code>model</code>. Return an empty Dict if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L225-L230">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolites-Tuple{StandardModel}" href="#COBREXA.metabolites-Tuple{StandardModel}"><code>COBREXA.metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolites(model::StandardModel)</code></pre><p>Return a vector of metabolite id strings contained in <code>model</code>. The order of metabolite strings returned here matches the order used to construct the stoichiometric matrix.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L69-L75">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_genes-Tuple{StandardModel}" href="#COBREXA.n_genes-Tuple{StandardModel}"><code>COBREXA.n_genes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_genes(model::StandardModel)</code></pre><p>Return the number of genes in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L92-L96">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_metabolites-Tuple{StandardModel}" href="#COBREXA.n_metabolites-Tuple{StandardModel}"><code>COBREXA.n_metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><p>n_metabolites(model::StandardModel)</p><p>Return the number of metabolites in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L78-L82">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.n_reactions-Tuple{StandardModel}" href="#COBREXA.n_reactions-Tuple{StandardModel}"><code>COBREXA.n_reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">n_reactions(model::StandardModel)</code></pre><p>Return the number of reactions contained in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L61-L65">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective-Tuple{StandardModel}" href="#COBREXA.objective-Tuple{StandardModel}"><code>COBREXA.objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">objective(model::StandardModel)</code></pre><p>Return sparse objective vector for <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L164-L168">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_annotations-Tuple{StandardModel, String}" href="#COBREXA.reaction_annotations-Tuple{StandardModel, String}"><code>COBREXA.reaction_annotations</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_annotations(model::StandardModel, id::String)::Annotations</code></pre><p>Return the annotation associated with reaction <code>id</code> in <code>model</code>. Return an empty Dict if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L275-L280">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_gene_association-Tuple{StandardModel, String}" href="#COBREXA.reaction_gene_association-Tuple{StandardModel, String}"><code>COBREXA.reaction_gene_association</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_gene_association(model::StandardModel, id::String)</code></pre><p>Return the gene reaction rule in string format for reaction with <code>id</code> in <code>model</code>. Return <code>nothing</code> if not available.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L175-L180">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_notes-Tuple{StandardModel, String}" href="#COBREXA.reaction_notes-Tuple{StandardModel, String}"><code>COBREXA.reaction_notes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_notes(model::StandardModel, id::String)::Notes</code></pre><p>Return the notes associated with reaction <code>id</code> in <code>model</code>. Return an empty Dict if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L265-L270">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reaction_subsystem-Tuple{StandardModel, String}" href="#COBREXA.reaction_subsystem-Tuple{StandardModel, String}"><code>COBREXA.reaction_subsystem</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reaction_subsystem(id::String, model::StandardModel)</code></pre><p>Return the subsystem associated with reaction <code>id</code> in <code>model</code>. Return <code>nothing</code> if not present.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L215-L220">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.reactions-Tuple{StandardModel}" href="#COBREXA.reactions-Tuple{StandardModel}"><code>COBREXA.reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">reactions(model::StandardModel)</code></pre><p>Return a vector of reaction id strings contained in <code>model</code>. The order of reaction ids returned here matches the order used to construct the stoichiometric matrix.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L52-L58">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.stoichiometry-Tuple{StandardModel}" href="#COBREXA.stoichiometry-Tuple{StandardModel}"><code>COBREXA.stoichiometry</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">stoichiometry(model::StandardModel)</code></pre><p>Return the stoichiometric matrix associated with <code>model</code> in sparse format.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L99-L103">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.upper_bounds-Tuple{StandardModel}" href="#COBREXA.upper_bounds-Tuple{StandardModel}"><code>COBREXA.upper_bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">upper_bounds(model::StandardModel)</code></pre><p>Return the upper bounds for all reactions in <code>model</code> in sparse format. Order matches that of the reaction ids returned in <code>reactions()</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/types/StandardModel.jl#L134-L139">source</a></section></article><h2 id="Base-functions"><a class="docs-heading-anchor" href="#Base-functions">Base functions</a><a id="Base-functions-1"></a><a class="docs-heading-anchor-permalink" href="#Base-functions" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="COBREXA._constants" href="#COBREXA._constants"><code>COBREXA._constants</code></a> — <span class="docstring-category">Constant</span></header><section><div><p>A named tuple that contains the magic values that are used globally for whatever purposes.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/constants.jl#L2-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.get_bound_vectors-Tuple{Any}" href="#COBREXA.get_bound_vectors-Tuple{Any}"><code>COBREXA.get_bound_vectors</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">get_bound_vectors(opt_model)</code></pre><p>Returns vectors of the lower and upper bounds of <code>opt_model</code> constraints, where <code>opt_model</code> is a JuMP model constructed by e.g. <a href="#COBREXA.make_optimization_model-Tuple{MetabolicModel, Any}"><code>make_optimization_model</code></a> or <a href="#COBREXA.flux_balance_analysis-Union{Tuple{M}, Tuple{M, Any}} where M<:MetabolicModel"><code>flux_balance_analysis</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/solver.jl#L62-L68">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.is_solved-Tuple{Any}" href="#COBREXA.is_solved-Tuple{Any}"><code>COBREXA.is_solved</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">is_solved(optmodel)</code></pre><p>Return <code>true</code> if <code>optmodel</code> solved successfully (solution is optimal or locally optimal). Return <code>false</code> if any other termination status is reached. Termination status is defined in the documentation of <code>JuMP</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/solver.jl#L50-L56">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.make_optimization_model-Tuple{MetabolicModel, Any}" href="#COBREXA.make_optimization_model-Tuple{MetabolicModel, Any}"><code>COBREXA.make_optimization_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">make_optimization_model( model::MetabolicModel, optimizer; sense = MOI.MAX_SENSE, -)</code></pre><p>Convert <code>MetabolicModel</code>s to a JuMP model, place objectives and the equality constraint.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/solver.jl#L2-L11">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.optimize_model-Tuple{MetabolicModel, Any}" href="#COBREXA.optimize_model-Tuple{MetabolicModel, Any}"><code>COBREXA.optimize_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">optimize_model( +)</code></pre><p>Convert <code>MetabolicModel</code>s to a JuMP model, place objectives and the equality constraint.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/solver.jl#L2-L11">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.optimize_model-Tuple{MetabolicModel, Any}" href="#COBREXA.optimize_model-Tuple{MetabolicModel, Any}"><code>COBREXA.optimize_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">optimize_model( model::MetabolicModel, optimizer; sense = MOI.MIN_SENSE, -)</code></pre><p>Use JuMP to solve an instance of CoreModel</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/solver.jl#L34-L42">source</a></section></article><h2 id="File-I/O-and-serialization"><a class="docs-heading-anchor" href="#File-I/O-and-serialization">File I/O and serialization</a><a id="File-I/O-and-serialization-1"></a><a class="docs-heading-anchor-permalink" href="#File-I/O-and-serialization" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="COBREXA.load_model-Tuple{String}" href="#COBREXA.load_model-Tuple{String}"><code>COBREXA.load_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">load_model(file_name::String)::MetabolicModel</code></pre><p>Generic function for loading models that chooses a specific loader function from the <code>file_name</code> extension, or throws an error.</p><p>Currently, these model types are supported:</p><ul><li>SBML models (<code>*.xml</code>, loaded with <a href="#COBREXA.load_sbml_model-Tuple{String}"><code>load_sbml_model</code></a>)</li><li>JSON models (<code>*.json</code>, loaded with <a href="#COBREXA.load_json_model-Tuple{String}"><code>load_json_model</code></a>)</li><li>MATLAB models (<code>*.mat</code>, loaded with <a href="#COBREXA.load_mat_model-Tuple{String}"><code>load_mat_model</code></a>)</li></ul></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/io/io.jl#L2-L13">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.load_model-Union{Tuple{T}, Tuple{Type{T}, String}} where T<:MetabolicModel" href="#COBREXA.load_model-Union{Tuple{T}, Tuple{Type{T}, String}} where T<:MetabolicModel"><code>COBREXA.load_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">load_model(type::Type{T}, file_name::String)::T where T</code></pre><p>Helper function tht loads the model using <a href="#COBREXA.load_model-Tuple{String}"><code>load_model</code></a> and return it converted to <code>type</code>.</p><p><strong>Example:</strong></p><pre><code class="language-none">load_model(CoreModel, "mySBMLModel.xml")</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/io/io.jl#L27-L36">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.save_model-Tuple{MetabolicModel, String}" href="#COBREXA.save_model-Tuple{MetabolicModel, String}"><code>COBREXA.save_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">save_model(model::MetabolicModel, file_name::String)</code></pre><p>Generic function for saving models that chooses a specific writer function from the <code>file_name</code> extension, or throws an error.</p><p>Currently, these model types are supported:</p><ul><li>JSON models (<code>*.json</code>, loaded with <a href="#COBREXA.save_json_model-Tuple{MetabolicModel, String}"><code>save_json_model</code></a>)</li><li>MATLAB models (<code>*.mat</code>, loaded with <a href="#COBREXA.save_mat_model-Tuple{MetabolicModel, String}"><code>save_mat_model</code></a>)</li></ul></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/io/io.jl#L41-L51">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.load_json_model-Tuple{String}" href="#COBREXA.load_json_model-Tuple{String}"><code>COBREXA.load_json_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">load_json_model(filename::String)::JSONModel</code></pre><p>Load and return a JSON-formatted model that is stored in <code>file_name</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/io/json.jl#L1-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.save_json_model-Tuple{MetabolicModel, String}" href="#COBREXA.save_json_model-Tuple{MetabolicModel, String}"><code>COBREXA.save_json_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">save_json_model(model::MetabolicModel, file_name::String)</code></pre><p>Save a <a href="#COBREXA.JSONModel"><code>JSONModel</code></a> in <code>model</code> to a JSON file <code>file_name</code>.</p><p>In case the <code>model</code> is not <code>JSONModel</code>, it will be converted automatically.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/io/json.jl#L10-L16">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.load_mat_model-Tuple{String}" href="#COBREXA.load_mat_model-Tuple{String}"><code>COBREXA.load_mat_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">load_mat_model(file_name::String)</code></pre><p>Load and return a MATLAB file <code>file_name</code> that contains a COBRA-compatible model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/io/mat.jl#L2-L7">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.save_mat_model-Tuple{MetabolicModel, String}" href="#COBREXA.save_mat_model-Tuple{MetabolicModel, String}"><code>COBREXA.save_mat_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">save_mat_model(model::MetabolicModel, file_name::String; model_name::String="model")</code></pre><p>Save a <a href="#COBREXA.MATModel"><code>MATModel</code></a> in <code>model</code> to a MATLAB file <code>file_name</code> in a format compatible with other MATLAB-based COBRA software.</p><p>In case the <code>model</code> is not <code>MATModel</code>, it will be converted automatically.</p><p><code>model_name</code> is the identifier name for the whole model written to the MATLAB file; defaults to just "model".</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/io/mat.jl#L14-L24">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.load_sbml_model-Tuple{String}" href="#COBREXA.load_sbml_model-Tuple{String}"><code>COBREXA.load_sbml_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">load_sbml_model(file_name::String)::SBMLModel</code></pre><p>Load and return a SBML XML model in <code>file_name</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/io/sbml.jl#L2-L6">source</a></section></article><h3 id="Pretty-printing"><a class="docs-heading-anchor" href="#Pretty-printing">Pretty printing</a><a id="Pretty-printing-1"></a><a class="docs-heading-anchor-permalink" href="#Pretty-printing" title="Permalink"></a></h3><article class="docstring"><header><a class="docstring-binding" id="Base.show-Tuple{IO, MIME{Symbol("text/plain")}, MetabolicModel}" href="#Base.show-Tuple{IO, MIME{Symbol("text/plain")}, MetabolicModel}"><code>Base.show</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Pretty printing of everything metabolic-modelish.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/io/show/MetabolicModel.jl#L1-L3">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._pretty_substances-Tuple{Vector{String}}" href="#COBREXA._pretty_substances-Tuple{Vector{String}}"><code>COBREXA._pretty_substances</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_pretty_substances(ss::Vector{String})::String</code></pre><p>Nicely format a substance list.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/io/show/Reaction.jl#L2-L6">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Base.show-Union{Tuple{M}, Tuple{IO, MIME{Symbol("text/plain")}, Serialized{M}}} where M" href="#Base.show-Union{Tuple{M}, Tuple{IO, MIME{Symbol("text/plain")}, Serialized{M}}} where M"><code>Base.show</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">Base.show(io::IO, ::MIME"text/plain", m::Serialized{M}) where {M}</code></pre><p>Show the <a href="#COBREXA.Serialized"><code>Serialized</code></a> model without unnecessarily loading it.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/io/show/Serialized.jl#L2-L6">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._pretty_print_keyvals-Tuple{Any, String, Any}" href="#COBREXA._pretty_print_keyvals-Tuple{Any, String, Any}"><code>COBREXA._pretty_print_keyvals</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_pretty_print_keyvals(io, def::String, payload; kwargs...)</code></pre><p>Nicely prints keys and values.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/io/show/pretty_printing.jl#L1-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._pretty_print_keyvals-Tuple{Any, String, Dict}" href="#COBREXA._pretty_print_keyvals-Tuple{Any, String, Dict}"><code>COBREXA._pretty_print_keyvals</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_pretty_print_keyvals( +)</code></pre><p>Use JuMP to solve an instance of CoreModel</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/solver.jl#L34-L42">source</a></section></article><h2 id="File-I/O-and-serialization"><a class="docs-heading-anchor" href="#File-I/O-and-serialization">File I/O and serialization</a><a id="File-I/O-and-serialization-1"></a><a class="docs-heading-anchor-permalink" href="#File-I/O-and-serialization" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="COBREXA.load_model-Tuple{String}" href="#COBREXA.load_model-Tuple{String}"><code>COBREXA.load_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">load_model(file_name::String)::MetabolicModel</code></pre><p>Generic function for loading models that chooses a specific loader function from the <code>file_name</code> extension, or throws an error.</p><p>Currently, these model types are supported:</p><ul><li>SBML models (<code>*.xml</code>, loaded with <a href="#COBREXA.load_sbml_model-Tuple{String}"><code>load_sbml_model</code></a>)</li><li>JSON models (<code>*.json</code>, loaded with <a href="#COBREXA.load_json_model-Tuple{String}"><code>load_json_model</code></a>)</li><li>MATLAB models (<code>*.mat</code>, loaded with <a href="#COBREXA.load_mat_model-Tuple{String}"><code>load_mat_model</code></a>)</li></ul></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/io/io.jl#L2-L13">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.load_model-Union{Tuple{T}, Tuple{Type{T}, String}} where T<:MetabolicModel" href="#COBREXA.load_model-Union{Tuple{T}, Tuple{Type{T}, String}} where T<:MetabolicModel"><code>COBREXA.load_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">load_model(type::Type{T}, file_name::String)::T where T</code></pre><p>Helper function tht loads the model using <a href="#COBREXA.load_model-Tuple{String}"><code>load_model</code></a> and return it converted to <code>type</code>.</p><p><strong>Example:</strong></p><pre><code class="language-none">load_model(CoreModel, "mySBMLModel.xml")</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/io/io.jl#L27-L36">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.save_model-Tuple{MetabolicModel, String}" href="#COBREXA.save_model-Tuple{MetabolicModel, String}"><code>COBREXA.save_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">save_model(model::MetabolicModel, file_name::String)</code></pre><p>Generic function for saving models that chooses a specific writer function from the <code>file_name</code> extension, or throws an error.</p><p>Currently, these model types are supported:</p><ul><li>JSON models (<code>*.json</code>, loaded with <a href="#COBREXA.save_json_model-Tuple{MetabolicModel, String}"><code>save_json_model</code></a>)</li><li>MATLAB models (<code>*.mat</code>, loaded with <a href="#COBREXA.save_mat_model-Tuple{MetabolicModel, String}"><code>save_mat_model</code></a>)</li></ul></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/io/io.jl#L41-L51">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.load_json_model-Tuple{String}" href="#COBREXA.load_json_model-Tuple{String}"><code>COBREXA.load_json_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">load_json_model(filename::String)::JSONModel</code></pre><p>Load and return a JSON-formatted model that is stored in <code>file_name</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/io/json.jl#L1-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.save_json_model-Tuple{MetabolicModel, String}" href="#COBREXA.save_json_model-Tuple{MetabolicModel, String}"><code>COBREXA.save_json_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">save_json_model(model::MetabolicModel, file_name::String)</code></pre><p>Save a <a href="#COBREXA.JSONModel"><code>JSONModel</code></a> in <code>model</code> to a JSON file <code>file_name</code>.</p><p>In case the <code>model</code> is not <code>JSONModel</code>, it will be converted automatically.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/io/json.jl#L10-L16">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.load_mat_model-Tuple{String}" href="#COBREXA.load_mat_model-Tuple{String}"><code>COBREXA.load_mat_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">load_mat_model(file_name::String)</code></pre><p>Load and return a MATLAB file <code>file_name</code> that contains a COBRA-compatible model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/io/mat.jl#L2-L7">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.save_mat_model-Tuple{MetabolicModel, String}" href="#COBREXA.save_mat_model-Tuple{MetabolicModel, String}"><code>COBREXA.save_mat_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">save_mat_model(model::MetabolicModel, file_name::String; model_name::String="model")</code></pre><p>Save a <a href="#COBREXA.MATModel"><code>MATModel</code></a> in <code>model</code> to a MATLAB file <code>file_name</code> in a format compatible with other MATLAB-based COBRA software.</p><p>In case the <code>model</code> is not <code>MATModel</code>, it will be converted automatically.</p><p><code>model_name</code> is the identifier name for the whole model written to the MATLAB file; defaults to just "model".</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/io/mat.jl#L14-L24">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.load_sbml_model-Tuple{String}" href="#COBREXA.load_sbml_model-Tuple{String}"><code>COBREXA.load_sbml_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">load_sbml_model(file_name::String)::SBMLModel</code></pre><p>Load and return a SBML XML model in <code>file_name</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/io/sbml.jl#L2-L6">source</a></section></article><h3 id="Pretty-printing"><a class="docs-heading-anchor" href="#Pretty-printing">Pretty printing</a><a id="Pretty-printing-1"></a><a class="docs-heading-anchor-permalink" href="#Pretty-printing" title="Permalink"></a></h3><article class="docstring"><header><a class="docstring-binding" id="Base.show-Tuple{IO, MIME{Symbol("text/plain")}, MetabolicModel}" href="#Base.show-Tuple{IO, MIME{Symbol("text/plain")}, MetabolicModel}"><code>Base.show</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Pretty printing of everything metabolic-modelish.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/io/show/MetabolicModel.jl#L1-L3">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._pretty_substances-Tuple{Vector{String}}" href="#COBREXA._pretty_substances-Tuple{Vector{String}}"><code>COBREXA._pretty_substances</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_pretty_substances(ss::Vector{String})::String</code></pre><p>Nicely format a substance list.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/io/show/Reaction.jl#L2-L6">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="Base.show-Union{Tuple{M}, Tuple{IO, MIME{Symbol("text/plain")}, Serialized{M}}} where M" href="#Base.show-Union{Tuple{M}, Tuple{IO, MIME{Symbol("text/plain")}, Serialized{M}}} where M"><code>Base.show</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">Base.show(io::IO, ::MIME"text/plain", m::Serialized{M}) where {M}</code></pre><p>Show the <a href="#COBREXA.Serialized"><code>Serialized</code></a> model without unnecessarily loading it.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/io/show/Serialized.jl#L2-L6">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._pretty_print_keyvals-Tuple{Any, String, Any}" href="#COBREXA._pretty_print_keyvals-Tuple{Any, String, Any}"><code>COBREXA._pretty_print_keyvals</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_pretty_print_keyvals(io, def::String, payload; kwargs...)</code></pre><p>Nicely prints keys and values.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/io/show/pretty_printing.jl#L1-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._pretty_print_keyvals-Tuple{Any, String, Dict}" href="#COBREXA._pretty_print_keyvals-Tuple{Any, String, Dict}"><code>COBREXA._pretty_print_keyvals</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_pretty_print_keyvals( io, def::String, payload::Dict -)</code></pre><p>Specialization of <code>_pretty_print_keyvals</code> for dictionaries.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/io/show/pretty_printing.jl#L27-L35">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._pretty_print_keyvals-Tuple{Any, String, String}" href="#COBREXA._pretty_print_keyvals-Tuple{Any, String, String}"><code>COBREXA._pretty_print_keyvals</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_pretty_print_keyvals( +)</code></pre><p>Specialization of <code>_pretty_print_keyvals</code> for dictionaries.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/io/show/pretty_printing.jl#L27-L35">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._pretty_print_keyvals-Tuple{Any, String, String}" href="#COBREXA._pretty_print_keyvals-Tuple{Any, String, String}"><code>COBREXA._pretty_print_keyvals</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_pretty_print_keyvals( io, def::String, payload::String -)</code></pre><p>Specialization of <code>_pretty_print_keyvals</code> for plain strings.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/io/show/pretty_printing.jl#L9-L17">source</a></section></article><h2 id="Model-reconstruction"><a class="docs-heading-anchor" href="#Model-reconstruction">Model reconstruction</a><a id="Model-reconstruction-1"></a><a class="docs-heading-anchor-permalink" href="#Model-reconstruction" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="COBREXA.add_reactions-Union{Tuple{V2}, Tuple{V1}, Tuple{CoreModel, V1, V2, AbstractFloat, AbstractFloat, AbstractFloat}} where {V1<:AbstractVector{Float64}, V2<:AbstractVector{Float64}}" href="#COBREXA.add_reactions-Union{Tuple{V2}, Tuple{V1}, Tuple{CoreModel, V1, V2, AbstractFloat, AbstractFloat, AbstractFloat}} where {V1<:AbstractVector{Float64}, V2<:AbstractVector{Float64}}"><code>COBREXA.add_reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Adds reactions to the model <code>m</code></p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/CoreModel.jl#L1-L3">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.change_bounds!-Union{Tuple{V}, Tuple{CoreModel, Vector{Int64}}} where V<:AbstractVector{Float64}" href="#COBREXA.change_bounds!-Union{Tuple{V}, Tuple{CoreModel, Vector{Int64}}} where V<:AbstractVector{Float64}"><code>COBREXA.change_bounds!</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Change the lower and/or upper bounds ('xl' and 'xu') for given reactions</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/CoreModel.jl#L289-L291">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.find_exchange_metabolites-Tuple{CoreModel}" href="#COBREXA.find_exchange_metabolites-Tuple{CoreModel}"><code>COBREXA.find_exchange_metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Returns indices of exchanged metabolites, ie, the outermost metabolites in the network In practice returns the metabolites consumed by the reactions given by <code>find_exchange_reactions</code> and if called with the same arguments, the two outputs correspond.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/CoreModel.jl#L267-L271">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.find_exchange_reactions-Tuple{CoreModel}" href="#COBREXA.find_exchange_reactions-Tuple{CoreModel}"><code>COBREXA.find_exchange_reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Returns indices of exchange reactions. Exchange reactions are identified based on most commonly used prefixes.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/CoreModel.jl#L245-L248">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.remove_reactions-Tuple{CoreModel, Vector{Int64}}" href="#COBREXA.remove_reactions-Tuple{CoreModel, Vector{Int64}}"><code>COBREXA.remove_reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Removes a set of reactions from a CoreModel. Also removes the metabolites not involved in any reaction.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/CoreModel.jl#L203-L206">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.verify_consistency-Union{Tuple{K}, Tuple{V}, Tuple{M}, Tuple{CoreModel, M, V, V, V, V, K, K, Any, Any}} where {M<:AbstractMatrix{Float64}, V<:AbstractVector{Float64}, K<:AbstractVector{String}}" href="#COBREXA.verify_consistency-Union{Tuple{K}, Tuple{V}, Tuple{M}, Tuple{CoreModel, M, V, V, V, V, K, K, Any, Any}} where {M<:AbstractMatrix{Float64}, V<:AbstractVector{Float64}, K<:AbstractVector{String}}"><code>COBREXA.verify_consistency</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Verifies the consistency of a given model</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/CoreModel.jl#L160-L162">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.add_coupling_constraints!-Union{Tuple{V}, Tuple{CoreModelCoupled, V, AbstractFloat, AbstractFloat}} where V<:AbstractVector{Float64}" href="#COBREXA.add_coupling_constraints!-Union{Tuple{V}, Tuple{CoreModelCoupled, V, AbstractFloat, AbstractFloat}} where V<:AbstractVector{Float64}"><code>COBREXA.add_coupling_constraints!</code></a> — <span class="docstring-category">Method</span></header><section><div><p>In-place add coupling constraints in form</p><pre><code class="language-none"> câ‚— ≤ C x ≤ cᵤ</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/CoreModelCoupled.jl#L18-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.add_coupling_constraints-Tuple{CoreModel, Vararg{Any, N} where N}" href="#COBREXA.add_coupling_constraints-Tuple{CoreModel, Vararg{Any, N} where N}"><code>COBREXA.add_coupling_constraints</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Add constraints to a plain <code>CoreModel</code> (converts it to the coupled type)</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/CoreModelCoupled.jl#L12-L14">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.add_coupling_constraints-Tuple{CoreModelCoupled, Vararg{Any, N} where N}" href="#COBREXA.add_coupling_constraints-Tuple{CoreModelCoupled, Vararg{Any, N} where N}"><code>COBREXA.add_coupling_constraints</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Add constraints of the following form to a CoreModelCoupled and return a modified one.</p><p>The arguments are same as for in-place <code>add_coupling_constraints!</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/CoreModelCoupled.jl#L1-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.change_coupling_bounds!-Union{Tuple{V}, Tuple{CoreModelCoupled, Vector{Int64}}} where V<:AbstractVector{Float64}" href="#COBREXA.change_coupling_bounds!-Union{Tuple{V}, Tuple{CoreModelCoupled, Vector{Int64}}} where V<:AbstractVector{Float64}"><code>COBREXA.change_coupling_bounds!</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Change the lower and/or upper bounds ('cl' and 'cu') for given coupling constraints</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/CoreModelCoupled.jl#L85-L87">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.remove_coupling_constraints!-Tuple{CoreModelCoupled, Int64}" href="#COBREXA.remove_coupling_constraints!-Tuple{CoreModelCoupled, Int64}"><code>COBREXA.remove_coupling_constraints!</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Removes a set of coupling constraints from a CoreModelCoupled in-place.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/CoreModelCoupled.jl#L69-L71">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.remove_coupling_constraints-Tuple{CoreModelCoupled, Vararg{Any, N} where N}" href="#COBREXA.remove_coupling_constraints-Tuple{CoreModelCoupled, Vararg{Any, N} where N}"><code>COBREXA.remove_coupling_constraints</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Remove coupling constraints from the linear model and return the modified model.</p><p>Arguments are the same as for in-place version <code>remove_coupling_constraints!</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/CoreModelCoupled.jl#L57-L61">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.:⟵-Tuple{Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}, Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}}" href="#COBREXA.:⟵-Tuple{Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}, Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}}"><code>COBREXA.:⟵</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">⟵( +)</code></pre><p>Specialization of <code>_pretty_print_keyvals</code> for plain strings.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/io/show/pretty_printing.jl#L9-L17">source</a></section></article><h2 id="Model-reconstruction"><a class="docs-heading-anchor" href="#Model-reconstruction">Model reconstruction</a><a id="Model-reconstruction-1"></a><a class="docs-heading-anchor-permalink" href="#Model-reconstruction" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="COBREXA.add_reactions-Union{Tuple{V2}, Tuple{V1}, Tuple{CoreModel, V1, V2, AbstractFloat, AbstractFloat, AbstractFloat}} where {V1<:AbstractVector{Float64}, V2<:AbstractVector{Float64}}" href="#COBREXA.add_reactions-Union{Tuple{V2}, Tuple{V1}, Tuple{CoreModel, V1, V2, AbstractFloat, AbstractFloat, AbstractFloat}} where {V1<:AbstractVector{Float64}, V2<:AbstractVector{Float64}}"><code>COBREXA.add_reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Adds reactions to the model <code>m</code></p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/CoreModel.jl#L1-L3">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.change_bounds!-Union{Tuple{V}, Tuple{CoreModel, Vector{Int64}}} where V<:AbstractVector{Float64}" href="#COBREXA.change_bounds!-Union{Tuple{V}, Tuple{CoreModel, Vector{Int64}}} where V<:AbstractVector{Float64}"><code>COBREXA.change_bounds!</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Change the lower and/or upper bounds ('xl' and 'xu') for given reactions</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/CoreModel.jl#L289-L291">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.find_exchange_metabolites-Tuple{CoreModel}" href="#COBREXA.find_exchange_metabolites-Tuple{CoreModel}"><code>COBREXA.find_exchange_metabolites</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Returns indices of exchanged metabolites, ie, the outermost metabolites in the network In practice returns the metabolites consumed by the reactions given by <code>find_exchange_reactions</code> and if called with the same arguments, the two outputs correspond.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/CoreModel.jl#L267-L271">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.find_exchange_reactions-Tuple{CoreModel}" href="#COBREXA.find_exchange_reactions-Tuple{CoreModel}"><code>COBREXA.find_exchange_reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Returns indices of exchange reactions. Exchange reactions are identified based on most commonly used prefixes.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/CoreModel.jl#L245-L248">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.remove_reactions-Tuple{CoreModel, Vector{Int64}}" href="#COBREXA.remove_reactions-Tuple{CoreModel, Vector{Int64}}"><code>COBREXA.remove_reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Removes a set of reactions from a CoreModel. Also removes the metabolites not involved in any reaction.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/CoreModel.jl#L203-L206">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.verify_consistency-Union{Tuple{K}, Tuple{V}, Tuple{M}, Tuple{CoreModel, M, V, V, V, V, K, K, Any, Any}} where {M<:AbstractMatrix{Float64}, V<:AbstractVector{Float64}, K<:AbstractVector{String}}" href="#COBREXA.verify_consistency-Union{Tuple{K}, Tuple{V}, Tuple{M}, Tuple{CoreModel, M, V, V, V, V, K, K, Any, Any}} where {M<:AbstractMatrix{Float64}, V<:AbstractVector{Float64}, K<:AbstractVector{String}}"><code>COBREXA.verify_consistency</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Verifies the consistency of a given model</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/CoreModel.jl#L160-L162">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.add_coupling_constraints!-Union{Tuple{V}, Tuple{CoreModelCoupled, V, AbstractFloat, AbstractFloat}} where V<:AbstractVector{Float64}" href="#COBREXA.add_coupling_constraints!-Union{Tuple{V}, Tuple{CoreModelCoupled, V, AbstractFloat, AbstractFloat}} where V<:AbstractVector{Float64}"><code>COBREXA.add_coupling_constraints!</code></a> — <span class="docstring-category">Method</span></header><section><div><p>In-place add coupling constraints in form</p><pre><code class="language-none"> câ‚— ≤ C x ≤ cᵤ</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/CoreModelCoupled.jl#L18-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.add_coupling_constraints-Tuple{CoreModel, Vararg{Any, N} where N}" href="#COBREXA.add_coupling_constraints-Tuple{CoreModel, Vararg{Any, N} where N}"><code>COBREXA.add_coupling_constraints</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Add constraints to a plain <code>CoreModel</code> (converts it to the coupled type)</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/CoreModelCoupled.jl#L12-L14">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.add_coupling_constraints-Tuple{CoreModelCoupled, Vararg{Any, N} where N}" href="#COBREXA.add_coupling_constraints-Tuple{CoreModelCoupled, Vararg{Any, N} where N}"><code>COBREXA.add_coupling_constraints</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Add constraints of the following form to a CoreModelCoupled and return a modified one.</p><p>The arguments are same as for in-place <code>add_coupling_constraints!</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/CoreModelCoupled.jl#L1-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.change_coupling_bounds!-Union{Tuple{V}, Tuple{CoreModelCoupled, Vector{Int64}}} where V<:AbstractVector{Float64}" href="#COBREXA.change_coupling_bounds!-Union{Tuple{V}, Tuple{CoreModelCoupled, Vector{Int64}}} where V<:AbstractVector{Float64}"><code>COBREXA.change_coupling_bounds!</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Change the lower and/or upper bounds ('cl' and 'cu') for given coupling constraints</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/CoreModelCoupled.jl#L85-L87">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.remove_coupling_constraints!-Tuple{CoreModelCoupled, Int64}" href="#COBREXA.remove_coupling_constraints!-Tuple{CoreModelCoupled, Int64}"><code>COBREXA.remove_coupling_constraints!</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Removes a set of coupling constraints from a CoreModelCoupled in-place.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/CoreModelCoupled.jl#L69-L71">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.remove_coupling_constraints-Tuple{CoreModelCoupled, Vararg{Any, N} where N}" href="#COBREXA.remove_coupling_constraints-Tuple{CoreModelCoupled, Vararg{Any, N} where N}"><code>COBREXA.remove_coupling_constraints</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Remove coupling constraints from the linear model and return the modified model.</p><p>Arguments are the same as for in-place version <code>remove_coupling_constraints!</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/CoreModelCoupled.jl#L57-L61">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.:⟵-Tuple{Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}, Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}}" href="#COBREXA.:⟵-Tuple{Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}, Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}}"><code>COBREXA.:⟵</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">⟵( substrates::Union{ Nothing, Metabolite, @@ -61,7 +61,7 @@ genes :: OrderedDict{String, Gene}</code></pre><p><strong>Example</strong></p><p MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient} }, -)</code></pre><p>Make a reverse-only <a href="#COBREXA.Reaction"><code>Reaction</code></a> from <code>substrates</code> and <code>products</code>. An equivalent alternative is <code>â†</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/Reaction.jl#L102-L120">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.:⟶-Tuple{Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}, Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}}" href="#COBREXA.:⟶-Tuple{Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}, Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}}"><code>COBREXA.:⟶</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">⟶( +)</code></pre><p>Make a reverse-only <a href="#COBREXA.Reaction"><code>Reaction</code></a> from <code>substrates</code> and <code>products</code>. An equivalent alternative is <code>â†</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/Reaction.jl#L102-L120">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.:⟶-Tuple{Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}, Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}}" href="#COBREXA.:⟶-Tuple{Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}, Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}}"><code>COBREXA.:⟶</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">⟶( substrates::Union{ Nothing, Metabolite, @@ -74,7 +74,7 @@ genes :: OrderedDict{String, Gene}</code></pre><p><strong>Example</strong></p><p MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient} }, -)</code></pre><p>Make a forward-only <a href="#COBREXA.Reaction"><code>Reaction</code></a> from <code>substrates</code> and <code>products</code>. An equivalent alternative is <code>→</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/Reaction.jl#L64-L82">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.:⟷-Tuple{Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}, Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}}" href="#COBREXA.:⟷-Tuple{Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}, Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}}"><code>COBREXA.:⟷</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">⟷( +)</code></pre><p>Make a forward-only <a href="#COBREXA.Reaction"><code>Reaction</code></a> from <code>substrates</code> and <code>products</code>. An equivalent alternative is <code>→</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/Reaction.jl#L64-L82">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.:⟷-Tuple{Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}, Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}}" href="#COBREXA.:⟷-Tuple{Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}, Union{Nothing, Metabolite, MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient}}}"><code>COBREXA.:⟷</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">⟷( substrates::Union{ Nothing, Metabolite, @@ -87,7 +87,7 @@ genes :: OrderedDict{String, Gene}</code></pre><p><strong>Example</strong></p><p MetaboliteWithCoefficient, Vector{MetaboliteWithCoefficient} }, -)</code></pre><p>Make a bidirectional (reversible) <a href="#COBREXA.Reaction"><code>Reaction</code></a> from <code>substrates</code> and <code>products</code>. An equivalent alternative is <code>↔</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/Reaction.jl#L140-L158">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.add!-Tuple{StandardModel, Vector{Gene}}" href="#COBREXA.add!-Tuple{StandardModel, Vector{Gene}}"><code>COBREXA.add!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">add!(model::StandardModel, genes::Union{Vector{Gene}, Gene})</code></pre><p>Add <code>gene(s)</code> to <code>model</code> if they are not already present based on gene <code>id</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/StandardModel.jl#L31-L35">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.add!-Tuple{StandardModel, Vector{Metabolite}}" href="#COBREXA.add!-Tuple{StandardModel, Vector{Metabolite}}"><code>COBREXA.add!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">add!(model::StandardModel, mets::Union{Vector{Metabolite}, Metabolite})</code></pre><p>Add <code>met(s)</code> to <code>model</code> if they are not already present, based on metabolite <code>id</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/StandardModel.jl#L16-L20">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.add!-Tuple{StandardModel, Vector{Reaction}}" href="#COBREXA.add!-Tuple{StandardModel, Vector{Reaction}}"><code>COBREXA.add!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">add!(model::StandardModel, rxns::Union{Vector{Reaction}, Reaction})</code></pre><p>Add <code>rxn(s)</code> to <code>model</code> if they are not already present based on reaction <code>id</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/StandardModel.jl#L1-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.rm!-Tuple{Type{Gene}, StandardModel, String}" href="#COBREXA.rm!-Tuple{Type{Gene}, StandardModel, String}"><code>COBREXA.rm!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">rm!(::Type{Gene}, model::StandardModel, ids::Vector{String})</code></pre><p>Remove all genes with <code>ids</code> from <code>model</code>.</p><p><strong>Example</strong></p><p>rm!(Gene, model, ["g1", "g2"]) rm!(Gene, model, "g1")</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/StandardModel.jl#L141-L149">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.rm!-Tuple{Type{Metabolite}, StandardModel, Vector{String}}" href="#COBREXA.rm!-Tuple{Type{Metabolite}, StandardModel, Vector{String}}"><code>COBREXA.rm!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">rm!(::Type{Metabolite}, model::StandardModel, ids::Vector{String})</code></pre><p>Remove all metabolites with <code>ids</code> from <code>model</code>. Warning, this could leave the model inconsistent, e.g. a reaction might require the deleted metabolite.</p><p><strong>Example</strong></p><p>rm!(Metabolite, model, ["atp<em>c", "adp</em>c"]) rm!(Metabolite, model, "atp_c")</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/StandardModel.jl#L120-L130">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.rm!-Tuple{Type{Reaction}, StandardModel, Vector{String}}" href="#COBREXA.rm!-Tuple{Type{Reaction}, StandardModel, Vector{String}}"><code>COBREXA.rm!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">rm!(::Type{Reaction}, model::StandardModel, ids::Vector{String})</code></pre><p>Remove all reactions with <code>ids</code> from <code>model</code>.</p><p><strong>Example</strong></p><p>rm!(Reaction, model, ["EX<em>glc__D</em>e", "fba"]) rm!(Reaction, model, "EX<em>glc__D</em>e")</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/StandardModel.jl#L101-L109">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.@add_reactions!-Tuple{Symbol, Expr}" href="#COBREXA.@add_reactions!-Tuple{Symbol, Expr}"><code>COBREXA.@add_reactions!</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia">@add_reactions!(model::Symbol, ex::Expr)</code></pre><p>Shortcut to add multiple reactions and their lower and upper bounds</p><p><strong>Call variants</strong></p><pre><code class="language-none">@add_reactions! model begin +)</code></pre><p>Make a bidirectional (reversible) <a href="#COBREXA.Reaction"><code>Reaction</code></a> from <code>substrates</code> and <code>products</code>. An equivalent alternative is <code>↔</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/Reaction.jl#L140-L158">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.add!-Tuple{StandardModel, Vector{Gene}}" href="#COBREXA.add!-Tuple{StandardModel, Vector{Gene}}"><code>COBREXA.add!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">add!(model::StandardModel, genes::Union{Vector{Gene}, Gene})</code></pre><p>Add <code>gene(s)</code> to <code>model</code> if they are not already present based on gene <code>id</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/StandardModel.jl#L31-L35">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.add!-Tuple{StandardModel, Vector{Metabolite}}" href="#COBREXA.add!-Tuple{StandardModel, Vector{Metabolite}}"><code>COBREXA.add!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">add!(model::StandardModel, mets::Union{Vector{Metabolite}, Metabolite})</code></pre><p>Add <code>met(s)</code> to <code>model</code> if they are not already present, based on metabolite <code>id</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/StandardModel.jl#L16-L20">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.add!-Tuple{StandardModel, Vector{Reaction}}" href="#COBREXA.add!-Tuple{StandardModel, Vector{Reaction}}"><code>COBREXA.add!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">add!(model::StandardModel, rxns::Union{Vector{Reaction}, Reaction})</code></pre><p>Add <code>rxn(s)</code> to <code>model</code> if they are not already present based on reaction <code>id</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/StandardModel.jl#L1-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.rm!-Tuple{Type{Gene}, StandardModel, String}" href="#COBREXA.rm!-Tuple{Type{Gene}, StandardModel, String}"><code>COBREXA.rm!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">rm!(::Type{Gene}, model::StandardModel, ids::Vector{String})</code></pre><p>Remove all genes with <code>ids</code> from <code>model</code>.</p><p><strong>Example</strong></p><p>rm!(Gene, model, ["g1", "g2"]) rm!(Gene, model, "g1")</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/StandardModel.jl#L141-L149">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.rm!-Tuple{Type{Metabolite}, StandardModel, Vector{String}}" href="#COBREXA.rm!-Tuple{Type{Metabolite}, StandardModel, Vector{String}}"><code>COBREXA.rm!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">rm!(::Type{Metabolite}, model::StandardModel, ids::Vector{String})</code></pre><p>Remove all metabolites with <code>ids</code> from <code>model</code>. Warning, this could leave the model inconsistent, e.g. a reaction might require the deleted metabolite.</p><p><strong>Example</strong></p><p>rm!(Metabolite, model, ["atp<em>c", "adp</em>c"]) rm!(Metabolite, model, "atp_c")</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/StandardModel.jl#L120-L130">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.rm!-Tuple{Type{Reaction}, StandardModel, Vector{String}}" href="#COBREXA.rm!-Tuple{Type{Reaction}, StandardModel, Vector{String}}"><code>COBREXA.rm!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">rm!(::Type{Reaction}, model::StandardModel, ids::Vector{String})</code></pre><p>Remove all reactions with <code>ids</code> from <code>model</code>.</p><p><strong>Example</strong></p><p>rm!(Reaction, model, ["EX<em>glc__D</em>e", "fba"]) rm!(Reaction, model, "EX<em>glc__D</em>e")</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/StandardModel.jl#L101-L109">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.@add_reactions!-Tuple{Symbol, Expr}" href="#COBREXA.@add_reactions!-Tuple{Symbol, Expr}"><code>COBREXA.@add_reactions!</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia">@add_reactions!(model::Symbol, ex::Expr)</code></pre><p>Shortcut to add multiple reactions and their lower and upper bounds</p><p><strong>Call variants</strong></p><pre><code class="language-none">@add_reactions! model begin reaction_name, reaction end @@ -101,7 +101,7 @@ end</code></pre><p><strong>Examples</strong></p><pre><code class="language-none" "v1", nothing ⟶ A, 0, 500 "v2", A ⟷ B + C, -500 "v3", B + C ⟶ nothing -end</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/reconstruction/StandardModel.jl#L46-L77">source</a></section></article><h2 id="Analysis-functions"><a class="docs-heading-anchor" href="#Analysis-functions">Analysis functions</a><a id="Analysis-functions-1"></a><a class="docs-heading-anchor-permalink" href="#Analysis-functions" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="COBREXA.flux_balance_analysis-Union{Tuple{M}, Tuple{M, Any}} where M<:MetabolicModel" href="#COBREXA.flux_balance_analysis-Union{Tuple{M}, Tuple{M, Any}} where M<:MetabolicModel"><code>COBREXA.flux_balance_analysis</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">flux_balance_analysis( +end</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/reconstruction/StandardModel.jl#L46-L77">source</a></section></article><h2 id="Analysis-functions"><a class="docs-heading-anchor" href="#Analysis-functions">Analysis functions</a><a id="Analysis-functions-1"></a><a class="docs-heading-anchor-permalink" href="#Analysis-functions" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="COBREXA.flux_balance_analysis-Union{Tuple{M}, Tuple{M, Any}} where M<:MetabolicModel" href="#COBREXA.flux_balance_analysis-Union{Tuple{M}, Tuple{M, Any}} where M<:MetabolicModel"><code>COBREXA.flux_balance_analysis</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">flux_balance_analysis( model::M, optimizer; modifications = [], @@ -109,11 +109,11 @@ end</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://g s.t. S x = b xâ‚— ≤ x ≤ xᵤ</code></pre><p>See "Orth, J., Thiele, I. & Palsson, B. What is flux balance analysis?. Nat Biotechnol 28, 245–248 (2010). https://doi.org/10.1038/nbt.1614" for more information.</p><p>The <code>optimizer</code> must be set to a <code>JuMP</code>-compatible optimizer, such as <code>GLPK.Optimizer</code> or <code>Tulip.Optimizer</code></p><p>Optionally, you may specify one or more modifications to be applied to the model before the analysis, such as <a href="#COBREXA.change_optimizer_attribute-Tuple{Any, Any}"><code>change_optimizer_attribute</code></a>,<a href="#COBREXA.change_objective-Tuple{Union{String, Vector{String}}}"><code>change_objective</code></a>, and <a href="#COBREXA.change_sense-Tuple{Any}"><code>change_sense</code></a>.</p><p>Returns an optimized <code>JuMP</code> model.</p><p><strong>Example</strong></p><pre><code class="language-none">model = load_model(StandardModel, "e_coli_core.json") biomass = findfirst(model.reactions, "BIOMASS_Ecoli_core_w_GAM") -solution = flux_balance_analysis(model, GLPK.optimizer; modifications=[change_objective(biomass)])</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/flux_balance_analysis.jl#L31-L66">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.flux_balance_analysis_dict-Tuple{MetabolicModel, Vararg{Any, N} where N}" href="#COBREXA.flux_balance_analysis_dict-Tuple{MetabolicModel, Vararg{Any, N} where N}"><code>COBREXA.flux_balance_analysis_dict</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">flux_balance_analysis_dict(model::MetabolicModel, args...)::Union{Dict{String, Float64},Nothing}</code></pre><p>A variant of FBA that returns a dictionary assigning fluxes to reactions, if the solution is found. Arguments are passed to <a href="#COBREXA.flux_balance_analysis-Union{Tuple{M}, Tuple{M, Any}} where M<:MetabolicModel"><code>flux_balance_analysis</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/flux_balance_analysis.jl#L15-L20">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.flux_balance_analysis_vec-Tuple" href="#COBREXA.flux_balance_analysis_vec-Tuple"><code>COBREXA.flux_balance_analysis_vec</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">flux_balance_analysis_vec(args...)::Union{Vector{Float64},Nothing}</code></pre><p>A variant of FBA that returns a vector of fluxes in the same order as reactions of the model, if the solution is found.</p><p>Arguments are passed to <a href="#COBREXA.flux_balance_analysis-Union{Tuple{M}, Tuple{M, Any}} where M<:MetabolicModel"><code>flux_balance_analysis</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/flux_balance_analysis.jl#L1-L8">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._FVA_add_constraint-NTuple{4, Any}" href="#COBREXA._FVA_add_constraint-NTuple{4, Any}"><code>COBREXA._FVA_add_constraint</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_FVA_add_constraint(model, c, x, Z)</code></pre><p>Internal helper function for adding constraints to a model. Exists mainly because for avoiding namespace problems on remote workers.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/flux_variability_analysis.jl#L134-L139">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._FVA_optimize_reaction-Tuple{Any, Any, Any}" href="#COBREXA._FVA_optimize_reaction-Tuple{Any, Any, Any}"><code>COBREXA._FVA_optimize_reaction</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_FVA_get_opt(model, rid)</code></pre><p>Internal helper for creating the optimized model on a remote worker, for avoiding namespace problems.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/flux_variability_analysis.jl#L145-L150">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Any}" href="#COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Any}"><code>COBREXA.flux_variability_analysis</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">flux_variability_analysis( +solution = flux_balance_analysis(model, GLPK.optimizer; modifications=[change_objective(biomass)])</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/flux_balance_analysis.jl#L31-L66">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.flux_balance_analysis_dict-Tuple{MetabolicModel, Vararg{Any, N} where N}" href="#COBREXA.flux_balance_analysis_dict-Tuple{MetabolicModel, Vararg{Any, N} where N}"><code>COBREXA.flux_balance_analysis_dict</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">flux_balance_analysis_dict(model::MetabolicModel, args...)::Union{Dict{String, Float64},Nothing}</code></pre><p>A variant of FBA that returns a dictionary assigning fluxes to reactions, if the solution is found. Arguments are passed to <a href="#COBREXA.flux_balance_analysis-Union{Tuple{M}, Tuple{M, Any}} where M<:MetabolicModel"><code>flux_balance_analysis</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/flux_balance_analysis.jl#L15-L20">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.flux_balance_analysis_vec-Tuple" href="#COBREXA.flux_balance_analysis_vec-Tuple"><code>COBREXA.flux_balance_analysis_vec</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">flux_balance_analysis_vec(args...)::Union{Vector{Float64},Nothing}</code></pre><p>A variant of FBA that returns a vector of fluxes in the same order as reactions of the model, if the solution is found.</p><p>Arguments are passed to <a href="#COBREXA.flux_balance_analysis-Union{Tuple{M}, Tuple{M, Any}} where M<:MetabolicModel"><code>flux_balance_analysis</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/flux_balance_analysis.jl#L1-L8">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._FVA_add_constraint-NTuple{4, Any}" href="#COBREXA._FVA_add_constraint-NTuple{4, Any}"><code>COBREXA._FVA_add_constraint</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_FVA_add_constraint(model, c, x, Z)</code></pre><p>Internal helper function for adding constraints to a model. Exists mainly because for avoiding namespace problems on remote workers.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/flux_variability_analysis.jl#L134-L139">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._FVA_optimize_reaction-Tuple{Any, Any, Any}" href="#COBREXA._FVA_optimize_reaction-Tuple{Any, Any, Any}"><code>COBREXA._FVA_optimize_reaction</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_FVA_get_opt(model, rid)</code></pre><p>Internal helper for creating the optimized model on a remote worker, for avoiding namespace problems.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/flux_variability_analysis.jl#L145-L150">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Any}" href="#COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Any}"><code>COBREXA.flux_variability_analysis</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">flux_variability_analysis( model::MetabolicModel, optimizer; kwargs... -)</code></pre><p>A simpler version of <a href="#COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Any}"><code>flux_variability_analysis</code></a> that maximizes and minimizes all reactions in the model. Arguments are forwarded.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/flux_variability_analysis.jl#L94-L102">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Vector{Int64}, Any}" href="#COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Vector{Int64}, Any}"><code>COBREXA.flux_variability_analysis</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">flux_variability_analysis( +)</code></pre><p>A simpler version of <a href="#COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Any}"><code>flux_variability_analysis</code></a> that maximizes and minimizes all reactions in the model. Arguments are forwarded.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/flux_variability_analysis.jl#L94-L102">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Vector{Int64}, Any}" href="#COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Vector{Int64}, Any}"><code>COBREXA.flux_variability_analysis</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">flux_variability_analysis( model::MetabolicModel, reactions::Vector{Int}, optimizer; @@ -125,11 +125,11 @@ solution = flux_balance_analysis(model, GLPK.optimizer; modifications=[change_ob s.t. S x = b xâ‚— ≤ x ≤ xᵤ cáµ€x ≥ bounds(Zâ‚€)[1] - cáµ€x ≤ bounds(Zâ‚€)[2]</code></pre><p>where Zâ‚€:= cáµ€xâ‚€ is the objective value of an optimal solution of the associated FBA problem (see <a href="#COBREXA.flux_balance_analysis-Union{Tuple{M}, Tuple{M, Any}} where M<:MetabolicModel"><code>flux_balance_analysis</code></a>). See "Gudmundsson, S., Thiele, I. Computationally efficient flux variability analysis. BMC Bioinformatics 11, 489 (2010). https://doi.org/10.1186/1471-2105-11-489" for more information.</p><p>The <code>bounds</code> is a user-supplied function that specifies the objective bounds for the variability optimizations, by default it restricts the flux objective value to the precise optimum reached in FBA. It can return <code>-Inf</code> and <code>Inf</code> in first and second pair to remove the limit. Use <a href="#COBREXA.gamma_bounds-Tuple{Any}"><code>gamma_bounds</code></a> and <a href="#COBREXA.objective_bounds-Tuple{Any}"><code>objective_bounds</code></a> for simple bounds.</p><p><code>optimizer</code> must be set to a <code>JuMP</code>-compatible optimizer. The computation of the individual optimization problems is transparently distributed to <code>workers</code> (see <code>Distributed.workers()</code>).</p><p><code>ret</code> is a function used to extract results from optimized JuMP models of the individual reactions. By default, it calls and returns the value of <code>JuMP.objective_value</code>. More information can be extracted e.g. by setting it to a function that returns a more elaborate data structure; such as <code>m -> (JuMP.objective_value(m), JuMP.value.(m[:x]))</code>.</p><p>Returns a matrix of extracted <code>ret</code> values for minima and maxima, of total size (<code>length(reactions)</code>,2). The optimizer result status is checked with <a href="#COBREXA.is_solved-Tuple{Any}"><code>is_solved</code></a>; <code>nothing</code> is returned if the optimization failed for any reason.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/flux_variability_analysis.jl#L1-L46">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.flux_variability_analysis_dict-Tuple{MetabolicModel, Any}" href="#COBREXA.flux_variability_analysis_dict-Tuple{MetabolicModel, Any}"><code>COBREXA.flux_variability_analysis_dict</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">flux_variability_analysis_dict( + cáµ€x ≤ bounds(Zâ‚€)[2]</code></pre><p>where Zâ‚€:= cáµ€xâ‚€ is the objective value of an optimal solution of the associated FBA problem (see <a href="#COBREXA.flux_balance_analysis-Union{Tuple{M}, Tuple{M, Any}} where M<:MetabolicModel"><code>flux_balance_analysis</code></a>). See "Gudmundsson, S., Thiele, I. Computationally efficient flux variability analysis. BMC Bioinformatics 11, 489 (2010). https://doi.org/10.1186/1471-2105-11-489" for more information.</p><p>The <code>bounds</code> is a user-supplied function that specifies the objective bounds for the variability optimizations, by default it restricts the flux objective value to the precise optimum reached in FBA. It can return <code>-Inf</code> and <code>Inf</code> in first and second pair to remove the limit. Use <a href="#COBREXA.gamma_bounds-Tuple{Any}"><code>gamma_bounds</code></a> and <a href="#COBREXA.objective_bounds-Tuple{Any}"><code>objective_bounds</code></a> for simple bounds.</p><p><code>optimizer</code> must be set to a <code>JuMP</code>-compatible optimizer. The computation of the individual optimization problems is transparently distributed to <code>workers</code> (see <code>Distributed.workers()</code>).</p><p><code>ret</code> is a function used to extract results from optimized JuMP models of the individual reactions. By default, it calls and returns the value of <code>JuMP.objective_value</code>. More information can be extracted e.g. by setting it to a function that returns a more elaborate data structure; such as <code>m -> (JuMP.objective_value(m), JuMP.value.(m[:x]))</code>.</p><p>Returns a matrix of extracted <code>ret</code> values for minima and maxima, of total size (<code>length(reactions)</code>,2). The optimizer result status is checked with <a href="#COBREXA.is_solved-Tuple{Any}"><code>is_solved</code></a>; <code>nothing</code> is returned if the optimization failed for any reason.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/flux_variability_analysis.jl#L1-L46">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.flux_variability_analysis_dict-Tuple{MetabolicModel, Any}" href="#COBREXA.flux_variability_analysis_dict-Tuple{MetabolicModel, Any}"><code>COBREXA.flux_variability_analysis_dict</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">flux_variability_analysis_dict( model::MetabolicModel, optimizer; kwargs... -)</code></pre><p>A variant of <a href="#COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Any}"><code>flux_variability_analysis</code></a> that returns the individual maximized and minimized fluxes of all reactions as two dictionaries (of dictionaries). All keyword arguments except <code>ret</code> are passed through.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/flux_variability_analysis.jl#L108-L118">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.parsimonious_flux_balance_analysis-Tuple{MetabolicModel, Any}" href="#COBREXA.parsimonious_flux_balance_analysis-Tuple{MetabolicModel, Any}"><code>COBREXA.parsimonious_flux_balance_analysis</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">parsimonious_flux_balance_analysis( +)</code></pre><p>A variant of <a href="#COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Any}"><code>flux_variability_analysis</code></a> that returns the individual maximized and minimized fluxes of all reactions as two dictionaries (of dictionaries). All keyword arguments except <code>ret</code> are passed through.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/flux_variability_analysis.jl#L108-L118">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.parsimonious_flux_balance_analysis-Tuple{MetabolicModel, Any}" href="#COBREXA.parsimonious_flux_balance_analysis-Tuple{MetabolicModel, Any}"><code>COBREXA.parsimonious_flux_balance_analysis</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">parsimonious_flux_balance_analysis( model::MetabolicModel, optimizer; modifications = [], @@ -144,13 +144,13 @@ s.t. S x = b atts = Dict("OutputFlag" => 0) model = load_model(StandardModel, "iJO1366.json") biomass = findfirst(model.reactions, "BIOMASS_Ec_iJO1366_WT_53p95M") -sol = pfba(model, biomass, Gurobi.optimizer)</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/parsimonious_flux_balance_analysis.jl#L1-L55">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.parsimonious_flux_balance_analysis_dict-Tuple{MetabolicModel, Vararg{Any, N} where N}" href="#COBREXA.parsimonious_flux_balance_analysis_dict-Tuple{MetabolicModel, Vararg{Any, N} where N}"><code>COBREXA.parsimonious_flux_balance_analysis_dict</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">parsimonious_flux_balance_analysis_dict(model::MetabolicModel, args...; kwargs...)</code></pre><p>Perform parsimonious flux balance analysis on <code>model</code> using <code>optimizer</code>. Returns a dictionary mapping the reaction IDs to fluxes. Arguments are forwarded to <a href="#COBREXA.parsimonious_flux_balance_analysis-Tuple{MetabolicModel, Any}"><code>parsimonious_flux_balance_analysis</code></a> internally.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/parsimonious_flux_balance_analysis.jl#L112-L118">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.parsimonious_flux_balance_analysis_vec-Tuple" href="#COBREXA.parsimonious_flux_balance_analysis_vec-Tuple"><code>COBREXA.parsimonious_flux_balance_analysis_vec</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">parsimonious_flux_balance_analysis_vec(args...; kwargs...)</code></pre><p>Perform parsimonious flux balance analysis on <code>model</code> using <code>optimizer</code>. Returns a vector of fluxes in the same order as the reactions in <code>model</code>. Arguments are forwarded to <a href="#COBREXA.parsimonious_flux_balance_analysis-Tuple{MetabolicModel, Any}"><code>parsimonious_flux_balance_analysis</code></a> internally.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/parsimonious_flux_balance_analysis.jl#L97-L103">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.screen-Union{Tuple{MetabolicModel}, Tuple{N}, Tuple{T}, Tuple{V}} where {V<:(AbstractVector{T} where T), T<:Tuple, N}" href="#COBREXA.screen-Union{Tuple{MetabolicModel}, Tuple{N}, Tuple{T}, Tuple{V}} where {V<:(AbstractVector{T} where T), T<:Tuple, N}"><code>COBREXA.screen</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">function screen( +sol = pfba(model, biomass, Gurobi.optimizer)</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/parsimonious_flux_balance_analysis.jl#L1-L55">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.parsimonious_flux_balance_analysis_dict-Tuple{MetabolicModel, Vararg{Any, N} where N}" href="#COBREXA.parsimonious_flux_balance_analysis_dict-Tuple{MetabolicModel, Vararg{Any, N} where N}"><code>COBREXA.parsimonious_flux_balance_analysis_dict</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">parsimonious_flux_balance_analysis_dict(model::MetabolicModel, args...; kwargs...)</code></pre><p>Perform parsimonious flux balance analysis on <code>model</code> using <code>optimizer</code>. Returns a dictionary mapping the reaction IDs to fluxes. Arguments are forwarded to <a href="#COBREXA.parsimonious_flux_balance_analysis-Tuple{MetabolicModel, Any}"><code>parsimonious_flux_balance_analysis</code></a> internally.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/parsimonious_flux_balance_analysis.jl#L112-L118">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.parsimonious_flux_balance_analysis_vec-Tuple" href="#COBREXA.parsimonious_flux_balance_analysis_vec-Tuple"><code>COBREXA.parsimonious_flux_balance_analysis_vec</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">parsimonious_flux_balance_analysis_vec(args...; kwargs...)</code></pre><p>Perform parsimonious flux balance analysis on <code>model</code> using <code>optimizer</code>. Returns a vector of fluxes in the same order as the reactions in <code>model</code>. Arguments are forwarded to <a href="#COBREXA.parsimonious_flux_balance_analysis-Tuple{MetabolicModel, Any}"><code>parsimonious_flux_balance_analysis</code></a> internally.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/parsimonious_flux_balance_analysis.jl#L97-L103">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.screen-Union{Tuple{MetabolicModel}, Tuple{N}, Tuple{T}, Tuple{V}} where {V<:(AbstractVector{T} where T), T<:Tuple, N}" href="#COBREXA.screen-Union{Tuple{MetabolicModel}, Tuple{N}, Tuple{T}, Tuple{V}} where {V<:(AbstractVector{T} where T), T<:Tuple, N}"><code>COBREXA.screen</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">function screen( model::MetabolicModel; variants::Maybe{Array{V,N}} = nothing, analysis, args::Maybe{Array{T,N}} = nothing, workers = [myid()], -)::Array where {V<:AbstractVector, T<:Tuple,N}</code></pre><p>Take an array of model-modifying function vectors in <code>variants</code>, and execute the function <code>analysis</code> on all variants of the <code>model</code> specified by <code>variants</code>. The computation is distributed over worker IDs in <code>workers</code>. If <code>args</code> are supplied (as an array of the same size as the <code>variants</code>), they are forwarded as arguments to the corresponding analysis function calls.</p><p>The array of variants must contain vectors of single-parameter functions, these are applied to model in order. The functions must <em>not</em> modify the model, but rather return a modified copy. The copy should be made as shallow as possible, to increase memory efficiency of the process. Variant generators that modify the argument model in-place will cause unpredictable results. Refer to the definition of <a href="#COBREXA.screen_variant"><code>screen_variant</code></a> for details.</p><p>The function <code>analysis</code> will receive a single argument (the modified model), together with an expanded tuple of arguments from <code>args</code>.</p><p>The modification and analysis functions are transferred to <code>workers</code> as-is; all packages required to run them (e.g. the optimization solvers) must be loaded there. Typically, you want to use the macro <code>@everywhere using MyFavoriteSolver</code> from <code>Distributed</code> package for loading the solvers.</p><p><strong>Return value</strong></p><p>The results of running <code>analysis</code> are collected in to the resulting array, in a way that preserves the shape of the <code>variants</code>, similarly as with <code>pmap</code>.</p><p>The results of <code>analysis</code> function must be serializable, preferably made only from pure Julia structures, because they may be transferred over the network between the computation nodes. For that reason, functions that return whole JuMP models that contain pointers to allocated C structures (such as <a href="#COBREXA.flux_balance_analysis-Union{Tuple{M}, Tuple{M, Any}} where M<:MetabolicModel"><code>flux_balance_analysis</code></a> used with <code>GLPK</code> or <code>Gurobi</code> otimizers) will generally not in this context.</p><p><strong>Example</strong></p><p>``` function reverse_reaction(i::Int) (model::CoreModel) -> begin mod = copy(model) mod.S[:,i] .*= -1 # this is unrealistic but sufficient for demonstration mod end end</p><p>m = load<em>model(CoreModel, "e</em>coli_core.xml")</p><p>screen<em>variants(m, [ [reverse</em>reaction(5)], [reverse<em>reaction(3), reverse</em>reaction(6)] ], mod -> mod.S[:,3]) # observe the changes in S</p><p>screen<em>variants(m, [ [reverse</em>reaction(5)], [reverse<em>reaction(3), reverse</em>reaction(6)] ], mod -> flux<em>balance</em>analysis_vec(mod, GLPK.Optimizer)) # run analysis</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/screening.jl#L2-L69">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.screen_variant" href="#COBREXA.screen_variant"><code>COBREXA.screen_variant</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia">screen_variant(model::MetabolicModel, variant::Vector, analysis, args = ())</code></pre><p>Helper function for <a href="#COBREXA.screen-Union{Tuple{MetabolicModel}, Tuple{N}, Tuple{T}, Tuple{V}} where {V<:(AbstractVector{T} where T), T<:Tuple, N}"><code>screen</code></a> that applies all single-argument functions in <code>variant</code> to the <code>model</code> (in order from "first" to "last"), and executes <code>analysis</code> on the result.</p><p>Can be used to test model variants locally.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/screening.jl#L122-L130">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.screen_variants-Tuple{Any, Any, Any}" href="#COBREXA.screen_variants-Tuple{Any, Any, Any}"><code>COBREXA.screen_variants</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">screen_variants(model, variants, analysis; workers=[myid()])</code></pre><p>A shortcut for <a href="#COBREXA.screen-Union{Tuple{MetabolicModel}, Tuple{N}, Tuple{T}, Tuple{V}} where {V<:(AbstractVector{T} where T), T<:Tuple, N}"><code>screen</code></a> that only works with model variants.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/screening.jl#L138-L142">source</a></section></article><h3 id="Analysis-modifications"><a class="docs-heading-anchor" href="#Analysis-modifications">Analysis modifications</a><a id="Analysis-modifications-1"></a><a class="docs-heading-anchor-permalink" href="#Analysis-modifications" title="Permalink"></a></h3><article class="docstring"><header><a class="docstring-binding" id="COBREXA._do_knockout-Tuple{MetabolicModel, Any, Vector{String}}" href="#COBREXA._do_knockout-Tuple{MetabolicModel, Any, Vector{String}}"><code>COBREXA._do_knockout</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_do_knockout(model::MetabolicModel, opt_model)</code></pre><p>Internal helper for knockouts on generic MetabolicModels. This can be overloaded so that the knockouts may work differently (more efficiently) with other models.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/modifications/knockout.jl#L17-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.knockout-Tuple{String}" href="#COBREXA.knockout-Tuple{String}"><code>COBREXA.knockout</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">knockout(gene_id::String)</code></pre><p>A helper variant of <a href="#COBREXA.knockout-Tuple{String}"><code>knockout</code></a> for a single gene.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/modifications/knockout.jl#L10-L14">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.knockout-Tuple{Vector{String}}" href="#COBREXA.knockout-Tuple{Vector{String}}"><code>COBREXA.knockout</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">knockout(gene_ids::Vector{String})</code></pre><p>A modification that zeroes the bounds of all reactions that would be knocked out by the specified genes (effectively disables the reactions).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/modifications/knockout.jl#L1-L6">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.change_constraint-Tuple{String, Any, Any}" href="#COBREXA.change_constraint-Tuple{String, Any, Any}"><code>COBREXA.change_constraint</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">change_constraint(id::String, lb, ub)</code></pre><p>Change the lower and upper bounds (<code>lb</code> and <code>ub</code> respectively) of reaction <code>id</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/modifications/optimizer.jl#L54-L58">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.change_objective-Tuple{Union{String, Vector{String}}}" href="#COBREXA.change_objective-Tuple{Union{String, Vector{String}}}"><code>COBREXA.change_objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">change_objective(new_objective::Union{String,Vector{String}}; weights=[], sense=MOI.MAX_SENSE)</code></pre><p>Modification that changes the objective function used in a constraint based analysis function. <code>new_objective</code> can be a single reaction identifier, or an array of reactions identifiers.</p><p>Optionally, the objective can be weighted by a vector of <code>weights</code>, and a optimization <code>sense</code> can be set.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/modifications/optimizer.jl#L66-L75">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.change_optimizer-Tuple{Any}" href="#COBREXA.change_optimizer-Tuple{Any}"><code>COBREXA.change_optimizer</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">change_optimizer(optimizer)</code></pre><p>Change the JuMP optimizer used to run the optimization.</p><p>This may be used to try different approaches for reaching the optimum, and in problems that may require different optimizers for different parts, such as the <a href="#COBREXA.parsimonious_flux_balance_analysis-Tuple{MetabolicModel, Any}"><code>parsimonious_flux_balance_analysis</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/modifications/optimizer.jl#L15-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.change_optimizer_attribute-Tuple{Any, Any}" href="#COBREXA.change_optimizer_attribute-Tuple{Any, Any}"><code>COBREXA.change_optimizer_attribute</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">change_optimizer_attribute(attribute_key, value)</code></pre><p>Change a JuMP optimizer attribute. The attributes are optimizer-specific, refer to the JuMP documentation and the documentation of the specific optimizer for usable keys and values.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/modifications/optimizer.jl#L28-L34">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.change_sense-Tuple{Any}" href="#COBREXA.change_sense-Tuple{Any}"><code>COBREXA.change_sense</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">change_sense(objective_sense)</code></pre><p>Change the objective sense of optimization. Possible arguments are <code>MOI.MAX_SENSE</code> and <code>MOI.MIN_SENSE</code>.</p><p>If you want to change the objective and sense at the same time, use <a href="#COBREXA.change_objective-Tuple{Union{String, Vector{String}}}"><code>change_objective</code></a> instead to do both at once.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/modifications/optimizer.jl#L2-L10">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.constrain_objective_value-Tuple{Any}" href="#COBREXA.constrain_objective_value-Tuple{Any}"><code>COBREXA.constrain_objective_value</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">constrain_objective_value(tolerance)</code></pre><p>Limit the objective value to <code>tolerance</code>-times the current objective value, as with <a href="#COBREXA.objective_bounds-Tuple{Any}"><code>objective_bounds</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/modifications/optimizer.jl#L40-L45">source</a></section></article><h3 id="Flux-sampling"><a class="docs-heading-anchor" href="#Flux-sampling">Flux sampling</a><a id="Flux-sampling-1"></a><a class="docs-heading-anchor-permalink" href="#Flux-sampling" title="Permalink"></a></h3><article class="docstring"><header><a class="docstring-binding" id="COBREXA._affine_hit_and_run_chain-NTuple{5, Any}" href="#COBREXA._affine_hit_and_run_chain-NTuple{5, Any}"><code>COBREXA._affine_hit_and_run_chain</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_affine_hit_and_run_chain(warmup, lbs, ubs, iters, chain)</code></pre><p>Internal helper function for computing a single affine hit-and-run chain. The number of the chain is passed for possible future initialization of stable RNGs.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/sampling/affine_hit_and_run.jl#L73-L79">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.affine_hit_and_run-Tuple{Matrix{Float64}, Vector{Float64}, Vector{Float64}}" href="#COBREXA.affine_hit_and_run-Tuple{Matrix{Float64}, Vector{Float64}, Vector{Float64}}"><code>COBREXA.affine_hit_and_run</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">function affine_hit_and_run( +)::Array where {V<:AbstractVector, T<:Tuple,N}</code></pre><p>Take an array of model-modifying function vectors in <code>variants</code>, and execute the function <code>analysis</code> on all variants of the <code>model</code> specified by <code>variants</code>. The computation is distributed over worker IDs in <code>workers</code>. If <code>args</code> are supplied (as an array of the same size as the <code>variants</code>), they are forwarded as arguments to the corresponding analysis function calls.</p><p>The array of variants must contain vectors of single-parameter functions, these are applied to model in order. The functions must <em>not</em> modify the model, but rather return a modified copy. The copy should be made as shallow as possible, to increase memory efficiency of the process. Variant generators that modify the argument model in-place will cause unpredictable results. Refer to the definition of <a href="#COBREXA.screen_variant"><code>screen_variant</code></a> for details.</p><p>The function <code>analysis</code> will receive a single argument (the modified model), together with an expanded tuple of arguments from <code>args</code>.</p><p>The modification and analysis functions are transferred to <code>workers</code> as-is; all packages required to run them (e.g. the optimization solvers) must be loaded there. Typically, you want to use the macro <code>@everywhere using MyFavoriteSolver</code> from <code>Distributed</code> package for loading the solvers.</p><p><strong>Return value</strong></p><p>The results of running <code>analysis</code> are collected in to the resulting array, in a way that preserves the shape of the <code>variants</code>, similarly as with <code>pmap</code>.</p><p>The results of <code>analysis</code> function must be serializable, preferably made only from pure Julia structures, because they may be transferred over the network between the computation nodes. For that reason, functions that return whole JuMP models that contain pointers to allocated C structures (such as <a href="#COBREXA.flux_balance_analysis-Union{Tuple{M}, Tuple{M, Any}} where M<:MetabolicModel"><code>flux_balance_analysis</code></a> used with <code>GLPK</code> or <code>Gurobi</code> otimizers) will generally not in this context.</p><p><strong>Example</strong></p><p>``` function reverse_reaction(i::Int) (model::CoreModel) -> begin mod = copy(model) mod.S[:,i] .*= -1 # this is unrealistic but sufficient for demonstration mod end end</p><p>m = load<em>model(CoreModel, "e</em>coli_core.xml")</p><p>screen<em>variants(m, [ [reverse</em>reaction(5)], [reverse<em>reaction(3), reverse</em>reaction(6)] ], mod -> mod.S[:,3]) # observe the changes in S</p><p>screen<em>variants(m, [ [reverse</em>reaction(5)], [reverse<em>reaction(3), reverse</em>reaction(6)] ], mod -> flux<em>balance</em>analysis_vec(mod, GLPK.Optimizer)) # run analysis</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/screening.jl#L2-L69">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.screen_variant" href="#COBREXA.screen_variant"><code>COBREXA.screen_variant</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia">screen_variant(model::MetabolicModel, variant::Vector, analysis, args = ())</code></pre><p>Helper function for <a href="#COBREXA.screen-Union{Tuple{MetabolicModel}, Tuple{N}, Tuple{T}, Tuple{V}} where {V<:(AbstractVector{T} where T), T<:Tuple, N}"><code>screen</code></a> that applies all single-argument functions in <code>variant</code> to the <code>model</code> (in order from "first" to "last"), and executes <code>analysis</code> on the result.</p><p>Can be used to test model variants locally.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/screening.jl#L122-L130">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.screen_variants-Tuple{Any, Any, Any}" href="#COBREXA.screen_variants-Tuple{Any, Any, Any}"><code>COBREXA.screen_variants</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">screen_variants(model, variants, analysis; workers=[myid()])</code></pre><p>A shortcut for <a href="#COBREXA.screen-Union{Tuple{MetabolicModel}, Tuple{N}, Tuple{T}, Tuple{V}} where {V<:(AbstractVector{T} where T), T<:Tuple, N}"><code>screen</code></a> that only works with model variants.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/screening.jl#L138-L142">source</a></section></article><h3 id="Analysis-modifications"><a class="docs-heading-anchor" href="#Analysis-modifications">Analysis modifications</a><a id="Analysis-modifications-1"></a><a class="docs-heading-anchor-permalink" href="#Analysis-modifications" title="Permalink"></a></h3><article class="docstring"><header><a class="docstring-binding" id="COBREXA._do_knockout-Tuple{MetabolicModel, Any, Vector{String}}" href="#COBREXA._do_knockout-Tuple{MetabolicModel, Any, Vector{String}}"><code>COBREXA._do_knockout</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_do_knockout(model::MetabolicModel, opt_model)</code></pre><p>Internal helper for knockouts on generic MetabolicModels. This can be overloaded so that the knockouts may work differently (more efficiently) with other models.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/modifications/knockout.jl#L17-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.knockout-Tuple{String}" href="#COBREXA.knockout-Tuple{String}"><code>COBREXA.knockout</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">knockout(gene_id::String)</code></pre><p>A helper variant of <a href="#COBREXA.knockout-Tuple{String}"><code>knockout</code></a> for a single gene.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/modifications/knockout.jl#L10-L14">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.knockout-Tuple{Vector{String}}" href="#COBREXA.knockout-Tuple{Vector{String}}"><code>COBREXA.knockout</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">knockout(gene_ids::Vector{String})</code></pre><p>A modification that zeroes the bounds of all reactions that would be knocked out by the specified genes (effectively disables the reactions).</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/modifications/knockout.jl#L1-L6">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.change_constraint-Tuple{String, Any, Any}" href="#COBREXA.change_constraint-Tuple{String, Any, Any}"><code>COBREXA.change_constraint</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">change_constraint(id::String, lb, ub)</code></pre><p>Change the lower and upper bounds (<code>lb</code> and <code>ub</code> respectively) of reaction <code>id</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/modifications/optimizer.jl#L54-L58">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.change_objective-Tuple{Union{String, Vector{String}}}" href="#COBREXA.change_objective-Tuple{Union{String, Vector{String}}}"><code>COBREXA.change_objective</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">change_objective(new_objective::Union{String,Vector{String}}; weights=[], sense=MOI.MAX_SENSE)</code></pre><p>Modification that changes the objective function used in a constraint based analysis function. <code>new_objective</code> can be a single reaction identifier, or an array of reactions identifiers.</p><p>Optionally, the objective can be weighted by a vector of <code>weights</code>, and a optimization <code>sense</code> can be set.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/modifications/optimizer.jl#L66-L75">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.change_optimizer-Tuple{Any}" href="#COBREXA.change_optimizer-Tuple{Any}"><code>COBREXA.change_optimizer</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">change_optimizer(optimizer)</code></pre><p>Change the JuMP optimizer used to run the optimization.</p><p>This may be used to try different approaches for reaching the optimum, and in problems that may require different optimizers for different parts, such as the <a href="#COBREXA.parsimonious_flux_balance_analysis-Tuple{MetabolicModel, Any}"><code>parsimonious_flux_balance_analysis</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/modifications/optimizer.jl#L15-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.change_optimizer_attribute-Tuple{Any, Any}" href="#COBREXA.change_optimizer_attribute-Tuple{Any, Any}"><code>COBREXA.change_optimizer_attribute</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">change_optimizer_attribute(attribute_key, value)</code></pre><p>Change a JuMP optimizer attribute. The attributes are optimizer-specific, refer to the JuMP documentation and the documentation of the specific optimizer for usable keys and values.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/modifications/optimizer.jl#L28-L34">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.change_sense-Tuple{Any}" href="#COBREXA.change_sense-Tuple{Any}"><code>COBREXA.change_sense</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">change_sense(objective_sense)</code></pre><p>Change the objective sense of optimization. Possible arguments are <code>MOI.MAX_SENSE</code> and <code>MOI.MIN_SENSE</code>.</p><p>If you want to change the objective and sense at the same time, use <a href="#COBREXA.change_objective-Tuple{Union{String, Vector{String}}}"><code>change_objective</code></a> instead to do both at once.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/modifications/optimizer.jl#L2-L10">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.constrain_objective_value-Tuple{Any}" href="#COBREXA.constrain_objective_value-Tuple{Any}"><code>COBREXA.constrain_objective_value</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">constrain_objective_value(tolerance)</code></pre><p>Limit the objective value to <code>tolerance</code>-times the current objective value, as with <a href="#COBREXA.objective_bounds-Tuple{Any}"><code>objective_bounds</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/modifications/optimizer.jl#L40-L45">source</a></section></article><h3 id="Flux-sampling"><a class="docs-heading-anchor" href="#Flux-sampling">Flux sampling</a><a id="Flux-sampling-1"></a><a class="docs-heading-anchor-permalink" href="#Flux-sampling" title="Permalink"></a></h3><article class="docstring"><header><a class="docstring-binding" id="COBREXA._affine_hit_and_run_chain-NTuple{5, Any}" href="#COBREXA._affine_hit_and_run_chain-NTuple{5, Any}"><code>COBREXA._affine_hit_and_run_chain</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_affine_hit_and_run_chain(warmup, lbs, ubs, iters, chain)</code></pre><p>Internal helper function for computing a single affine hit-and-run chain. The number of the chain is passed for possible future initialization of stable RNGs.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/sampling/affine_hit_and_run.jl#L73-L79">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.affine_hit_and_run-Tuple{Matrix{Float64}, Vector{Float64}, Vector{Float64}}" href="#COBREXA.affine_hit_and_run-Tuple{Matrix{Float64}, Vector{Float64}, Vector{Float64}}"><code>COBREXA.affine_hit_and_run</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">function affine_hit_and_run( warmup_points::Matrix{Float64}, lbs::Vector{Float64}, ubs::Vector{Float64}; @@ -163,31 +163,31 @@ using Tulip model = load_model(StandardModel, model_path) warmup, lbs, ubs = warmup_from_variability(model, Tulip.Optimizer, 100) -samples = affine_hit_and_run(warmup, lbs, ubs, sample_iters = 1:3)</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/sampling/affine_hit_and_run.jl#L1-L41">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.warmup_from_variability" href="#COBREXA.warmup_from_variability"><code>COBREXA.warmup_from_variability</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia">function warmup_from_variability( +samples = affine_hit_and_run(warmup, lbs, ubs, sample_iters = 1:3)</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/sampling/affine_hit_and_run.jl#L1-L41">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.warmup_from_variability" href="#COBREXA.warmup_from_variability"><code>COBREXA.warmup_from_variability</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia">function warmup_from_variability( model::MetabolicModel, optimizer, min_reactions::Vector{Int}=1:n_reactions(model), max_reactions::Vector{Int}=1:n_reactions(model); modifications = [], workers::Vector{Int} = [myid()], -)::Tuple{Matrix{Float64}, Vector{Float64}, Vector{Float64}}</code></pre><p>Generate FVA-like warmup points for samplers, by minimizing and maximizing the specified reactions. The result is returned as a matrix, each point occupies as single column in the result.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/sampling/warmup_variability.jl#L33-L46">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.warmup_from_variability-Tuple{MetabolicModel, Any, Int64}" href="#COBREXA.warmup_from_variability-Tuple{MetabolicModel, Any, Int64}"><code>COBREXA.warmup_from_variability</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">warmup_from_variability( +)::Tuple{Matrix{Float64}, Vector{Float64}, Vector{Float64}}</code></pre><p>Generate FVA-like warmup points for samplers, by minimizing and maximizing the specified reactions. The result is returned as a matrix, each point occupies as single column in the result.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/sampling/warmup_variability.jl#L33-L46">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.warmup_from_variability-Tuple{MetabolicModel, Any, Int64}" href="#COBREXA.warmup_from_variability-Tuple{MetabolicModel, Any, Int64}"><code>COBREXA.warmup_from_variability</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">warmup_from_variability( model::MetabolicModel, optimizer, n_points::Int; kwargs... -)</code></pre><p>Generates FVA-like warmup points for samplers, by selecting random points by minimizing and maximizing reactions. Can not return more than 2 times the number of reactions in the model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/analysis/sampling/warmup_variability.jl#L1-L12">source</a></section></article><h2 id="Miscellaneous-utilities"><a class="docs-heading-anchor" href="#Miscellaneous-utilities">Miscellaneous utilities</a><a id="Miscellaneous-utilities-1"></a><a class="docs-heading-anchor-permalink" href="#Miscellaneous-utilities" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="COBREXA.ambiguously_identified_items-Tuple{Dict{String, Dict{String, Set{String}}}}" href="#COBREXA.ambiguously_identified_items-Tuple{Dict{String, Dict{String, Set{String}}}}"><code>COBREXA.ambiguously_identified_items</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">ambiguously_identified_items( +)</code></pre><p>Generates FVA-like warmup points for samplers, by selecting random points by minimizing and maximizing reactions. Can not return more than 2 times the number of reactions in the model.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/analysis/sampling/warmup_variability.jl#L1-L12">source</a></section></article><h2 id="Miscellaneous-utilities"><a class="docs-heading-anchor" href="#Miscellaneous-utilities">Miscellaneous utilities</a><a id="Miscellaneous-utilities-1"></a><a class="docs-heading-anchor-permalink" href="#Miscellaneous-utilities" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-binding" id="COBREXA.ambiguously_identified_items-Tuple{Dict{String, Dict{String, Set{String}}}}" href="#COBREXA.ambiguously_identified_items-Tuple{Dict{String, Dict{String, Set{String}}}}"><code>COBREXA.ambiguously_identified_items</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">ambiguously_identified_items( index::Dict{String,Dict{String,[String]}}, -)::Vector{String}</code></pre><p>Find items (genes, metabolites, ...) from the annotation index that are identified non-uniquely by at least one of their annotations.</p><p>This often indicates that the items are duplicate or miscategorized.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/Annotation.jl#L44-L53">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.annotation_index-Tuple{AbstractDict{String, V} where V}" href="#COBREXA.annotation_index-Tuple{AbstractDict{String, V} where V}"><code>COBREXA.annotation_index</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">annotation_index( +)::Vector{String}</code></pre><p>Find items (genes, metabolites, ...) from the annotation index that are identified non-uniquely by at least one of their annotations.</p><p>This often indicates that the items are duplicate or miscategorized.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/Annotation.jl#L44-L53">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.annotation_index-Tuple{AbstractDict{String, V} where V}" href="#COBREXA.annotation_index-Tuple{AbstractDict{String, V} where V}"><code>COBREXA.annotation_index</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">annotation_index( xs::AbstractDict{String}; annotations = _annotations, -)::Dict{String,Dict{String,[String]}}</code></pre><p>Extract annotations from a dictionary of items <code>xs</code> and build an index that maps annotation "kinds" (e.g. <code>"PubChem"</code>) to the mapping from the annotations (e.g. <code>"COMPOUND_12345"</code>) to item IDs that carry the annotations.</p><p>Function <code>annotations</code> is used to access the <code>Annotations</code> object in the dictionary values.</p><p>This is extremely useful for finding items by annotation data.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/Annotation.jl#L6-L20">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.get_atoms-Tuple{Metabolite}" href="#COBREXA.get_atoms-Tuple{Metabolite}"><code>COBREXA.get_atoms</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">get_atoms(met::Metabolite)::MetaboliteFormula</code></pre><p>Simple wrapper for getting the atom dictionary count out of a <code>Metabolite</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/Metabolite.jl#L1-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.check_duplicate_reaction-Tuple{Reaction, OrderedCollections.OrderedDict{String, Reaction}}" href="#COBREXA.check_duplicate_reaction-Tuple{Reaction, OrderedCollections.OrderedDict{String, Reaction}}"><code>COBREXA.check_duplicate_reaction</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">check_duplicate_reaction(rxn::Reaction, rxns::Dict{String, Reaction}; only_metabolites=true)</code></pre><p>Check if <code>rxn</code> already exists in <code>rxns</code> but has another <code>id</code>. If <code>only_metabolites</code> is <code>true</code> then only the metabolite <code>id</code>s are checked. Otherwise, compares metabolite <code>id</code>s and the absolute value of their stoichiometric coefficients to those of <code>rxn</code>. If <code>rxn</code> has the same reaction equation as another reaction in <code>rxns</code>, the return the <code>id</code>. Otherwise return <code>nothing</code>.</p><p>See also: <a href="#COBREXA.is_mass_balanced-Tuple{Reaction, StandardModel}"><code>is_mass_balanced</code></a></p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/Reaction.jl#L1-L11">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.is_boundary-Tuple{Reaction}" href="#COBREXA.is_boundary-Tuple{Reaction}"><code>COBREXA.is_boundary</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">is_boundary(rxn::Reaction)</code></pre><p>Return true if reaction is a boundary reaction, otherwise return false. Checks if boundary by inspecting number of metabolites in reaction equation. Boundary reactions have only one metabolite, e.g. an exchange reaction, or a sink/demand reaction. </p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/Reaction.jl#L41-L47">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.is_mass_balanced-Tuple{Reaction, StandardModel}" href="#COBREXA.is_mass_balanced-Tuple{Reaction, StandardModel}"><code>COBREXA.is_mass_balanced</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">is_mass_balanced(rxn::Reaction, model::StandardModel)</code></pre><p>Checks if <code>rxn</code> is atom balanced. Returns a boolean for whether the reaction is balanced, and the associated balance of atoms for convenience (useful if not balanced).</p><p>See also: <a href="#COBREXA.get_atoms-Tuple{Metabolite}"><code>get_atoms</code></a>, <a href="#COBREXA.check_duplicate_reaction-Tuple{Reaction, OrderedCollections.OrderedDict{String, Reaction}}"><code>check_duplicate_reaction</code></a></p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/Reaction.jl#L52-L59">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.serialize_model-Tuple{Serialized, String}" href="#COBREXA.serialize_model-Tuple{Serialized, String}"><code>COBREXA.serialize_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">serialize_model(model::Serialized, filename::String)::Serialized</code></pre><p>Specialization of <a href="#COBREXA.serialize_model-Tuple{Serialized, String}"><code>serialize_model</code></a> that prevents nested serialization of already-serialized models.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/Serialized.jl#L17-L22">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.serialize_model-Union{Tuple{MM}, Tuple{MM, String}} where MM<:MetabolicModel" href="#COBREXA.serialize_model-Union{Tuple{MM}, Tuple{MM, String}} where MM<:MetabolicModel"><code>COBREXA.serialize_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">serialize_model(model::MM, filename::String)::Serialized{MM} where {MM<:MetabolicModel}</code></pre><p>Serialize the <code>model</code> to file <code>filename</code>, returning a <a href="#COBREXA.Serialized"><code>Serialized</code></a> model that is able to load itself back automatically upon precaching by <a href="#COBREXA.precache!-Tuple{MetabolicModel}"><code>precache!</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/Serialized.jl#L2-L8">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.atom_exchange-Tuple{Dict{String, Float64}, StandardModel}" href="#COBREXA.atom_exchange-Tuple{Dict{String, Float64}, StandardModel}"><code>COBREXA.atom_exchange</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">atom_exchange(flux_dict::Dict{String, Float64}, model::StandardModel)</code></pre><p>Return a dictionary mapping the flux of atoms across the boundary of the model given <code>flux_dict</code> (the solution of a constraint based analysis) of reactions in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/StandardModel.jl#L1-L6">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.exchange_reactions-Tuple{Dict{String, Float64}, StandardModel}" href="#COBREXA.exchange_reactions-Tuple{Dict{String, Float64}, StandardModel}"><code>COBREXA.exchange_reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">get_exchanges(flux_dict::Dict{String, Float64}; top_n=Inf, ignorebound=_constants.default_reaction_bound, verbose=true)</code></pre><p>Display the <code>top_n</code> producing and consuming exchange fluxes. If <code>top_n</code> is not specified (by an integer), then all are displayed. Ignores infinite (problem upper/lower bound) fluxes (set with ignorebound). When <code>verbose</code> is false, the output is not printed out. Return these reactions (id => ) in two dictionaries: <code>consuming</code>, <code>producing</code></p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/StandardModel.jl#L22-L30">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_fluxes-Tuple{Dict{String, Float64}, StandardModel}" href="#COBREXA.metabolite_fluxes-Tuple{Dict{String, Float64}, StandardModel}"><code>COBREXA.metabolite_fluxes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_fluxes(flux_dict::Dict{String, Float64}, model::StandardModel)</code></pre><p>Return two dictionaries of metabolite <code>id</code>s mapped to reactions that consume or produce them given the flux distribution supplied in <code>fluxdict</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/StandardModel.jl#L91-L96">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.set_bound-Tuple{Any, Any}" href="#COBREXA.set_bound-Tuple{Any, Any}"><code>COBREXA.set_bound</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">set_bound(index, optimization_model; +)::Dict{String,Dict{String,[String]}}</code></pre><p>Extract annotations from a dictionary of items <code>xs</code> and build an index that maps annotation "kinds" (e.g. <code>"PubChem"</code>) to the mapping from the annotations (e.g. <code>"COMPOUND_12345"</code>) to item IDs that carry the annotations.</p><p>Function <code>annotations</code> is used to access the <code>Annotations</code> object in the dictionary values.</p><p>This is extremely useful for finding items by annotation data.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/Annotation.jl#L6-L20">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.get_atoms-Tuple{Metabolite}" href="#COBREXA.get_atoms-Tuple{Metabolite}"><code>COBREXA.get_atoms</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">get_atoms(met::Metabolite)::MetaboliteFormula</code></pre><p>Simple wrapper for getting the atom dictionary count out of a <code>Metabolite</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/Metabolite.jl#L1-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.check_duplicate_reaction-Tuple{Reaction, OrderedCollections.OrderedDict{String, Reaction}}" href="#COBREXA.check_duplicate_reaction-Tuple{Reaction, OrderedCollections.OrderedDict{String, Reaction}}"><code>COBREXA.check_duplicate_reaction</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">check_duplicate_reaction(rxn::Reaction, rxns::Dict{String, Reaction}; only_metabolites=true)</code></pre><p>Check if <code>rxn</code> already exists in <code>rxns</code> but has another <code>id</code>. If <code>only_metabolites</code> is <code>true</code> then only the metabolite <code>id</code>s are checked. Otherwise, compares metabolite <code>id</code>s and the absolute value of their stoichiometric coefficients to those of <code>rxn</code>. If <code>rxn</code> has the same reaction equation as another reaction in <code>rxns</code>, the return the <code>id</code>. Otherwise return <code>nothing</code>.</p><p>See also: <a href="#COBREXA.is_mass_balanced-Tuple{Reaction, StandardModel}"><code>is_mass_balanced</code></a></p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/Reaction.jl#L1-L11">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.is_boundary-Tuple{Reaction}" href="#COBREXA.is_boundary-Tuple{Reaction}"><code>COBREXA.is_boundary</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">is_boundary(rxn::Reaction)</code></pre><p>Return true if reaction is a boundary reaction, otherwise return false. Checks if boundary by inspecting number of metabolites in reaction equation. Boundary reactions have only one metabolite, e.g. an exchange reaction, or a sink/demand reaction. </p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/Reaction.jl#L41-L47">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.is_mass_balanced-Tuple{Reaction, StandardModel}" href="#COBREXA.is_mass_balanced-Tuple{Reaction, StandardModel}"><code>COBREXA.is_mass_balanced</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">is_mass_balanced(rxn::Reaction, model::StandardModel)</code></pre><p>Checks if <code>rxn</code> is atom balanced. Returns a boolean for whether the reaction is balanced, and the associated balance of atoms for convenience (useful if not balanced).</p><p>See also: <a href="#COBREXA.get_atoms-Tuple{Metabolite}"><code>get_atoms</code></a>, <a href="#COBREXA.check_duplicate_reaction-Tuple{Reaction, OrderedCollections.OrderedDict{String, Reaction}}"><code>check_duplicate_reaction</code></a></p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/Reaction.jl#L52-L59">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.serialize_model-Tuple{Serialized, String}" href="#COBREXA.serialize_model-Tuple{Serialized, String}"><code>COBREXA.serialize_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">serialize_model(model::Serialized, filename::String)::Serialized</code></pre><p>Specialization of <a href="#COBREXA.serialize_model-Tuple{Serialized, String}"><code>serialize_model</code></a> that prevents nested serialization of already-serialized models.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/Serialized.jl#L17-L22">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.serialize_model-Union{Tuple{MM}, Tuple{MM, String}} where MM<:MetabolicModel" href="#COBREXA.serialize_model-Union{Tuple{MM}, Tuple{MM, String}} where MM<:MetabolicModel"><code>COBREXA.serialize_model</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">serialize_model(model::MM, filename::String)::Serialized{MM} where {MM<:MetabolicModel}</code></pre><p>Serialize the <code>model</code> to file <code>filename</code>, returning a <a href="#COBREXA.Serialized"><code>Serialized</code></a> model that is able to load itself back automatically upon precaching by <a href="#COBREXA.precache!-Tuple{MetabolicModel}"><code>precache!</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/Serialized.jl#L2-L8">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.atom_exchange-Tuple{Dict{String, Float64}, StandardModel}" href="#COBREXA.atom_exchange-Tuple{Dict{String, Float64}, StandardModel}"><code>COBREXA.atom_exchange</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">atom_exchange(flux_dict::Dict{String, Float64}, model::StandardModel)</code></pre><p>Return a dictionary mapping the flux of atoms across the boundary of the model given <code>flux_dict</code> (the solution of a constraint based analysis) of reactions in <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/StandardModel.jl#L1-L6">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.exchange_reactions-Tuple{Dict{String, Float64}, StandardModel}" href="#COBREXA.exchange_reactions-Tuple{Dict{String, Float64}, StandardModel}"><code>COBREXA.exchange_reactions</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">get_exchanges(flux_dict::Dict{String, Float64}; top_n=Inf, ignorebound=_constants.default_reaction_bound, verbose=true)</code></pre><p>Display the <code>top_n</code> producing and consuming exchange fluxes. If <code>top_n</code> is not specified (by an integer), then all are displayed. Ignores infinite (problem upper/lower bound) fluxes (set with ignorebound). When <code>verbose</code> is false, the output is not printed out. Return these reactions (id => ) in two dictionaries: <code>consuming</code>, <code>producing</code></p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/StandardModel.jl#L22-L30">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.metabolite_fluxes-Tuple{Dict{String, Float64}, StandardModel}" href="#COBREXA.metabolite_fluxes-Tuple{Dict{String, Float64}, StandardModel}"><code>COBREXA.metabolite_fluxes</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">metabolite_fluxes(flux_dict::Dict{String, Float64}, model::StandardModel)</code></pre><p>Return two dictionaries of metabolite <code>id</code>s mapped to reactions that consume or produce them given the flux distribution supplied in <code>fluxdict</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/StandardModel.jl#L91-L96">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.set_bound-Tuple{Any, Any}" href="#COBREXA.set_bound-Tuple{Any, Any}"><code>COBREXA.set_bound</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">set_bound(index, optimization_model; ub=_constants.default_reaction_rate, - lb=-_constants.default_reaction_rate)</code></pre><p>Helper function to set the bounds of variables. The JuMP <code>set_normalized_rhs</code> function is a little confusing, so this function simplifies setting constraints. In short, JuMP uses a normalized right hand side representation of constraints, which means that lower bounds have their sign flipped. This function does this for you, so you don't have to remember to do this whenever you change the constraints. </p><p>Just supply the constraint <code>index</code> and the JuMP model (<code>opt_model</code>) that will be solved, and the variable's bounds will be set to <code>ub</code> and <code>lb</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/StandardModel.jl#L127-L142">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.gamma_bounds-Tuple{Any}" href="#COBREXA.gamma_bounds-Tuple{Any}"><code>COBREXA.gamma_bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">gamma_bounds(gamma)</code></pre><p>A bounds-generating function for <a href="#COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Any}"><code>flux_variability_analysis</code></a> that limits the objective value to be at least <code>gamma*Zâ‚€</code>, as usual in COBRA packages. Use as the <code>bounds</code> argument:</p><pre><code class="language-none">flux_variability_analysis(model, some_optimizer; bounds = gamma_bounds(0.9))</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/bounds.jl#L1-L10">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective_bounds-Tuple{Any}" href="#COBREXA.objective_bounds-Tuple{Any}"><code>COBREXA.objective_bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">(tolerance) = z -> begin</code></pre><p>A bounds-generating function for <a href="#COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Any}"><code>flux_variability_analysis</code></a> that limits the objective value to a small multiple of Zâ‚€. Use as <code>bounds</code> argument, similarly to <a href="#COBREXA.gamma_bounds-Tuple{Any}"><code>gamma_bounds</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/bounds.jl#L13-L19">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._parse_formula-Tuple{String}" href="#COBREXA._parse_formula-Tuple{String}"><code>COBREXA._parse_formula</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_parse_formula(f::String)::MetaboliteFormula</code></pre><p>Parse a formula in format <code>C2H6O</code> into a <a href="#COBREXA.MetaboliteFormula"><code>MetaboliteFormula</code></a>, which is basically a dictionary of atom counts in the molecule.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/chemical_formulas.jl#L2-L7">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._unparse_formula-Tuple{Dict{String, Int64}}" href="#COBREXA._unparse_formula-Tuple{Dict{String, Int64}}"><code>COBREXA._unparse_formula</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_unparse_formula(f::MetaboliteFormula)::String</code></pre><p>Format <a href="#COBREXA.MetaboliteFormula"><code>MetaboliteFormula</code></a> to <code>String</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/chemical_formulas.jl#L19-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._parse_grr-Tuple{SBML.GeneProductAssociation}" href="#COBREXA._parse_grr-Tuple{SBML.GeneProductAssociation}"><code>COBREXA._parse_grr</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_parse_grr(gpa::SBML.GeneProductAssociation)::GeneAssociation</code></pre><p>Parse <code>SBML.GeneProductAssociation</code> structure to the simpler GeneAssociation. The input must be (implicitly) in a positive DNF.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/gene_associations.jl#L2-L7">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._parse_grr-Tuple{String}" href="#COBREXA._parse_grr-Tuple{String}"><code>COBREXA._parse_grr</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_parse_grr(s::String)::GeneAssociation</code></pre><p>Parse a DNF gene association rule in format <code>(YIL010W and YLR043C) or (YIL010W and YGR209C)</code> to <code>GeneAssociation. Also accepts</code>OR<code>,</code>|<code>,</code>||<code>,</code>AND<code>,</code>&<code>, and</code>&&`.</p><p><strong>Example</strong></p><pre><code class="language-none">julia> _parse_grr("(YIL010W and YLR043C) or (YIL010W and YGR209C)") + lb=-_constants.default_reaction_rate)</code></pre><p>Helper function to set the bounds of variables. The JuMP <code>set_normalized_rhs</code> function is a little confusing, so this function simplifies setting constraints. In short, JuMP uses a normalized right hand side representation of constraints, which means that lower bounds have their sign flipped. This function does this for you, so you don't have to remember to do this whenever you change the constraints. </p><p>Just supply the constraint <code>index</code> and the JuMP model (<code>opt_model</code>) that will be solved, and the variable's bounds will be set to <code>ub</code> and <code>lb</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/StandardModel.jl#L127-L142">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.gamma_bounds-Tuple{Any}" href="#COBREXA.gamma_bounds-Tuple{Any}"><code>COBREXA.gamma_bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">gamma_bounds(gamma)</code></pre><p>A bounds-generating function for <a href="#COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Any}"><code>flux_variability_analysis</code></a> that limits the objective value to be at least <code>gamma*Zâ‚€</code>, as usual in COBRA packages. Use as the <code>bounds</code> argument:</p><pre><code class="language-none">flux_variability_analysis(model, some_optimizer; bounds = gamma_bounds(0.9))</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/bounds.jl#L1-L10">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.objective_bounds-Tuple{Any}" href="#COBREXA.objective_bounds-Tuple{Any}"><code>COBREXA.objective_bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">(tolerance) = z -> begin</code></pre><p>A bounds-generating function for <a href="#COBREXA.flux_variability_analysis-Tuple{MetabolicModel, Any}"><code>flux_variability_analysis</code></a> that limits the objective value to a small multiple of Zâ‚€. Use as <code>bounds</code> argument, similarly to <a href="#COBREXA.gamma_bounds-Tuple{Any}"><code>gamma_bounds</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/bounds.jl#L13-L19">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._parse_formula-Tuple{String}" href="#COBREXA._parse_formula-Tuple{String}"><code>COBREXA._parse_formula</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_parse_formula(f::String)::MetaboliteFormula</code></pre><p>Parse a formula in format <code>C2H6O</code> into a <a href="#COBREXA.MetaboliteFormula"><code>MetaboliteFormula</code></a>, which is basically a dictionary of atom counts in the molecule.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/chemical_formulas.jl#L2-L7">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._unparse_formula-Tuple{Dict{String, Int64}}" href="#COBREXA._unparse_formula-Tuple{Dict{String, Int64}}"><code>COBREXA._unparse_formula</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_unparse_formula(f::MetaboliteFormula)::String</code></pre><p>Format <a href="#COBREXA.MetaboliteFormula"><code>MetaboliteFormula</code></a> to <code>String</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/chemical_formulas.jl#L19-L23">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._parse_grr-Tuple{SBML.GeneProductAssociation}" href="#COBREXA._parse_grr-Tuple{SBML.GeneProductAssociation}"><code>COBREXA._parse_grr</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_parse_grr(gpa::SBML.GeneProductAssociation)::GeneAssociation</code></pre><p>Parse <code>SBML.GeneProductAssociation</code> structure to the simpler GeneAssociation. The input must be (implicitly) in a positive DNF.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/gene_associations.jl#L2-L7">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._parse_grr-Tuple{String}" href="#COBREXA._parse_grr-Tuple{String}"><code>COBREXA._parse_grr</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_parse_grr(s::String)::GeneAssociation</code></pre><p>Parse a DNF gene association rule in format <code>(YIL010W and YLR043C) or (YIL010W and YGR209C)</code> to <code>GeneAssociation. Also accepts</code>OR<code>,</code>|<code>,</code>||<code>,</code>AND<code>,</code>&<code>, and</code>&&`.</p><p><strong>Example</strong></p><pre><code class="language-none">julia> _parse_grr("(YIL010W and YLR043C) or (YIL010W and YGR209C)") 2-element Array{Array{String,1},1}: ["YIL010W", "YLR043C"] - ["YIL010W", "YGR209C"]</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/gene_associations.jl#L37-L51">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._unparse_grr-Tuple{Type{SBML.GeneProductAssociation}, Vector{Vector{String}}}" href="#COBREXA._unparse_grr-Tuple{Type{SBML.GeneProductAssociation}, Vector{Vector{String}}}"><code>COBREXA._unparse_grr</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_unparse_grr( + ["YIL010W", "YGR209C"]</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/gene_associations.jl#L37-L51">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._unparse_grr-Tuple{Type{SBML.GeneProductAssociation}, Vector{Vector{String}}}" href="#COBREXA._unparse_grr-Tuple{Type{SBML.GeneProductAssociation}, Vector{Vector{String}}}"><code>COBREXA._unparse_grr</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_unparse_grr( ::Type{SBML.GeneProductAssociation}, x::GeneAssociation, -)::SBML.GeneAssociation</code></pre><p>Convert a GeneAssociation to the corresponding <code>SBML.jl</code> structure.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/gene_associations.jl#L22-L29">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._unparse_grr-Tuple{Type{String}, Vector{Vector{String}}}" href="#COBREXA._unparse_grr-Tuple{Type{String}, Vector{Vector{String}}}"><code>COBREXA._unparse_grr</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">unparse_grr(grr::Vector{Vector{Gene}}</code></pre><p>Converts a nested string gene reaction array back into a gene reaction rule string.</p><p><strong>Example</strong></p><pre><code class="language-none">julia> _unparse_grr(String, [["YIL010W", "YLR043C"], ["YIL010W", "YGR209C"]]) -"(YIL010W and YLR043C) or (YIL010W and YGR209C)"</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/gene_associations.jl#L63-L74">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._guesskey-Tuple{Any, Any}" href="#COBREXA._guesskey-Tuple{Any, Any}"><code>COBREXA._guesskey</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_guesskey(ks, possibilities)</code></pre><p>Unfortunately, many model types that contain dictionares do not have standardized field names, so we need to try a few possibilities and guess the best one. The keys used to look for valid field names should be ideally specified as constants in <code>src/base/constants.jl</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/utils/guesskey.jl#L2-L9">source</a></section></article><h3 id="Logging-and-debugging-helpers"><a class="docs-heading-anchor" href="#Logging-and-debugging-helpers">Logging and debugging helpers</a><a id="Logging-and-debugging-helpers-1"></a><a class="docs-heading-anchor-permalink" href="#Logging-and-debugging-helpers" title="Permalink"></a></h3><article class="docstring"><header><a class="docstring-binding" id="COBREXA.log_io" href="#COBREXA.log_io"><code>COBREXA.log_io</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia">log_io(enable::Bool=true)</code></pre><p>Enable (default) or disable (by passing <code>false</code>) output of messages and warnings from model input/output.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/logging/log.jl#L40-L44">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.log_models" href="#COBREXA.log_models"><code>COBREXA.log_models</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia">log_models(enable::Bool=true)</code></pre><p>Enable (default) or disable (by passing <code>false</code>) output of model-related messages.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/logging/log.jl#L40-L44">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.log_perf" href="#COBREXA.log_perf"><code>COBREXA.log_perf</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia">log_perf(enable::Bool=true)</code></pre><p>Enable (default) or disable (by passing <code>false</code>) output of performance-related tracing information.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/logging/log.jl#L40-L44">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.@_make_logging_tag-Tuple{Symbol, String}" href="#COBREXA.@_make_logging_tag-Tuple{Symbol, String}"><code>COBREXA.@_make_logging_tag</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia">macro _make_logging_group(sym::Symbol, doc::String)</code></pre><p>This creates a group of functions that allow masking out topic-related logging actions. A call that goes as follows:</p><pre><code class="language-none">@_make_logging_tag XYZ</code></pre><p>creates the following tools:</p><ul><li>global variable <code>_XYZ_log_enabled</code> defaulted to false</li><li>function <code>log_XYZ</code> that can be called to turn the logging on/off</li><li>a masking macro <code>@_XYZ_log</code> that can be prepended to commands that should only happen if the logging of tag XYZ is enabled.</li></ul><p>The masking macro is then used as follows:</p><pre><code class="language-none">@_XYZ_log @info "This is the extra verbose information you wanted!" a b c</code></pre><p>The user can direct logging with these:</p><pre><code class="language-none">log_XYZ() -log_XYZ(false)</code></pre><p><code>doc</code> should be a name of the stuff that is being printed if the corresponding log_XYZ() is enabled – it is used to create a friendly documentation for the logging switch. In this case it could say <code>"X, Y and Z-related messages"</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/4c42781f1a67b5fddef931cda6f9c6026f3064fe/src/base/logging/log.jl#L2-L29">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../notebooks/">« Examples and notebooks</a><a class="docs-footer-nextpage" href="../howToContribute/">How to contribute »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +)::SBML.GeneAssociation</code></pre><p>Convert a GeneAssociation to the corresponding <code>SBML.jl</code> structure.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/gene_associations.jl#L22-L29">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._unparse_grr-Tuple{Type{String}, Vector{Vector{String}}}" href="#COBREXA._unparse_grr-Tuple{Type{String}, Vector{Vector{String}}}"><code>COBREXA._unparse_grr</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">unparse_grr(grr::Vector{Vector{Gene}}</code></pre><p>Converts a nested string gene reaction array back into a gene reaction rule string.</p><p><strong>Example</strong></p><pre><code class="language-none">julia> _unparse_grr(String, [["YIL010W", "YLR043C"], ["YIL010W", "YGR209C"]]) +"(YIL010W and YLR043C) or (YIL010W and YGR209C)"</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/gene_associations.jl#L63-L74">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA._guesskey-Tuple{Any, Any}" href="#COBREXA._guesskey-Tuple{Any, Any}"><code>COBREXA._guesskey</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia">_guesskey(ks, possibilities)</code></pre><p>Unfortunately, many model types that contain dictionares do not have standardized field names, so we need to try a few possibilities and guess the best one. The keys used to look for valid field names should be ideally specified as constants in <code>src/base/constants.jl</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/utils/guesskey.jl#L2-L9">source</a></section></article><h3 id="Logging-and-debugging-helpers"><a class="docs-heading-anchor" href="#Logging-and-debugging-helpers">Logging and debugging helpers</a><a id="Logging-and-debugging-helpers-1"></a><a class="docs-heading-anchor-permalink" href="#Logging-and-debugging-helpers" title="Permalink"></a></h3><article class="docstring"><header><a class="docstring-binding" id="COBREXA.log_io" href="#COBREXA.log_io"><code>COBREXA.log_io</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia">log_io(enable::Bool=true)</code></pre><p>Enable (default) or disable (by passing <code>false</code>) output of messages and warnings from model input/output.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/logging/log.jl#L40-L44">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.log_models" href="#COBREXA.log_models"><code>COBREXA.log_models</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia">log_models(enable::Bool=true)</code></pre><p>Enable (default) or disable (by passing <code>false</code>) output of model-related messages.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/logging/log.jl#L40-L44">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.log_perf" href="#COBREXA.log_perf"><code>COBREXA.log_perf</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia">log_perf(enable::Bool=true)</code></pre><p>Enable (default) or disable (by passing <code>false</code>) output of performance-related tracing information.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/logging/log.jl#L40-L44">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="COBREXA.@_make_logging_tag-Tuple{Symbol, String}" href="#COBREXA.@_make_logging_tag-Tuple{Symbol, String}"><code>COBREXA.@_make_logging_tag</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia">macro _make_logging_group(sym::Symbol, doc::String)</code></pre><p>This creates a group of functions that allow masking out topic-related logging actions. A call that goes as follows:</p><pre><code class="language-none">@_make_logging_tag XYZ</code></pre><p>creates the following tools:</p><ul><li>global variable <code>_XYZ_log_enabled</code> defaulted to false</li><li>function <code>log_XYZ</code> that can be called to turn the logging on/off</li><li>a masking macro <code>@_XYZ_log</code> that can be prepended to commands that should only happen if the logging of tag XYZ is enabled.</li></ul><p>The masking macro is then used as follows:</p><pre><code class="language-none">@_XYZ_log @info "This is the extra verbose information you wanted!" a b c</code></pre><p>The user can direct logging with these:</p><pre><code class="language-none">log_XYZ() +log_XYZ(false)</code></pre><p><code>doc</code> should be a name of the stuff that is being printed if the corresponding log_XYZ() is enabled – it is used to create a friendly documentation for the logging switch. In this case it could say <code>"X, Y and Z-related messages"</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/0a9bdd4ba05b6d3febd813febc13c801012e692a/src/base/logging/log.jl#L2-L29">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../notebooks/">« Examples and notebooks</a><a class="docs-footer-nextpage" href="../howToContribute/">How to contribute »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/howToContribute/index.html b/dev/howToContribute/index.html index 7b85fec23bf6a9dbc5139051f1141446b7e37363..c30b92d224c09f24b0b17f9225dfab35257ae266 100644 --- a/dev/howToContribute/index.html +++ b/dev/howToContribute/index.html @@ -5,4 +5,4 @@ $ julia</code></pre><p>With Julia, you can install the development version of the package from the directory as follows:</p><pre><code class="language-julia">(v1.6) pkg> add .</code></pre><p>(press <code>]</code> to get into the packaging environment)</p><p>This adds the <code>COBREXA.jl</code> package and all its dependencies. You can verify that the installation worked by typing:</p><pre><code class="language-julia">(v1.6) pkg> status</code></pre><p>If you are planning to develop the package, it is often easier to install the package in development mode, with <code>dev</code> command:</p><pre><code class="language-julia">(v1.6) pkg> dev .</code></pre><p>That causes the package to always load with whatever code changes that you added to the source directory.</p><h4 id="Finally:-load-COBREXA.jl"><a class="docs-heading-anchor" href="#Finally:-load-COBREXA.jl">Finally: load COBREXA.jl</a><a id="Finally:-load-COBREXA.jl-1"></a><a class="docs-heading-anchor-permalink" href="#Finally:-load-COBREXA.jl" title="Permalink"></a></h4><p>With both of above options, you should get COBREXA.jl installed, which means that the following command should, without errors, load the package and make COBREXA.jl functions available for testing:</p><pre><code class="language-julia">julia> using COBREXA</code></pre><p>You may now freely modify the code and test the result.</p><p>Remember that if you want to work in the environment of the package, you need to <em>activate</em> it. That causes, among other, that the additional dependencies specified with packaging <code>add</code> command will be written automaticaly to <code>Project.toml</code> file of your local COBREXA.jl clone, not to your global environment. Activation is simple: when in the directory of the package, just type the command into the packaging shell:</p><pre><code class="language-julia">(v1.6) pkg> activate</code></pre><h3 id="Step-2:-Publish-your-changes"><a class="docs-heading-anchor" href="#Step-2:-Publish-your-changes">Step 2: Publish your changes</a><a id="Step-2:-Publish-your-changes-1"></a><a class="docs-heading-anchor-permalink" href="#Step-2:-Publish-your-changes" title="Permalink"></a></h3><p>You are expected to make a fork of the main COBREXA.jl repository, and open a pull request from that one to the <code>master</code> branch of the main repository. For creating the fork, just hit the "Fork" button on GitHub.</p><p>After that, change the directory to your repository and adjust the remotes:</p><pre><code class="language-bash">$ cd ~/.julia/dev/COBREXA # or any other directory, as needed $ git remote rename origin upstream # renames the origin (the main COBREXA.jl repo) to upstream $ git remote add origin git@github.com:yourUsername/COBREXA.jl.git # adds the link to your clone as new origin -$ git fetch origin # fetches the refs from your repo</code></pre><p>In the above code, change <code>yourUsername</code> is your GitHub username.</p><p>When the renaming is done, start a new branch at <code>upstream/master</code>. In the code snippet, substitute <code>yn</code> for your initials (Your Name here) and give the new feature a better name than <code>somefeature</code>:</p><pre><code class="language-bash">$ git checkout -b yn-somefeature origin/master</code></pre><p>Commit any changes and features that you like to the new branch. When the commits look complete to you, push the branch to your repository fork:</p><pre><code class="language-bash">$ git push -u origin yn-somefeature</code></pre><p>This makes your changes visible in your repository. After that, you can navigate to <a href="https://github.com/LCSB-BioCore/COBREXA.jl/pulls">GitHub's pull request page</a>, where you should immediately see a big green button that helps you to create a pull request for this branch. Read the section below for precise details and guidelines on submitting the pull requests.</p><h2 id="How-to-submit-a-pull-request-(PR)-with-your-modification/enhancement?"><a class="docs-heading-anchor" href="#How-to-submit-a-pull-request-(PR)-with-your-modification/enhancement?">How to submit a pull request (PR) with your modification/enhancement?</a><a id="How-to-submit-a-pull-request-(PR)-with-your-modification/enhancement?-1"></a><a class="docs-heading-anchor-permalink" href="#How-to-submit-a-pull-request-(PR)-with-your-modification/enhancement?" title="Permalink"></a></h2><ol><li><strong>Make a fork of the repository</strong>, commit the modifications in a <strong>separate branch</strong> and push the branch to your fork.</li><li>Make a pull request where you describe the motivation and expected outcome for the users. Specifically, consider any possible incompatibilities, and the necessity to increment the version number after your changes are applied.</li><li>After submitting the pull request, verify that all status checks (tests, documentation) are passing. Make sure any new contribution is properly documented and tested (you may want to check with coverage tools, using <code>test --coverage</code> from the Julia packaging shell)</li></ol><p>After you submitted a pull request, a label might be assigned that allows us to track and manage issues and pull requests.</p><p><strong>Tip</strong>: if you commit many small, partial changes, you may help us save energy by prefixing your commit names with <code>[skip ci]</code>, which deactivates the CI trigger on that commit. With each skipped CI, you may save as much as 15Wh of energy. Testing just the "final" commit of the pull-request branch is sufficient.</p><h2 id="For-developers:-What-is-the-expected-branch-management/workflow?"><a class="docs-heading-anchor" href="#For-developers:-What-is-the-expected-branch-management/workflow?">For developers: What is the expected branch management/workflow?</a><a id="For-developers:-What-is-the-expected-branch-management/workflow?-1"></a><a class="docs-heading-anchor-permalink" href="#For-developers:-What-is-the-expected-branch-management/workflow?" title="Permalink"></a></h2><p>The workflow is based on <a href="https://docs.gitlab.com/ee/topics/gitlab_flow.html">GitLab flow</a>, i.e., a <code>master</code> branch with <code>feature</code> branches being merged into the <code>master</code> branch. Depending on your access rights, you may open the <code>feature</code> branch in this repository, on in your fork.</p><p>The guidelines can be summarized as such:</p><ul><li>when making a contribution, create one new branch and open one new PR for each new independent feature or bugfix</li><li>do not push to another branch unless it is your own</li><li>try to get a review before merging unless the change is trivial and non-impacting</li><li>consider prefixing your branch names with your initials, so that one can easily see who owns which branch (e.g. <code>ad-somefeature</code> would be committed by Arthur Dent)</li></ul></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../functions/">« Function reference</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +$ git fetch origin # fetches the refs from your repo</code></pre><p>In the above code, change <code>yourUsername</code> is your GitHub username.</p><p>When the renaming is done, start a new branch at <code>upstream/master</code>. In the code snippet, substitute <code>yn</code> for your initials (Your Name here) and give the new feature a better name than <code>somefeature</code>:</p><pre><code class="language-bash">$ git checkout -b yn-somefeature origin/master</code></pre><p>Commit any changes and features that you like to the new branch. When the commits look complete to you, push the branch to your repository fork:</p><pre><code class="language-bash">$ git push -u origin yn-somefeature</code></pre><p>This makes your changes visible in your repository. After that, you can navigate to <a href="https://github.com/LCSB-BioCore/COBREXA.jl/pulls">GitHub's pull request page</a>, where you should immediately see a big green button that helps you to create a pull request for this branch. Read the section below for precise details and guidelines on submitting the pull requests.</p><h2 id="How-to-submit-a-pull-request-(PR)-with-your-modification/enhancement?"><a class="docs-heading-anchor" href="#How-to-submit-a-pull-request-(PR)-with-your-modification/enhancement?">How to submit a pull request (PR) with your modification/enhancement?</a><a id="How-to-submit-a-pull-request-(PR)-with-your-modification/enhancement?-1"></a><a class="docs-heading-anchor-permalink" href="#How-to-submit-a-pull-request-(PR)-with-your-modification/enhancement?" title="Permalink"></a></h2><ol><li><strong>Make a fork of the repository</strong>, commit the modifications in a <strong>separate branch</strong> and push the branch to your fork.</li><li>Make a pull request where you describe the motivation and expected outcome for the users. Specifically, consider any possible incompatibilities, and the necessity to increment the version number after your changes are applied.</li><li>After submitting the pull request, verify that all status checks (tests, documentation) are passing. Make sure any new contribution is properly documented and tested (you may want to check with coverage tools, using <code>test --coverage</code> from the Julia packaging shell)</li></ol><p>After you submitted a pull request, a label might be assigned that allows us to track and manage issues and pull requests.</p><p><strong>Tip</strong>: if you commit many small, partial changes, you may help us save energy by prefixing your commit names with <code>[skip ci]</code>, which deactivates the CI trigger on that commit. With each skipped CI, you may save as much as 15Wh of energy. Testing just the "final" commit of the pull-request branch is sufficient.</p><h2 id="For-developers:-What-is-the-expected-branch-management/workflow?"><a class="docs-heading-anchor" href="#For-developers:-What-is-the-expected-branch-management/workflow?">For developers: What is the expected branch management/workflow?</a><a id="For-developers:-What-is-the-expected-branch-management/workflow?-1"></a><a class="docs-heading-anchor-permalink" href="#For-developers:-What-is-the-expected-branch-management/workflow?" title="Permalink"></a></h2><p>The workflow is based on <a href="https://docs.gitlab.com/ee/topics/gitlab_flow.html">GitLab flow</a>, i.e., a <code>master</code> branch with <code>feature</code> branches being merged into the <code>master</code> branch. Depending on your access rights, you may open the <code>feature</code> branch in this repository, on in your fork.</p><p>The guidelines can be summarized as such:</p><ul><li>when making a contribution, create one new branch and open one new PR for each new independent feature or bugfix</li><li>do not push to another branch unless it is your own</li><li>try to get a review before merging unless the change is trivial and non-impacting</li><li>consider prefixing your branch names with your initials, so that one can easily see who owns which branch (e.g. <code>ad-somefeature</code> would be committed by Arthur Dent)</li></ul></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../functions/">« Function reference</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/index.html b/dev/index.html index 5a795bef812cc8afdf2c6b7eebe80b20e4b3c8dc..5d46c9dc4955f6faff15ea6093e132bec12f6444 100644 --- a/dev/index.html +++ b/dev/index.html @@ -28,4 +28,4 @@ fluxes = flux_balance_analysis_dict(model, Tulip.Optimizer)</code></pre><p>The v "R_O2t" => 21.7995 "R_G6PDH2r" => 4.95999 "R_TALA" => 1.49698 - â‹® => â‹®</code></pre><h2 id="Tutorials"><a class="docs-heading-anchor" href="#Tutorials">Tutorials</a><a id="Tutorials-1"></a><a class="docs-heading-anchor-permalink" href="#Tutorials" title="Permalink"></a></h2><p>Detailed tutorial content is <a href="tutorials/">available here</a>.</p><ul><li><a href="tutorials/1_loading/#Loading-and-converting-model-data">Loading and converting model data</a></li><li><a href="tutorials/2_analysis/#Basic-analysis-of-constraint-based-models">Basic analysis of constraint-based models</a></li><li><a href="tutorials/3_hpc/#Distributed-processing-and-HPC-environments">Distributed processing and HPC environments</a></li><li><a href="tutorials/4_modifying/#Modifying-and-saving-the-models">Modifying and saving the models</a></li></ul><h2 id="Example-notebooks-and-workflows"><a class="docs-heading-anchor" href="#Example-notebooks-and-workflows">Example notebooks and workflows</a><a id="Example-notebooks-and-workflows-1"></a><a class="docs-heading-anchor-permalink" href="#Example-notebooks-and-workflows" title="Permalink"></a></h2><p>Detailed notebook content is <a href="notebooks/">available here</a>.</p><ul><li><a href="notebooks/1_loading_converting_saving/#Loading,-converting,-and-saving-models">Loading, converting, and saving models</a></li><li><a href="notebooks/2_finding_balance/#Finding-balance-and-variability-of-constraint-based-models">Finding balance and variability of constraint-based models</a></li><li><a href="notebooks/3_basic_stdmodel_usage/#Basic-usage-of-StandardModel">Basic usage of <code>StandardModel</code></a></li><li><a href="notebooks/4_basic_core_coupled_usage/#Basic-usage-of-CoreModel-and-CoreModelCoupled">Basic usage of <code>CoreModel</code> and <code>CoreModelCoupled</code></a></li><li><a href="notebooks/5_basic_stdmodel_construction/#Model-construction-and-modification">Model construction and modification</a></li></ul><h2 id="Functions-reference"><a class="docs-heading-anchor" href="#Functions-reference">Functions reference</a><a id="Functions-reference-1"></a><a class="docs-heading-anchor-permalink" href="#Functions-reference" title="Permalink"></a></h2><ul><li><a href="functions/#Functions">Functions</a></li><ul><li><a href="functions/#Base-Types">Base Types</a></li><li><a href="functions/#Model-types-and-contents">Model types and contents</a></li><li><a href="functions/#Base-functions">Base functions</a></li><li><a href="functions/#File-I/O-and-serialization">File I/O and serialization</a></li><li><a href="functions/#Model-reconstruction">Model reconstruction</a></li><li><a href="functions/#Analysis-functions">Analysis functions</a></li><li><a href="functions/#Miscellaneous-utilities">Miscellaneous utilities</a></li></ul></ul><h2 id="Contribution-guide"><a class="docs-heading-anchor" href="#Contribution-guide">Contribution guide</a><a id="Contribution-guide-1"></a><a class="docs-heading-anchor-permalink" href="#Contribution-guide" title="Permalink"></a></h2><p>If you wish to contribute code, patches or improvements to <code>COBREXA.jl</code>, please read the basic <a href="howToContribute/">contribution guidelines and hints.</a>.</p><h2 id="Acknowledgements"><a class="docs-heading-anchor" href="#Acknowledgements">Acknowledgements</a><a id="Acknowledgements-1"></a><a class="docs-heading-anchor-permalink" href="#Acknowledgements" title="Permalink"></a></h2><p><code>COBREXA.jl</code> is developed at the Luxembourg Centre for Systems Biomedicine of the University of Luxembourg (<a href="https://www.uni.lu/lcsb">uni.lu/lcsb</a>), cooperating with the Institute for Quantitative and Theoretical Biology at the Heinrich Heine University in Düsseldorf (<a href="https://www.qtb.hhu.de/">qtb.hhu.de</a>).</p><p>The development was supported by European Union's Horizon 2020 Programme under PerMedCoE project (<a href="https://www.permedcoe.eu/">permedcoe.eu</a>) agreement no. 951773.</p><img src="https://lcsb-biocore.github.io/COBREXA.jl/stable/assets/cobrexa.svg" alt="COBREXA logo" height="64px" style="height:64px; width:auto">   <img src="https://lcsb-biocore.github.io/COBREXA.jl/stable/assets/unilu.svg" alt="Uni.lu logo" height="64px" style="height:64px; width:auto">   <img src="https://lcsb-biocore.github.io/COBREXA.jl/stable/assets/lcsb.svg" alt="LCSB logo" height="64px" style="height:64px; width:auto">   <img src="https://lcsb-biocore.github.io/COBREXA.jl/stable/assets/hhu.svg" alt="HHU logo" height="64px" style="height:64px; width:auto">   <img src="https://lcsb-biocore.github.io/COBREXA.jl/stable/assets/qtb.svg" alt="QTB logo" height="64px" style="height:64px; width:auto">   <img src="https://lcsb-biocore.github.io/COBREXA.jl/stable/assets/permedcoe.svg" alt="PerMedCoE logo" height="64px" style="height:64px; width:auto"></article><nav class="docs-footer"><a class="docs-footer-nextpage" href="tutorials/">Tutorials »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> + â‹® => â‹®</code></pre><h2 id="Tutorials"><a class="docs-heading-anchor" href="#Tutorials">Tutorials</a><a id="Tutorials-1"></a><a class="docs-heading-anchor-permalink" href="#Tutorials" title="Permalink"></a></h2><p>Detailed tutorial content is <a href="tutorials/">available here</a>.</p><ul><li><a href="tutorials/1_loading/#Loading-and-converting-model-data">Loading and converting model data</a></li><li><a href="tutorials/2_analysis/#Basic-analysis-of-constraint-based-models">Basic analysis of constraint-based models</a></li><li><a href="tutorials/3_hpc/#Distributed-processing-and-HPC-environments">Distributed processing and HPC environments</a></li><li><a href="tutorials/4_modifying/#Modifying-and-saving-the-models">Modifying and saving the models</a></li></ul><h2 id="Example-notebooks-and-workflows"><a class="docs-heading-anchor" href="#Example-notebooks-and-workflows">Example notebooks and workflows</a><a id="Example-notebooks-and-workflows-1"></a><a class="docs-heading-anchor-permalink" href="#Example-notebooks-and-workflows" title="Permalink"></a></h2><p>Detailed notebook content is <a href="notebooks/">available here</a>.</p><ul><li><a href="notebooks/1_loading_converting_saving/#Loading,-converting,-and-saving-models">Loading, converting, and saving models</a></li><li><a href="notebooks/2_finding_balance/#Finding-balance-and-variability-of-constraint-based-models">Finding balance and variability of constraint-based models</a></li><li><a href="notebooks/3_basic_stdmodel_usage/#Basic-usage-of-StandardModel">Basic usage of <code>StandardModel</code></a></li><li><a href="notebooks/4_basic_core_coupled_usage/#Basic-usage-of-CoreModel-and-CoreModelCoupled">Basic usage of <code>CoreModel</code> and <code>CoreModelCoupled</code></a></li><li><a href="notebooks/5_basic_stdmodel_construction/#Model-construction-and-modification">Model construction and modification</a></li></ul><h2 id="Functions-reference"><a class="docs-heading-anchor" href="#Functions-reference">Functions reference</a><a id="Functions-reference-1"></a><a class="docs-heading-anchor-permalink" href="#Functions-reference" title="Permalink"></a></h2><ul><li><a href="functions/#Functions">Functions</a></li><ul><li><a href="functions/#Base-Types">Base Types</a></li><li><a href="functions/#Model-types-and-contents">Model types and contents</a></li><li><a href="functions/#Base-functions">Base functions</a></li><li><a href="functions/#File-I/O-and-serialization">File I/O and serialization</a></li><li><a href="functions/#Model-reconstruction">Model reconstruction</a></li><li><a href="functions/#Analysis-functions">Analysis functions</a></li><li><a href="functions/#Miscellaneous-utilities">Miscellaneous utilities</a></li></ul></ul><h2 id="Contribution-guide"><a class="docs-heading-anchor" href="#Contribution-guide">Contribution guide</a><a id="Contribution-guide-1"></a><a class="docs-heading-anchor-permalink" href="#Contribution-guide" title="Permalink"></a></h2><p>If you wish to contribute code, patches or improvements to <code>COBREXA.jl</code>, please read the basic <a href="howToContribute/">contribution guidelines and hints.</a>.</p><h2 id="Acknowledgements"><a class="docs-heading-anchor" href="#Acknowledgements">Acknowledgements</a><a id="Acknowledgements-1"></a><a class="docs-heading-anchor-permalink" href="#Acknowledgements" title="Permalink"></a></h2><p><code>COBREXA.jl</code> is developed at the Luxembourg Centre for Systems Biomedicine of the University of Luxembourg (<a href="https://www.uni.lu/lcsb">uni.lu/lcsb</a>), cooperating with the Institute for Quantitative and Theoretical Biology at the Heinrich Heine University in Düsseldorf (<a href="https://www.qtb.hhu.de/">qtb.hhu.de</a>).</p><p>The development was supported by European Union's Horizon 2020 Programme under PerMedCoE project (<a href="https://www.permedcoe.eu/">permedcoe.eu</a>) agreement no. 951773.</p><img src="https://lcsb-biocore.github.io/COBREXA.jl/stable/assets/cobrexa.svg" alt="COBREXA logo" height="64px" style="height:64px; width:auto">   <img src="https://lcsb-biocore.github.io/COBREXA.jl/stable/assets/unilu.svg" alt="Uni.lu logo" height="64px" style="height:64px; width:auto">   <img src="https://lcsb-biocore.github.io/COBREXA.jl/stable/assets/lcsb.svg" alt="LCSB logo" height="64px" style="height:64px; width:auto">   <img src="https://lcsb-biocore.github.io/COBREXA.jl/stable/assets/hhu.svg" alt="HHU logo" height="64px" style="height:64px; width:auto">   <img src="https://lcsb-biocore.github.io/COBREXA.jl/stable/assets/qtb.svg" alt="QTB logo" height="64px" style="height:64px; width:auto">   <img src="https://lcsb-biocore.github.io/COBREXA.jl/stable/assets/permedcoe.svg" alt="PerMedCoE logo" height="64px" style="height:64px; width:auto"></article><nav class="docs-footer"><a class="docs-footer-nextpage" href="tutorials/">Tutorials »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/notebooks/1_loading_converting_saving.ipynb b/dev/notebooks/1_loading_converting_saving.ipynb index d33d3d843cec5913f792b1750822505cbb2df7c8..41c12818812c17b035eabd2d5a1924b511b1c366 100644 Binary files a/dev/notebooks/1_loading_converting_saving.ipynb and b/dev/notebooks/1_loading_converting_saving.ipynb differ diff --git a/dev/notebooks/1_loading_converting_saving/index.html b/dev/notebooks/1_loading_converting_saving/index.html index 68bc846cd8e292230495fe2cccf77a23a31ecac3..b8b819fa4a8fd59fbc1b99300540ed2dd6a929fb 100644 --- a/dev/notebooks/1_loading_converting_saving/index.html +++ b/dev/notebooks/1_loading_converting_saving/index.html @@ -222,4 +222,4 @@ sm = convert(StandardModel, m) open(f -> serialize(f, sm), "myModel.stdmodel", "w")</code></pre><p>The models can then be loaded back using <code>deserialize</code>:</p><pre><code class="language-julia">sm2 = deserialize("myModel.stdmodel") issetequal(metabolites(sm), metabolites(sm2))</code></pre><pre class="documenter-example-output">true</pre><p>This form of loading operation is usually pretty quick:</p><pre><code class="language-julia">t = @elapsed deserialize("myModel.stdmodel") -@info "Deserialization took $t seconds"</code></pre><pre class="documenter-example-output">[ Info: Deserialization took 0.002487141 seconds</pre><p>Notably, large and complicated models with thousands of reactions and annotations can take seconds to decode properly. Serialization allows you to almost completely remove this overhead, and scales well to tens of millions of reactions.</p><hr/><p><em>This page was generated using <a href="https://github.com/fredrikekre/Literate.jl">Literate.jl</a>.</em></p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +@info "Deserialization took $t seconds"</code></pre><pre class="documenter-example-output">[ Info: Deserialization took 0.002391017 seconds</pre><p>Notably, large and complicated models with thousands of reactions and annotations can take seconds to decode properly. Serialization allows you to almost completely remove this overhead, and scales well to tens of millions of reactions.</p><hr/><p><em>This page was generated using <a href="https://github.com/fredrikekre/Literate.jl">Literate.jl</a>.</em></p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/notebooks/2_finding_balance/index.html b/dev/notebooks/2_finding_balance/index.html index c55142491f500e9559993555adaac3b93b6c63ea..cfe43568551abaa14c7944600a09b3cc97c82dc1 100644 --- a/dev/notebooks/2_finding_balance/index.html +++ b/dev/notebooks/2_finding_balance/index.html @@ -180,4 +180,4 @@ using OSQP</code></pre><pre class="documenter-example-output"> Resolving packa -25.642083259145206 0.0161569956400718 0.004729690379188246 - 3.8887743479784547</pre><hr/><p><em>This page was generated using <a href="https://github.com/fredrikekre/Literate.jl">Literate.jl</a>.</em></p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> + 3.8887743479784547</pre><hr/><p><em>This page was generated using <a href="https://github.com/fredrikekre/Literate.jl">Literate.jl</a>.</em></p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/notebooks/3_basic_stdmodel_usage.ipynb b/dev/notebooks/3_basic_stdmodel_usage.ipynb index eb252cc3a5962cabdfb1d216056ad104951e3898..ad19fd4259b056496f19c5bc57aeb4709db59bb0 100644 Binary files a/dev/notebooks/3_basic_stdmodel_usage.ipynb and b/dev/notebooks/3_basic_stdmodel_usage.ipynb differ diff --git a/dev/notebooks/3_basic_stdmodel_usage/index.html b/dev/notebooks/3_basic_stdmodel_usage/index.html index 5ee55a4cc406515427d8a183681d14c8805fc973..6f94ff15010f9c69264a26f0200b389131f4d9af 100644 --- a/dev/notebooks/3_basic_stdmodel_usage/index.html +++ b/dev/notebooks/3_basic_stdmodel_usage/index.html @@ -95,58 +95,56 @@ consuming["atp_c"] # reactions consuming atp_c</code></pre><pre class= "b3736" => Gene("b3736", nothing, Dict("original_bigg_ids"=>["b3736"]), Dict(… "b3737" => Gene("b3737", nothing, Dict("original_bigg_ids"=>["b3737"]), Dict(… â‹® => â‹®</pre><p>The <code>Gene</code> type is a struct that can be used to store information about genes in a <code>StandardModel</code>. Each <code>Gene</code> is composed of the following fields:</p><pre><code class="language-julia">fieldnames(Gene)</code></pre><pre class="documenter-example-output">(:id, :name, :notes, :annotations)</pre><div class="admonition is-success"><header class="admonition-header">Tip: Use <tab> complete to explore the structure of types</header><div class="admonition-body"><p>Use <tab> to quickly explore the fields of a struct. For example, Gene.<tab> will list all the fields shown above.</p></div></div><p>The keys used in the ordered dictionaries in <code>model.genes</code> are the ids returned using the generic accessor <code>genes</code>. <code>Gene</code>s have pretty printing, as demonstrated below for a random gene drawn from the model:</p><pre><code class="language-julia">random_gene_id = genes(model)[rand(1:n_genes(model))] -model.genes[random_gene_id]</code></pre><pre class="documenter-example-output">Gene.id: b1852 +model.genes[random_gene_id]</code></pre><pre class="documenter-example-output">Gene.id: b2779 Gene.name: --- Gene.notes: - original_bigg_ids: ["b1852"] + original_bigg_ids: ["b2779"] Gene.annotations: sbo: ["SBO:0000243"] - uniprot: ["P0AC53"] - ecogene: ["EG11221"] - ncbigene: ["946370"] - ncbigi: ["16129805"] - refseq_locus_tag: ["b1852"] - refseq_name: ["zwf"] - asap: ["ABE-0006171"] - refseq_synonym: ["JW1841", "ECK1853"] + uniprot: ["P0A6P9"] + ecogene: ["EG10258"] + ncbigene: ["945032"] + ncbigi: ["16130686"] + refseq_locus_tag: ["b2779"] + refseq_name: ["eno"] + asap: ["ABE-0009110"] + refseq_synonym: ["JW2750", "ECK2773"] </pre><p>The same idea holds for both metabolites (stored as <code>Metabolite</code>s) and reactions (stored as <code>Reaction</code>s). This is demonstrated below.</p><pre><code class="language-julia">random_metabolite_id = metabolites(model)[rand(1:n_metabolites(model))] -model.metabolites[random_metabolite_id]</code></pre><pre class="documenter-example-output">Metabolite.id: q8h2_c +model.metabolites[random_metabolite_id]</code></pre><pre class="documenter-example-output">Metabolite.id: nadh_c Metabolite.name: --- -Metabolite.formula: C49H76O4 -Metabolite.charge: 0 +Metabolite.formula: C21N7P2H27O14 +Metabolite.charge: -2 Metabolite.compartment: c Metabolite.notes: - original_bigg_ids: ["q8h2_c"] + original_bigg_ids: ["nadh_c"] Metabolite.annotations: - chebi: ["CHEBI:61682"] - metanetx.chemical: ["MNXM191"] - inchi_key: LOJUQFSPYHMHEO-SGHXU... + sabiork: ["38"] + kegg.compound: ["C00004"] sbo: ["SBO:0000247"] - hmdb: ["HMDB01060"] - bigg.metabolite: ["q8h2"] - biocyc: ["META:CPD-9956"] - seed.compound: ["cpd29608", "cpd15561"] + biocyc: ["META:NADH"] + chebi: CHEBI:13395, ..., CHEBI:13396 + metanetx.chemical: ["MNXM10"] + inchi_key: BOPGDPNILDQYTO-NNYOX... + hmdb: ["HMDB01487"] + bigg.metabolite: ["nadh"] + seed.compound: ["cpd00004"] + reactome.compound: 192305, ..., 194697 </pre><pre><code class="language-julia">random_reaction_id = reactions(model)[rand(1:n_reactions(model))] -model.reactions[random_reaction_id]</code></pre><pre class="documenter-example-output">Reaction.id: PYK +model.reactions[random_reaction_id]</code></pre><pre class="documenter-example-output">Reaction.id: O2t Reaction.name: --- -Reaction.metabolites: 1.0 adp_c + 1.0 pep_c + 1.0 h_c ⟶ 1.0 atp_c + 1.0 pyr_c -Reaction.lb: 0.0 +Reaction.metabolites: 1.0 o2_e ⟷ 1.0 o2_c +Reaction.lb: -1000.0 Reaction.ub: 1000.0 -Reaction.grr: (b1854) or (b1676) -Reaction.subsystem: Glycolysis/Gluconeogenesis +Reaction.grr: (s0001) +Reaction.subsystem: Transport, Extracellular Reaction.notes: - original_bigg_ids: ["PYK"] + original_bigg_ids: ["O2t"] Reaction.annotations: - bigg.reaction: ["PYK"] - sabiork: ["9"] - metanetx.reaction: ["MNXR103371"] - rhea: 18160, ..., 18157 - sbo: ["SBO:0000176"] - seed.reaction: ["rxn00148"] - kegg.reaction: ["R00200"] - biocyc: ["META:PEPDEPHOS-RXN"] - reactome.reaction: R-SSC-71670, ..., R-XTR-71670 - ec-code: ["2.7.1.40"] + metanetx.reaction: ["MNXR102090"] + sbo: ["SBO:0000185"] + seed.reaction: rxn09641, ..., rxn09734 + biocyc: ["META:TRANS-RXN0-474"] + bigg.reaction: ["O2t"] Reaction.objective_coefficient: 0.0 </pre><p><code>StandardModel</code> can be used to build your own metabolic model or modify an existing one. One of the main use cases for <code>StandardModel</code> is that it can be used to merge multiple models or parts of multiple models together. Since the internals are uniform inside each <code>StandardModel</code>, attributes of other model types are squashed into the required format (using the generic accessors). This ensures that the internals of all <code>StandardModel</code>s are the same - allowing easy systematic evaluation.</p><div class="admonition is-warning"><header class="admonition-header">Warning: Combining models with different namespaces is tricky</header><div class="admonition-body"><p>Combining models that use different namespaces requires care. For example, in some models the water exchange reaction is called <code>EX_h2o_e</code>, while in others it is called <code>R_EX_h2o_s</code>. This needs to manually addressed (for now) to prevent duplicate, e.g. reactions, from being added.</p></div></div><h2 id="Checking-the-internals-of-StandardModels:-annotation_index"><a class="docs-heading-anchor" href="#Checking-the-internals-of-StandardModels:-annotation_index">Checking the internals of <code>StandardModel</code>s: <code>annotation_index</code></a><a id="Checking-the-internals-of-StandardModels:-annotation_index-1"></a><a class="docs-heading-anchor-permalink" href="#Checking-the-internals-of-StandardModels:-annotation_index" title="Permalink"></a></h2><p>Often when models are automatically reconstructed duplicate genes, reactions or metabolites end up in a model. <code>COBREXA</code> exports <code>annotation_index</code> to check for cases where the id of a struct may be different, but the annotations the same (possibly suggesting a duplication). <code>annotation_index</code> builds a dictionary mapping annotation features to the ids of whatever struct you are inspecting. This makes it easy to find structs that share certain annotation features.</p><pre><code class="language-julia">rxn_annotations = annotation_index(model.reactions)</code></pre><pre class="documenter-example-output">Dict{String, Dict{String, Set{String}}} with 10 entries: "ec-code" => Dict("3.6.3.37"=>Set(["ATPM"]), "3.6.3.42"=>Set(["ATPM… @@ -192,4 +190,4 @@ Reaction.notes: --- Reaction.annotations: --- Reaction.objective_coefficient: 0.0 </pre><pre><code class="language-julia">check_duplicate_reaction(pgm_duplicate, model.reactions; only_metabolites = false) # can also just check if only the metabolites are the same but different stoichiometry is used</code></pre><pre class="documenter-example-output">"PGM"</pre><h2 id="Checking-the-internals-of-StandardModels:-is_mass_balanced"><a class="docs-heading-anchor" href="#Checking-the-internals-of-StandardModels:-is_mass_balanced">Checking the internals of <code>StandardModel</code>s: <code>is_mass_balanced</code></a><a id="Checking-the-internals-of-StandardModels:-is_mass_balanced-1"></a><a class="docs-heading-anchor-permalink" href="#Checking-the-internals-of-StandardModels:-is_mass_balanced" title="Permalink"></a></h2><p>Finally, <code>is_mass_balanced</code> can be used to check if a reaction is mass balanced based on the formulas of the reaction equation.</p><pre><code class="language-julia">pgm_duplicate.metabolites = Dict{String,Float64}("3pg_c" => 1, "2pg_c" => -1, "h2o_c" => 1) # not mass balanced now -is_bal, extra_atoms = is_mass_balanced(pgm_duplicate, model) # extra_atoms shows which atoms are in excess/deficit</code></pre><pre class="documenter-example-output">(false, Dict("C" => 0.0, "P" => 0.0, "H" => 2.0, "O" => 1.0))</pre><hr/><p><em>This page was generated using <a href="https://github.com/fredrikekre/Literate.jl">Literate.jl</a>.</em></p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +is_bal, extra_atoms = is_mass_balanced(pgm_duplicate, model) # extra_atoms shows which atoms are in excess/deficit</code></pre><pre class="documenter-example-output">(false, Dict("C" => 0.0, "P" => 0.0, "H" => 2.0, "O" => 1.0))</pre><hr/><p><em>This page was generated using <a href="https://github.com/fredrikekre/Literate.jl">Literate.jl</a>.</em></p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/notebooks/4_basic_core_coupled_usage/index.html b/dev/notebooks/4_basic_core_coupled_usage/index.html index 53619edbe4889504a1a976dce16b1283511b621b..1bfbad1ff034df2fb6312d969b50a7048f2cbee8 100644 --- a/dev/notebooks/4_basic_core_coupled_usage/index.html +++ b/dev/notebooks/4_basic_core_coupled_usage/index.html @@ -105,4 +105,4 @@ Number of reactions: 95 Number of metabolites: 72 </pre><pre><code class="language-julia">d = flux_balance_analysis_dict(model, Tulip.Optimizer) d["R_BIOMASS_Ecoli_core_w_GAM"]</code></pre><pre class="documenter-example-output">0.8739215022661532</pre><pre><code class="language-julia">dc = flux_balance_analysis_dict(cmodel, Tulip.Optimizer) -dc["R_BIOMASS_Ecoli_core_w_GAM"]</code></pre><pre class="documenter-example-output">0.6655856992982552</pre><hr/><p><em>This page was generated using <a href="https://github.com/fredrikekre/Literate.jl">Literate.jl</a>.</em></p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +dc["R_BIOMASS_Ecoli_core_w_GAM"]</code></pre><pre class="documenter-example-output">0.6655856992982552</pre><hr/><p><em>This page was generated using <a href="https://github.com/fredrikekre/Literate.jl">Literate.jl</a>.</em></p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/notebooks/5_basic_stdmodel_construction/index.html b/dev/notebooks/5_basic_stdmodel_construction/index.html index e23136d02aa4875a90be04fb4da88c271a00661f..e35fbf591483803cede5247cdf4d13e0e621cd16 100644 --- a/dev/notebooks/5_basic_stdmodel_construction/index.html +++ b/dev/notebooks/5_basic_stdmodel_construction/index.html @@ -58,4 +58,4 @@ model</code></pre><pre class="documenter-example-output">Metabolic model of type â‹… â‹… â‹… â‹… 1.0 â‹… -1.0 -1.0 Number of reactions: 8 Number of metabolites: 4 -</pre><hr/><p><em>This page was generated using <a href="https://github.com/fredrikekre/Literate.jl">Literate.jl</a>.</em></p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +</pre><hr/><p><em>This page was generated using <a href="https://github.com/fredrikekre/Literate.jl">Literate.jl</a>.</em></p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/notebooks/another.file.matlab b/dev/notebooks/another.file.matlab index c1ed0ebe0e64b394ef65ac935da296d1d1d549a4..e9a6d38e91d9de992c83cb13eaf64ae55f8865a8 100644 Binary files a/dev/notebooks/another.file.matlab and b/dev/notebooks/another.file.matlab differ diff --git a/dev/notebooks/converted_model.mat b/dev/notebooks/converted_model.mat index c1ed0ebe0e64b394ef65ac935da296d1d1d549a4..e9a6d38e91d9de992c83cb13eaf64ae55f8865a8 100644 Binary files a/dev/notebooks/converted_model.mat and b/dev/notebooks/converted_model.mat differ diff --git a/dev/notebooks/index.html b/dev/notebooks/index.html index 5ab29293716b04bc4ec713a7dc1eaf2efb447095..6ba4e5afb190b8ec0ea925e9eca821d85b0f2821 100644 --- a/dev/notebooks/index.html +++ b/dev/notebooks/index.html @@ -1,2 +1,2 @@ <!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Examples and notebooks · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script><link href="../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../"><img class="docs-light-only" src="../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li><a class="tocitem" href="../tutorials/">Tutorials</a></li><li class="is-active"><a class="tocitem" href>Examples and notebooks</a></li><li><a class="tocitem" href="../functions/">Function reference</a></li><li><a class="tocitem" href="../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Examples and notebooks</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Examples and notebooks</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/notebooks.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Notebooks-and-example-workflows"><a class="docs-heading-anchor" href="#Notebooks-and-example-workflows">Notebooks and example workflows</a><a id="Notebooks-and-example-workflows-1"></a><a class="docs-heading-anchor-permalink" href="#Notebooks-and-example-workflows" title="Permalink"></a></h1><ul><li><a href="1_loading_converting_saving/#Loading,-converting,-and-saving-models">Loading, converting, and saving models</a></li><ul><li><a href="1_loading_converting_saving/#Loading-models">Loading models</a></li><li><a href="1_loading_converting_saving/#Using-the-generic-interface-to-access-model-details">Using the generic interface to access model details</a></li><li><a href="1_loading_converting_saving/#Converting-between-model-types">Converting between model types</a></li><li><a href="1_loading_converting_saving/#Saving-and-exporting-models">Saving and exporting models</a></li></ul><li><a href="2_finding_balance/#Finding-balance-and-variability-of-constraint-based-models">Finding balance and variability of constraint-based models</a></li><ul><li><a href="2_finding_balance/#Optimization-solvers-in-COBREXA">Optimization solvers in <code>COBREXA</code></a></li><li><a href="2_finding_balance/#Flux-balance-analysis-(FBA)">Flux balance analysis (FBA)</a></li><li><a href="2_finding_balance/#Modifications">Modifications</a></li><li><a href="2_finding_balance/#Flux-variability-analysis-(FVA)">Flux variability analysis (FVA)</a></li><li><a href="2_finding_balance/#Parsimonious-flux-balance-analysis-(pFBA)">Parsimonious flux balance analysis (pFBA)</a></li></ul><li><a href="3_basic_stdmodel_usage/#Basic-usage-of-StandardModel">Basic usage of <code>StandardModel</code></a></li><ul><li><a href="3_basic_stdmodel_usage/#Loading-a-model">Loading a model</a></li><li><a href="3_basic_stdmodel_usage/#Basic-analysis">Basic analysis</a></li><li><a href="3_basic_stdmodel_usage/#Inspecting-the-flux-solution:-atom_exchange">Inspecting the flux solution: <code>atom_exchange</code></a></li><li><a href="3_basic_stdmodel_usage/#Inspecting-the-flux-solution:-exchange_reactions">Inspecting the flux solution: <code>exchange_reactions</code></a></li><li><a href="3_basic_stdmodel_usage/#Inspecting-the-flux-solution:-metabolite_fluxes">Inspecting the flux solution: <code>metabolite_fluxes</code></a></li><li><a href="3_basic_stdmodel_usage/#Internals-of-StandardModel">Internals of <code>StandardModel</code></a></li><li><a href="3_basic_stdmodel_usage/#Genes,-Reactions,-and-Metabolites"><code>Gene</code>s, <code>Reaction</code>s, and <code>Metabolite</code>s</a></li><li><a href="3_basic_stdmodel_usage/#Checking-the-internals-of-StandardModels:-annotation_index">Checking the internals of <code>StandardModel</code>s: <code>annotation_index</code></a></li><li><a href="3_basic_stdmodel_usage/#Checking-the-internals-of-StandardModels:-check_duplicate_reaction">Checking the internals of <code>StandardModel</code>s: <code>check_duplicate_reaction</code></a></li><li><a href="3_basic_stdmodel_usage/#Checking-the-internals-of-StandardModels:-is_mass_balanced">Checking the internals of <code>StandardModel</code>s: <code>is_mass_balanced</code></a></li></ul><li><a href="4_basic_core_coupled_usage/#Basic-usage-of-CoreModel-and-CoreModelCoupled">Basic usage of <code>CoreModel</code> and <code>CoreModelCoupled</code></a></li><ul><li><a href="4_basic_core_coupled_usage/#Loading-a-CoreModel">Loading a <code>CoreModel</code></a></li><li><a href="4_basic_core_coupled_usage/#Basic-analysis-on-CoreModel">Basic analysis on <code>CoreModel</code></a></li><li><a href="4_basic_core_coupled_usage/#Structure-of-CoreModel">Structure of <code>CoreModel</code></a></li><li><a href="4_basic_core_coupled_usage/#CoreModelCoupled-adds-coupling-constraints-to-CoreModel"><code>CoreModelCoupled</code> adds coupling constraints to <code>CoreModel</code></a></li></ul><li><a href="5_basic_stdmodel_construction/#Model-construction-and-modification">Model construction and modification</a></li><ul><li><a href="5_basic_stdmodel_construction/#Model-construction">Model construction</a></li><li><a href="5_basic_stdmodel_construction/#Modifying-existing-models">Modifying existing models</a></li></ul></ul></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../tutorials/">« Tutorials</a><a class="docs-footer-nextpage" href="../functions/">Function reference »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Examples and notebooks · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script><link href="../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../"><img class="docs-light-only" src="../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li><a class="tocitem" href="../tutorials/">Tutorials</a></li><li class="is-active"><a class="tocitem" href>Examples and notebooks</a></li><li><a class="tocitem" href="../functions/">Function reference</a></li><li><a class="tocitem" href="../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Examples and notebooks</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Examples and notebooks</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/notebooks.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Notebooks-and-example-workflows"><a class="docs-heading-anchor" href="#Notebooks-and-example-workflows">Notebooks and example workflows</a><a id="Notebooks-and-example-workflows-1"></a><a class="docs-heading-anchor-permalink" href="#Notebooks-and-example-workflows" title="Permalink"></a></h1><ul><li><a href="1_loading_converting_saving/#Loading,-converting,-and-saving-models">Loading, converting, and saving models</a></li><ul><li><a href="1_loading_converting_saving/#Loading-models">Loading models</a></li><li><a href="1_loading_converting_saving/#Using-the-generic-interface-to-access-model-details">Using the generic interface to access model details</a></li><li><a href="1_loading_converting_saving/#Converting-between-model-types">Converting between model types</a></li><li><a href="1_loading_converting_saving/#Saving-and-exporting-models">Saving and exporting models</a></li></ul><li><a href="2_finding_balance/#Finding-balance-and-variability-of-constraint-based-models">Finding balance and variability of constraint-based models</a></li><ul><li><a href="2_finding_balance/#Optimization-solvers-in-COBREXA">Optimization solvers in <code>COBREXA</code></a></li><li><a href="2_finding_balance/#Flux-balance-analysis-(FBA)">Flux balance analysis (FBA)</a></li><li><a href="2_finding_balance/#Modifications">Modifications</a></li><li><a href="2_finding_balance/#Flux-variability-analysis-(FVA)">Flux variability analysis (FVA)</a></li><li><a href="2_finding_balance/#Parsimonious-flux-balance-analysis-(pFBA)">Parsimonious flux balance analysis (pFBA)</a></li></ul><li><a href="3_basic_stdmodel_usage/#Basic-usage-of-StandardModel">Basic usage of <code>StandardModel</code></a></li><ul><li><a href="3_basic_stdmodel_usage/#Loading-a-model">Loading a model</a></li><li><a href="3_basic_stdmodel_usage/#Basic-analysis">Basic analysis</a></li><li><a href="3_basic_stdmodel_usage/#Inspecting-the-flux-solution:-atom_exchange">Inspecting the flux solution: <code>atom_exchange</code></a></li><li><a href="3_basic_stdmodel_usage/#Inspecting-the-flux-solution:-exchange_reactions">Inspecting the flux solution: <code>exchange_reactions</code></a></li><li><a href="3_basic_stdmodel_usage/#Inspecting-the-flux-solution:-metabolite_fluxes">Inspecting the flux solution: <code>metabolite_fluxes</code></a></li><li><a href="3_basic_stdmodel_usage/#Internals-of-StandardModel">Internals of <code>StandardModel</code></a></li><li><a href="3_basic_stdmodel_usage/#Genes,-Reactions,-and-Metabolites"><code>Gene</code>s, <code>Reaction</code>s, and <code>Metabolite</code>s</a></li><li><a href="3_basic_stdmodel_usage/#Checking-the-internals-of-StandardModels:-annotation_index">Checking the internals of <code>StandardModel</code>s: <code>annotation_index</code></a></li><li><a href="3_basic_stdmodel_usage/#Checking-the-internals-of-StandardModels:-check_duplicate_reaction">Checking the internals of <code>StandardModel</code>s: <code>check_duplicate_reaction</code></a></li><li><a href="3_basic_stdmodel_usage/#Checking-the-internals-of-StandardModels:-is_mass_balanced">Checking the internals of <code>StandardModel</code>s: <code>is_mass_balanced</code></a></li></ul><li><a href="4_basic_core_coupled_usage/#Basic-usage-of-CoreModel-and-CoreModelCoupled">Basic usage of <code>CoreModel</code> and <code>CoreModelCoupled</code></a></li><ul><li><a href="4_basic_core_coupled_usage/#Loading-a-CoreModel">Loading a <code>CoreModel</code></a></li><li><a href="4_basic_core_coupled_usage/#Basic-analysis-on-CoreModel">Basic analysis on <code>CoreModel</code></a></li><li><a href="4_basic_core_coupled_usage/#Structure-of-CoreModel">Structure of <code>CoreModel</code></a></li><li><a href="4_basic_core_coupled_usage/#CoreModelCoupled-adds-coupling-constraints-to-CoreModel"><code>CoreModelCoupled</code> adds coupling constraints to <code>CoreModel</code></a></li></ul><li><a href="5_basic_stdmodel_construction/#Model-construction-and-modification">Model construction and modification</a></li><ul><li><a href="5_basic_stdmodel_construction/#Model-construction">Model construction</a></li><li><a href="5_basic_stdmodel_construction/#Modifying-existing-models">Modifying existing models</a></li></ul></ul></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../tutorials/">« Tutorials</a><a class="docs-footer-nextpage" href="../functions/">Function reference »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/search/index.html b/dev/search/index.html index 6e927c3db79c2b916043e75e66d487597b73560c..ac7ce7e49469c17a507434b1a9909e03f6502baa 100644 --- a/dev/search/index.html +++ b/dev/search/index.html @@ -1,2 +1,2 @@ <!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Search · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script><link href="../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../"><img class="docs-light-only" src="../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li><a class="tocitem" href="../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../functions/">Function reference</a></li><li><a class="tocitem" href="../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Search</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Search</a></li></ul></nav><div class="docs-right"><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article><p id="documenter-search-info">Loading search...</p><ul id="documenter-search-results"></ul></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body><script src="../search_index.js"></script><script src="../assets/search.js"></script></html> +<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Search · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script><link href="../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../"><img class="docs-light-only" src="../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li><a class="tocitem" href="../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../functions/">Function reference</a></li><li><a class="tocitem" href="../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Search</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Search</a></li></ul></nav><div class="docs-right"><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article><p id="documenter-search-info">Loading search...</p><ul id="documenter-search-results"></ul></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body><script src="../search_index.js"></script><script src="../assets/search.js"></script></html> diff --git a/dev/tutorials/1_loading/index.html b/dev/tutorials/1_loading/index.html index f1621ec6cf4c74e2f9bc04d2da2d43f2f5cd27db..ec90c899bf2f3f0cb02d9b7fba47a916a0c6010e 100644 --- a/dev/tutorials/1_loading/index.html +++ b/dev/tutorials/1_loading/index.html @@ -18,4 +18,4 @@ jm.json["reactions"][1]</code></pre><p>That should print out the first "upper_bound" => 1000.0 "subsystem" => "Glycolysis/Gluconeogenesis" "annotation" => Dict{String,Any}("ec-code"=>Any["2.7.1.11"],"metanetx…</code></pre><p><a href="../../functions/#COBREXA.MATModel"><code>MATModel</code></a> and <a href="../../functions/#COBREXA.SBMLModel"><code>SBMLModel</code></a> (returned by the respective loading functions) contain similar "full" model information – you can access the whole MATLAB and SBML data and build on them without any restrictions.</p><h2 id="Converting-to-other-model-types"><a class="docs-heading-anchor" href="#Converting-to-other-model-types">Converting to other model types</a><a id="Converting-to-other-model-types-1"></a><a class="docs-heading-anchor-permalink" href="#Converting-to-other-model-types" title="Permalink"></a></h2><p>Despite JSON and SBML are great for storing and exchanging the models, the data representation is not very suitable for analyzing the model and processing it mathematically.</p><p>COBREXA.jl contains several model types that are much better suited for supporting the analysis tasks. You can use the following:</p><ul><li><a href="../../functions/#COBREXA.CoreModel"><code>CoreModel</code></a>, which represents the "core" of the optimization problem and the corresponding linear programming problem – a sparse representation of the stoichiometric matrix, flux bounds vectors, objective vector, etc.</li><li><a href="../../functions/#COBREXA.StandardModel"><code>StandardModel</code></a> (a "standard" for COBREXA.jl), which represents a highly flexible, object-like, dictionary-based representation of a model that contains individual <a href="../../functions/#COBREXA.Reaction"><code>Reaction</code></a>s, <a href="../../functions/#COBREXA.Metabolite"><code>Metabolite</code></a>s, <a href="../../functions/#COBREXA.Gene"><code>Gene</code></a>s, and other things.</li></ul><div class="admonition is-info"><header class="admonition-header">Conversion limitations and possible data loss</header><div class="admonition-body"><p>Because of the specifics of the format of each model structure, the conversion is not always able to preserve all information from the source data. You may need to check if any complicated and less-standard annotations are still present. If you require them, and either use a more complicated model, or collect them manually.</p></div></div><p>A loaded model can be converted to any other model type using the standard Julia conversion:</p><pre><code class="language-none">cm = convert(CoreModel, jm)</code></pre><p>You can also use a shortcut in <a href="../../functions/#COBREXA.load_model-Tuple{String}"><code>load_model</code></a> to convert the model to the desired format in one command:</p><pre><code class="language-none">cm = load_model(CoreModel, "e_coli_core.xml")</code></pre><p>With <a href="../../functions/#COBREXA.CoreModel"><code>CoreModel</code></a>, the information is easily accessible in matrix form. For example, <code>cm.S</code> now contains the sparse stoichiometric matrix, which you can convert to a dense matrix and manipulate it in Julia as any other matrix:</p><pre><code class="language-none">Matrix(cm.S)</code></pre><p>...should show you the (relatively empty) stoichiometry of the model.</p><p><a href="../../functions/#COBREXA.StandardModel"><code>StandardModel</code></a> is more suitable for fine-grained access to individual items of the model, perhaps closer to the SBML-style models. For example, you can view and set reaction bounds as follows:</p><pre><code class="language-none">sm = load_model(StandardModel, "e_coli_core.json") -sm.reactions["PGI"].ub</code></pre><p>...this prints the upper bound of the reaction (in this case, <code>1000.0</code>); you can change it the usual way:</p><pre><code class="language-none">sm.reactions["PGI"].ub = 500</code></pre><p>This change will naturally project to future analysis results.</p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +sm.reactions["PGI"].ub</code></pre><p>...this prints the upper bound of the reaction (in this case, <code>1000.0</code>); you can change it the usual way:</p><pre><code class="language-none">sm.reactions["PGI"].ub = 500</code></pre><p>This change will naturally project to future analysis results.</p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/tutorials/2_analysis/index.html b/dev/tutorials/2_analysis/index.html index fbaf6a90ddece3d765f21cd9e4136f5c66eddfe0..886e9909231bc5bf8a988f2b1fc30da42b4fb76c 100644 --- a/dev/tutorials/2_analysis/index.html +++ b/dev/tutorials/2_analysis/index.html @@ -32,4 +32,4 @@ Names registered in the model: lbs, mb, ubs, x</code></pre><p>From that, you can -16.243 -37.4763 -5.57301 0.0 0.0 0.0 -0.310819 -1.20057e-7 -2.13126 - 5.71597e-5 0.00990677 0.692399</code></pre></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> + 5.71597e-5 0.00990677 0.692399</code></pre></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/tutorials/3_hpc/index.html b/dev/tutorials/3_hpc/index.html index 4e3a2adff38c227425d4f96c2a0910a6c44c269a..e3f1f23fbe5790a0f6581d5465c52e69fcc4b917 100644 --- a/dev/tutorials/3_hpc/index.html +++ b/dev/tutorials/3_hpc/index.html @@ -23,4 +23,4 @@ result = flux_variability_analysis(...; workers=workers()) module load lang/Julia # this is usually required to make Julia available to your job -julia myJob.jl</code></pre><p>To run the computation, simply run <code>sbatch myJob.sbatch</code> on the access node. The job will be scheduled and eventually executed. You may watch <code>sacct</code> and <code>squeue</code> in the meantime, to see the progress.</p><p>Remember that you need to explicitly save the result of your Julia script computation to files, to be able to retrieve them later. Standard outputs of the jobs are often mangled and discarded. If you still want to collect the standard output, you may change the last line of the batch script to</p><pre><code class="language-none">julia myJob.jl > myJob.log</code></pre><p>and collect the output from the log later. This is convenient especially if logging various computation details using the <code>@info</code> and similar macros.</p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +julia myJob.jl</code></pre><p>To run the computation, simply run <code>sbatch myJob.sbatch</code> on the access node. The job will be scheduled and eventually executed. You may watch <code>sacct</code> and <code>squeue</code> in the meantime, to see the progress.</p><p>Remember that you need to explicitly save the result of your Julia script computation to files, to be able to retrieve them later. Standard outputs of the jobs are often mangled and discarded. If you still want to collect the standard output, you may change the last line of the batch script to</p><pre><code class="language-none">julia myJob.jl > myJob.log</code></pre><p>and collect the output from the log later. This is convenient especially if logging various computation details using the <code>@info</code> and similar macros.</p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/tutorials/4_modifying/index.html b/dev/tutorials/4_modifying/index.html index 3c7172a753e10cc2bacbd6441c84a4c351574465..e1dcea108e81bd43c1ee06bf34ea3e586777e798 100644 --- a/dev/tutorials/4_modifying/index.html +++ b/dev/tutorials/4_modifying/index.html @@ -19,4 +19,4 @@ flux_balance_analysis_dict( change_objective("R_TALA"), ])</code></pre><h2 id="Exporting-the-modified-models-in-native-formats"><a class="docs-heading-anchor" href="#Exporting-the-modified-models-in-native-formats">Exporting the modified models in native formats</a><a id="Exporting-the-modified-models-in-native-formats-1"></a><a class="docs-heading-anchor-permalink" href="#Exporting-the-modified-models-in-native-formats" title="Permalink"></a></h2><p>Manually modified models can be exported in standard formats so that they can be examined in other environments, or just made accessible for publication.</p><p><code>COBREXA.jl</code> supports export of MATLAB-like and JSON models. Simply use <a href="../../functions/#COBREXA.save_model-Tuple{MetabolicModel, String}"><code>save_model</code></a>:</p><pre><code class="language-none">save_model(m, "myModel.json") save_model(m, "myModel.mat")</code></pre><p>The function automatically guesses the appropriate model format to write into the file from the file extension. If required, you can choose the model format manually by using <a href="../../functions/#COBREXA.save_json_model-Tuple{MetabolicModel, String}"><code>save_json_model</code></a> and <a href="../../functions/#COBREXA.save_mat_model-Tuple{MetabolicModel, String}"><code>save_mat_model</code></a>.</p><h2 id="Using-Serialization-for-quick-and-efficient-model-storage"><a class="docs-heading-anchor" href="#Using-Serialization-for-quick-and-efficient-model-storage">Using <code>Serialization</code> for quick & efficient model storage</a><a id="Using-Serialization-for-quick-and-efficient-model-storage-1"></a><a class="docs-heading-anchor-permalink" href="#Using-Serialization-for-quick-and-efficient-model-storage" title="Permalink"></a></h2><p>If you save the model "just for yourself", such as for the use in an immediately following analysis, it may be inconvenient (and unnecessarily inefficient) to encode and decode the models to and from the external format. Moreover, certain model types (such as <a href="../../functions/#COBREXA.CoreModelCoupled"><code>CoreModelCoupled</code></a>) cannot be fully represented in all model formats, thus increasing the chance for accidental data loss.</p><p>Instead of that, we recommend using the <code>Serialization</code> package. It provides a straightforward way to save <em>any</em> Julia data structure to the disk, using a very efficient data format that can be written to and read from the disk very quickly.</p><p>With any model in <code>m</code>, you can write it to disk as follows:</p><pre><code class="language-none">using Serialization -open(f -> serialize(f, m), "myModel", "w")</code></pre><p>...and read it back with:</p><pre><code class="language-none">m = deserialize("myModel")</code></pre><p>One great advantage of <code>Serialization</code> is speed – models with millions of reactions are usually loaded and saved with minimal overhead in less than a second.</p><div class="admonition is-warning"><header class="admonition-header">Limits of `Serialization`</header><div class="admonition-body"><p>Serialized models are great for quickly exchanging data objects between analysis steps. The avoided need for re-encoding can save you a great deal of analysis time that can be used for better purposes. Despite that, do not rely on the stability of the serialized format – it often changes between Julia versions, and the data stored in one version may not open easily after an upgrade. In short, use serialized data within one workflow, and use standard and stable external formats for publishing and storing the data beyond the scope of a single analysis workflow.</p></div></div></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +open(f -> serialize(f, m), "myModel", "w")</code></pre><p>...and read it back with:</p><pre><code class="language-none">m = deserialize("myModel")</code></pre><p>One great advantage of <code>Serialization</code> is speed – models with millions of reactions are usually loaded and saved with minimal overhead in less than a second.</p><div class="admonition is-warning"><header class="admonition-header">Limits of `Serialization`</header><div class="admonition-body"><p>Serialized models are great for quickly exchanging data objects between analysis steps. The avoided need for re-encoding can save you a great deal of analysis time that can be used for better purposes. Despite that, do not rely on the stability of the serialized format – it often changes between Julia versions, and the data stored in one version may not open easily after an upgrade. In short, use serialized data within one workflow, and use standard and stable external formats for publishing and storing the data beyond the scope of a single analysis workflow.</p></div></div></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/tutorials/index.html b/dev/tutorials/index.html index 807c51091fa5de6ffee51970a23a967806b891cb..1e1cc7fe0f1c3ca8ba51616ce3c64e01850bfe9a 100644 --- a/dev/tutorials/index.html +++ b/dev/tutorials/index.html @@ -1,2 +1,2 @@ <!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Tutorials · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script><link href="../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../"><img class="docs-light-only" src="../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li class="is-active"><a class="tocitem" href>Tutorials</a></li><li><a class="tocitem" href="../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../functions/">Function reference</a></li><li><a class="tocitem" href="../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Tutorials</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Tutorials</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/tutorials.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="COBREXA-Tutorials"><a class="docs-heading-anchor" href="#COBREXA-Tutorials">COBREXA Tutorials</a><a id="COBREXA-Tutorials-1"></a><a class="docs-heading-anchor-permalink" href="#COBREXA-Tutorials" title="Permalink"></a></h1><ul><li><a href="1_loading/#Loading-and-converting-model-data">Loading and converting model data</a></li><ul><li><a href="1_loading/#Loading-models-from-files">Loading models from files</a></li><li><a href="1_loading/#Converting-to-other-model-types">Converting to other model types</a></li></ul><li><a href="2_analysis/#Basic-analysis-of-constraint-based-models">Basic analysis of constraint-based models</a></li><ul><li><a href="2_analysis/#Optimization-problem-solvers">Optimization problem solvers</a></li><li><a href="2_analysis/#Flux-balance-analysis">Flux balance analysis</a></li><li><a href="2_analysis/#Flux-variability-analysis">Flux variability analysis</a></li><li><a href="2_analysis/#Parsimonious-flux-balance-analysis">Parsimonious flux balance analysis</a></li><li><a href="2_analysis/#Flux-sampling">Flux sampling</a></li></ul><li><a href="3_hpc/#Distributed-processing-and-HPC-environments">Distributed processing and HPC environments</a></li><ul><li><a href="3_hpc/#Starting-the-distributed-workers">Starting the distributed workers</a></li><li><a href="3_hpc/#Running-a-distributed-analysis">Running a distributed analysis</a></li><li><a href="3_hpc/#Interacting-with-HPC-schedulers">Interacting with HPC schedulers</a></li><li><a href="3_hpc/#Wrapping-your-script-in-a-Slurm-job">Wrapping your script in a Slurm job</a></li></ul><li><a href="4_modifying/#Modifying-and-saving-the-models">Modifying and saving the models</a></li><ul><li><a href="4_modifying/#Manual-modifications">Manual modifications</a></li><li><a href="4_modifying/#Analysis-modifiers">Analysis modifiers</a></li><li><a href="4_modifying/#Exporting-the-modified-models-in-native-formats">Exporting the modified models in native formats</a></li><li><a href="4_modifying/#Using-Serialization-for-quick-and-efficient-model-storage">Using <code>Serialization</code> for quick & efficient model storage</a></li></ul></ul></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../">« Home</a><a class="docs-footer-nextpage" href="../notebooks/">Examples and notebooks »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Tutorials · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script><link href="../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../"><img class="docs-light-only" src="../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li class="is-active"><a class="tocitem" href>Tutorials</a></li><li><a class="tocitem" href="../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../functions/">Function reference</a></li><li><a class="tocitem" href="../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Tutorials</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Tutorials</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/tutorials.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="COBREXA-Tutorials"><a class="docs-heading-anchor" href="#COBREXA-Tutorials">COBREXA Tutorials</a><a id="COBREXA-Tutorials-1"></a><a class="docs-heading-anchor-permalink" href="#COBREXA-Tutorials" title="Permalink"></a></h1><ul><li><a href="1_loading/#Loading-and-converting-model-data">Loading and converting model data</a></li><ul><li><a href="1_loading/#Loading-models-from-files">Loading models from files</a></li><li><a href="1_loading/#Converting-to-other-model-types">Converting to other model types</a></li></ul><li><a href="2_analysis/#Basic-analysis-of-constraint-based-models">Basic analysis of constraint-based models</a></li><ul><li><a href="2_analysis/#Optimization-problem-solvers">Optimization problem solvers</a></li><li><a href="2_analysis/#Flux-balance-analysis">Flux balance analysis</a></li><li><a href="2_analysis/#Flux-variability-analysis">Flux variability analysis</a></li><li><a href="2_analysis/#Parsimonious-flux-balance-analysis">Parsimonious flux balance analysis</a></li><li><a href="2_analysis/#Flux-sampling">Flux sampling</a></li></ul><li><a href="3_hpc/#Distributed-processing-and-HPC-environments">Distributed processing and HPC environments</a></li><ul><li><a href="3_hpc/#Starting-the-distributed-workers">Starting the distributed workers</a></li><li><a href="3_hpc/#Running-a-distributed-analysis">Running a distributed analysis</a></li><li><a href="3_hpc/#Interacting-with-HPC-schedulers">Interacting with HPC schedulers</a></li><li><a href="3_hpc/#Wrapping-your-script-in-a-Slurm-job">Wrapping your script in a Slurm job</a></li></ul><li><a href="4_modifying/#Modifying-and-saving-the-models">Modifying and saving the models</a></li><ul><li><a href="4_modifying/#Manual-modifications">Manual modifications</a></li><li><a href="4_modifying/#Analysis-modifiers">Analysis modifiers</a></li><li><a href="4_modifying/#Exporting-the-modified-models-in-native-formats">Exporting the modified models in native formats</a></li><li><a href="4_modifying/#Using-Serialization-for-quick-and-efficient-model-storage">Using <code>Serialization</code> for quick & efficient model storage</a></li></ul></ul></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../">« Home</a><a class="docs-footer-nextpage" href="../notebooks/">Examples and notebooks »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/dev/unmerged/index.html b/dev/unmerged/index.html index 0acd5a1f2cda6c7b1327ee35c28ce9d8a4ac4501..c985c1984e2fb3f9175c3c3666a8eea2b7602c3c 100644 --- a/dev/unmerged/index.html +++ b/dev/unmerged/index.html @@ -1,2 +1,2 @@ <!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Generic interface · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script><link href="../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../"><img class="docs-light-only" src="../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li><a class="tocitem" href="../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../functions/">Function reference</a></li><li><a class="tocitem" href="../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Generic interface</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Generic interface</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/unmerged.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Generic-interface"><a class="docs-heading-anchor" href="#Generic-interface">Generic interface</a><a id="Generic-interface-1"></a><a class="docs-heading-anchor-permalink" href="#Generic-interface" title="Permalink"></a></h1><p>The reason you should rather use the generic interface is that the generic interface is supported by all model types in <code>COBREXA</code>, while the internal model structure of each model type varies considerably. For example, <code>MATModel</code>s store the stoichiometric matrix directly, so <code>mat_model.mat["S"]</code> would return the stoichiometric matrix. However, <code>JSONModel</code>s do not do this, so <code>json_model.m["S"]</code> would throw an error. The <code>COBREXA</code> way of doing this is to use the generic interface, i.e. <code>stoichiometry(json_model)</code> and <code>stoichiometry(mat_model)</code> always return the stoichiometric matrix. </p><p>Note, it is possible that the matrix returned by <code>stoichiometry</code> is not exactly the same <strong>between</strong> models. The order of the reactions (columns) and metabolites (rows) may vary from model type to model type, although they are consistent <strong>within</strong> each model type. So <code>stoichiometry(json_model)</code> will return a stoichiometric matrix where the columns correspond to the order of reactions listed in <code>reactions(json_model)</code> and the rows corresponds to the order of metabolites listed in <code>metabolites(json_model)</code>. The column/reaction and row/metabolite order from the <code>JSONModel</code> is not <em>necessarily</em> consistent with the stoichiometric matrix returned by <code>stoichiometry(mat_model)</code>. This is a minor note, but could cause confusion. </p><h1 id="Converting-models"><a class="docs-heading-anchor" href="#Converting-models">Converting models</a><a id="Converting-models-1"></a><a class="docs-heading-anchor-permalink" href="#Converting-models" title="Permalink"></a></h1><p>You might recall that we mentioned that data loss does not occur when models are read into the format corresponding to their file type. This is because the models are read into memory directly in their native formats. So <code>JSONModel</code>s contain the dictionary encoded in the <code>.json</code> file, and the same for <code>.mat</code> and <code>.xml</code> files (technically <code>.xml</code> is parsed by <code>SBML.jl</code>).</p><p>However, this data loss guarantee does <strong>not</strong> hold once you convert between models. The reason for this is that the <code>convert</code> function uses the generic interface to convert between models. In short, only information accessible through the generic interface will be converted between models. This is most applicable for data stored using non-standard keywords (<code>.mat</code> and to a lesser extent <code>.json</code> models are prone to this type of issue). When in doubt, inspect your models and refer to <code>src/base/constants.jl</code> for the <code>keynames</code> used to access model features if issues occur. However, this should rarely be a problem.</p><p><code>COBREXA</code> also has specialized model types: <code>StandardModel</code>, <code>CoreModel</code>, and <code>CoreCoupledModel</code>. These model types are implemented to be as efficient as possible for their purpose. In short, use:</p><ol><li><code>StandardModel</code> if keeping all the meta-data associated with a model is important. This includes information like gene reaction rules, annotations, notes, etc. It is a good format to use when you wish to combine many models of different types and are not worried about memory limitations. </li><li><code>CoreModel</code> if you only care about constraint-based analysis that can be performed using only the stoichiometric matrix and flux bounds. This model stores all its numeric data structures as sparse matrices/vectors and is thus very efficient. It does not store superfluous information, like the gene reaction rules of reactions, annotations etc. Since this model is compact and its data structures efficient, it is ideal for distributed computing.</li><li><code>CoreModelCoupled</code> if you want to use the functionality of <code>CoreModel</code> but for communities. It also represents the underlying model in a sparse format, but specialized for community models. </li></ol><p>Let's load a <code>StandardModel</code> and a <code>CoreModel</code> to compare the two.</p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Wednesday 2 June 2021 20:49">Wednesday 2 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> +<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Generic interface · COBREXA.jl</title><link href="https://fonts.googleapis.com/css?family=Lato|Roboto+Mono" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.11.1/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL=".."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../assets/documenter.js"></script><script src="../siteinfo.js"></script><script src="../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../assets/themeswap.js"></script><link href="../assets/favicon.ico" rel="icon" type="image/x-icon"/></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="../"><img class="docs-light-only" src="../assets/logo.svg" alt="COBREXA.jl logo"/><img class="docs-dark-only" src="../assets/logo-dark.svg" alt="COBREXA.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit">COBREXA.jl</span></div><form class="docs-search" action="../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../">Home</a></li><li><a class="tocitem" href="../tutorials/">Tutorials</a></li><li><a class="tocitem" href="../notebooks/">Examples and notebooks</a></li><li><a class="tocitem" href="../functions/">Function reference</a></li><li><a class="tocitem" href="../howToContribute/">How to contribute</a></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href>Generic interface</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Generic interface</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/LCSB-BioCore/COBREXA.jl/blob/master/docs/src/unmerged.md" title="Edit on GitHub"><span class="docs-icon fab">ï‚›</span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h1 id="Generic-interface"><a class="docs-heading-anchor" href="#Generic-interface">Generic interface</a><a id="Generic-interface-1"></a><a class="docs-heading-anchor-permalink" href="#Generic-interface" title="Permalink"></a></h1><p>The reason you should rather use the generic interface is that the generic interface is supported by all model types in <code>COBREXA</code>, while the internal model structure of each model type varies considerably. For example, <code>MATModel</code>s store the stoichiometric matrix directly, so <code>mat_model.mat["S"]</code> would return the stoichiometric matrix. However, <code>JSONModel</code>s do not do this, so <code>json_model.m["S"]</code> would throw an error. The <code>COBREXA</code> way of doing this is to use the generic interface, i.e. <code>stoichiometry(json_model)</code> and <code>stoichiometry(mat_model)</code> always return the stoichiometric matrix. </p><p>Note, it is possible that the matrix returned by <code>stoichiometry</code> is not exactly the same <strong>between</strong> models. The order of the reactions (columns) and metabolites (rows) may vary from model type to model type, although they are consistent <strong>within</strong> each model type. So <code>stoichiometry(json_model)</code> will return a stoichiometric matrix where the columns correspond to the order of reactions listed in <code>reactions(json_model)</code> and the rows corresponds to the order of metabolites listed in <code>metabolites(json_model)</code>. The column/reaction and row/metabolite order from the <code>JSONModel</code> is not <em>necessarily</em> consistent with the stoichiometric matrix returned by <code>stoichiometry(mat_model)</code>. This is a minor note, but could cause confusion. </p><h1 id="Converting-models"><a class="docs-heading-anchor" href="#Converting-models">Converting models</a><a id="Converting-models-1"></a><a class="docs-heading-anchor-permalink" href="#Converting-models" title="Permalink"></a></h1><p>You might recall that we mentioned that data loss does not occur when models are read into the format corresponding to their file type. This is because the models are read into memory directly in their native formats. So <code>JSONModel</code>s contain the dictionary encoded in the <code>.json</code> file, and the same for <code>.mat</code> and <code>.xml</code> files (technically <code>.xml</code> is parsed by <code>SBML.jl</code>).</p><p>However, this data loss guarantee does <strong>not</strong> hold once you convert between models. The reason for this is that the <code>convert</code> function uses the generic interface to convert between models. In short, only information accessible through the generic interface will be converted between models. This is most applicable for data stored using non-standard keywords (<code>.mat</code> and to a lesser extent <code>.json</code> models are prone to this type of issue). When in doubt, inspect your models and refer to <code>src/base/constants.jl</code> for the <code>keynames</code> used to access model features if issues occur. However, this should rarely be a problem.</p><p><code>COBREXA</code> also has specialized model types: <code>StandardModel</code>, <code>CoreModel</code>, and <code>CoreCoupledModel</code>. These model types are implemented to be as efficient as possible for their purpose. In short, use:</p><ol><li><code>StandardModel</code> if keeping all the meta-data associated with a model is important. This includes information like gene reaction rules, annotations, notes, etc. It is a good format to use when you wish to combine many models of different types and are not worried about memory limitations. </li><li><code>CoreModel</code> if you only care about constraint-based analysis that can be performed using only the stoichiometric matrix and flux bounds. This model stores all its numeric data structures as sparse matrices/vectors and is thus very efficient. It does not store superfluous information, like the gene reaction rules of reactions, annotations etc. Since this model is compact and its data structures efficient, it is ideal for distributed computing.</li><li><code>CoreModelCoupled</code> if you want to use the functionality of <code>CoreModel</code> but for communities. It also represents the underlying model in a sparse format, but specialized for community models. </li></ol><p>Let's load a <code>StandardModel</code> and a <code>CoreModel</code> to compare the two.</p></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> on <span class="colophon-date" title="Thursday 3 June 2021 06:42">Thursday 3 June 2021</span>. Using Julia version 1.6.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>