<<mathsbml.m

MathSBML 2.2.1-beta-17 (25-Feb-2004) loaded 27-February-2004 22:00:46.515673

Mitotic Oscillator

Based on the two-variable model in
Tyson, J.J. (1991) Modeling the cell division cycle: cdc2 and cyclin interactions. Proc. Natl. Acad. Sci., USA, 88:7328-7332

Create a Model without the event with the Model Builder

newModel[id "MO", name "Mitotic Oscillator with Events [Tyson 1 ... 4; 0.018}] ; m = loadSimulator[] ; s = SBMLNDSolve[m, 500] ; SBMLPlot[s, PlotRange All] ;

>>Warning: The following variable(s) do(es) not have differential equations: void[t]; the following odes have been added to the system: void'[t] == 0

[Graphics:HTMLFiles/MO-nb_5.gif]

The model has two variables; we will treat the "spikey" variable u as a variable that must pass a threshold for the cell to divide

SBMLPlot[s, {MO`u, MO`z}, {0, 100}]

[Graphics:HTMLFiles/MO-nb_7.gif]

⁃Graphics⁃

ParametricPlot[Evaluate[{MO`u[t], MO`z[t]}/.s], {t, 0, 100}, AxesLabel {"u", "z"}] ;

[Graphics:HTMLFiles/MO-nb_10.gif]

Solve for fixed point of the system

q = loadSimulator[context None] ;

odes = SBMLODES/.q

{u^′[t]  -1. u[t] + 180. (0.0001 + u[t]^2) z[t], z^′[t] 0.015 - 180. (0.0001 + u[t]^2) z[t]}

{z0, u0} = Flatten[{z[t], u[t]}/.(Solve[(#0&)/@Last/@odes, {u[t], z[t]}])]

{0.25641, 0.015}

Find the Jacobian

{f, g} = Last/@(odes/.{u[t]  u, z[t]  z})

{-1. u + 180. (0.0001 + u^2) z, 0.015 - 180. (0.0001 + u^2) z}

J = (D[f, u]   D[f, z]) ; MatrixForm[J]       D[g, u]   D[g, z]

(                                                                                      ...      -360.` u z                                      -180.` (0.00009999999999999999` + u )

Find the eigenvalues of the Jacobian

eigenvalues = Solve[Det[J - λ I] 0, λ]//Flatten

{λ (-0.018 - 180. u^2 + 0. u z + 0. u^3 z)/((0. + 1.036 ) + (0. + 360. ) u^2 - (0. + 720. ) u z)}

The eigenvalues at the fixed point are purely imaginary

eigenvalues/.{u u0, z z0}

{λ0. - 0.0354067 }

Examine the Fixed point as a function of the parameters

Create model without values for the parameters and then solve for fixed point as a function of the parameter names

newModel[id "MO", name "Mitotic Oscillator with Events [Tyson 1 ... 2754; k4 * z * (k4prime/k4 + u^2)] ; q = loadSimulator[context None] ; odes = SBMLODES/.q

{u^′[t]  -k6 u[t] + k4 (k4prime/k4 + u[t]^2) z[t], z^′[t] k - k4 (k4prime/k4 + u[t]^2) z[t]}

fixedPoint = Solve[(#0&)/@Last/@odes, {u[t], z[t]}]

{{z[t]  (k k6^2)/(k^2 k4 + k4prime k6^2), u[t] k/k6}}

Fixed Point

{z0, u0} = Flatten[{z[t], u[t]}/.fixedPoint]

{(k k6^2)/(k^2 k4 + k4prime k6^2), k/k6}

{f, g} = Last/@(odes/.{u[t]  u, z[t]  z})

{-k6 u + k4 (k4prime/k4 + u^2) z, k - k4 (k4prime/k4 + u^2) z}

Calculate Jacobian

J = (D[f, u]   D[f, z]) ; MatrixForm[J]       D[g, u]   D[g, z]

(                          k4prime    2   )                                k4  ... me    2                                -k4 (------- + u )           -2 k4 u z                   k4

Find the eigenvalues of the Jacobian

eigenvalues = Solve[Det[J - λ I] 0, λ]//Flatten

{λ ( (k4prime k6 + k4 k6 u^2))/(2 k4prime + k6 + 2 k4 u^2 - 4 k4 u z)}

Find a formula for the eigenvalues at the fixed point as a function of the parameters

eigenvalues/.{u u0, z z0}//Simplify

{λ ( k6 (k^2 k4 + k4prime k6^2)^2)/(2 k^4 k4^2 + k^2 k4 (4 k4prime - 3 k6) k6^2 + k4prime k6^4 (2 k4prime + k6))}

Add cell division to the model - add mass that divides on a threshold

mass grows exponentially;

event: if mass > threshold AND protein u > threshold, divide cell in half: mass -> mass/2

newModel[id "MO", name "Mitotic Oscillator with Events [Tyson 1 ... 0.175)), eventAssignment {cellmass cellmass/2}] ; createModel["MO.xml"]

MO.xml

Load the model into the simulate and run a simulation

m = loadSimulator[] ; s = SBMLNDSolve[m, 500]

>>Warning: The following variable(s) do(es) not have differential equations: void[t]; the following odes have been added to the system: void'[t] == 0

{InterpolationSet[0, 34.2473, {MO`u[t] InterpolatingFunction[{{0., 34.2588}}, <> ... 0.}}, <>][t], MO`cellmass[t] InterpolatingFunction[{{497.02, 500.}}, <>][t]}]}

SBMLPlot[s]

[Graphics:HTMLFiles/MO-nb_44.gif]

⁃Graphics⁃

SBMLWrite[inputfile "MO.xml", outputfile "MO.html", format "HTML"]

MO.html


Created by Mathematica  (February 27, 2004)