Toy-jim.bngl

From BioNetWiki

Jump to: navigation, search
# The model consists of a monovalent extracellular ligand, 
# a monovalent cell-surface receptor, a bivalent cytosolic adapter protein, 
# and a cytosolic kinase.  The receptor dimerizes through a 
# receptor-receptor interaction that depends on ligand binding.  
# The adapter binds the receptor and the kinase.  
# When two kinases are juxtaposed through binding to 
# receptor-associated adapter proteins, one of the kinases can 
# transphosphorylate the second kinase. 

version("2.0.23");

begin parameters
L_tot 	1
R_tot   1
A_tot 	1
K_tot	1

kpL 	0.1
kmL 	0.1
# kpD and kmD were divided by two from their values in toy.in
# give the right symmetry factor.
kpD 	1.0
kmD 	0.1
kpA 	0.1
kmA 	0.1
kpK 	0.1
kmK 	0.1
pK  	 1
pKs	10
dM       1
dC	10
end parameters


begin species
L(r)	         0 # Set to zero for equilibration	
# r binds to l of R

R(l,r,a)         R_tot 
# l binds to r of L
# r binds to r of R

A(r,k)	         A_tot
# r binds to a of R
# k binds to a of K

K(a,Y~U)         K_tot	
# a binds to k of A
# Y is phosphorylation site that is either unphosphorylated (U) or
#   phosphorylated (P)

Null 0
end species

begin reaction rules
# Ligand binding (L+R)
# Note: specifying r in R here means that the r component must not 
#       be bound.  This prevents dissociation of ligand from R
#       when R is in a dimer.
1  L(r) + R(l,r) <-> L(r!1).R(l!1,r) kpL kmL

# Aggregation (R+R)
# Note:  R must be bound to ligand to dimerize.
2  L(r!1).R(l!1,r) + L(r!1).R(l!1,r) <-> L(r!1).R(l!1,r!3).L(r!2).R(l!2,r!3) kpD,kmD

# Receptor binding to adaptor (R+A)
# Note: A and R can bind independent of whether A is bound to K or 
#       whether R is in a dimer.
3  A(r) + R(a) <-> A(r!1).R(a!1) kpA,kmA

# Adaptor binding kinase 
# Note: Doesn't depend on phosphorylation state of K or whether A is bound to
#       receptor, i.e. binding rate is same whether A is on membrane (bound to
#        R) or in cytosol.
4  A(k) + K(a) <-> A(k!1).K(a!1) kpK,kmK

# Kinase transphosphorylation by inactive kinase
# Note: Rule doesn't specify how two K's are associated
5  K(Y~U).K(Y~U) -> K(Y~U).K(Y~P) pK

# Kinase transphosphorylation by active kinase
# Note: Rule doesn't specify how two K's are associated
6  K(Y~P).K(Y~U) -> K(Y~P).K(Y~P) pKs

# Dephosphorylation of kinase in membrane complex
7  R(a!1).A(r!1,k!2).K(a!2,Y~P) -> R(a!1).A(r!1,k!2).K(a!2,Y~U) dM

# Dephosphorylation of kinase in cytosol
8  K(a,Y~P) -> K(a,Y~U) dC

end reaction rules

begin observables

RecDim	      R.R
Rec_A	      R(a!1).A(r!1)
Rec_K	      R(a!1).A(r!1,k!2).K(a!2)
Rec_Kp	      R(a!1).A(r!1,k!2).K(a!2,Y~P)
RecDim_Kp     R.R(a!1).A(r!1,k!2).K(a!2,Y~P)
L_tot 	      L
A_tot         A
K_tot         K
R_tot 	      R

end observables


generate_network({overwrite=>1});

# Equilibration
simulate_ode({suffix=>"equil",t_end=>1000,n_steps=>10,atol=>1e-10,rtol=>1e-8,sparse=>1,steady_state=>1});

# Kinetics
setConcentration("L(r)","L_tot");
writeSBML({suffix=>"kinetics"});
simulate_ode({suffix=>"kinetics",t_end=>120,n_steps=>120,atol=>1e-10,rtol=>1e-8});

# Modified Kinetics, starts from end point of previous simulate_ode command
#setParameter("pKs",0);
#simulate_ode({suffix=>"kinetics2",t_end=>100,n_steps=>10,atol=>1e-10,rtol=>1e-8});
Personal tools