Repository files navigation

pyTFA

PyPIDocumentation Statuslicense

Thermodynamics-based Flux Analysis, in Python. Paper : Pierre Salvy, Georgios Fengos, Meric Ataman, Thomas Pathier, Keng C Soh, Vassily Hatzimanikatis. "pyTFA and matTFA: a Python package and a Matlab toolbox for Thermodynamics-based Flux Analysis" Bioinformatics (2018), bty499, DOI: https://doi.org/10.1093/bioinformatics/bty499

Implements: Christopher S. Henry, Linda J. Broadbelt, and Vassily Hatzimanikatis. "Thermodynamics-based metabolic flux analysis." Biophysical journal 92.5 (2007): 1792-1805. DOI: https://doi.org/10.1529/biophysj.106.093138

Requirements

You will need to have Git-LFS in order to properly download some binary files:

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
cd /path/to/pytfa
git lfs install
git lfs pull

This module was developed in Python 3.5, and it is recommended to run Python 3.5 to run commercial solvers such as Gurobi and CPLEX. Other Python versions (2.7, 3.4) should also work (see the CI builds)

This module requires COBRApy, as well as optlang to work properly. The installer should take care of that for you. You might also want to install a dedicated solver. GLPK, CPLEX and Gurobi are supported.

Setup

This step is not required if you're using the container, which bundles all this.

You can install this module with pip:

For Python 3, you might have to usepip3instead ofpip

pip3 install pytfa

or from source

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
pip3 install -e /path/to/pytfa

Quick start

Three tutorial files detail thoroughly normal usages of the pytfa package. They can be found at:

pytfa
└── tutorials
├── figure_paper.py
├── tutorial_basics.py
└── tutorial_sampling.py

More information can be found here.

Documentation

Documentation is hosted at Read the Docs

Alternatively you can also generate the docs locally.

Make sure sphinx is installed, and install as well the theme (this is already bundled with the container):

pip install sphinx sphinx-rtd-theme

You can then generate the documentation with this command:

cd work/pytfa/doc && make html

The resulting HTML files will be located in work/pytfa/doc/_build.

DEPRECATEDL: Container-based install

You might want to use this program inside of a container. The docker/ subfolder has all the necessary information and source files to set it up.

Testing the code

We recommend using the Docker container for testing the code, as it comes with everything bundled.

Install pytest if you don't already have it (pip install pytest, already included in the container), then start the tests with the pytest command.

Usage

First, create your COBRApy model. Make sure to define the additional values required by pyTFA, as said in the "Models" page of the documentation.

If you already have a Matlab model with thermodynamic data, you might want to use pytfa.io.import_matlab_model. Otherwise, have a look at the COBRApy documentation, then add the required properties.

If you're using a specific solver, don't forget to tell COBRApy about it by setting the solver property of your model to the name of your solver. See the COBRApy documentation for more information about this.

Thermodynamic database

You also need a thermodynamic database. Use thermoDBconverter.py if you have a thermodynamic database from Matlab you wish to import to Python.

Thermodynamic databases are stored in .thermodb files and can be easily loaded with pytfa.io.load_thermoDB.

Example script

Here is an example script :

importpytfafrompytfa.ioimportimport_matlab_model, load_thermoDBcobra_model=import_matlab_model('../models/small_yeast.mat')
thermo_data=load_thermoDB('../data/thermo_data.thermodb')
mytfa=pytfa.ThermoModel(thermo_data, cobra_model)
mytfa.solver='optlang-cplex'## TFA conversionmytfa.prepare()
mytfa.convert()
## Info on the modelmytfa.print_info()
## Optimalitytfa_solution=mytfa.optimize()

License

The software in this repository is put under an APACHE-2.0 licensing scheme - please see the LICENSE file for more details.

About

A Python 3 implementation of Thermodynamics-based Flux Analysis

Resources

Stars

47 stars

Watchers

7 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

pyTFA

PyPIDocumentation Statuslicense

Thermodynamics-based Flux Analysis, in Python. Paper : Pierre Salvy, Georgios Fengos, Meric Ataman, Thomas Pathier, Keng C Soh, Vassily Hatzimanikatis. "pyTFA and matTFA: a Python package and a Matlab toolbox for Thermodynamics-based Flux Analysis" Bioinformatics (2018), bty499, DOI: https://doi.org/10.1093/bioinformatics/bty499

Implements: Christopher S. Henry, Linda J. Broadbelt, and Vassily Hatzimanikatis. "Thermodynamics-based metabolic flux analysis." Biophysical journal 92.5 (2007): 1792-1805. DOI: https://doi.org/10.1529/biophysj.106.093138

Requirements

You will need to have Git-LFS in order to properly download some binary files:

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
cd /path/to/pytfa
git lfs install
git lfs pull

This module was developed in Python 3.5, and it is recommended to run Python 3.5 to run commercial solvers such as Gurobi and CPLEX. Other Python versions (2.7, 3.4) should also work (see the CI builds)

This module requires COBRApy, as well as optlang to work properly. The installer should take care of that for you. You might also want to install a dedicated solver. GLPK, CPLEX and Gurobi are supported.

Setup

This step is not required if you're using the container, which bundles all this.

You can install this module with pip:

For Python 3, you might have to usepip3instead ofpip

pip3 install pytfa

or from source

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
pip3 install -e /path/to/pytfa

Quick start

Three tutorial files detail thoroughly normal usages of the pytfa package. They can be found at:

pytfa
└── tutorials
├── figure_paper.py
├── tutorial_basics.py
└── tutorial_sampling.py

More information can be found here.

Documentation

Documentation is hosted at Read the Docs

Alternatively you can also generate the docs locally.

Make sure sphinx is installed, and install as well the theme (this is already bundled with the container):

pip install sphinx sphinx-rtd-theme

You can then generate the documentation with this command:

cd work/pytfa/doc && make html

The resulting HTML files will be located in work/pytfa/doc/_build.

DEPRECATEDL: Container-based install

You might want to use this program inside of a container. The docker/ subfolder has all the necessary information and source files to set it up.

Testing the code

We recommend using the Docker container for testing the code, as it comes with everything bundled.

Install pytest if you don't already have it (pip install pytest, already included in the container), then start the tests with the pytest command.

Usage

First, create your COBRApy model. Make sure to define the additional values required by pyTFA, as said in the "Models" page of the documentation.

If you already have a Matlab model with thermodynamic data, you might want to use pytfa.io.import_matlab_model. Otherwise, have a look at the COBRApy documentation, then add the required properties.

If you're using a specific solver, don't forget to tell COBRApy about it by setting the solver property of your model to the name of your solver. See the COBRApy documentation for more information about this.

Thermodynamic database

You also need a thermodynamic database. Use thermoDBconverter.py if you have a thermodynamic database from Matlab you wish to import to Python.

Thermodynamic databases are stored in .thermodb files and can be easily loaded with pytfa.io.load_thermoDB.

Example script

Here is an example script :

importpytfafrompytfa.ioimportimport_matlab_model, load_thermoDBcobra_model=import_matlab_model('../models/small_yeast.mat')
thermo_data=load_thermoDB('../data/thermo_data.thermodb')
mytfa=pytfa.ThermoModel(thermo_data, cobra_model)
mytfa.solver='optlang-cplex'## TFA conversionmytfa.prepare()
mytfa.convert()
## Info on the modelmytfa.print_info()
## Optimalitytfa_solution=mytfa.optimize()

License

The software in this repository is put under an APACHE-2.0 licensing scheme - please see the LICENSE file for more details.

About

A Python 3 implementation of Thermodynamics-based Flux Analysis

Resources

Stars

47 stars

Watchers

7 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

pyTFA

PyPIDocumentation Statuslicense

Thermodynamics-based Flux Analysis, in Python. Paper : Pierre Salvy, Georgios Fengos, Meric Ataman, Thomas Pathier, Keng C Soh, Vassily Hatzimanikatis. "pyTFA and matTFA: a Python package and a Matlab toolbox for Thermodynamics-based Flux Analysis" Bioinformatics (2018), bty499, DOI: https://doi.org/10.1093/bioinformatics/bty499

Implements: Christopher S. Henry, Linda J. Broadbelt, and Vassily Hatzimanikatis. "Thermodynamics-based metabolic flux analysis." Biophysical journal 92.5 (2007): 1792-1805. DOI: https://doi.org/10.1529/biophysj.106.093138

Requirements

You will need to have Git-LFS in order to properly download some binary files:

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
cd /path/to/pytfa
git lfs install
git lfs pull

This module was developed in Python 3.5, and it is recommended to run Python 3.5 to run commercial solvers such as Gurobi and CPLEX. Other Python versions (2.7, 3.4) should also work (see the CI builds)

This module requires COBRApy, as well as optlang to work properly. The installer should take care of that for you. You might also want to install a dedicated solver. GLPK, CPLEX and Gurobi are supported.

Setup

This step is not required if you're using the container, which bundles all this.

You can install this module with pip:

For Python 3, you might have to usepip3instead ofpip

pip3 install pytfa

or from source

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
pip3 install -e /path/to/pytfa

Quick start

Three tutorial files detail thoroughly normal usages of the pytfa package. They can be found at:

pytfa
└── tutorials
├── figure_paper.py
├── tutorial_basics.py
└── tutorial_sampling.py

More information can be found here.

Documentation

Documentation is hosted at Read the Docs

Alternatively you can also generate the docs locally.

Make sure sphinx is installed, and install as well the theme (this is already bundled with the container):

pip install sphinx sphinx-rtd-theme

You can then generate the documentation with this command:

cd work/pytfa/doc && make html

The resulting HTML files will be located in work/pytfa/doc/_build.

DEPRECATEDL: Container-based install

You might want to use this program inside of a container. The docker/ subfolder has all the necessary information and source files to set it up.

Testing the code

We recommend using the Docker container for testing the code, as it comes with everything bundled.

Install pytest if you don't already have it (pip install pytest, already included in the container), then start the tests with the pytest command.

Usage

First, create your COBRApy model. Make sure to define the additional values required by pyTFA, as said in the "Models" page of the documentation.

If you already have a Matlab model with thermodynamic data, you might want to use pytfa.io.import_matlab_model. Otherwise, have a look at the COBRApy documentation, then add the required properties.

If you're using a specific solver, don't forget to tell COBRApy about it by setting the solver property of your model to the name of your solver. See the COBRApy documentation for more information about this.

Thermodynamic database

You also need a thermodynamic database. Use thermoDBconverter.py if you have a thermodynamic database from Matlab you wish to import to Python.

Thermodynamic databases are stored in .thermodb files and can be easily loaded with pytfa.io.load_thermoDB.

Example script

Here is an example script :

importpytfafrompytfa.ioimportimport_matlab_model, load_thermoDBcobra_model=import_matlab_model('../models/small_yeast.mat')
thermo_data=load_thermoDB('../data/thermo_data.thermodb')
mytfa=pytfa.ThermoModel(thermo_data, cobra_model)
mytfa.solver='optlang-cplex'## TFA conversionmytfa.prepare()
mytfa.convert()
## Info on the modelmytfa.print_info()
## Optimalitytfa_solution=mytfa.optimize()

License

The software in this repository is put under an APACHE-2.0 licensing scheme - please see the LICENSE file for more details.

About

A Python 3 implementation of Thermodynamics-based Flux Analysis

Resources

Stars

47 stars

Watchers

7 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

pyTFA

PyPIDocumentation Statuslicense

Thermodynamics-based Flux Analysis, in Python. Paper : Pierre Salvy, Georgios Fengos, Meric Ataman, Thomas Pathier, Keng C Soh, Vassily Hatzimanikatis. "pyTFA and matTFA: a Python package and a Matlab toolbox for Thermodynamics-based Flux Analysis" Bioinformatics (2018), bty499, DOI: https://doi.org/10.1093/bioinformatics/bty499

Implements: Christopher S. Henry, Linda J. Broadbelt, and Vassily Hatzimanikatis. "Thermodynamics-based metabolic flux analysis." Biophysical journal 92.5 (2007): 1792-1805. DOI: https://doi.org/10.1529/biophysj.106.093138

Requirements

You will need to have Git-LFS in order to properly download some binary files:

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
cd /path/to/pytfa
git lfs install
git lfs pull

This module was developed in Python 3.5, and it is recommended to run Python 3.5 to run commercial solvers such as Gurobi and CPLEX. Other Python versions (2.7, 3.4) should also work (see the CI builds)

This module requires COBRApy, as well as optlang to work properly. The installer should take care of that for you. You might also want to install a dedicated solver. GLPK, CPLEX and Gurobi are supported.

Setup

This step is not required if you're using the container, which bundles all this.

You can install this module with pip:

For Python 3, you might have to usepip3instead ofpip

pip3 install pytfa

or from source

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
pip3 install -e /path/to/pytfa

Quick start

Three tutorial files detail thoroughly normal usages of the pytfa package. They can be found at:

pytfa
└── tutorials
├── figure_paper.py
├── tutorial_basics.py
└── tutorial_sampling.py

More information can be found here.

Documentation

Documentation is hosted at Read the Docs

Alternatively you can also generate the docs locally.

Make sure sphinx is installed, and install as well the theme (this is already bundled with the container):

pip install sphinx sphinx-rtd-theme

You can then generate the documentation with this command:

cd work/pytfa/doc && make html

The resulting HTML files will be located in work/pytfa/doc/_build.

DEPRECATEDL: Container-based install

You might want to use this program inside of a container. The docker/ subfolder has all the necessary information and source files to set it up.

Testing the code

We recommend using the Docker container for testing the code, as it comes with everything bundled.

Install pytest if you don't already have it (pip install pytest, already included in the container), then start the tests with the pytest command.

Usage

First, create your COBRApy model. Make sure to define the additional values required by pyTFA, as said in the "Models" page of the documentation.

If you already have a Matlab model with thermodynamic data, you might want to use pytfa.io.import_matlab_model. Otherwise, have a look at the COBRApy documentation, then add the required properties.

If you're using a specific solver, don't forget to tell COBRApy about it by setting the solver property of your model to the name of your solver. See the COBRApy documentation for more information about this.

Thermodynamic database

You also need a thermodynamic database. Use thermoDBconverter.py if you have a thermodynamic database from Matlab you wish to import to Python.

Thermodynamic databases are stored in .thermodb files and can be easily loaded with pytfa.io.load_thermoDB.

Example script

Here is an example script :

importpytfafrompytfa.ioimportimport_matlab_model, load_thermoDBcobra_model=import_matlab_model('../models/small_yeast.mat')
thermo_data=load_thermoDB('../data/thermo_data.thermodb')
mytfa=pytfa.ThermoModel(thermo_data, cobra_model)
mytfa.solver='optlang-cplex'## TFA conversionmytfa.prepare()
mytfa.convert()
## Info on the modelmytfa.print_info()
## Optimalitytfa_solution=mytfa.optimize()

License

The software in this repository is put under an APACHE-2.0 licensing scheme - please see the LICENSE file for more details.

About

A Python 3 implementation of Thermodynamics-based Flux Analysis

Resources

Stars

47 stars

Watchers

7 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

pyTFA

PyPIDocumentation Statuslicense

Thermodynamics-based Flux Analysis, in Python. Paper : Pierre Salvy, Georgios Fengos, Meric Ataman, Thomas Pathier, Keng C Soh, Vassily Hatzimanikatis. "pyTFA and matTFA: a Python package and a Matlab toolbox for Thermodynamics-based Flux Analysis" Bioinformatics (2018), bty499, DOI: https://doi.org/10.1093/bioinformatics/bty499

Implements: Christopher S. Henry, Linda J. Broadbelt, and Vassily Hatzimanikatis. "Thermodynamics-based metabolic flux analysis." Biophysical journal 92.5 (2007): 1792-1805. DOI: https://doi.org/10.1529/biophysj.106.093138

Requirements

You will need to have Git-LFS in order to properly download some binary files:

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
cd /path/to/pytfa
git lfs install
git lfs pull

This module was developed in Python 3.5, and it is recommended to run Python 3.5 to run commercial solvers such as Gurobi and CPLEX. Other Python versions (2.7, 3.4) should also work (see the CI builds)

This module requires COBRApy, as well as optlang to work properly. The installer should take care of that for you. You might also want to install a dedicated solver. GLPK, CPLEX and Gurobi are supported.

Setup

This step is not required if you're using the container, which bundles all this.

You can install this module with pip:

For Python 3, you might have to usepip3instead ofpip

pip3 install pytfa

or from source

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
pip3 install -e /path/to/pytfa

Quick start

Three tutorial files detail thoroughly normal usages of the pytfa package. They can be found at:

pytfa
└── tutorials
├── figure_paper.py
├── tutorial_basics.py
└── tutorial_sampling.py

More information can be found here.

Documentation

Documentation is hosted at Read the Docs

Alternatively you can also generate the docs locally.

Make sure sphinx is installed, and install as well the theme (this is already bundled with the container):

pip install sphinx sphinx-rtd-theme

You can then generate the documentation with this command:

cd work/pytfa/doc && make html

The resulting HTML files will be located in work/pytfa/doc/_build.

DEPRECATEDL: Container-based install

You might want to use this program inside of a container. The docker/ subfolder has all the necessary information and source files to set it up.

Testing the code

We recommend using the Docker container for testing the code, as it comes with everything bundled.

Install pytest if you don't already have it (pip install pytest, already included in the container), then start the tests with the pytest command.

Usage

First, create your COBRApy model. Make sure to define the additional values required by pyTFA, as said in the "Models" page of the documentation.

If you already have a Matlab model with thermodynamic data, you might want to use pytfa.io.import_matlab_model. Otherwise, have a look at the COBRApy documentation, then add the required properties.

If you're using a specific solver, don't forget to tell COBRApy about it by setting the solver property of your model to the name of your solver. See the COBRApy documentation for more information about this.

Thermodynamic database

You also need a thermodynamic database. Use thermoDBconverter.py if you have a thermodynamic database from Matlab you wish to import to Python.

Thermodynamic databases are stored in .thermodb files and can be easily loaded with pytfa.io.load_thermoDB.

Example script

Here is an example script :

importpytfafrompytfa.ioimportimport_matlab_model, load_thermoDBcobra_model=import_matlab_model('../models/small_yeast.mat')
thermo_data=load_thermoDB('../data/thermo_data.thermodb')
mytfa=pytfa.ThermoModel(thermo_data, cobra_model)
mytfa.solver='optlang-cplex'## TFA conversionmytfa.prepare()
mytfa.convert()
## Info on the modelmytfa.print_info()
## Optimalitytfa_solution=mytfa.optimize()

License

The software in this repository is put under an APACHE-2.0 licensing scheme - please see the LICENSE file for more details.

About

A Python 3 implementation of Thermodynamics-based Flux Analysis

Resources

Stars

47 stars

Watchers

7 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

pyTFA

PyPIDocumentation Statuslicense

Thermodynamics-based Flux Analysis, in Python. Paper : Pierre Salvy, Georgios Fengos, Meric Ataman, Thomas Pathier, Keng C Soh, Vassily Hatzimanikatis. "pyTFA and matTFA: a Python package and a Matlab toolbox for Thermodynamics-based Flux Analysis" Bioinformatics (2018), bty499, DOI: https://doi.org/10.1093/bioinformatics/bty499

Implements: Christopher S. Henry, Linda J. Broadbelt, and Vassily Hatzimanikatis. "Thermodynamics-based metabolic flux analysis." Biophysical journal 92.5 (2007): 1792-1805. DOI: https://doi.org/10.1529/biophysj.106.093138

Requirements

You will need to have Git-LFS in order to properly download some binary files:

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
cd /path/to/pytfa
git lfs install
git lfs pull

This module was developed in Python 3.5, and it is recommended to run Python 3.5 to run commercial solvers such as Gurobi and CPLEX. Other Python versions (2.7, 3.4) should also work (see the CI builds)

This module requires COBRApy, as well as optlang to work properly. The installer should take care of that for you. You might also want to install a dedicated solver. GLPK, CPLEX and Gurobi are supported.

Setup

This step is not required if you're using the container, which bundles all this.

You can install this module with pip:

For Python 3, you might have to usepip3instead ofpip

pip3 install pytfa

or from source

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
pip3 install -e /path/to/pytfa

Quick start

Three tutorial files detail thoroughly normal usages of the pytfa package. They can be found at:

pytfa
└── tutorials
├── figure_paper.py
├── tutorial_basics.py
└── tutorial_sampling.py

More information can be found here.

Documentation

Documentation is hosted at Read the Docs

Alternatively you can also generate the docs locally.

Make sure sphinx is installed, and install as well the theme (this is already bundled with the container):

pip install sphinx sphinx-rtd-theme

You can then generate the documentation with this command:

cd work/pytfa/doc && make html

The resulting HTML files will be located in work/pytfa/doc/_build.

DEPRECATEDL: Container-based install

You might want to use this program inside of a container. The docker/ subfolder has all the necessary information and source files to set it up.

Testing the code

We recommend using the Docker container for testing the code, as it comes with everything bundled.

Install pytest if you don't already have it (pip install pytest, already included in the container), then start the tests with the pytest command.

Usage

First, create your COBRApy model. Make sure to define the additional values required by pyTFA, as said in the "Models" page of the documentation.

If you already have a Matlab model with thermodynamic data, you might want to use pytfa.io.import_matlab_model. Otherwise, have a look at the COBRApy documentation, then add the required properties.

If you're using a specific solver, don't forget to tell COBRApy about it by setting the solver property of your model to the name of your solver. See the COBRApy documentation for more information about this.

Thermodynamic database

You also need a thermodynamic database. Use thermoDBconverter.py if you have a thermodynamic database from Matlab you wish to import to Python.

Thermodynamic databases are stored in .thermodb files and can be easily loaded with pytfa.io.load_thermoDB.

Example script

Here is an example script :

importpytfafrompytfa.ioimportimport_matlab_model, load_thermoDBcobra_model=import_matlab_model('../models/small_yeast.mat')
thermo_data=load_thermoDB('../data/thermo_data.thermodb')
mytfa=pytfa.ThermoModel(thermo_data, cobra_model)
mytfa.solver='optlang-cplex'## TFA conversionmytfa.prepare()
mytfa.convert()
## Info on the modelmytfa.print_info()
## Optimalitytfa_solution=mytfa.optimize()

License

The software in this repository is put under an APACHE-2.0 licensing scheme - please see the LICENSE file for more details.

About

A Python 3 implementation of Thermodynamics-based Flux Analysis

Resources

Stars

47 stars

Watchers

7 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

pyTFA

PyPIDocumentation Statuslicense

Thermodynamics-based Flux Analysis, in Python. Paper : Pierre Salvy, Georgios Fengos, Meric Ataman, Thomas Pathier, Keng C Soh, Vassily Hatzimanikatis. "pyTFA and matTFA: a Python package and a Matlab toolbox for Thermodynamics-based Flux Analysis" Bioinformatics (2018), bty499, DOI: https://doi.org/10.1093/bioinformatics/bty499

Implements: Christopher S. Henry, Linda J. Broadbelt, and Vassily Hatzimanikatis. "Thermodynamics-based metabolic flux analysis." Biophysical journal 92.5 (2007): 1792-1805. DOI: https://doi.org/10.1529/biophysj.106.093138

Requirements

You will need to have Git-LFS in order to properly download some binary files:

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
cd /path/to/pytfa
git lfs install
git lfs pull

This module was developed in Python 3.5, and it is recommended to run Python 3.5 to run commercial solvers such as Gurobi and CPLEX. Other Python versions (2.7, 3.4) should also work (see the CI builds)

This module requires COBRApy, as well as optlang to work properly. The installer should take care of that for you. You might also want to install a dedicated solver. GLPK, CPLEX and Gurobi are supported.

Setup

This step is not required if you're using the container, which bundles all this.

You can install this module with pip:

For Python 3, you might have to usepip3instead ofpip

pip3 install pytfa

or from source

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
pip3 install -e /path/to/pytfa

Quick start

Three tutorial files detail thoroughly normal usages of the pytfa package. They can be found at:

pytfa
└── tutorials
├── figure_paper.py
├── tutorial_basics.py
└── tutorial_sampling.py

More information can be found here.

Documentation

Documentation is hosted at Read the Docs

Alternatively you can also generate the docs locally.

Make sure sphinx is installed, and install as well the theme (this is already bundled with the container):

pip install sphinx sphinx-rtd-theme

You can then generate the documentation with this command:

cd work/pytfa/doc && make html

The resulting HTML files will be located in work/pytfa/doc/_build.

DEPRECATEDL: Container-based install

You might want to use this program inside of a container. The docker/ subfolder has all the necessary information and source files to set it up.

Testing the code

We recommend using the Docker container for testing the code, as it comes with everything bundled.

Install pytest if you don't already have it (pip install pytest, already included in the container), then start the tests with the pytest command.

Usage

First, create your COBRApy model. Make sure to define the additional values required by pyTFA, as said in the "Models" page of the documentation.

If you already have a Matlab model with thermodynamic data, you might want to use pytfa.io.import_matlab_model. Otherwise, have a look at the COBRApy documentation, then add the required properties.

If you're using a specific solver, don't forget to tell COBRApy about it by setting the solver property of your model to the name of your solver. See the COBRApy documentation for more information about this.

Thermodynamic database

You also need a thermodynamic database. Use thermoDBconverter.py if you have a thermodynamic database from Matlab you wish to import to Python.

Thermodynamic databases are stored in .thermodb files and can be easily loaded with pytfa.io.load_thermoDB.

Example script

Here is an example script :

importpytfafrompytfa.ioimportimport_matlab_model, load_thermoDBcobra_model=import_matlab_model('../models/small_yeast.mat')
thermo_data=load_thermoDB('../data/thermo_data.thermodb')
mytfa=pytfa.ThermoModel(thermo_data, cobra_model)
mytfa.solver='optlang-cplex'## TFA conversionmytfa.prepare()
mytfa.convert()
## Info on the modelmytfa.print_info()
## Optimalitytfa_solution=mytfa.optimize()

License

The software in this repository is put under an APACHE-2.0 licensing scheme - please see the LICENSE file for more details.

About

A Python 3 implementation of Thermodynamics-based Flux Analysis

Resources

Stars

47 stars

Watchers

7 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

pyTFA

PyPIDocumentation Statuslicense

Thermodynamics-based Flux Analysis, in Python. Paper : Pierre Salvy, Georgios Fengos, Meric Ataman, Thomas Pathier, Keng C Soh, Vassily Hatzimanikatis. "pyTFA and matTFA: a Python package and a Matlab toolbox for Thermodynamics-based Flux Analysis" Bioinformatics (2018), bty499, DOI: https://doi.org/10.1093/bioinformatics/bty499

Implements: Christopher S. Henry, Linda J. Broadbelt, and Vassily Hatzimanikatis. "Thermodynamics-based metabolic flux analysis." Biophysical journal 92.5 (2007): 1792-1805. DOI: https://doi.org/10.1529/biophysj.106.093138

Requirements

You will need to have Git-LFS in order to properly download some binary files:

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
cd /path/to/pytfa
git lfs install
git lfs pull

This module was developed in Python 3.5, and it is recommended to run Python 3.5 to run commercial solvers such as Gurobi and CPLEX. Other Python versions (2.7, 3.4) should also work (see the CI builds)

This module requires COBRApy, as well as optlang to work properly. The installer should take care of that for you. You might also want to install a dedicated solver. GLPK, CPLEX and Gurobi are supported.

Setup

This step is not required if you're using the container, which bundles all this.

You can install this module with pip:

For Python 3, you might have to usepip3instead ofpip

pip3 install pytfa

or from source

git clone https://github.com/EPFL-LCSB/pytfa.git /path/to/pytfa
pip3 install -e /path/to/pytfa

Quick start

Three tutorial files detail thoroughly normal usages of the pytfa package. They can be found at:

pytfa
└── tutorials
├── figure_paper.py
├── tutorial_basics.py
└── tutorial_sampling.py

More information can be found here.

Documentation

Documentation is hosted at Read the Docs

Alternatively you can also generate the docs locally.

Make sure sphinx is installed, and install as well the theme (this is already bundled with the container):

pip install sphinx sphinx-rtd-theme

You can then generate the documentation with this command:

cd work/pytfa/doc && make html

The resulting HTML files will be located in work/pytfa/doc/_build.

DEPRECATEDL: Container-based install

You might want to use this program inside of a container. The docker/ subfolder has all the necessary information and source files to set it up.

Testing the code

We recommend using the Docker container for testing the code, as it comes with everything bundled.

Install pytest if you don't already have it (pip install pytest, already included in the container), then start the tests with the pytest command.

Usage

First, create your COBRApy model. Make sure to define the additional values required by pyTFA, as said in the "Models" page of the documentation.

If you already have a Matlab model with thermodynamic data, you might want to use pytfa.io.import_matlab_model. Otherwise, have a look at the COBRApy documentation, then add the required properties.

If you're using a specific solver, don't forget to tell COBRApy about it by setting the solver property of your model to the name of your solver. See the COBRApy documentation for more information about this.

Thermodynamic database

You also need a thermodynamic database. Use thermoDBconverter.py if you have a thermodynamic database from Matlab you wish to import to Python.

Thermodynamic databases are stored in .thermodb files and can be easily loaded with pytfa.io.load_thermoDB.

Example script

Here is an example script :

importpytfafrompytfa.ioimportimport_matlab_model, load_thermoDBcobra_model=import_matlab_model('../models/small_yeast.mat')
thermo_data=load_thermoDB('../data/thermo_data.thermodb')
mytfa=pytfa.ThermoModel(thermo_data, cobra_model)
mytfa.solver='optlang-cplex'## TFA conversionmytfa.prepare()
mytfa.convert()
## Info on the modelmytfa.print_info()
## Optimalitytfa_solution=mytfa.optimize()

License

The software in this repository is put under an APACHE-2.0 licensing scheme - please see the LICENSE file for more details.

About

A Python 3 implementation of Thermodynamics-based Flux Analysis

Resources

Stars

47 stars

Watchers

7 watching

Forks

Releases

Packages

Used by

Contributors

Languages