C-CoMP-STC / GEM-mit1002

Creative Commons Attribution 4.0 International
0 stars 0 forks source link

Check maintenance reaction effects #22

Open hgscott opened 1 year ago

hgscott commented 1 year ago

I am pretty sure that I have a maintenance reaction, but Daniel doesn't seem convinced. Check that the reaction is there, and what effect it is having in COBRA and in COMETS.

hgscott commented 1 year ago

Ilija says that Hui and Haroon only saw effects when they set the lower bound on the order of tens. Then he set the problem aside for now but does want to work on it again with Finn and with Kirill (on a more general project about the impact of maintenance rate). He also mentioned a nice paper on why maintenance changes the growth rate and yield by J. Pirt (he slacked it to me).

hgscott commented 1 year ago

I had a maintenance reaction, it was just wasn't on the model file in the main branch 🤦‍♀️. I merged that in and here is the maintenance reaction:

      <reaction metaid="meta_R_ATPM" sboTerm="SBO:0000176" id="R_ATPM" name="ATP maintenance requirement" reversible="false" fast="false" fbc:lowerFluxBound="R_ATPM_lower_bound" fbc:upperFluxBound="cobra_default_ub">
        <annotation>
          <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
            <rdf:Description rdf:about="#meta_R_ATPM">
              <bqbiol:is xmlns:bqbiol="http://biomodels.net/biology-qualifiers/">
                <rdf:Bag>
                  <rdf:li rdf:resource="http://identifiers.org/bigg.reaction/ATPM"/>
                  <rdf:li rdf:resource="http://identifiers.org/biocyc/META:ATPASE-RXN"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.1.5"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.34"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.20"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.53"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.8"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.32"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.4.12"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.48"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.40"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.9"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.23"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.22"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.54"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.1"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.1.8"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.29"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.17"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.50"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.39"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.19"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.4"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.35"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.16"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.4.4"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.37"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.4.8"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.31"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.6"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.4.5"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.52"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.2"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.14"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.51"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.25"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.38"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.33"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.43"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.4.10"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.4.13"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.3"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.10"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.24"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.44"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.15"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.5"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.1.3"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.1.15"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.4.2"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.4.3"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.42"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.11"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.28"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.30"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.4.1"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.4.11"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.47"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.4.6"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.36"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.21"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.12"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.18"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.26"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.27"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.7"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.4.9"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.4.7"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.46"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.41"/>
                  <rdf:li rdf:resource="http://identifiers.org/ec-code/3.6.3.49"/>
                  <rdf:li rdf:resource="http://identifiers.org/kegg.reaction/R00086"/>
                  <rdf:li rdf:resource="http://identifiers.org/metanetx.reaction/MNXR96131"/>
                  <rdf:li rdf:resource="http://identifiers.org/rhea/13066"/>
                  <rdf:li rdf:resource="http://identifiers.org/rhea/13065"/>
                  <rdf:li rdf:resource="http://identifiers.org/rhea/13068"/>
                  <rdf:li rdf:resource="http://identifiers.org/rhea/13067"/>
                  <rdf:li rdf:resource="http://identifiers.org/sabiork/75"/>
                  <rdf:li rdf:resource="http://identifiers.org/seed.reaction/rxn11300"/>
                  <rdf:li rdf:resource="http://identifiers.org/seed.reaction/rxn09694"/>
                  <rdf:li rdf:resource="http://identifiers.org/seed.reaction/rxn00062"/>
                </rdf:Bag>
              </bqbiol:is>
            </rdf:Description>
          </rdf:RDF>
        </annotation>
        <listOfReactants>
          <speciesReference species="M_cpd00002_c0" stoichiometry="1" constant="true"/>
          <speciesReference species="M_cpd00001_c0" stoichiometry="1" constant="true"/>
        </listOfReactants>
        <listOfProducts>
          <speciesReference species="M_cpd00008_c0" stoichiometry="1" constant="true"/>
          <speciesReference species="M_cpd00067_c0" stoichiometry="1" constant="true"/>
          <speciesReference species="M_cpd00009_c0" stoichiometry="1" constant="true"/>
        </listOfProducts>
      </reaction>
hgscott commented 1 year ago

I will make the simulation/plotting scripts on the fba-simulations-cue repo.

hgscott commented 1 year ago

The code I used to make plots that carried ATPM before was in this jupyter notebook: https://github.com/hgscott/GRC-2022/blob/more-models/alteromonas_analysis.ipynb

hgscott commented 1 year ago

I set up code to loop through maintenance values in COBRA and got this plot:

Image

hgscott commented 1 year ago

I'm going to check that the ATPM lower bound was getting set correctly- I think that since I set the bound as a parameter in the file it might be getting overwritten when I actually run .optimize().

hgscott commented 1 year ago

I don't think that's it, when I look at the variable before and after changing the lower bound, the variable does change too:

Image

hgscott commented 1 year ago

I checked the actual flux through the ATPM reaction in each solution, and it is changing: Image

hgscott commented 1 year ago

I tried more maintenance values, and still saw no change: Image

Image

hgscott commented 1 year ago

I checked all the reactants and products, and they are correct.

hgscott commented 1 year ago

I even tried with super low glucose and oxygen bounds (1 for each) and while that did change the biomass solution from before, the maintenance still didn't have any effect.

Image

Image

hgscott commented 1 year ago

Cannot make progress on this until the new MS2 model can grow on the expected carbon source(s).