SysBioChalmers / Human-GEM

The generic genome-scale metabolic model of Homo sapiens
https://sysbiochalmers.github.io/Human-GEM-guide/
Creative Commons Attribution 4.0 International
96 stars 40 forks source link

Fix Duplicate Stearoyl-CoA Beta-Oxidation Reactions #820

Open Devlin-Moyer opened 4 months ago

Devlin-Moyer commented 4 months ago

Main improvements in this PR:

As proposed in #802:

I noticed that MAR00776 had references associated with it but MAR03115, MAR03116, MAR03117, and MAR03118 didn't, but the two references associated with MAR00776 were about ACADS and ACADM, neither of which can actually catalyze the first round of beta-oxidation of stearoyl-CoA (at 18 carbons, it's too long), so I instead associated those four reactions with PMID:20490924, a review of mitochondrial beta-oxidation. MAR03121 onwards all had several references already associated with them, so I left those alone.

I hereby confirm that I have:

Devlin-Moyer commented 4 months ago

it would be easier to figure out what went wrong with the metabolic tasks if the test indicated which tasks failed rather than just saying that the test as a whole failed (if this information is in the output somewhere and I'm just not seeing it, let me know)

feiranl commented 4 months ago

@JHL-452b Could you help check this?

JHL-452b commented 4 months ago

it would be easier to figure out what went wrong with the metabolic tasks if the test indicated which tasks failed rather than just saying that the test as a whole failed (if this information is in the output somewhere and I'm just not seeing it, let me know)

Yeah. In the current code, it would exit the matlab program directly if the task failed without any feedback. This suggestion should be incorporated into plans for subsequent improvements.

However, in this bug, I tested on my own computer and finded that the task of Growth on Ham's media (biomass production) failed. The cause of the failure is being analyzed, and will provide feedback as soon as possible when there are conclusions.

JHL-452b commented 4 months ago

Actually, the failed task seems to have nothing to do with the modification of this PR due to same problem occured when I re-run the task for ./develop/Human-GEM.

I tried changing the solver to gurobi, and all tasks succeeded as you can see below:

>> taskType = 'essential';
>> setRavenSolver('glpk')
>> status = testMetabolicTasks(taskType)
Boundary metabolites were added to 1660 reactions.
New (boundary) versions of 1660 metabolites were added to the model.

FAIL: [GR] Growth on Ham's media (biomass production)
status =
     0

>> setRavenSolver('gurobi')
>> status = testMetabolicTasks(taskType)
Boundary metabolites were added to 1660 reactions.
New (boundary) versions of 1660 metabolites were added to the model.

Suceeded with essential tasks.
status =
     1

I don't know why RAVEN cannot automatically change the solver to gurobi in the running code of those tasks now. If we don't resolve it, all subsequent PR will fail. If there is no problem with the recently updated content, can we directly add setRavenSolver('gurobi') to the code of tasks? @feiranl

edkerk commented 4 months ago

See https://github.com/SysBioChalmers/Human-GEM/issues/821#issuecomment-2107505146 for consideration regarding gurobi/glpk.