Mitotic Exit (Vinod 2011)

This notebook shows Tellurium's syntax for editing SBO terms encoded in a model. The model here was obtained from BIOMD0000000370.

References:

Vinod, P. K., Freire, P., Rattani, A., Ciliberto, A., Uhlmann, F., & Novak, B. (2011). Computational modelling of mitotic exit in budding yeast: the role of separase and Cdc14 endocycles. Journal of The Royal Society Interface, 8(61), 1128-1141.


In [1]:
// Created by libAntimony v2.9.3
model *vinod2011()

  // Compartments and Species:
  compartment cell_1;
  species $Clb2T_1 in cell_1, $Mcm_1 in cell_1, $Clb5T_1 in cell_1, $MBF_1 in cell_1;
  species $Cln_1 in cell_1, $Cdc20_1 in cell_1, $Cdh1_1 in cell_1, $Sic1T_1 in cell_1;
  species $Swi5_1 in cell_1, $Trim2_1 in cell_1, $Clb2_2 in cell_1, $Sic1_1 in cell_1;
  species $Trim5_1 in cell_1, $Clb5_1 in cell_1, $Pds1T_1 in cell_1, $Esp1T_1 in cell_1;
  species $PoloT_1 in cell_1, $Polo_1 in cell_1, $Net1dep_1 in cell_1, $Net1pp_1 in cell_1;
  species $RENT_1 in cell_1, $Cdc14n_1 in cell_1, $RENTp_1 in cell_1, $Cdc14c_1 in cell_1;
  species $Tem1_1 in cell_1, $Esp1_1 in cell_1, $Cdc15_1 in cell_1, $MEN_1 in cell_1;
  species $Pds1_1 in cell_1, $Esp1b_1 in cell_1, Net1p_1 in cell_1, $Net1_2 in cell_1;

  // Assignment Rules:
  V2_1 := kdclb2_1 + kdclb2_2*Cdc20_1 + kdclb2_3*Cdh1_1;
  V6_1 := kdclb5_1 + kdclb5_2*Cdc20_1;
  Vacdh_1 := kdcdh_1*Cdc14n_1 + kdcdh_2*Cdc14c_1;
  Vicdh_1 := kpcdh_1 + kpcdh_2*Clb2_2 + kpcdh_3*Clb5_1;
  Vdsic_1 := kdsic_3 + kdsic_1*Clb5_1 + kdsic_2*Clb2_2 + kdsic_4*Cln_1;
  Clb2_2 := Clb2T_1 + Clb2nd_1 - Trim2_1;
  Sic1_1 := Sic1T_1 - Trim2_1 - Trim5_1;
  Clb5_1 := Clb5T_1 - Trim5_1;
  Vaswi_1 := kaswi_1*Cdc14n_1 + kaswi_2*Cdc14c_1;
  Viswi_1 := kiswi_1 + kiswi_2*Clb2_2 + kiswi_3*Clb5_1;
  Vd_1 := (kd_2*PP_1 + kd_1*Cdc14n_1)/(Jnet_1 + Net1T_1 - Net1dep_1);
  Vp_1 := (kp_3*Clb2_2 + kp_4*MEN_1)/(Jnet_1 + Net1dep_1);
  Vexp_1 := kexp_1 + kexp_2*MEN_1;
  Cdc14c_1 := Cdc14T_1 - Cdc14n_1 - RENT_1;
  Esp1_1 := Esp1T_1 - Esp1b_1;
  Pds1_1 := Pds1T_1 - Esp1b_1;
  Net1_2 := Net1T_1 - Net1p_1 - RENT_1 - Net1pp_1;
  PP_1 := PPT_1*((1 + kpp_1*ki_1*Esp1_1)/(1 + ki_1 + Esp1_1));

  // Rate Rules:
  Clb2T_1' = ksclb2_1 + ksclb2_2*Mcm_1 - V2_1*Clb2T_1;
  Mcm_1' = (ksmcm_3 + ksmcm_1*Clb2_2)*(1 - Mcm_1)/(Jmcm_1 + 1 - Mcm_1) - kdmcm_1*Mcm_1/(Jmcm_1 + Mcm_1);
  Clb5T_1' = ksclb5_2 + ksclb5_1*MBF_1 - V6_1*Clb5T_1;
  MBF_1' = kambf_1*(1 - MBF_1)/(Jmbf_1 + 1 - MBF_1) - (kimbf_1*Clb2_2 + kimbf_3*Clb5_1)*MBF_1/(Jmbf_1 + MBF_1);
  Cln_1' = kscln_2 + kscln_1*MBF_1 - kdcln_1*Cln_1;
  Cdc20_1' = ks20_2 + ks20_1*Mcm_1 - (kd20_1 + kd20_2*Cdh1_1)*Cdc20_1;
  Cdh1_1' = Vacdh_1*(1 - Cdh1_1)/(Jcdh_1 + 1 - Cdh1_1) - Vicdh_1*Cdh1_1/(Jcdh_1 + Cdh1_1);
  Sic1T_1' = kssic_2 + kssic_1*Swi5_1 - Vdsic_1*Sic1T_1;
  Swi5_1' = Vaswi_1*(Swi5T_1 - Swi5_1)/(Jswi_1 + Swi5T_1 - Swi5_1) - Viswi_1*Swi5_1/(Jswi_1 + Swi5_1);
  Trim2_1' = kasic2_1*Clb2_2*Sic1_1 - (kdsic2_1 + V2_1 + Vdsic_1)*Trim2_1;
  Trim5_1' = kasic5_1*Clb5_1*Sic1_1 - (kdsic5_1 + V6_1 + Vdsic_1)*Trim5_1;
  Pds1T_1' = kspds_2 + kspds_1*MBF_1 - (kdpds_1 + kdpds_2*Cdc20_1)*Pds1T_1;
  Esp1T_1' = ksesp_1 - kdesp_1*Esp1T_1;
  PoloT_1' = kspolo_2 + kspolo_1*Mcm_1 - (kdpolo_1 + kdpolo_2*Cdh1_1)*PoloT_1;
  Polo_1' = (kapolo_1 + kapolo_2*Clb2_2)*(PoloT_1 - Polo_1)/(Jpolo_1 + PoloT_1 - Polo_1) - kipolo_1*Polo_1/(Jpolo_1 + Polo_1) - (kdpolo_1 + kdpolo_2*Cdh1_1)*Polo_1;
  Net1dep_1' = Vd_1*(Net1T_1 - Net1dep_1) - Vp_1*Net1dep_1;
  Net1pp_1' = kp_1*Polo_1*(Net1T_1 - Net1dep_1 - Net1pp_1) - Vd_1*Net1pp_1;
  RENT_1' = lanet_1*(Net1T_1 - Net1pp_1 - RENT_1)*Cdc14n_1 - ldnet_1*RENT_1 - kp_1*Polo_1*RENTp_1;
  Cdc14n_1' = ((kp_1*Polo_1*RENTp_1 - lanet_1*(Net1T_1 - Net1pp_1 - RENT_1)*Cdc14n_1) + ldnet_1*RENT_1 - Vexp_1*Cdc14n_1) + kimp_1*Cdc14c_1;
  RENTp_1' = (Vp_1*(RENT_1 - RENTp_1) - Vd_1*RENTp_1) + lanet_1*(Net1T_1 - Net1dep_1 - Net1pp_1 - RENTp_1)*Cdc14n_1 - ldnet_1*RENTp_1 - kp_1*Polo_1*RENTp_1;
  Tem1_1' = (katem_1 + katem_2*Polo_1)*(1 - Tem1_1)/(Jtem1_1 + 1 - Tem1_1) - ((kitem_3 + kitem_2/(1 + kitem_1*Esp1_1))/(Jtem1_1 + Tem1_1))*Tem1_1;
  Cdc15_1' = (kac15_1 + kac15_2*Cdc14c_1)*(1 - Cdc15_1)/(Jcdc15_1 + 1 - Cdc15_1) - (kic15_1 + kic15_2*Clb2_2)*Cdc15_1/(Jcdc15_1 + Cdc15_1);
  MEN_1' = lamen_1*(Tem1_1 - MEN_1)*(Cdc15_1 - MEN_1) - ldmen_1*MEN_1 - ((kitem_3 + kitem_2/(1 + kitem_3*Esp1_1))/(Jtem1_1 + Tem1_1))*MEN_1 - ((kic15_1 + kic15_2*Clb2_2)/(Jcdc15_1 + Cdc15_1))*MEN_1;
  Esp1b_1' = lapds_1*Pds1_1*Esp1_1 - (ldpds_1 + kdesp_1 + kdpds_1 + kdpds_2*Cdc20_1)*Esp1b_1;

  // Species initializations:
  Clb2T_1 = 0.999107;
  Mcm_1 = 0.996743;
  Clb5T_1 = 0.201977;
  MBF_1 = 0.001977;
  Cln_1 = 0.04079;
  Cdc20_1 = 0;
  Cdh1_1 = 0;
  Sic1T_1 = 0.001683;
  Swi5_1 = 0;
  Trim2_1 = 0.00145;
  Trim5_1 = 0;
  Pds1T_1 = 0.601977;
  Esp1T_1 = 0.25;
  PoloT_1 = 1;
  Polo_1 = 1;
  Net1dep_1 = 0.0119;
  Net1pp_1 = 0.0119;
  RENT_1 = 0.483;
  Cdc14n_1 = 0.00214;
  RENTp_1 = 0.014;
  Tem1_1 = 1;
  Cdc15_1 = 0.933;
  MEN_1 = 0;
  Esp1b_1 = 0.24857;
  Net1p_1 = 0.013;

  // Compartment initializations:
  cell_1 = 1;

  // Variable initializations:
  ksclb2_1 = 0.015;
  ksclb2_2 = 0.005;
  ksclb5_2 = 0.002;
  ksclb5_1 = 0.01;
  kscln_2 = 0.01;
  kscln_1 = 0.1;
  kdcln_1 = 0.25;
  ks20_2 = 0.001;
  ks20_1 = 0.05;
  kd20_1 = 0.1;
  kd20_2 = 1;
  Jcdh_1 = 0.01;
  kssic_2 = 0.004;
  kssic_1 = 0.2;
  kasic2_1 = 40;
  kdsic2_1 = 0.1;
  kasic5_1 = 10;
  kdsic5_1 = 0.1;
  Swi5T_1 = 1;
  Jswi_1 = 0.1;
  ksmcm_3 = 0.01;
  ksmcm_1 = 1;
  Jmcm_1 = 0.01;
  kdmcm_1 = 0.25;
  kambf_1 = 0.1;
  Jmbf_1 = 0.01;
  kimbf_1 = 0.5;
  kimbf_3 = 0.5;
  kspds_2 = 0.006;
  kspds_1 = 0.01;
  kdpds_1 = 0.01;
  kdpds_2 = 2;
  ksesp_1 = 0.001;
  kdesp_1 = 0.004;
  kspolo_2 = 0.001;
  kspolo_1 = 0.05;
  kdpolo_1 = 0.05;
  kdpolo_2 = 0.5;
  kapolo_1 = 0;
  kapolo_2 = 1;
  Jpolo_1 = 0.1;
  kipolo_1 = 0.1;
  Net1T_1 = 1;
  kp_1 = 2;
  lanet_1 = 500;
  ldnet_1 = 1;
  kimp_1 = 1;
  katem_1 = 0;
  katem_2 = 0.6;
  Jtem1_1 = 0.005;
  kitem_3 = 0.1;
  kitem_2 = 1;
  kitem_1 = 20;
  kac15_1 = 0.03;
  kac15_2 = 0.5;
  Jcdc15_1 = 1;
  kic15_1 = 0.03;
  kic15_2 = 0.2;
  lamen_1 = 100;
  ldmen_1 = 0.1;
  Clb2nd_1 = 0;
  lapds_1 = 500;
  ldpds_1 = 1;
  Cdc14T_1 = 0.5;
  PPT_1 = 1;
  kpp_1 = 0.1;
  ki_1 = 40;
  kdclb2_1 = 0.02;
  kdclb2_2 = 0.1;
  kdclb2_3 = 0.4;
  kdclb5_1 = 0.01;
  kdclb5_2 = 1;
  kdsic_3 = 0.04;
  kdsic_1 = 2;
  kdsic_2 = 2;
  kdsic_4 = 1.5;
  kdcdh_1 = 0.03;
  kdcdh_2 = 0.3;
  kpcdh_1 = 0.001;
  kpcdh_2 = 0.04;
  kpcdh_3 = 0.75;
  kaswi_1 = 0.2;
  kaswi_2 = 1;
  kiswi_1 = 0.01;
  kiswi_2 = 0.5;
  kiswi_3 = 0.75;
  kd_2 = 0.45;
  kd_1 = 0.1;
  Jnet_1 = 0.05;
  kp_3 = 0.2;
  kp_4 = 3;
  kexp_1 = 0.01;
  kexp_2 = 20;
  kimbf_2 = 0;

  // Other declarations:
  var V2_1, V6_1, Vacdh_1, Vicdh_1, Vdsic_1, Vaswi_1, Viswi_1, Vd_1, Vp_1;
  var Vexp_1, lamen_1, PP_1;
  const cell_1, ksclb2_1, ksclb2_2, ksclb5_2, ksclb5_1, kscln_2, kscln_1;
  const kdcln_1, ks20_2, ks20_1, kd20_1, kd20_2, Jcdh_1, kssic_2, kssic_1;
  const kasic2_1, kdsic2_1, kasic5_1, kdsic5_1, Swi5T_1, Jswi_1, ksmcm_3;
  const ksmcm_1, Jmcm_1, kdmcm_1, kambf_1, Jmbf_1, kimbf_1, kimbf_3, kspds_2;
  const kspds_1, kdpds_1, kdpds_2, ksesp_1, kdesp_1, kspolo_2, kspolo_1, kdpolo_1;
  const kdpolo_2, kapolo_1, kapolo_2, Jpolo_1, kipolo_1, Net1T_1, kp_1, lanet_1;
  const ldnet_1, kimp_1, katem_1, katem_2, Jtem1_1, kitem_3, kitem_2, kitem_1;
  const kac15_1, kac15_2, Jcdc15_1, kic15_1, kic15_2, ldmen_1, Clb2nd_1, lapds_1;
  const ldpds_1, Cdc14T_1, PPT_1, kpp_1, ki_1, kdclb2_1, kdclb2_2, kdclb2_3;
  const kdclb5_1, kdclb5_2, kdsic_3, kdsic_1, kdsic_2, kdsic_4, kdcdh_1, kdcdh_2;
  const kpcdh_1, kpcdh_2, kpcdh_3, kaswi_1, kaswi_2, kiswi_1, kiswi_2, kiswi_3;
  const kd_2, kd_1, Jnet_1, kp_3, kp_4, kexp_1, kexp_2, kimbf_2;

  // Unit definitions:
  unit area_1 = metre^2;
  unit length_1 = metre;
  unit substance_1 = mole;
  unit time_1 = second;
  unit volume_1 = litre;

  // Display Names:
  area_1 is "area";
  length_1 is "length";
  substance_1 is "substance";
  time_1 is "time";
  volume_1 is "volume";
  cell_1 is "cell";
  Clb2T_1 is "Clb2T";
  ksclb2_1 is "ksclb2";
  ksclb2_2 is "ksclb2'";
  Mcm_1 is "Mcm";
  V2_1 is "V2";
  Clb5T_1 is "Clb5T";
  ksclb5_2 is "ksclb5";
  ksclb5_1 is "ksclb5'";
  MBF_1 is "MBF";
  V6_1 is "V6";
  Cln_1 is "Cln";
  kscln_2 is "kscln";
  kscln_1 is "kscln'";
  kdcln_1 is "kdcln";
  Cdc20_1 is "Cdc20";
  ks20_2 is "ks20";
  ks20_1 is "ks20'";
  kd20_1 is "kd20";
  kd20_2 is "kd20'";
  Cdh1_1 is "Cdh1";
  Vacdh_1 is "Vacdh";
  Jcdh_1 is "Jcdh";
  Vicdh_1 is "Vicdh";
  Sic1T_1 is "Sic1T";
  kssic_2 is "kssic";
  kssic_1 is "kssic'";
  Swi5_1 is "Swi5";
  Vdsic_1 is "Vdsic";
  Trim2_1 is "Trim2";
  kasic2_1 is "kasic2";
  Clb2_2 is "Clb2";
  Sic1_1 is "Sic1";
  kdsic2_1 is "kdsic2";
  Trim5_1 is "Trim5";
  kasic5_1 is "kasic5";
  Clb5_1 is "Clb5";
  kdsic5_1 is "kdsic5";
  Vaswi_1 is "Vaswi";
  Swi5T_1 is "Swi5T";
  Jswi_1 is "Jswi";
  Viswi_1 is "Viswi";
  ksmcm_3 is "ksmcm";
  ksmcm_1 is "ksmcm'";
  Jmcm_1 is "Jmcm";
  kdmcm_1 is "kdmcm";
  kambf_1 is "kambf";
  Jmbf_1 is "Jmbf";
  kimbf_1 is "kimbf'";
  kimbf_3 is "kimbf''";
  Pds1T_1 is "Pds1T";
  kspds_2 is "kspds";
  kspds_1 is "kspds'";
  kdpds_1 is "kdpds";
  kdpds_2 is "kdpds'";
  Esp1T_1 is "Esp1T";
  ksesp_1 is "ksesp";
  kdesp_1 is "kdesp";
  PoloT_1 is "PoloT";
  kspolo_2 is "kspolo";
  kspolo_1 is "kspolo'";
  kdpolo_1 is "kdpolo";
  kdpolo_2 is "kdpolo'";
  Polo_1 is "Polo";
  kapolo_1 is "kapolo";
  kapolo_2 is "kapolo'";
  Jpolo_1 is "Jpolo";
  kipolo_1 is "kipolo";
  Net1dep_1 is "Net1dep";
  Vd_1 is "Vd";
  Net1T_1 is "Net1T";
  Vp_1 is "Vp";
  Net1pp_1 is "Net1pp";
  kp_1 is "kp'";
  RENT_1 is "RENT";
  lanet_1 is "lanet";
  Cdc14n_1 is "Cdc14n";
  ldnet_1 is "ldnet";
  RENTp_1 is "RENTp";
  Vexp_1 is "Vexp";
  kimp_1 is "kimp";
  Cdc14c_1 is "Cdc14c";
  Tem1_1 is "Tem1";
  katem_1 is "katem";
  katem_2 is "katem'";
  Jtem1_1 is "Jtem1";
  kitem_3 is "kitem";
  kitem_2 is "kitem'";
  kitem_1 is "kitem''";
  Esp1_1 is "Esp1";
  Cdc15_1 is "Cdc15";
  kac15_1 is "kac15";
  kac15_2 is "kac15'";
  Jcdc15_1 is "Jcdc15";
  kic15_1 is "kic15";
  kic15_2 is "kic15'";
  MEN_1 is "MEN";
  lamen_1 is "lamen";
  ldmen_1 is "ldmen";
  Clb2nd_1 is "Clb2nd";
  Pds1_1 is "Pds1";
  Esp1b_1 is "Esp1b";
  lapds_1 is "lapds";
  ldpds_1 is "ldpds";
  Net1p_1 is "Net1p";
  Net1_2 is "Net1";
  Cdc14T_1 is "Cdc14T";
  PP_1 is "PP";
  PPT_1 is "PPT";
  kpp_1 is "kpp";
  ki_1 is "ki";
  kdclb2_1 is "kdclb2";
  kdclb2_2 is "kdclb2'";
  kdclb2_3 is "kdclb2''";
  kdclb5_1 is "kdclb5";
  kdclb5_2 is "kdclb5'";
  kdsic_3 is "kdsic";
  kdsic_1 is "kdsic'";
  kdsic_2 is "kdsic"";
  kdsic_4 is "kdsic'''";
  kdcdh_1 is "kdcdh";
  kdcdh_2 is "kdcdh'";
  kpcdh_1 is "kpcdh";
  kpcdh_2 is "kpcdh'";
  kpcdh_3 is "kpcdh''";
  kaswi_1 is "kaswi";
  kaswi_2 is "kaswi'";
  kiswi_1 is "kiswi";
  kiswi_2 is "kiswi'";
  kiswi_3 is "kiswi''";
  kd_2 is "kd";
  kd_1 is "kd'";
  Jnet_1 is "Jnet";
  kp_3 is "kp''";
  kp_4 is "kp'''";
  kexp_1 is "kexp";
  kexp_2 is "kexp'";
  kimbf_2 is "kimbf";

  // SBO terms:
  // - Compartment SBO Terms:
  cell_1.sboTerm = SBO:0000290;
  // - Species SBO Terms:
  Clb2T_1.sboTerm = SBO:0000252;
  Clb5T_1.sboTerm = SBO:0000252;
  Cln_1.sboTerm = SBO:0000252;
  Cdc20_1.sboTerm = SBO:0000252;
  Cdh1_1.sboTerm = SBO:0000252;
  Sic1T_1.sboTerm = SBO:0000252;
  Trim2_1.sboTerm = SBO:0000297;
  Trim5_1.sboTerm = SBO:0000297;
  Swi5_1.sboTerm = SBO:0000252;
  Mcm_1.sboTerm = SBO:0000297;
  MBF_1.sboTerm = SBO:0000252;
  Pds1T_1.sboTerm = SBO:0000252;
  Esp1T_1.sboTerm = SBO:0000252;
  PoloT_1.sboTerm = SBO:0000252;
  Polo_1.sboTerm = SBO:0000252;
  Net1dep_1.sboTerm = SBO:0000252;
  Net1pp_1.sboTerm = SBO:0000252;
  RENT_1.sboTerm = SBO:0000297;
  RENTp_1.sboTerm = SBO:0000297;
  Cdc14n_1.sboTerm = SBO:0000252;
  Tem1_1.sboTerm = SBO:0000252;
  Cdc15_1.sboTerm = SBO:0000252;
  MEN_1.sboTerm = SBO:0000297;
  Clb2_2.sboTerm = SBO:0000252;
  Clb5_1.sboTerm = SBO:0000252;
  Sic1_1.sboTerm = SBO:0000252;
  Pds1_1.sboTerm = SBO:0000252;
  Esp1b_1.sboTerm = SBO:0000252;
  Esp1_1.sboTerm = SBO:0000252;
  Net1p_1.sboTerm = SBO:0000252;
  Net1_2.sboTerm = SBO:0000252;
  Cdc14c_1.sboTerm = SBO:0000252;
end

// Models
model1 = model "vinod2011"

// Simulations
sim1 = simulate uniform(0, 120, 500)

// Tasks
task1 = run sim1 on model1

// Outputs
plot "Cdc20 Block and Release Experiments (Vinod, 2011)" time vs Clb2T_1, Clb5T_1, Cdc20_1, Pds1T_1