SysBioChalmers / yeast-GEM

The consensus GEM for Saccharomyces cerevisiae
http://sysbiochalmers.github.io/yeast-GEM/
Creative Commons Attribution 4.0 International
94 stars 43 forks source link

restore 'boundary' compartment #16

Closed simas232 closed 6 years ago

simas232 commented 6 years ago

The model in this repository lacks 'boundary' compartment, unlike original Yeast 7.6.

It seems that the COBRA toolbox I/O functions are not amenable for models curation containing 'boundary' compartment as this compartment is always lost during I/O cycle. The corresponding functions from the RAVEN toolbox are useful for this purpose, but this would require an update for GEMs SOP.

BenjaSanchez commented 6 years ago

Dear @simas232,

I'm not a huge fan of the boundary compartment, as in practice it only makes the model bigger with not much to gain... does RAVEN only work with boundary? If so, could we instead include in the RAVEN reading function a case in which if there is no boundary it creates it? I'm sure many models would benefit from this as it is quite common to not have any boundary...

Let me know if this makes sense, if so I can close this issue.

simas232 commented 6 years ago

Well, having boundary compartment is literally the same as having all exchange reactions blocked... In order to perform simulations, you would need to open essential exchange reactions or to remove boundary metabolites. However, there are several approaches when you must have boundary compartment, for instance when using (t)INIT algorithm or checking metabolic tasks. The difference in I/O between COBRA and RAVEN is that the latter toolbox allows you to keep boundary compartment when importing model. That's why I believe that RAVEN is amenable to do I/O cycle without losing boundary compartment.

I agree that through the minimalistic rationale boundary compartment is optional, but I would still recommend to save the list of boundary metabolites somewhere beyond this repository. The database would consist of metabolite ids and metabolite names. I believe it is essential to have such list in order to prevent the current and the future curators not to use these metabolite ids. The curators of Yeast models were always keeping uniqueness of metabolite ids, so we should maintain the same hehaviour. This was also the main reason, why I suggested to add boundary compartment.

BenjaSanchez commented 6 years ago

@simas232 I see your point. I have added in gem-scripts the file that you suggested. It is automatically updated every time the model is changed. Let me know if this works for you guys. Alternatively I could put this file in this repo, but I'm not sure if that is compliant @demilappa?

BenjaSanchez commented 6 years ago

EDIT: As I migrated all scripts from yeast7scripts to this repository (to follow sysbio standards), the file is now available here