Examples
This page will explain at an example of a S-system model, how to work with PLmaddon. To work with a GMA-model is quite similar, the functions act analog. The example will be the fermentation pathway in saccharomyces cerevisiae (Galazzo et al.,1990; Curto et al., 1995).
| Name of Variables | Notation | Value |
|---|---|---|
| Dependent Variables | ||
| Internal Glucose | X1 | 0.0345 |
| Glucose-6phosphate | X2 | 1.0110 |
| Fructose-1,6-diphosphate | X3 | 9.1440 |
| Phosphoenolpyruate | X4 | 0.0095 |
| Adenosine triphosphate | X5 | 1.1278 |
| Independent Variables | ||
| Glucose Uptake | X6 | 19.70 |
| Hexokinase | X7 | 68.50 |
| Phosphofructoinase | X8 | 31.70 |
| Glyceraldehyde-3-phosphate dehydrogenase | X9 | 49.90 |
| Pyruvate kinase | X10 | 3.440 |
| Polysaccaride production (glycogen + trehalose) | X11 | 14.31 |
| Glycerolproduction | X12 | 203.00 |
| ATPase | X13 | 25.10 |
| NAD+/NADH ratio | X14 | 0.042 |
Develop a model:
If the model is not in power-law shape, use the function pl_estimate. Type 'pl_estimate' into the prompter and then you'll get a window to describe your model.
If the model is in power-law shape do the following steps:
There
are two possibillities to develop a S-system model. Either you create a textfile
to translate it into the data structure 'Ssysteminformation', or you
assign the exact values to all input variables of the data structure to create
the model as a text file.
| The first possibility
is the common, and also the easier one. The SBToolbox2 provides the function
'SBEdit' to develop a text file which describes this S-system model. This
file is composed of nine parts. You won't need every one. The following description
is not in the correct order of the text file, but in the order you develop
a S-system model. |
![]() |
1. define differential equations the initial conditions
| Inside ‘MODEL STATES’ we define
the differential equations and the initial conditions of all the dependent
variables
The first part includes the differential equations; in our example, they are: The left side of ‘=’ is the differential of the dependent variables. ‘X1’, ‘X2’… are the names of all the dependent variables. The right side of ‘=’ is the description about the reaction fluxes, we always use the format like ‘V**plus-V**minus’ The second part describes the initial conditions of each dependent variable.Since the values of the dependent variables will change during simulations of processes, we use (0) to denote the initial time point t=0. |
********** MODEL STATES
X1(0)=0.0345
|
2. define reaction fluxes
|
Inside ‘MODEL REACTIONS’ we define all reaction fluxes: It is necessary to input the definitions of the fluxes in order. It means, one should first define the in- and output fluxes for the first variable ‘X1’ and then the second one ‘X2’ and so on. If some rate constants are 1, one can not ignore them when we develop this file. Also if some kinetic orders are 1, we still need to keep them. For example: please write ‘1*X1^1’, but not ‘X1^1’ or ‘X1’. |
|
********** MODEL REACTIONS VX1minus=2.8632*X1^0.7464*X5^0.0243*X7^1.0000 VX2plus=2.8632*X1^0.7464*X5^0.0243*X7^1.0000 VX2minus=0.5239*X2^0.7350*X5^-0.3940*X8^0.9990*X11^0.0010 VX3plus=0.5232*X2^0.7318*X5^-0.3941*X8^1.0000 VX3minus=0.0148*X3^0.5840*X4^0.0300*X5^0.1190*X9^0.9440*X12^0.0560*X14^-0.5750 VX4plus=0.0220*X3^0.6159*X5^0.1308*X9^1.0000*X14^-0.6088 VX4minus=0.0945*X3^0.0500*X4^0.5330*X5^-0.0822*X10^1.0000 VX5plus=0.0913*X3^0.3330*X4^0.2660*X5^0.0240*X9^0.5000*X10^0.5000*X14^-0.3040 VX5minus=3.2097*X1^0.1980*X2^0.1960*X5^0.3720*X7^0.2650*X8^0.2650*X11^0.0002 *X13^0.4700 |
3. define independent variables
|
the independent Variables will be defined at ‘MODEL PARAMETERS’ |
********** MODEL PARAMETERS X6=19.7000 X7=68.5000 X8=31.7000 X9=49.9000 X10=3.4400 X11=14.3100 X12=203.0000 X13=25.1000 X14=0.0420 |
4.Description of conservation laws
| We define these conservation
equations inside ‘MODEL NOTES’. Some cases don't consider the mass conservation
equations. But sometimes it is also important to include them. For example,
in our text file they are indicated by 3 equations. |
|
********** MODEL NOTES 1*X1+2*X2+2.5*X3=2 2*X2+1.7*X4=6 1.4*X3+2.6*X7=5 |
First steps:
To work with a given S-system model, the program needs to get the information which describes it. The function 'S_getinfo' does it and gives some information. The shown elements of the model can be augmented by using 'Ssysteminformation.Mc' (Mc is only one example for every possible element):
Get the steadystate with 'S_steadystate':
[Ssysteminformation_ss,X]=S_steadystate(Ssysteminformation,Xi)
For this kind of function, first you have to define the inputs 'Ssysteminformation' and 'Xi'. The output of the function 'S_getinfo' is assigned to the variable 'Ssysteminformation'. The vector 'Xi' is defined by user. Either you assign the term 'Ssysteminformation.valueofindepvar' to 'Xi', or you define a new vector.
Systems analysis:
|
After getting the steady state, it is needful to analyse the properties of the system at the steady state. You can compute the logarithmic gains of dependent variables, fluxes and transition times, or the sensitivities of the dependent variables of the model. You also can analyze the local stability of the S-system model by using 'jacobian': |
|
PLmaddon offers the possibility to visualize the analysis data. The plot function
'S_plots': [message]=S_plots(Ssysteminformation,cases)
has ten choices to plot: the logarithmic gains of dependent variables and fluxes,
and eight different sensitivities.
It is necessary to get the steady state of the system first, because it has to be assigned as the input variable 'Ssysteminformation'. At 'cases' you have to assign a plot choice, for example 'LXX' for logarithmic gains of dependent variables.




