systemsbioinformatics / ecmtool Goto Github PK
View Code? Open in Web Editor NEWUncover organisms' metabolic blueprints
License: MIT License
Uncover organisms' metabolic blueprints
License: MIT License
Hi there!
I am running the following command:
python main.py --model_path e_coli_core.xml --out_path core_conversions.csv --polco True
and I am getting 0 ECMs. Do you have any idea this might happening ?
Regards!
In the published paper there is clustering R script which has mentioned - metab_info_ecolicore.csv and metab_info_bacteroid.csv file inside data directory but is not here.
Hi,
I keep running into the same error when using network.compress()
Traceback is as follows:
compress
compress_inner
cancel_clementine
clementine_equality_compression
redund
with open(matrix_nonredundant_path) as file:
FileNotFoundError: [Errno 2] No such file or directory: 'C:\Users\...\ecmtool\ecmtool\tmp\matrix_nored0.ine'
Any suggestions?
Thank in advance
Hi,
I have a small problem with calculating the ECMs for my (relatively large) model.
It seems that the function 'remove_infeasible_irreversible_reactions' mistakenly throws out reactions necessary for the ECMs with biomass. If I run the ecmtool without the 'remove_infeasible_irreversible_reactions ' step during compression it does return ECMs containing biomass (objective).
I attached my runscript and used model.
data_ECMs_bug.zip
Thanks in advance,
Pjotr van der Jagt
University of Amsterdam
This is an OS issue and not ecmtool, but if you have a quick answer, that would be great. I'm trying to run ecmtool on a CentOS 7 box, but I can't find any repo for lrslib, so I grabbed the source from here http://cgm.cs.mcgill.ca/~avis/C/lrslib/archive/ and have a redund executable, but when I run the ecmtool example
"python main.py --model_path models/e_coli_core.xml --auto_direction true --out_path core_conversions.csv"
ecmtool errors with this from redund:
Iteration 24/25
Adding 8 candidates
Removing 6 rays
Running redund
*lrs:overflow possible: restarting with 128 bit arithmetic
Traceback (most recent call last):
File "main.py", line 297, in <module>
remove_infeasible=args.remove_infeasible)
File "/home/jvallino/Software/ecmtool/ecmtool-master/ecmtool/network.py", line 409, in compress
remove_infeasible=remove_infeasible)
File "/home/jvallino/Software/ecmtool/ecmtool-master/ecmtool/network.py", line 444, in compress_inner
self.cancel_clementine(verbose=verbose)
File "/home/jvallino/Software/ecmtool/ecmtool-master/ecmtool/network.py", line 702, in cancel_clementine
self.output_metabolite_indices())
File "/home/jvallino/Software/ecmtool/ecmtool-master/ecmtool/network.py", line 103, in clementine_equality_compression
G = redund(G, verbose=verbose)
File "/home/jvallino/Software/ecmtool/ecmtool-master/ecmtool/helpers.py", line 275, in redund
matrix_nored = np.append(matrix_nored, [row], axis=0)
File "<__array_function__ internals>", line 6, in append
File "/home/jvallino/Software/ecmtool/ecmtool-master/python3-virtualenv/lib64/python3.6/site-packages/numpy/lib/function_base.py", line 4671, in append
return concatenate((arr, values), axis=axis)
File "<__array_function__ internals>", line 6, in concatenate
ValueError: all the input array dimensions for the concatenation axis must match exactly, but along dimension 1, the array at index 0 has size 54 and the array at index 1 has size 8
I've tried using versions lrs version 71a and 71b, which generate the above, and version 72 generates a syntax like error. Assuming I'm doing this correctly (probably not), what version of lrslib does ecmtool use?
thanks!
-joe
Hi,
I've been running ecmtool on a few GEMs from BiGG (as well as a couple others), but I'm getting results that appear incomplete and I've yet to figure out why. Here is an example of using the latest version of ecmtool on a methanogen:
Methanosarcina barkeri str. Fusaro GEM iAF692 http://bigg.ucsd.edu/models/iAF692
This is a methanotroph, yet there is no ECM where hydrogen is consumed, only produced, but one of the primary catabolic pathway is
4 H2 + CO2 -> CH4 + 2 H2O
which is not found in the list of ECMs
I have another GEM where flux analysis show biomass synthesis; however, no ECMs are found that involve biomass synthesis. Unfortunately, I can't point to that GEM. I also didn't get any biomass ECM for a Synechocystis GEM (http://bigg.ucsd.edu/models/iJN678) when I ran an earlier version of ecmtool; however, when I run the latest version of ecmtool on that GEM now it finds a problem with one of the reactions (R_EX_photon_e) that has both lower and upper bounds of 0. I can remove that reaction, but that make it harder for you to verify.
I realize this is not much info to go on, but do you see a reason why there are no hydrogen consuming ECMs for the iAF692 GEM above?
Thanks!
-joe
Hi!
Thanks a lot for this amazing work of yours!
I was wondering whether there's a mistake with your readme for the python library case.
You mention that "The most crucial method is ecmtool.conversion_cone:get_conversion_cone(), which returns the ECMs of a given stoichiometric matrix."
from ecmtool.conversion_cone import get_conversion_cone
but I could not find a get_conversion_cone()
at all.
Am I missing something?
Thanks a lot again!
Hi, i tried to test ecmtool with this command in the ecmtool folder, python main.py --model_path .\models\e_coli_core_rounded.xml, get this error File "C:\Users\a.antonakoudis\OneDrive - Sartorius Corporate Administration GmbH\Documents\Projects\Media Design\ecmtool\ecmtool\helpers.py", line 478, in redund
raise ValueError('An error occurred during removal of redundant vectors from an input matrix: '
ValueError: An error occurred during removal of redundant vectors from an input matrix: redund did not write an output file after being presented input file "%s". Please check if your input matrix contains erroneous data, and let us know via https://github.com/SystemsBioinformatics/ecmtool/issues if you think the input matrix seems fine. It helps if you attach the matrix file mentioned above when creating an issue.
I've attached the tmp/matrix0.ine
matrix0.txt
Strange output"
Iteration 12 (internal metabolite = 11: M_nadph_c) of 25
Possible LP amounts for this step:
7296, 7891, 7296, 87084, 9150, 6765, 92448, 67680, 76612, 1144, 582, 29646, 31726, 65912
Total: 491232
Possible adjacencies added for this step:
60, 60, 60, -44, 60, 60, -44, -44, -44, -12, -12, -44, -44, -44
Command:
python3 main.py --model_path models/iIT341.xml --inputs 22,33,35,93,294,300,306,314,334,356,231,262,139,28 --hide 16,26,29,33,39,40,59,65,75,81,90,93,100,110,145,171,174,212,223,224,232,234,235,239,252,253,255,259,261,262,263,265,269,271,276,277,279,280,283,284,286,291,293,296,302,308,312,319,320,323,325,329,331,336,341,342,344,345,350,352,358,361,366,368,370,372
When I used a slightly modified GEM from here: https://onlinelibrary.wiley.com/doi/10.1002/biot.201200266 for iMG746, I get significantly different solutions when I run ecmtool on Windows vs CintOS 7. For instance, the Windows solution produces 3084 ECMs, while linux produces 57724 ECMs. The windows solution does not include any ECMs with the objective function (which I didn't understand why), but the linux solution produces many of those. I'm using the recent version of ecmtool on both boxes. The GEM can be grabbed here: http://eco37.mbl.edu/GEMs/iMG746_ExchangeFix.xml if you would like to test.
cheers,
-joe
Hi,
(me again) another little issue I ran into is the version check of sympy used in the cbmpy package.
In mutliple files, the version check is done by using
if int(sympy.version.split('.')[1]) >= 7 and int(sympy.version.split('.')[2]) >= 4:
As the last version of sympy is 1.8, this leads to an indexing problem
I fixed it by simply removing the second part of the statement but if you want to ensure version below are 1.7.4 are bot used you will need to introduce.
Maybe I should directly contact O. Brett on this topic but rather let you know that this prevent the run of test codes and examples
best
Hello!
I'm trying to install ecmtool on a HPC environment on my campus in a singularity container. So far, I'm having a problem with the GLPK solver: Even though GLPK is installed and loaded in the environment, the program states that it is not available. I'm not sure whether the problem is the installation or loading of the GLPK solver or if it is a problem with ecmtool. It does seem ecmtool is able to use CPLEX, but only the python interface is installed in the environment, so it is likely not actually used.
If anyone would like to look into this, I would be happy to send the singularity definition file, the SLURM script and the log-files.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.