#!/usr/bin/env python # coding: utf-8 # In[3]: from cameo import models, phenotypic_phase_plane # In[63]: model = models.bigg.e_coli_core.copy() # In[64]: model.reactions.EX_o2_e.lower_bound = 0 # In[24]: model.reactions.EX_succ_e # In[25]: ppp = phenotypic_phase_plane(model, variables=[model.reactions.BIOMASS_Ecoli_core_w_GAM], objective=model.reactions.EX_succ_e) ppp.plot() # In[39]: mutant1 = model.copy() # In[40]: mutant1.reactions.ACKr.knock_out() mutant1.reactions.ATPS4r.knock_out() mutant1.reactions.ATPM.knock_out() mutant1.reactions.FUM.knock_out() # In[41]: ppp = phenotypic_phase_plane(mutant1, variables=[mutant1.reactions.BIOMASS_Ecoli_core_w_GAM], objective=mutant1.reactions.EX_succ_e) ppp.plot() # In[33]: mutant2 = model.copy() # In[35]: mutant2.reactions.ACALD.knock_out() mutant2.reactions.PYK.knock_out() mutant2.reactions.ME2.knock_out() # In[36]: ppp = phenotypic_phase_plane(mutant2, variables=[mutant2.reactions.BIOMASS_Ecoli_core_w_GAM], objective=mutant2.reactions.EX_succ_e) ppp.plot() # In[42]: mutant3 = model.copy() # In[43]: mutant3.reactions.ACALD.knock_out() mutant3.reactions.LDH_D.knock_out() # In[44]: ppp = phenotypic_phase_plane(mutant3, variables=[mutant3.reactions.BIOMASS_Ecoli_core_w_GAM], objective=mutant3.reactions.EX_succ_e) ppp.plot() # ## Excercises # * Do any of these desigs work under aerobic conditions? # * Can any of these designs actually be achieved with gene knockouts? # ## Solutions # In[67]: ### Solution 1 # In[46]: mutant1.reactions.EX_o2_e.lower_bound = -20 ppp = phenotypic_phase_plane(mutant1, variables=[mutant1.reactions.BIOMASS_Ecoli_core_w_GAM], objective=mutant1.reactions.EX_succ_e) ppp.plot() # In[47]: mutant2.reactions.EX_o2_e.lower_bound = -20 ppp = phenotypic_phase_plane(mutant2, variables=[mutant2.reactions.BIOMASS_Ecoli_core_w_GAM], objective=mutant2.reactions.EX_succ_e) ppp.plot() # In[49]: mutant3.reactions.EX_o2_e.lower_bound = -20 ppp = phenotypic_phase_plane(mutant3, variables=[mutant3.reactions.BIOMASS_Ecoli_core_w_GAM], objective=mutant3.reactions.EX_succ_e) ppp.plot() # The anwer is no! # ### Solution 2 # In[53]: mutant3.reactions.ACALD.gene_name_reaction_rule # In[54]: mutant3.reactions.LDH_D.gene_name_reaction_rule # In[58]: for gene in mutant3.reactions.ACALD.genes: print(gene.name, gene.reactions) # In[59]: for gene in mutant3.reactions.LDH_D.genes: print(gene.name, gene.reactions) # In[65]: mutant4 = model.copy() mutant4.reactions.ACALD.knock_out() mutant4.reactions.LDH_D.knock_out() mutant4.reactions.ALCD2x.knock_out() # In[66]: ppp = phenotypic_phase_plane(mutant4, variables=[mutant4.reactions.BIOMASS_Ecoli_core_w_GAM], objective=mutant4.reactions.EX_succ_e) ppp.plot() # The answer is yes! # In[ ]: