begin parameters k1 1e6 k1r 1e-4 k2 6e10 k3 60e10 k3r 60e-4 end parameters begin molecule types PEPTIDOGLYCAN() #enzymes murA(a) murB(b) murC(c) murD(d) #trouser 1 murEa(a) murF(f,a) mraY(a,b) murG(g,a) #trouser 1.1 femX(h) femA(i) femB(j) enz_box1(k) enz_box2(j) #trouser1.2 murM(h) murN(i) #trouser 2 murEf(a) enz_box3(h) #substrates UDP_N_acetylglucosamine(a) UDP_N_acetylglucosamine_enolpyruvate(b) UDP_N_acetylmuramate(c) UDP_MurNAc_Ala(d) UDP_MurNAc_Ala_Glu(a) UDP_MurNAc_Ala_Glu_Lys(f) UDP_MurNAc_Ala_Glu_Lys_Ala_Ala(b) UND_PP_MurNAc_Ala_Glu_Lys_Ala_Ala(g) UND_PP_MurNAc_GlcNAc_Ala_Glu_Lys_Ala_Ala(h) UND_PP_MurNAc_GlcNAc_Ala_isoglu_Lys_Ala_Ala(h) UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly_Ala_Ala(i) UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly3_Ala_Ala(j) UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly5_Ala_Ala(k) UND_PP_MurNAc_GlcNAc_Ala_Glu_LysAla_Ala_Ala(i) UND_PP_MurNAc_GlcNAc_Ala_Glu_LysAla2_Ala_Ala(j) UDP_MurNAc_Ala_Glu_meso_diaminopimelate(f) UDP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(b) Und_PP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(g) UND_PP_MurNAcGlc_NAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(h) #other Ala(a) Ala_Ala(a) undecaprenyl_P(a) undecaprenol(a) undecaprenyl_PP(a) undecaprenol_kinase(a) undecaprenyl_diphosphatase(a) P() #phosphate UMP() ddl(a,a) UDP_GlcNAC(a) xylose() end molecule types begin seed species xylose() 10 #Alter the starting levels of xylose here UDP_N_acetylglucosamine(a) 5 murA(a) 10 murB(b) 10 murC(c) 10 murD(d) 10 murEa(a) 10 murEf(a) 10 murF(f,a) 10 mraY(a,b) 10 murG(g,a) 10 murM(h) 10 murN(i) 10 femX(h) 10 femA(i) 10 femB(j) 10 enz_box1(k) 10 enz_box2(j) 10 enz_box3(h) 10 undecaprenyl_P(a) 10 undecaprenyl_diphosphatase(a) 10 UDP_GlcNAC(a) 10 Ala_Ala(a) 10 Ala(a) 10 ddl(a,a) 10 end seed species begin observables Molecules peptidoglycan PEPTIDOGLYCAN() Molecules xylose xylose() Molecules murD murD(d) Molecules murEa murEa(a) Molecules murF murF(f,a) Molecules mraY mraY(a) Molecules murEf murEf(a) Molecules UDP_N_acetylglucosamine_enolpyruvate UDP_N_acetylglucosamine_enolpyruvate(b) Molecules UDP_N_acetylmuramate UDP_N_acetylmuramate(c) Molecules UDP_MurNAc_Ala UDP_MurNAc_Ala(d) Molecules UDP_MurNAc_Ala_Glu UDP_MurNAc_Ala_Glu(a) Molecules UDP_MurNAc_Ala_Glu_Lys UDP_MurNAc_Ala_Glu_Lys(f) Molecules UDP_MurNAc_Ala_Glu_meso_diaminopimelate UDP_MurNAc_Ala_Glu_meso_diaminopimelate(f) end observables begin functions fun() = if(xylose<0.5, 0,10) end functions begin reaction rules #reaction1 UDP_N_acetylglucosamine(a) + murA(a) <-> UDP_N_acetylglucosamine(a!0).murA(a!0) k1,k1r UDP_N_acetylglucosamine(a!0).murA(a!0) -> UDP_N_acetylglucosamine_enolpyruvate(b) + murA(a) k2 #reaction2 UDP_N_acetylglucosamine_enolpyruvate(b) + murB(b) <-> UDP_N_acetylglucosamine_enolpyruvate(b!1).murB(b!1) k1,k1r UDP_N_acetylglucosamine_enolpyruvate(b!1).murB(b!1) -> UDP_N_acetylmuramate(c) + murB(b) k2 #reacton3 UDP_N_acetylmuramate(c) + murC(c) <-> UDP_N_acetylmuramate(c!3).murC(c!3) k1,k1r UDP_N_acetylmuramate(c!3).murC(c!3) -> UDP_MurNAc_Ala(d) + murC(c) 1*60^2 #reaction4 UDP_MurNAc_Ala(d) + murD(d) <-> UDP_MurNAc_Ala(d!4).murD(d!4) k1,k1r UDP_MurNAc_Ala(d!4).murD(d!4) -> UDP_MurNAc_Ala_Glu(a) + murD(d) 0.8*60^2 # Ala-Ala synthesis offshoot bit Ala(a) + ddl(a,a) <-> Ala(a!1).ddl(a!1,a) k1,k1r Ala(a) + ddl(a,a!1).Ala(a!1) <-> Ala(a!2).ddl(a!1,a!2).Ala(a!1) k3,k3r Ala(a!1).ddl(a!1,a!2).Ala(a!2) -> Ala_Ala(a) + ddl(a,a) k2 # undecaprenyl-P synthesis offshoot undecaprenol(a) + undecaprenol_kinase(a) <-> undecaprenol(a!1).undecaprenol_kinase(a!1) k1,k1r undecaprenol(a!1).undecaprenol_kinase(a!1) -> undecaprenyl_P(a) k2 undecaprenyl_PP(a) + undecaprenyl_diphosphatase(a) <-> undecaprenyl_diphosphatase(a!1).undecaprenyl_PP(a!1) k1,k1r undecaprenyl_diphosphatase(a!1).undecaprenyl_PP(a!1) -> undecaprenyl_P(a) + P() k2 # 1st branching #reaction1 UDP_MurNAc_Ala_Glu(a) + murEa(a) <-> UDP_MurNAc_Ala_Glu(a!5).murEa(a!5) k1,k1r UDP_MurNAc_Ala_Glu(a!5).murEa(a!5) -> UDP_MurNAc_Ala_Glu_Lys(f) + murEa(a) 1.2*60^2 #reaction2 UDP_MurNAc_Ala_Glu_Lys(f) + murF(f,a) <-> UDP_MurNAc_Ala_Glu_Lys(f!6).murF(f!6,a) k1,k1r UDP_MurNAc_Ala_Glu_Lys(f!6).murF(f!6,a) + Ala_Ala(a) <-> UDP_MurNAc_Ala_Glu_Lys(f!6).murF(f!6,a!1).Ala_Ala(a!1) k3,k3r Ala_Ala(a) + murF(f,a) <-> Ala_Ala(a!1).murF(f,a!1) k1,k1r Ala_Ala(a!1).murF(a!1,f) + UDP_MurNAc_Ala_Glu_Lys(f) <-> UDP_MurNAc_Ala_Glu_Lys(f!6).murF(f!6,a!1).Ala_Ala(a!1) k3,k3r UDP_MurNAc_Ala_Glu_Lys(f!6).murF(f!6,a!1).Ala_Ala(a!1) -> UDP_MurNAc_Ala_Glu_Lys_Ala_Ala(b) + murF(f,a) 1.4*60^2 #reaction3 UDP_MurNAc_Ala_Glu_Lys_Ala_Ala(b) + mraY(b,a) <-> UDP_MurNAc_Ala_Glu_Lys_Ala_Ala(b!7).mraY(b!7,a) k1,k1r UDP_MurNAc_Ala_Glu_Lys_Ala_Ala(b!7).mraY(b!7,a) + undecaprenyl_P(a) <-> UDP_MurNAc_Ala_Glu_Lys_Ala_Ala(b!7).mraY(b!7,a!1).undecaprenyl_P(a!1) k3,k3r mraY(b,a) + undecaprenyl_P(a) <-> mraY(b,a!1).undecaprenyl_P(a!1) k1,k1r mraY(b,a!1).undecaprenyl_P(a!1) + UDP_MurNAc_Ala_Glu_Lys_Ala_Ala(b) <-> UDP_MurNAc_Ala_Glu_Lys_Ala_Ala(b!7).mraY(b!7,a!1).undecaprenyl_P(a!1) k3,k3r UDP_MurNAc_Ala_Glu_Lys_Ala_Ala(b!7).mraY(b!7,a!1).undecaprenyl_P(a!1) -> UND_PP_MurNAc_Ala_Glu_Lys_Ala_Ala(g) + mraY(a,b) + UMP() k2 #reaction4 UND_PP_MurNAc_Ala_Glu_Lys_Ala_Ala(g) + murG(g,a) <-> UND_PP_MurNAc_Ala_Glu_Lys_Ala_Ala(g!8).murG(g!8,a) k1,k1r UND_PP_MurNAc_Ala_Glu_Lys_Ala_Ala(g!8).murG(g!8,a) + UDP_GlcNAC(a) <-> UND_PP_MurNAc_Ala_Glu_Lys_Ala_Ala(g!8).murG(g!8,a!2).UDP_GlcNAC(a!2) k3,k3r UDP_GlcNAC(a) + murG(g,a) <-> UDP_GlcNAC(a!2).murG(a!2,g) k1,k1r UDP_GlcNAC(a!2).murG(a!2,g) + UND_PP_MurNAc_Ala_Glu_Lys_Ala_Ala(g) <-> UND_PP_MurNAc_Ala_Glu_Lys_Ala_Ala(g!8).murG(g!8,a!2).UDP_GlcNAC(a!2) k3,k3r UND_PP_MurNAc_Ala_Glu_Lys_Ala_Ala(g!1).murG(g!1,a!2).UDP_GlcNAC(a!2) -> UND_PP_MurNAc_GlcNAc_Ala_Glu_Lys_Ala_Ala(h) + murG(g,a) k2 # Branching1.1 1.1 #reaction1 UND_PP_MurNAc_GlcNAc_Ala_Glu_Lys_Ala_Ala(h) -> UND_PP_MurNAc_GlcNAc_Ala_isoglu_Lys_Ala_Ala(h) k2 #reaction 2 UND_PP_MurNAc_GlcNAc_Ala_isoglu_Lys_Ala_Ala(h) + femX(h) <-> UND_PP_MurNAc_GlcNAc_Ala_isoglu_Lys_Ala_Ala(h!8).femX(h!8) k1,k1r UND_PP_MurNAc_GlcNAc_Ala_isoglu_Lys_Ala_Ala(h!8).femX(h!8) -> UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly_Ala_Ala(i) + femX(h) k2 #reaction 3 UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly_Ala_Ala(i) + femA(i) <-> UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly_Ala_Ala(i!9).femA(i!9) k1,k1r UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly_Ala_Ala(i!9).femA(i!9) -> UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly3_Ala_Ala(j) +femA(i) k2 #reaction 4 UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly3_Ala_Ala(j) + femB(j) <-> UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly3_Ala_Ala(j!10).femB(j!10) k1,k1r UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly3_Ala_Ala(j!10).femB(j!10) -> UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly5_Ala_Ala(k) +femB(j) k2 #reacton 5 UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly5_Ala_Ala(k) + enz_box1(k) <-> UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly5_Ala_Ala(k!11).enz_box1(k!11) k1,k1r UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly5_Ala_Ala(k!11).enz_box1(k!11) -> enz_box1(k) + PEPTIDOGLYCAN() + Ala(a) k2 #branching 1.2 #reaction 1 UND_PP_MurNAc_GlcNAc_Ala_Glu_Lys_Ala_Ala(h) + murM(h) <-> UND_PP_MurNAc_GlcNAc_Ala_Glu_Lys_Ala_Ala(h!8).murM(h!8) k1,k1r UND_PP_MurNAc_GlcNAc_Ala_Glu_Lys_Ala_Ala(h!8).murM(h!8) -> UND_PP_MurNAc_GlcNAc_Ala_Glu_LysAla_Ala_Ala(i) + murM(h) k2 #reaction 2 UND_PP_MurNAc_GlcNAc_Ala_Glu_LysAla_Ala_Ala(i) + murN(i) <-> UND_PP_MurNAc_GlcNAc_Ala_Glu_LysAla_Ala_Ala(i!9).murN(i!9) k1,k1r UND_PP_MurNAc_GlcNAc_Ala_Glu_LysAla_Ala_Ala(i!9).murN(i!9) -> UND_PP_MurNAc_GlcNAc_Ala_Glu_LysAla2_Ala_Ala(j) + murN(i) k2 #reaction 3 UND_PP_MurNAc_GlcNAc_Ala_Glu_LysAla2_Ala_Ala(j) + enz_box2(j) <-> UND_PP_MurNAc_GlcNAc_Ala_Glu_LysAla2_Ala_Ala(j!10).enz_box2(j!10) k1,k1r UND_PP_MurNAc_GlcNAc_Ala_Glu_LysAla2_Ala_Ala(j!10).enz_box2(j!10) -> PEPTIDOGLYCAN() + enz_box2(j) + undecaprenyl_PP(a) k2 #2nd branch #reaction 1 murEf(a) + UDP_MurNAc_Ala_Glu(a) <-> UDP_MurNAc_Ala_Glu(a!5).murEf(a!5) k1,k1r UDP_MurNAc_Ala_Glu(a!5).murEf(a!5) -> UDP_MurNAc_Ala_Glu_meso_diaminopimelate(f) +murEf(a) 1.2*60^2 #reaction 2 murF(f,a) + UDP_MurNAc_Ala_Glu_meso_diaminopimelate(f) <-> UDP_MurNAc_Ala_Glu_meso_diaminopimelate(f!6).murF(f!6,a) k1,k1r UDP_MurNAc_Ala_Glu_meso_diaminopimelate(f!6).murF(f!6,a) + Ala_Ala(a) <-> UDP_MurNAc_Ala_Glu_meso_diaminopimelate(f!6).murF(f!6,a!1).Ala_Ala(a!1) k3,k3r murF(f,a) + Ala_Ala(a) <-> murF(f,a!1).Ala_Ala(a!1) k1,k1r murF(f,a!1).Ala_Ala(a!1) + UDP_MurNAc_Ala_Glu_meso_diaminopimelate(f) <-> UDP_MurNAc_Ala_Glu_meso_diaminopimelate(f!6).murF(f!6,a!1).Ala_Ala(a!1) k3,k3r UDP_MurNAc_Ala_Glu_meso_diaminopimelate(f!6).murF(f!6,a!1).Ala_Ala(a!1) -> UDP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(b) + murF(f,a) 1.4*60^2 #reaction 3 UDP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(b) + mraY(a,b) <-> UDP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(b!7).mraY(b!7,a) k1,k1r UDP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(b!7).mraY(b!7,a) + undecaprenyl_P(a) <-> UDP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(b!7).mraY(b!7,a!1).undecaprenyl_P(a!1) k3,k3r mraY(b,a) + undecaprenyl_P(a) <-> mraY(b,a!1).undecaprenyl_P(a!1) k1,k1r mraY(b,a!1).undecaprenyl_P(a!1) + UDP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(b) <-> UDP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(b!7).mraY(b!7,a) k3,k3r UDP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(b!7).mraY(b!7,a) -> Und_PP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(g) + mraY(a,b) + UMP() k2 #reaction 4 Und_PP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(g) + murG(g,a) <-> Und_PP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(g!8).murG(g!8,a) k1,k1r Und_PP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(g!8).murG(g!8,a) + UDP_GlcNAC(a) <-> Und_PP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(g!8).murG(g!8,a!2).UDP_GlcNAC(a!2) k3,k3r UDP_GlcNAC(a) + murG(g,a) <-> UDP_GlcNAC(a!2).murG(a!2,g) k1,k1r UDP_GlcNAC(a!2).murG(a!2,g) + Und_PP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(g) <-> Und_PP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(g!8).murG(g!8,a!2).UDP_GlcNAC(a!2) k3,k3r Und_PP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(g!8).murG(g!8,a!2).UDP_GlcNAC(a!2) -> UND_PP_MurNAcGlc_NAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(h) + murG(g,a) k2 #reaction 5 UND_PP_MurNAcGlc_NAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(h) + enz_box3(h) <-> UND_PP_MurNAcGlc_NAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(h!9).enz_box3(h!9) k1,k1r UND_PP_MurNAcGlc_NAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(h!9).enz_box3(h!9) -> PEPTIDOGLYCAN() + enz_box3(h) + Ala(a) + undecaprenyl_PP(a) k1 # formation/degradtion of murE operon genes mraY(a,b) <-> 0 10000,fun() murEa(a) <-> 0 10000,fun() murEf(a) <-> 0 10000,fun() murD(d) <-> 0 10000,fun() # constant formation substrates 0 -> undecaprenyl_P(a) + UDP_N_acetylglucosamine(a) + undecaprenyl_diphosphatase(a) + UDP_GlcNAC(a) + Ala(a) + ddl(a,a) 100 #peptioglycan degradtion/metabolism PEPTIDOGLYCAN() -> 0 0.04 #general degradtion UDP_N_acetylglucosamine(a) -> 0 0.002 UDP_N_acetylglucosamine_enolpyruvate(b) -> 0 0.002 UDP_N_acetylmuramate(c) -> 0 0.002 UDP_MurNAc_Ala(d) -> 0 0.002 UDP_MurNAc_Ala_Glu(a) -> 0 0.002 UDP_MurNAc_Ala_Glu_Lys(f) -> 0 0.002 UDP_MurNAc_Ala_Glu_Lys_Ala_Ala(b) -> 0 0.002 UND_PP_MurNAc_Ala_Glu_Lys_Ala_Ala(g) -> 0 0.002 UND_PP_MurNAc_GlcNAc_Ala_Glu_Lys_Ala_Ala(h) -> 0 0.002 UND_PP_MurNAc_GlcNAc_Ala_isoglu_Lys_Ala_Ala(h) -> 0 0.002 UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly_Ala_Ala(i) -> 0 0.002 UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly3_Ala_Ala(j) -> 0 0.002 UND_PP_MurNAc_GlcNAc_Ala_isoglu_LysGly5_Ala_Ala(k) -> 0 0.002 UND_PP_MurNAc_GlcNAc_Ala_Glu_LysAla_Ala_Ala(i) -> 0 0.002 UND_PP_MurNAc_GlcNAc_Ala_Glu_LysAla2_Ala_Ala(j) -> 0 0.002 UDP_MurNAc_Ala_Glu_meso_diaminopimelate(f) -> 0 0.002 UDP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(b) -> 0 0.002 Und_PP_MurNAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(g) -> 0 0.002 UND_PP_MurNAcGlc_NAc_Ala_Glu_meso_diaminopimolyl_Ala_Ala(h) -> 0 0.002 end reaction rules generate_network({overwrite=>1}) # Equilibration simulate_ssa({t_end=>100,n_steps=>1000})