Changing Initial Conditions
There are a number of methods to get and set the initial conditions of a loaded model. In order to
specify a given initial conditions we use the notation, init()
. The values stored in the
initial conditions are applied to the model whenever it is reset. The list of all initial condition
symbols can be obtained by the methods, getFloatingSpeciesInitAmountIds()
and getFloatingSpeciesInitConcentrationIds()
assuming rr
is a RoadRunner
instance. As with all other selection symbols, the keys()
returns all
available selection symbols:
>>> rr.model.keys()
[ 'S1', 'S2', '[S1]', '[S2]', 'compartment', 'k1', '_CSUM0',
'reaction1', 'init([S1])', 'init([S2])', 'init(S1)',
'init(S2)', "S1'"]
Symbols for selecting initial values specifically for amounts and concentrations can be obtained via:
>>> rr.model.getFloatingSpeciesInitAmountIds()
['init(S1)', 'init(S2)']
>>> rr.model.getFloatingSpeciesInitConcentrationIds()
['init([S1])', 'init([S2])']
Getting or setting initial values is easily accomplished using the array operator and the selection symbols:
>>> rr.model["init(S1)"]
0.00015
>>> rr.model["init([S1])"]
2.9999999999999997e-05
>>> rr.model["init([S1])"] = 2
>>> rr.model["init(S1)"]
10.0
The values for the initial conditions for all floating species can be obtained using the calls:
>>> rr.model.getFloatingSpeciesInitConcentrations()
array([ 0.7, 5.6])
Initial conditions can be set using the two methods for all species in one call:
>>> rr.model.setFloatingSpeciesInitAmounts ([3.4, 5.6])
>>> rr.model.setFloatingSpeciesInitConcentrations ([6.7, 0.1])