Goldbeter - Koshland loop - RuleBase

Goldbeter - Koshland loop

Author: Russ Harmer
tags: exercises

This model extends the simple enzyme-substrate model. Read the classic paper by Goldbeter and Koshland for a detailed analysis.

We still have a single substrate agent S but now have two different enzyme agents, K and P, one catalyzing the state change of the substrate from 0 to 1, the other doing the reverse.

Try running the system with 5000 S agents, all initially in state 0, with 50 Ks and 100 Ps. What is the steady state of S in state 1, i.e. S(s~1?) ? How long does it take to get there?

Try varying the number of Ks, keeping P constant. For example, reduce K to 10, increase it to 200 and then 1000. How does this affect the steady state? Do a few more cases and plot a rough dose-response curve.

In cases where there are very few Ks, you might want to rescale the system by modifying the variable rescale to 10 (say); this increases the size of the system 10-fold, while preserving the dynamics, thus minimizing stochastic fluctuations. This is a very useful general trick which can also be used to make a rough, but quick, simulation of a big system: to do this, change rescale to (say) 0.1 which decreases the system 10-fold at the cost of increasing stochastic fluctuations.

What happens if, instead, the number of Ss is similar to the number of Ks and Ps?

Download View code
%agent: K(s)
%agent: P(s)
%agent: S(s~0~1)

%var: 'fast' 10
%var: 'medium' 1
%var: 'slow' 0.1
%var: 'BND' 0.00001
%var: 'BRK' 0.1
%var: 'MOD' 0.1

K(s), S(s~0) -> K(s!0), S(s~0!0) @ 'BND'*'fast'/'rescale'
K(s!0), S(s!0) -> K(s), S(s) @ 'BRK'
K(s!1), S(s~0!1) -> K(s!1), S(s~1!1) @ 'MOD'

P(s), S(s~1) -> P(s!0), S(s~1!0) @ 'BND'*'fast'/'rescale'
P(s!0), S(s!0) -> P(s), S(s) @ 'BRK'
P(s!1), S(s~1!1) -> P(s!1), S(s~0!1) @ 'MOD'

%var: 'rescale' 1
%var: 'numk' 50 * 'rescale'
%var: 'nump' 100 * 'rescale'
%var: 'nums' 5000 * 'rescale'

%init: 'numk' K(s)
%init: 'nump' P(s)
%init: 'nums' S(s~0)

%var: 'numS1' S(s~1?)
%obs: 'S1' 'numS1' / 'rescale'