Quantcast

Documentation Center

  • Trial Software
  • Product Updates

Create a Rate Rule for the Rate of Change That Is Determined by Another Species

A species from one reaction can determine the rate of another reaction if it is in the second reaction rate equation. Similarly, a species from a reaction can determine the rate of another species if it is in the rate rule that defines that other species.

Suppose you have a SimBiology model with three species and one reaction as defined next.

Reactiona –> b
Rate equationv = -k * a
Rate ruledc/dt = k2 * a
Speciesa = 10 mole; b = 0 mole; c = 5 mole
Parametersk1 = 1 second-1; k2 = 1 second-1

The solution for the species in the reaction are:


 and 

With the rate rule dc/dt = k2*a dependent on the reaction, dc/dt = k2(aoe-k1t), and the solution is:

c = co + k2ao/k1(1 - e-k1t)

Enter the following commands to set up a SimBiology model accordingly and simulate it.

m = sbiomodel('m');
c = addcompartment(m,'comp');
s1 = addspecies(m,'a','InitialAmount',10,'InitialAmountUnits','mole');
s2 = addspecies(m,'b','InitialAmount',0,'InitialAmountUnits','mole');
s3 = addspecies(m,'c','InitialAmount',5,'InitialAmountUnits','mole');
rxn = addreaction(m,'a -> b');
kl = addkineticlaw(rxn,'MassAction');
p1 = addparameter(kl,'k1','Value',1,'ValueUnits','1/second');
rule = addrule(m,'c = k2 * a','RuleType','rate');
set(kl,'ParameterVariableNames','k1');
p2 = addparameter(m,'k2','Value',1,'ValueUnits','1/second');
simdata = sbiosimulate(m);
sbioplot(simdata);

Was this topic helpful?