/* * Analysis of a Generic Model of Eukaryotic Cell-Cycle Regulation * * Model Status * * This CellML model represents the budding yeast model taken from * the original published paper. The model runs in both PCEnv and * COR but does not replicate the published results. This may be * because of the cell division event which we are currently unable * to express in CellML. The units have been checked and they are * consistent. * * Model Structure * * ABSTRACT: We propose a protein interaction network for the regulation * of DNA synthesis and mitosis that emphasizes the universality * of the regulatory system among eukaryotic cells. The idiosyncrasies * of cell cycle regulation in particular organisms can be attributed, * we claim, to specific settings of rate constants in the dynamic * network of chemical reactions. The values of these rate constants * are determined ultimately by the genetic makeup of an organism. * To support these claims, we convert the reaction mechanism into * a set of governing kinetic equations and provide parameter values * (specific to budding yeast, fission yeast, frog eggs, and mammalian * cells) that account for many curious features of cell cycle * regulation in these organisms. Using one-parameter bifurcation * diagrams, we show how overall cell growth drives progression * through the cell cycle, how cell-size homeostasis can be achieved * by two different strategies, and how mutations remodel bifurcation * diagrams and create unusual cell-division phenotypes. The relation * between gene dosage and phenotype can be summarized compactly * in two-parameter bifurcation diagrams. Our approach provides * a theoretical framework in which to understand both the universality * and particularity of cell cycle regulation, and to construct, * in modular fashion, increasingly complex models of the networks * controlling cell growth and division. * * The original paper reference is cited below: * * Analysis of a Generic Model of Eukaryotic Cell-Cycle Regulation, * Attila Csikasz-Nagy, Dorjsuren Battogtokh, Katherine C. Chen, * Bela Novak, and John J. Tyson, 2006, Biophysical Journal, 90, * 4361-4379. PubMed ID: 16581849 * * reaction diagram * * [[Image file: csikasz_nagy_2006.png]] * * Wiring diagram of the generic cell-cycle regulatory network. * Chemical reactions (solid lines), regulatory effects (dashed * lines); a protein sitting on a reaction arrow represents an * enzyme catalyst of the reaction. Regulatory modules of the system * are distinguished by shaded backgrounds: (1) exit of M module, * (2) Cdh1 module, (3) CycB transcription factor, (4) CycB synthesis/degradation, * (5) G2 module, (6) CycB inhibition by CKI (also includes the * binding of phosphorylated CycB, if that is present), (7) CKI * transcription factor, (8) CKI synthesis/ degradation, (9) CycE * inhibition by CKI, (10) CycE synthesis/degradation, (11) CycE/A * transcription factor, (12) CycA inhibition by CKI, (13) CycA * synthesis/degradation. An asterisk by the name represents active * form of regulated protein; gray rectangles behind cyclins represent * their Cdk partners. It is assumed that all Cdk subunits are * present in constant, excess amounts. */ import nsrunit; unit conversion on; unit minute=60 second^1; unit first_order_rate_constant=.01666667 second^(-1); math main { realDomain time minute; time.min=0; extern time.max; extern time.delta; real actCycA(time) dimensionless; when(time=time.min) actCycA=0.09450308233499527; real k_asa first_order_rate_constant; k_asa=50; real k_sap first_order_rate_constant; k_sap=0.0015; real k_sapp first_order_rate_constant; k_sapp=0.01; real k_dia first_order_rate_constant; k_dia=0.06; real V_di(time) first_order_rate_constant; real V_da(time) first_order_rate_constant; real mass(time) dimensionless; when(time=time.min) mass=1.338267803192139; real Tri_A(time) dimensionless; real TF_E(time) dimensionless; real freeCKI(time) dimensionless; real actCycB(time) dimensionless; when(time=time.min) actCycB=0.1903585940599442; real k_asb first_order_rate_constant; k_asb=60; real k_dib first_order_rate_constant; k_dib=0.05; real V_sb(time) first_order_rate_constant; real V_db(time) first_order_rate_constant; real V_25(time) first_order_rate_constant; real V_wee(time) first_order_rate_constant; real CycB(time) dimensionless; when(time=time.min) CycB=0.09450308233499527; real Tri_B(time) dimensionless; when(time=time.min) Tri_B=0.01; real preMPF(time) dimensionless; when(time=time.min) preMPF=0.01; real actCycE(time) dimensionless; when(time=time.min) actCycE=0.2092024385929108; real k_die first_order_rate_constant; k_die=0; real k_ase first_order_rate_constant; k_ase=0; real k_sep first_order_rate_constant; k_sep=0; real k_sepp first_order_rate_constant; k_sepp=0.15; real V_de(time) first_order_rate_constant; real Tri_E(time) dimensionless; real CycA(time) dimensionless; when(time=time.min) CycA=0.09450308233499527; real CycE(time) dimensionless; when(time=time.min) CycE=0.09450308233499527; real CycD(time) dimensionless; real CycD_0 dimensionless; CycD_0=0.108; real Cdc20_A(time) dimensionless; when(time=time.min) Cdc20_A=0.3572723865509033; real k_a20 first_order_rate_constant; k_a20=1; real k_i20 first_order_rate_constant; k_i20=0.16; real k_d20 first_order_rate_constant; k_d20=0.05; real APCP(time) dimensionless; when(time=time.min) APCP=0.07591402530670166; real Cdc20_T(time) dimensionless; when(time=time.min) Cdc20_T=0.7702387571334839; real J_a20 dimensionless; J_a20=1; real J_i20 dimensionless; J_i20=1; real k_s20p first_order_rate_constant; k_s20p=0.001; real k_s20pp first_order_rate_constant; k_s20pp=1; real n dimensionless; n=1; real J_20 dimensionless; J_20=10; real k_aAPC first_order_rate_constant; k_aAPC=0.1; real k_iAPC first_order_rate_constant; k_iAPC=0.15; real J_aAPC dimensionless; J_aAPC=0.1; real J_iAPC dimensionless; J_iAPC=0.1; real CKI(time) dimensionless; when(time=time.min) CKI=0.01; real Cdh1(time) dimensionless; when(time=time.min) Cdh1=0.7189393639564514; real k_ah1p first_order_rate_constant; k_ah1p=0.02; real k_ah1pp first_order_rate_constant; k_ah1pp=0.8; real k_ih1p first_order_rate_constant; k_ih1p=0.001; real k_ih1pp first_order_rate_constant; k_ih1pp=0.35; real k_ih1ppp first_order_rate_constant; k_ih1ppp=0.1; real k_ih1pppp first_order_rate_constant; k_ih1pppp=0.06; real k_ih1ppppp first_order_rate_constant; k_ih1ppppp=0.005; real Cdc14(time) dimensionless; real J_ah1 dimensionless; J_ah1=0.03; real J_ih1 dimensionless; J_ih1=0.03; real mu first_order_rate_constant; mu=0.005776; real maxmass dimensionless; maxmass=10000; real V_atf(time) first_order_rate_constant; real k_atfp first_order_rate_constant; k_atfp=0; real k_atfpp first_order_rate_constant; k_atfpp=1.5; real k_atfppp first_order_rate_constant; k_atfppp=0.38; real k_atfpppp first_order_rate_constant; k_atfpppp=3; real k_itfp first_order_rate_constant; k_itfp=0.75; real k_itfpp first_order_rate_constant; k_itfpp=8; real k_itfppp first_order_rate_constant; k_itfppp=0; real J_itf dimensionless; J_itf=0.01; real J_atf dimensionless; J_atf=0.01; real TF_E.A1(time) first_order_rate_constant; real TF_E.A2(time) first_order_rate_constant; real TF_E.A3 dimensionless; real TF_E.A4 dimensionless; real k_dep first_order_rate_constant; k_dep=0.12; real k_depp first_order_rate_constant; k_depp=0; real k_deppp first_order_rate_constant; k_deppp=0; real k_depppp first_order_rate_constant; k_depppp=0; real k_dap first_order_rate_constant; k_dap=0.01; real k_dapp first_order_rate_constant; k_dapp=0.16; real k_dappp first_order_rate_constant; k_dappp=0; real TF_I(time) dimensionless; real k_afi first_order_rate_constant; k_afi=6; real k_ifip first_order_rate_constant; k_ifip=0.008; real k_ifipp first_order_rate_constant; k_ifipp=0.05; real J_ifi dimensionless; J_ifi=2; real J_afi dimensionless; J_afi=1; real TF_I.A1(time) first_order_rate_constant; real TF_I.A2(time) first_order_rate_constant; real TF_I.A3 dimensionless; real TF_I.A4 dimensionless; real V_si(time) first_order_rate_constant; real k_sip first_order_rate_constant; k_sip=0.018; real k_sipp first_order_rate_constant; k_sipp=0.18; real k_dip first_order_rate_constant; k_dip=0.02; real k_dipp first_order_rate_constant; k_dipp=0.1; real k_dippp first_order_rate_constant; k_dippp=0.8; real k_dipppp first_order_rate_constant; k_dipppp=0.12; real k_dippppp first_order_rate_constant; k_dippppp=0.1; real J_14di dimensionless; J_14di=12; real TF_B(time) dimensionless; real k_afb first_order_rate_constant; k_afb=1; real k_ifb first_order_rate_constant; k_ifb=0.15; real J_ifb dimensionless; J_ifb=0.1; real J_afb dimensionless; J_afb=0.1; real TF_B.A1(time) first_order_rate_constant; real TF_B.A2 first_order_rate_constant; real TF_B.A3 dimensionless; real TF_B.A4 dimensionless; real k_sbp first_order_rate_constant; k_sbp=0.004; real k_sbpp first_order_rate_constant; k_sbpp=0.04; real k_dbp first_order_rate_constant; k_dbp=0.003; real k_dbpp first_order_rate_constant; k_dbpp=0.4; real k_dbppp first_order_rate_constant; k_dbppp=0.15; real Wee1(time) dimensionless; real k_aweep first_order_rate_constant; k_aweep=0.3; real k_aweepp first_order_rate_constant; k_aweepp=0; real k_iwee first_order_rate_constant; k_iwee=1; real J_iwee dimensionless; J_iwee=0.05; real J_awee dimensionless; J_awee=0.05; real Wee1.A1(time) first_order_rate_constant; real Wee1.A2(time) first_order_rate_constant; real Wee1.A3 dimensionless; real Wee1.A4 dimensionless; real k_weep first_order_rate_constant; k_weep=0.02; real k_weepp first_order_rate_constant; k_weepp=0.2; real Cdc25(time) dimensionless; real k_a25 first_order_rate_constant; k_a25=0; real k_i25p first_order_rate_constant; k_i25p=0.3; real k_i25pp first_order_rate_constant; k_i25pp=0; real J_i25 dimensionless; J_i25=0.1; real J_a25 dimensionless; J_a25=0.1; real Cdc25.A1(time) first_order_rate_constant; real Cdc25.A2(time) first_order_rate_constant; real Cdc25.A3 dimensionless; real Cdc25.A4 dimensionless; real k_25p first_order_rate_constant; k_25p=0.01; real k_25pp first_order_rate_constant; k_25pp=5; // // actCycA:time=((k_sap+k_sapp*TF_E)*mass+(V_di+k_dia)*Tri_A-(V_da+k_asa*freeCKI)*actCycA); // actCycB:time=(V_sb*mass+V_25*(CycB-(Tri_B+actCycB))+(k_dib+V_di)*(CycB-(preMPF+actCycB))-(V_db+V_wee+k_asb*freeCKI)*actCycB); // actCycE:time=((k_sep+k_sepp*TF_E)*mass+(V_di+k_die)*Tri_E-(V_de+k_ase*freeCKI)*actCycE); // CycA:time=((k_sap+k_sapp*TF_E)*mass-V_da*CycA); // CycB:time=(V_sb*mass-V_db*CycB); // CycE:time=((k_sep+k_sepp*TF_E)*mass-V_de*CycE); // CycD=(CycD_0*mass); // Cdc20_A:time=(k_a20*APCP*(Cdc20_T-Cdc20_A)/(J_a20+Cdc20_T-Cdc20_A)-(k_i20/(J_i20+Cdc20_A)+k_d20)*Cdc20_A); // Cdc20_T:time=((k_s20p+k_s20pp*actCycB^n)/(J_20^n+actCycB^n)-k_d20*Cdc20_T); // APCP:time=(k_aAPC*actCycB*(1-APCP)/(J_aAPC+1-APCP)-k_iAPC*APCP/(J_iAPC+APCP)); // Tri_A=(CycA-actCycA); // Tri_E=(CycE-actCycE); // freeCKI=(CKI-(Tri_B+Tri_A+Tri_E)); // Cdh1:time=((k_ah1p+k_ah1pp*Cdc14)*(1-Cdh1)/(J_ah1+1-Cdh1)-(k_ih1p+k_ih1pp*actCycA+k_ih1ppp*actCycB+k_ih1pppp*actCycE+k_ih1ppppp*CycD)*Cdh1/(J_ih1+Cdh1)); // mass:time=(mu*mass*(1-mass/maxmass)); // V_atf=(k_atfp+k_atfpp*actCycA+k_atfppp*actCycE+k_atfpppp*CycD); // TF_E.A1=V_atf; TF_E.A2=(k_itfp+k_itfpp*actCycB+k_itfppp*actCycA); TF_E.A3=J_atf; TF_E.A4=J_itf; TF_E=(2*TF_E.A4*TF_E.A1/(TF_E.A2+(-1)*TF_E.A1+TF_E.A3*TF_E.A2+TF_E.A4*TF_E.A1+sqrt((TF_E.A2+(-1)*TF_E.A1+TF_E.A3*TF_E.A2+TF_E.A4*TF_E.A1)^2-4*(TF_E.A2-TF_E.A1)*TF_E.A4*TF_E.A1))); // V_de=(k_dep+k_depp*actCycE+k_deppp*actCycA+k_depppp*actCycB); // V_da=(k_dap+k_dapp*Cdc20_A+k_dappp*Cdc20_T); // TF_I.A1=(k_afi*Cdc14); TF_I.A2=(k_ifip+k_ifipp*actCycB); TF_I.A3=J_afi; TF_I.A4=J_ifi; Cdc14=Cdc20_A; TF_I=(2*TF_I.A4*TF_I.A1/(TF_I.A2+(-1)*TF_I.A1+TF_I.A3*TF_I.A2+TF_I.A4*TF_I.A1+sqrt((TF_I.A2+(-1)*TF_I.A1+TF_I.A3*TF_I.A2+TF_I.A4*TF_I.A1)^2-4*(TF_I.A2-TF_I.A1)*TF_I.A4*TF_I.A1))); // V_si=(k_sip+k_sipp*TF_I); // V_di=((k_dip+k_dipp*actCycA+k_dippp*actCycB+k_dipppp*actCycE+k_dippppp*CycD)/(1+Cdc14/J_14di)); // preMPF:time=(V_wee*(CycB-preMPF)-(V_25+V_db)*preMPF); // Tri_B:time=(k_asb*(CycB-Tri_B)*freeCKI-(k_dib+V_db+V_di)*Tri_B); // CKI:time=(V_si-V_di*CKI); // TF_B.A1=(k_afb*actCycB); TF_B.A2=k_ifb; TF_B.A3=J_afb; TF_B.A4=J_ifb; TF_B=(2*TF_B.A4*TF_B.A1/(TF_B.A2+(-1)*TF_B.A1+TF_B.A3*TF_B.A2+TF_B.A4*TF_B.A1+sqrt((TF_B.A2+(-1)*TF_B.A1+TF_B.A3*TF_B.A2+TF_B.A4*TF_B.A1)^2-4*(TF_B.A2-TF_B.A1)*TF_B.A4*TF_B.A1))); // V_sb=(k_sbp+k_sbpp*TF_B); // V_db=(k_dbp+k_dbpp*Cdh1+k_dbppp*Cdc20_A); // Wee1.A1=(k_aweep+k_aweepp*Cdc14); Wee1.A2=(k_iwee*actCycB); Wee1.A3=J_awee; Wee1.A4=J_iwee; Wee1=(2*Wee1.A4*Wee1.A1/(Wee1.A2+(-1)*Wee1.A1+Wee1.A3*Wee1.A2+Wee1.A4*Wee1.A1+sqrt((Wee1.A2+(-1)*Wee1.A1+Wee1.A3*Wee1.A2+Wee1.A4*Wee1.A1)^2-4*(Wee1.A2-Wee1.A1)*Wee1.A4*Wee1.A1))); // V_wee=(k_weep+k_weepp*Wee1); // Cdc25.A1=(k_a25*actCycB); Cdc25.A2=(k_i25p+k_i25pp*Cdc14); Cdc25.A3=J_a25; Cdc25.A4=J_i25; Cdc25=(2*Cdc25.A4*Cdc25.A1/(Cdc25.A2+(-1)*Cdc25.A1+Cdc25.A3*Cdc25.A2+Cdc25.A4*Cdc25.A1+sqrt((Cdc25.A2+(-1)*Cdc25.A1+Cdc25.A3*Cdc25.A2+Cdc25.A4*Cdc25.A1)^2-4*(Cdc25.A2-Cdc25.A1)*Cdc25.A4*Cdc25.A1))); // V_25=(k_25p+k_25pp*Cdc25); // }