Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

This chapter presents basics of mathematical modelling in systems biology. In Sect. 1.1, a brief introduction to the topic is given, mainly in terms of examples such as problems from population dynamics or from drug administration. In Sect. 1.2, the assembly of large ODE networks from simple chemical and physiological mechanisms, given in terms of chemical reaction modules, is described. Reasons are given, why the so-called Michaelis-Menten kinetics is no longer needed in the numerical simulation of such systems. For reaction diagram parts, where only the properties “stimulating” or “inhibiting” are known, the formulation in terms of Hill functions is presented. Finally, in Sect. 1.3, necessary mathematical background material is collected as far as it seems important for the class of applications in question. Main topics are the uniqueness and sensitivity of solutions as well as asymptotic stability. Mathematical contents are typically explained by examples rather than by theorems, while emphasis is laid on consequences for practical calculations.

1.1 Introduction

To start with, Sect. 1.1.1 gives a short overview about ODE initial value problem types that occur in systems biology. Next, two simple model problems are worked out in some detail, one from population dynamics (Sect. 1.1.2), one on multiple dose administration of drugs (Sect. 1.1.3).

1.1.1 Problem Types in Systems Biology

Let us first give a brief list of problems that typically come up in systems biology. In the subsequent Sects. 1.1.2 and 1.1.3 we will present a few elementary examples.

1.1.1.1 Non-autonomous Initial Value Problems

This book predominantly focuses on initial value problems for systems of d ordinary differential equations (ODEs)

$$\displaystyle{ y^{{\prime}} = f(t,y),\quad y(t_{ 0}) = y_{0} \in \mathbb{R}^{d} }$$
(1.1)

for given initial values y 0. The notation indicates that the time variable t appears explicitly in the right-hand side f; in this case we speak of a non-autonomous problem. However, apart from special problems of drug administration where the time point of administration enters crucially into the modelling, this case is the non-standard case in systems biology.

1.1.1.2 Autonomous Initial Value Problems

Throughout the book we will mainly deal with the case, when the time variable t does not explicitly enter into the right-hand side f. Then we have

$$\displaystyle{ y^{{\prime}} = f(y),\quad y(0) = y_{ 0} \in \mathbb{R}^{d}\;. }$$
(1.2)

A specialty of this type of problem is that for any given solution trajectory y(t) satisfying (1.2) there exists a continuum of further solution trajectories \(z(t) = y(t-\tau )\) with time shift τ satisfying the same ODE

$$\displaystyle{z^{{\prime}}(t) = y^{{\prime}}(t-\tau ) = f(y(t-\tau )) = f(z(t))}$$

and the same initial condition

$$\displaystyle{z(t_{0}+\tau ) = y(t_{0} +\tau -\tau ) = y(t_{0}) = y_{0}\;.}$$

Due to this so-called translation invariance the initial point t 0 can be chosen arbitrarily, so that we are free to set t 0 = 0 in (1.2).

1.1.1.3 Parameter Dependent Problems

In the majority of problems in systems biology, a (possibly large) number of unknown parameters p = (p 1, , p q ) enters in the form

$$\displaystyle{ y^{{\prime}} = f(y,p),\quad y(0) = y_{ 0} \in \mathbb{R}^{d},\;p \in \mathbb{R}^{q}\;. }$$
(1.3)

Of course, one would like to identify such parameters by matching the above type of model with given experimental data. The corresponding mathematical problem is far more subtle than often recognized in systems biology literature. Because of its central importance in modelling, it will be carefully elaborated in Chap. 3 below.

1.1.1.4 Linear ODEs

In the non-autonomous case, a linear system may be written as

$$\displaystyle{y^{{\prime}} = A(t)y + b(t)\quad y(t_{ 0}) = y_{0},\quad A \in \mathbb{R}^{d\times d}\;,}$$

where A(t) denotes a time dependent (d, d)-matrix and \(b(t) \in \mathbb{R}^{d}\) a corresponding vector function. In the autonomous case, we will most often encounter the homogeneous situation b = 0 so that

$$\displaystyle{y^{{\prime}} = A\;y,\quad y(0) = y_{ 0}}$$

in terms of some time-independent (d, d)-matrix. This kind of system plays a role in stability analysis of general ODE systems, see Sect. 1.3.3.

1.1.1.5 Singularly Perturbed Systems

In the mathematical literature for systems biology, now and then so-called singularly perturbed problems of the kind

$$\displaystyle{ y^{{\prime}} = f(y,z),\quad 0 = g(y,z), }$$
(1.4)

arise. Such systems have been designed in the early days of computational science to be able to solve them by standard explicit integrators. The approach is more or less dispensable, since today efficient so-called stiff integrators are available that solve such problems, see Sect. 1.3.4 for a more detailed discussion.

1.1.1.6 Delay or Retarded Differential Equations

Quite often processes do not just depend on the current state but also on the “history” of the system. Such systems also arise as a phenomenological description, when not enough information about a chain of intermediate processes is at hand.

In the simplest case such a differential system contains a retardation or delay time τ > 0 so that

$$\displaystyle{ y^{{\prime}} = f\left (y(t),y(t-\tau )\right ),\quad y(t) =\varTheta (t)\text{ for }[-\tau,0] }$$
(1.5)

with a given initial function Θ. In contrast to the standard ODE case we typically have

$$\displaystyle{y^{{\prime}}(0^{-}) =\varTheta ^{{\prime}}(0)\neq f(y(0),y(-\tau )) = y^{{\prime}}(0^{+})\;,}$$

i.e., the derivative of the solution is discontinuous at the initial point t = 0. The discontinuity propagates along the trajectory, but is gradually smoothed. This feature has to be taken into account in the numerical simulation! Typical for systems biology is the fact, that the delay may depend on the solution, too, which means that one should write τ(y) above instead of just τ. Throughout the book we will not go into too much detail of this problem type, but give a hint on available codes in Sect. 2.5.1

1.1.1.7 Periodic ODE Problems

In systems biological modelling, internal clocks or circadian rhythms play an important role. The modelling of such processes leads to ODE problems of the kind (mostly autonomous)

$$\displaystyle{ y^{{\prime}} = f(y),\quad y(T) = y(0)\;, }$$
(1.6)

with unknown period T. In contrast to the initial value problems mentioned so far, this problem is of boundary value type, which is more complex and beyond the scope of this book. Interested readers may want to look up theoretical and algorithmic details in the textbook [15, Section 7.3].

1.1.2 Example: Population Dynamics

This kind of mathematical model describes the dynamics of populations. Let p(t) denote the number of individuals at time t and Δ t some finite time step. Then the change of population p within time interval [t, t +Δ t] will be

$$\displaystyle{p(t +\varDelta t) - p(t) = g\varDelta t,\quad g \in \mathbb{R}\;,}$$

which means that the longer the time interval, the greater the change will be. Note that g > 0 represents growth, g < 0 decay. The typical derivation step now is to write down the above relation as a difference equation and pass to the limit as follows:

$$\displaystyle{\underbrace{\mathop{\frac{p(t+\varDelta t)-p(t)} {\varDelta t} = g}}\limits _{\text{difference equation}}\quad \stackrel{\varDelta t \rightarrow 0}{\longrightarrow }\quad \underbrace{\mathop{ \frac{dp(t)} {dt} = g}}\limits _{\text{differential equation}}}$$

This differential equation (ODE) may also be written as p  = g. Note that here we have tacitly applied some continuum hypothesis assuming that \(p(t) \in \mathbb{R}^{+}\), even though \(p(t) \in \mathbb{N}\), since the number of individuals can be counted. In addition, ODE models are based on the assumption of well-mixing, i.e. individuals are homogeneously distributed in space such that spatial gradients can be neglected in the model. We now turn to some special cases for the rate coefficient g = g(t, p).

1.1.2.1 Exponential Growth

We start with the assumption of a constant fertility rate λ 0 (interpretation: the more individuals, the higher the birth rate):

$$\displaystyle{ p^{{\prime}} =\lambda p,\quad p(0) = p_{ 0} \geq 0\;. }$$
(1.7)

This is a linear ODE, which can be solved to yield

$$\displaystyle{p(t) = p_{0}\exp (\lambda t)\;.}$$

The case of growth occurs with λ 0 > 0. In this case, there would be only members of this species after some time in the corresponding local neighborhood – obviously ignoring the limited nutrition basis or any other environmental constraints.

1.1.2.2 Saturation Model

The insufficiency of a purely linear model has already been pointed out 1838 by P.-F. Verhulst [61], who suggested to modify the ODE in the form

$$\displaystyle{ p^{{\prime}} =\kappa p(p_{\max } - p),\quad p(0) = p_{ 0} \geq 0,\quad \kappa > 0\;. }$$
(1.8)

Obviously, this is a nonlinear ODE, often also called logistic equation. The associated dynamics has two fixed or stationary points with p  = 0, namely p ≡ 0, which can only occur for p 0 = 0, and p ≡ p max, which is approached by any trajectory with \(0 < p_{0} \leq p_{\max }\). An illustration is given in Fig. 1.1.

Fig. 1.1
figure 1

Logistic growth (\(p_{0} = 1,\,\kappa = 2,\,p_{\max } = 5\))

As one of the rare examples, the initial value problem (1.8) can be solved analytically by separation of variables (let t 0 = 0, since we have an autonomous ODE):

$$\displaystyle\begin{array}{rcl} \kappa \int _{0}^{t}dt& =& \int _{ p_{0}}^{p} \frac{dp} {p(p_{\max } - p)} {}\\ \kappa p_{\max }t& =& \int _{p_{0}}^{p}\left (\frac{1} {p} + \frac{1} {p_{\max } - p}\right )dp\quad \text{(partial fraction decomposition)} {}\\ \kappa p_{\max }t& =& (\ln p -\ln (p_{\max } - p))\big\vert _{p_{0}}^{p} =\ln \frac{p(p_{\max } - p)} {p_{0}(p_{\max } - p_{0})} {}\\ \end{array}$$

After some short calculation we obtain the analytic solution

$$\displaystyle{ p(t) = p_{0}\; \frac{p_{\max }} {p_{0} + (p_{\max } - p_{0})\exp (-\kappa p_{\max }t)} }$$
(1.9)

This function is often also called the logistic law of growth. Note that for t = 0 one actually obtains the initial value p(0) = p 0. Moreover, one easily verifies that \(p(t) \leq p_{\max }\) and \(\lim _{t\rightarrow \infty }p(t) = p_{\max }\), if \(0 < p_{0} < p_{\max }\).

1.1.2.3 Predator-Prey Model

Consider the dynamics of a closed ecological system, in which two species interact, predators (number N 2) and prey (number N 1); as an example, you may take fox for the predator and hare for the prey. The behavior can be described by the model

$$\displaystyle{ N_{1}^{{\prime}} = N_{ 1}(\alpha -\beta N_{2}),\quad N_{2}^{{\prime}} = -N_{ 2}(\gamma -\delta N_{1}) }$$
(1.10)

with prescribed positive parameters α, β, γ, δ. This pair of first-order nonlinear differential equations is known as Lotka-Volterra model , named after A. J. Lotka and V. Volterra, who independently developed these equations already in 1925/1926, see, e.g., the textbook [45] by J. D. Murray.

The nonlinear terms N 1 N 2 enter, since the prey population would grow unboundedly, if the predator population were zero, while the predator population would die out, if the prey population were zero. The meaning of the parameters is:

  • α: prey reproduction rate (with unbounded nutrition resources),

  • β: rate at which prey is eaten by predators (per unit prey), which is equivalent to mortality rate of prey per unit predator,

  • γ: mortality rate of predators in the absence of prey,

  • δ: reproduction rate of predators per unit prey.

A short calculation yields

$$\displaystyle{\frac{dN_{1}} {dN_{2}} = \frac{N_{1}(\alpha -\beta N_{2})} {-N_{2}(\gamma -\delta N_{1})}\quad \Rightarrow \int \frac{-\gamma +\delta N_{1}} {N_{1}} dN_{1} =\int \frac{\alpha -\beta N_{2}} {N_{2}} dN_{2}\;.}$$

Upon integrating both sides, we arrive at

$$\displaystyle{-\gamma \ln (N_{1}) +\delta N_{1} =\alpha \ln (N_{2}) -\beta N_{2} + \text{constant}\;.}$$

As a consequence, the quantity

$$\displaystyle{H(N_{1},N_{2}) = -\gamma \ln (N_{1}) +\delta N_{1} -\alpha \ln (N_{2}) +\beta N_{2} = H(N_{1}(0),N_{2}(0))}$$

is an invariant along any trajectory. In Fig. 1.2, left, two oscillatory solution curves N 1(t), N 2(t) are depicted. Figure 1.2, right, shows H(N 1, N 2) = const in an (N 1, N 2)-plane, also called phase plane, where a closed orbit arises for each initial value.

Fig. 1.2
figure 2

Predator-prey model (1.10) for parameters \(\alpha = 1,\;\beta = 2,\;\gamma = 1,\;\delta = 1,\) and initial value (N 1(0), N 2(0)) = (1. 25, 0. 66)

In Sect. 3.5.1 below we treat the identification of parameters from given data of the Canadian lynx (predator) and snowshoe hare (prey).

1.1.3 Example: Multiple Dose Administration of Drugs

We follow the presentation in the illustrative book of D. S. Jones et al. [40] to show how drug concentrations in body fluids can be described by differential equations. Assume that the drug concentration c(t) within the blood plasma can be described by the following simple law:

$$\displaystyle{c^{{\prime}} = -c/\tau.}$$

In this linear ODE, the constant τ, often called relaxation time, characterizes the decay rate of the concentration

$$\displaystyle{c(t) = c_{0}\exp (-t/\tau )\;.}$$

Suppose now that some prescribed constant dose c 0 is administered regularly at times \(t_{n} = nt_{0},\;n = 0,1,\ldots\). Then the concentration will grow in a sawtooth pattern, which is illustrated in Fig. 1.3.

Fig. 1.3
figure 3

Typical plasma concentration of a drug in multiple dose treatment

Let us now try to model this situation quantitatively. For that purpose, we introduce the notation c n  = c(t n ). Due to the above decay law, we get

$$\displaystyle{c(t_{n}^{-}) = c_{ n-1}\exp (-t_{0}/\tau )}$$

and with the regular administration eventually

$$\displaystyle{c_{n} = c(t_{n}^{-}) + c_{ 0} = c_{n-1}\exp (-t_{0}/\tau ) + c_{0}\;.}$$

For convenience of writing we introduce the quantity \(q =\exp (-t_{0}/\tau ) < 1\) and thus arrive at the recursion

$$\displaystyle{c_{n} = c_{n-1}q + c_{0}\;,}$$

from which we obtain (check yourself)

$$\displaystyle{c_{n} = c_{0}\;(1 + q + q^{2} +\ldots +q^{n}) = c_{ 0}\;\frac{\quad 1 - q^{n+1}} {1 - q} }$$

or, in the original notation,

$$\displaystyle{c_{n} = c_{0}\frac{1 -\exp (-(n + 1)t_{0}/\tau )} {1 -\exp (-t_{0}/\tau )}.}$$

In addition, we obtain the so-called concentration residue

$$\displaystyle{r_{n} = c(t_{n-1}^{-}) = c_{ 0}\exp (-t_{0}/\tau )\frac{1 -\exp (-nt_{0}/\tau )} {1 -\exp (-t_{0}/\tau )}.}$$

Taking the limit n → , we observe that the concentration never exceeds

$$\displaystyle{c_{\max } = \frac{c_{0}} {1 -\exp (-t_{0}/\tau )},}$$

and that the residue approaches

$$\displaystyle{r = c_{\max }\exp (-t_{0}/\tau ) = \frac{c_{0}} {\exp (t_{0}/\tau ) - 1}.}$$

Usually, the therapeutic goal is to reach \(c_{\max }\) in only a few dose steps (t 0τ large), whereas r should be kept above a certain level (t 0τ small). Obviously, these two goals are in contradiction to each other. One strategy is to avoid the sawtooth build-up by giving an initial large dose of c 0 + r or \(c_{\max }\) and thereafter again doses of c 0. The optimal treatment strategy, however, usually depends on several factors like production costs and patterns of human behavior.

1.2 ODE Systems from Chemical or Physiological Networks

In systems biology, typical ODE systems originate from chemical kinetics . Apart from these, so-called compartment models arise, which we will explain in Example 1 below and, in a more realistic setting, subsequently in Sect. 2.5.3 In Sect. 1.2.1, we start with isolated simple chemical mechanisms and their translation into ODE models. Such models will comprise the building blocks of large networks whose construction we will discuss in Sect. 1.2.3 below. In between, in Sect. 1.2.2, we discuss some traditional model type for enzyme kinetics called Michaelis-Menten kinetics, which is still around in the literature, but is no longer needed nowadays.

1.2.1 Elementary Chemical Mechanisms

Part of the presentation here closely follows Section 1.3 in the textbook [16].

1.2.1.1 Monomolecular Reaction

In chemical language, this reaction is written in terms of two chemical species A, B as

$$\displaystyle{A\;\longrightarrow \;B}$$

In a particle model we may denote n A, B as the number of particles of A, B. In Boltzmann’s kinetic gas theory, which needs to be carefully discussed when applied within the human body (under the assumptions of constant pressure, volume V, and temperature T!), one obtains for the changes Δ n A, B of particle numbers n A, B within some time interval Δ t

$$\displaystyle{\varDelta n_{A} \sim -n_{A}\varDelta t,\quad \varDelta n_{B} = -\varDelta n_{A}}$$

where the second equation is the conservation of particles. In a continuum model, the associated concentrations are defined as

$$\displaystyle{c_{A} = \frac{n_{A}} {V },\quad c_{B} = \frac{n_{B}} {V } \;.}$$

For ease of writing, one usually identifies the names for the concentrations with the names of the corresponding chemical species, i.e. \(c_{A} \rightarrow A,c_{B} \rightarrow B\) etc. Upon defining k as a reaction rate coefficient, we thus arrive at the ODEs

$$\displaystyle{ A^{{\prime}} = -kA,\quad B^{{\prime}} = kA\;. }$$
(1.11)

If we set initial conditions

$$\displaystyle{A(0) = A_{0},\quad B(0) = 0\;,}$$

then we can solve these simple equations analytically to obtain

$$\displaystyle{A(t) = A_{0}\exp (-kt),\quad B(t) = A_{0}(1 -\exp (-kt))}$$

In passing we note that mass conservation still holds in the two equivalent forms

$$\displaystyle{ A^{{\prime}}(t) + B^{{\prime}}(t) = 0\quad \Leftrightarrow \quad A(t) + B(t) = A(0) + B(0) = A_{ 0}\;. }$$
(1.12)

1.2.1.2 Bimolecular Reaction

In chemical language, this reaction reads

$$\displaystyle{A + B\;\stackrel{k_{1}}{\stackrel{\rightleftharpoons }{k_{2}}}\;C + D\;.}$$

Using the same kinetic reaction principles as before, one is led to the ODE model (again identifying species and concentration names)

$$\displaystyle{ A^{{\prime}} = B^{{\prime}} = -k_{ 1}AB + k_{2}CD,\quad C^{{\prime}} = D^{{\prime}} = +k_{ 1}AB - k_{2}CD\;. }$$
(1.13)

In passing we again note that conservation of mass holds:

$$\displaystyle{ A^{{\prime}} + B^{{\prime}} + C^{{\prime}} + D^{{\prime}} = 0. }$$
(1.14)

Important special cases of this mechanism to arise in systems biology are

  • catalysis: B = C

  • autocatalysis: B = C = D, e.g., DNA replication: nucleotide + DNA \(\rightleftharpoons \) 2 DNA

Stationary state. The equilibrium phase, also called the stationary state, is characterized by

$$\displaystyle{A^{{\prime}} = B^{{\prime}} = C^{{\prime}} = D^{{\prime}} = 0\;.}$$

From this we arrive at the classical law of mass action kinetics (often called the Arrhenius law) :

$$\displaystyle{ \frac{AB} {CD} = \frac{k_{2}} {k_{1}} =\exp \left (- \frac{\varDelta E} {RT}\right ) =: k_{21} }$$
(1.15)

where we have already inserted the Boltzmann formula with Δ E the activation energy, which is the energy difference between reactants and products, R the universal gas constant, and T the temperature (as above). If only the equilibrium phase of this reaction is to be modeled, then the above equilibrium coefficient \(k_{21} = k_{2}/k_{1}\) is the only degree of freedom that is well-defined. In this case, a model reduction is possible. A simple illustrative example for this phenomenon will be worked out in Sect. 3.5.2

1.2.1.3 General Reaction Scheme

For the sake of completeness, we mention that a reaction of the general type

$$\displaystyle{m_{A}A + m_{B}B\;\stackrel{k_{1}}{\stackrel{\rightleftharpoons }{k_{2}}}\;m_{C}C + m_{D}D}$$

would give rise to the equilibrium relation (the general law of mass action kinetics )

$$\displaystyle{ \frac{A^{m_{A}}B^{m_{B}}} {C^{m_{C}}D^{m_{D}}} = \frac{k_{2}} {k_{1}} =\exp \left (- \frac{\varDelta E} {RT}\right )\;. }$$
(1.16)

A general reaction of the type

$$\displaystyle{m_{1}^{\text{in}}A_{ 1} + m_{2}^{\text{in}}A_{ 2} +\ldots +m_{d}^{\text{in}}A_{ d}\;\stackrel{k}{\longrightarrow }\;m_{1}^{\text{out}}A_{ 1} + m_{2}^{\text{out}}A_{ 2} +\ldots +m_{d}^{\text{out}}A_{ d}}$$

results in the reaction rate equation

$$\displaystyle{y^{{\prime}} = k\nu \prod _{ i=1}^{d}\frac{y_{i}^{m_{i}^{\text{in}}}(t)} {m_{i}^{\text{in}}!},}$$

where

$$\displaystyle{y = (A_{1},\ldots,A_{d})^{T},\quad \nu = (m_{ 1}^{\text{out}} - m_{ 1}^{\text{in}},\ldots,m_{ d}^{\text{out}} - m_{ d}^{\text{in}})^{T}.}$$

Remark 1

Often, the factorials in the above denominators are absorbed into the constant k, giving rise to a reaction rate equation in the form

$$\displaystyle{y^{{\prime}} = k\nu \prod _{ i=1}^{d}y_{ i}^{m_{i}^{\text{in}}}(t).}$$

Both forms can be found in the literature; note that the value of the reaction rate coefficient will vary accordingly.

Remark 2

Whenever the copy numbers of species involved in a chemical reaction get small, random fluctuations come into play. In this case, the ODE models based on mass action kinetics must be replaced by the chemical master equation (CME). The CME is the fundamental equation of stochastic chemical kinetics. This differential-difference equation (continuous in time and discrete in the state space) describes the temporal evolution of the probability density function for the states of a chemical system. The state of the system represents the copy numbers of interacting species, which are changing according to a list of possible reactions. The solution of the CME in higher dimensions is mathematical challenging and the topic of ongoing research. A detailed discussion would go beyond the scope of this book.

1.2.1.4 Inhibitory or Stimulatory Impact

In quite a number of chemical reactions in biology detailed knowledge about the individual reaction mechanisms is not available, but only some information of the kind “inhibitory or stimulatory impact”. This qualitative insight is usually captured quantitatively in terms of so-called Hill functions . Let S denote some input substrate concentration and P the corresponding output product concentration. Then, in terms of threshold values \(T,T^{-},T^{+}\) and Hill coefficients n, the following modelling schemes are in common use (see Fig. 1.4):

Fig. 1.4
figure 4

Hill functions for variable parameter n. Left: negative feedback (T = 0. 5). Center: positive feedback (T = 0. 5). Right: switch behavior between mutually independent process directions (\(T^{-} = 0.2,T^{+} = 0.8,T_{s} = 0.4\))

  • Inhibitory processes. These are described by negative feedback Hill functions (with the notation \(X = S/T\))

    $$\displaystyle{ h^{-}(S,T,n) = \frac{1} {1 + X^{n}},\quad P^{{\prime}} = p^{-}h^{-}(S,T,n)\;, }$$
    (1.17)

    where p denotes some reaction rate coefficient.

  • Stimulatory processes. These are described by positive feedback Hill functions (with the notation \(X = S/T\))

    $$\displaystyle{ h^{+}(S,T,n) = \frac{X^{n}} {1 + X^{n}},\quad P^{{\prime}} = p^{+}h^{+}(S,T,n)\;, }$$
    (1.18)

    where p + is again some reaction rate coefficient.

  • Switch processes. Whenever two process directions are mutually independent, then they can be modeled by biphasic Hill functions

    $$\displaystyle{ h^{\pm }(S,T^{-},T^{+},n) = h^{-}(S,T^{-},n) + h^{+}(S,T^{+},n)\;, }$$
    (1.19)

    which gives rise to the ODE parts

    $$\displaystyle{P^{{\prime}} = p^{\pm }h^{\pm }(S,T^{-},T^{+},n)\;,}$$

    with p ± as reaction rate coefficient. The switch takes place at \(T_{s} = \sqrt{T^{- } T^{+}}\), compare Fig. 1.4. In passing we note that

    $$\displaystyle{h^{-}(S,T,n) + h^{+}(S,T,n) = 1\;.}$$

    Whenever the two process directions are mutually dependent, they should be coupled multiplicatively, i.e.

    $$\displaystyle{ h^{\pm }(S,T^{-},T^{+},n) = h^{-}(S,T^{-},n) \times h^{+}(S,T^{+},n)\;. }$$
    (1.20)

1.2.2 Enzyme Kinetics

A special case of reaction mechanism is the case of enzyme kinetics , which we here give in some detail, since this mechanism can be treated numerically in different ways. This mechanism involves four chemical species: substrate S, product P, enzyme E, and complex C. In chemical language, this kind of reaction scheme is written as

$$\displaystyle{E + S\;\stackrel{k_{1}}{\stackrel{\rightleftharpoons }{k_{-1}}}\;C\stackrel{k_{2}}{\longrightarrow }\;E + P\;.}$$

The corresponding mathematical formulation in terms of an ODE system is:

$$\displaystyle\begin{array}{rcl} S^{{\prime}}& =& -k_{ 1}ES + k_{-1}C {}\\ E^{{\prime}}& =& -k_{ 1}ES + k_{-1}C + k_{2}C {}\\ C^{{\prime}}& =& k_{ 1}ES - k_{-1}C - k_{2}C {}\\ P^{{\prime}}& =& k_{ 2}C {}\\ \end{array}$$

Observe that all parameters above enter linearly, compare the remarks in Sect. 3.4 in the context of parameter sensitivity analysis. As initial conditions we typically have

$$\displaystyle{E(0) = E_{0},\;S(0) = S_{0},\;C(0) = 0,\;P(0) = 0\;.}$$

As for mass conservation, we now have two chemical reactions:

$$\displaystyle{E^{{\prime}} + C^{{\prime}} = 0\; \Rightarrow E + C =\mathop{ \mathrm{\mathrm{const}}}\nolimits = E_{ 0}}$$
$$\displaystyle{S^{{\prime}} + C^{{\prime}} + P^{{\prime}} = 0\; \Rightarrow S + C + P =\mathop{ \mathrm{\mathrm{const}}}\nolimits = S_{ 0}\;.}$$

Upon eliminating \(E = E_{0} - C\) and \(P = S_{0} - S - C\) from the above four ODEs, we obtain a reduced model with only two ODEs

$$\displaystyle{ S^{{\prime}} = -k_{ 1}(E_{0} - C)S + k_{-1}C }$$
(1.21)
$$\displaystyle{ C^{{\prime}} = k_{ 1}(E_{0} - C)S - (k_{-1} + k_{2})C }$$
(1.22)

to be completed by the two above initial conditions \(S(0) = S_{0},\;C(0) = 0\). In Fig. 1.5, we show the results of numerical simulations.

Fig. 1.5
figure 5

Numerical simulation of an enzyme reaction (substrate S, product P, enzyme E, complex C)

Michaelis-Menten kinetics. We continue with an analysis of the above enzyme reaction mechanism by introducing the so-called quasi-steady state approximation , in short: QSSA . In this framework, we set

$$\displaystyle{C^{{\prime}} = 0\;.}$$

Insertion into the ODE (1.22) then yields

$$\displaystyle{C(t) = \frac{E_{0}S(t)} {K_{m} + S(t)},\quad K_{m}:= (k_{-1} + k_{2})/k_{1}}$$

where K m denotes the so-called Michaelis constant. Inserting this expression into (1.21) leads to

$$\displaystyle{ S^{{\prime}}(t) = -k_{ 2}E_{0} \frac{S(t)} {K_{m} + S(t)}\;. }$$
(1.23)

The ODE (1.23) is called Michaelis-Menten kinetics .

Generally speaking, the advent of modern stiff integrators (see Sects. 2.3 and 2.4) has made the QSSA including the Michaelis-Menten kinetics superfluous. Nevertheless such models have survived even in recent literature, which is why they are also accepted as possible mechanisms in the modelling language SBML [11].

1.2.3 Assembly of Large ODE Networks

The previous two sections have shown that there exists a one-to-one correspondence between elementary chemical reactions and ODE schemes. In actual systems biological modelling such small blocks will have to be assembled to large chemical reaction networks. For this purpose, it is convenient to construct a so-called chemical compiler that automatically generates the ODE system. (We deliberately skip here the possible addition of further physiological mechanisms that give rise to ODEs of different kind; they will need an extra treatment.)

1.2.3.1 Chemical Compiler

Such a programming tool generates the right-hand sides f of an ODE system (1.2) from elementary pieces. This is a comparatively easy task, since the mechanisms of Sect. 1.2.1 lead to known functions such as polynomials or Hill functions. Simultaneously, anticipating Sect. 1.3.2 below, the Jacobians f y , f p (with respect to variables y and parameters p) will be needed. In the polynomial terms the parameters usually enter linearly, which is why we explicitly advise users to avoid any Michelis-Menten kinetics (see (1.23)) wherever possible, since they would give rise to parameters entering nonlinearly. Of course, any additional right-hand sides originating from other source terms should be treated aside. In particular, approximation of the Jacobians f y , f p by numerical differentiation might be applicable, which requires special software, see [5].

Such a compiler permits a user to concentrate on modelling questions without getting too much involved with the arising ODE system. At the same time it helps to reduce programming errors. That is why already in the 1980s FORTRAN codes like CHEMKIN due to [41] or LARKIN due to [4, 22] have been developed, mainly oriented towards physical chemistry. Nowadays, CHEMKIN is developed by the company ReactionDesign,Footnote 1 whereas an open-source version, named Cantera,Footnote 2 is developed by the group of Dave Goodwin at the California Institute of Technology. More recent developments oriented towards systems biology are the SBML package [46] to be combined with numerical codes like Copasi due to [39] or BioPARKIN due to [25].

1.2.3.2 Compartment Modelling

This modelling technique is quite popular in computational biology. It consists in splitting the system under consideration into separate compartments, which are coupled by ODEs that describe the quantitative connections between these parts of the model. Within each of the compartments, concentrations are assumed to be uniformly distributed. Rather than discussing this technique abstractly, we illustrate it below by a recent elaborate example. In addition, we present the results of assembling chemical reaction mechanisms. Thus it may stand for a class of typical examples in systems biology. Moreover, in Sect. 2.5.3, we work out a larger compartment model concerning cancer cells.

Example 1

In [53], a model of the human menstrual cycle has been worked out in detail. The selected compartments are: the hypothalamus, the pituitary, and the ovaries, connected by the blood stream, as illustrated in Fig. 1.6.

Fig. 1.6
figure 6

Compartment model for the human menstrual cycle . The model maps the hypothalamic-pituitary-gonadal (hpg) axis, along which the various hormones act

In Fig. 1.7, part of the corresponding chemical model is presented in the usual form of a reaction diagram. The species have been colored according to their occurrence in different compartments. The full model comprises 33 chemical species (and, of course, the same number of ODEs) as well as 76 chemical reactions and physiological processes. For mere illustration purposes, we just give a selection out of the rather large compiled ODE system.

Fig. 1.7
figure 7

Flowchart of a model for the human menstrual cycle . Dashed lines: transitions, elimination, or chemical reactions. Solid lines with filled arrows: stimulatory effects (Hill functions h + ). Solid lines with unfilled arrows: inhibitory mechanisms (Hill functions h ). Compare this flowchart with the ODEs presented below

Luteinizing Hormone (LH):

$$\displaystyle{ \mathit{Syn}_{\text{LH}}(t) = (b_{\mathit{Syn}}^{\text{LH}}+k_{ \text{E2}}^{\text{LH}}\cdot h^{+}(\text{E2}(t),T_{ \text{E2}}^{\text{LH}};n_{ \text{E2}}^{\text{LH}}))\cdot h^{-}(\text{P4}(t),T_{ \text{P4}}^{\text{LH}};n_{ \text{P4}}^{\text{LH}}) }$$
(1.24)
$$\displaystyle{ \mathit{Rel}_{\text{LH}}(t) = \left (b_{\mathit{Rel}}^{\text{LH}} + k_{ \text{G-R}}^{\text{LH}} \cdot h^{+}(\text{G-R}(t) + \text{Ago-R}(t),T_{ \text{G-R}}^{\text{LH}};n_{ \text{G-R}}^{\text{LH}})\right )\cdot \text{LH}_{\mathrm{ pit}}(t) }$$
(1.25)
$$\displaystyle{ \frac{d} {dt}\text{LH}_{\mathrm{pit}}(t) = \mathit{Syn}_{\text{LH}}(t) -\mathit{Rel}_{\text{LH}}(t) }$$
(1.26)
$$\displaystyle{ \frac{d} {dt}\text{LH}_{\mathit{blood}}(t) = \frac{1} {V _{\mathit{blood}}} \cdot \mathit{Rel}_{\text{LH}}(t) - (k_{\mathit{on}}^{\text{LH}} \cdot \text{R}_{ \text{LH}}(t) + k_{\mathit{cl}}^{\text{LH}}) \cdot \text{LH}_{\mathit{ blood}}(t) }$$
(1.27)

LH receptor binding:

$$\displaystyle{ \frac{d} {dt}\text{R}_{\text{LH}}(t) = k_{\mathit{recy}}^{\text{LH}} \cdot \text{R}_{ \text{LH},\mathit{des}}(t) - k_{\mathit{on}}^{\text{LH}} \cdot \text{LH}_{\mathit{ blood}}(t) \cdot \text{R}_{\text{LH}}(t) }$$
(1.28)
$$\displaystyle{ \frac{d} {dt}\text{LH-R}(t) = k_{\mathit{on}}^{\text{LH}} \cdot \text{LH}_{\mathit{ blood}}(t) \cdot \text{R}_{\text{LH}}(t) - k_{\mathit{des}}^{\text{LH}} \cdot \text{LH-R}(t) }$$
(1.29)
$$\displaystyle{ \frac{d} {dt}\text{R}_{\text{LH},\mathit{des}}(t) = k_{\mathit{des}}^{\text{LH}} \cdot \text{LH-R}(t) - k_{\mathit{ recy}}^{\text{LH}} \cdot \text{R}_{ \text{LH},\mathit{des}}(t) }$$
(1.30)

We deliberately dropped the equations for the gonadotropin releasing hormone (GnRH, already left out in Fig. 1.7), for the follicle stimulating hormone (FSH), the physiological mechanisms for the development of various stages of follicles and corpus luteum as well as the reaction mechanisms for estradiol (E2), progesterone (P4) and the two inhibins (IhA,IhB). Readers interested in all details may want to look up the original paper [53].

1.3 Mathematical Background for Initial Value Problems

From the vast mathematical background material concerning ODE initial value problems we here want to select only such items that need to be understood when modelling and simulating networks in systems biology. In the following we will treat questions of uniqueness, sensitivities, condition numbers, and asymptotic stability.

1.3.1 Uniqueness of Solutions

Given an ODE model, it should be clear whether this model has a unique solution. If this were not the case, then any “good” numerical integrator will run into difficulties. That is why we discuss the topic here. Let \(y^{{\ast}}(t),t \in [t_{0},t_{+}[\) denote a unique solution existing over the half-open interval \(t_{0} \leq t < t_{+}\).

1.3.1.1 Uniqueness Criteria

As worked out in mathematical textbooks (see again, e.g., [16, Section 2.2]), there are three cases that may occur, from which we select two that may come up in systems biological modelling:

  1. (a)

    The solution y exists “forever”, i.e. \(t_{+} = \infty \).

  2. (b)

    The solution “blows up” after finite time, i.e. t + < .

Case (a) essentially requires that the right-hand side f satisfies a global Lipschitz condition

$$\displaystyle{\|\,f(x) - f(y)\| \leq L\|x - y\|\quad \text{for all}\quad x,y,}$$

wherein the term ‘global’ means that it holds for all arguments x, y. Typically, this so-called Lipschitz constant L is identified via the derivative of the right-hand side, to be denoted by

$$\displaystyle{f_{y}(y) = D_{y}f(y) = \frac{\partial f} {\partial y}\;.}$$

The expression f y is often called the Jacobian (matrix) of the right-hand side. With this definition the Lipschitz constant can be calculated as

$$\displaystyle{ L =\sup _{y}\vert \,f_{y}(y)\vert \;, }$$
(1.31)

where the maximum (supremum sup) is taken over all possible arguments y. This seemingly only theoretical quantity will play an important role later in connection with the definition of “stiffness” of ODEs, see Sect. 2.1.4 For illustration purposes, we give two scalar examples of the above cases.

Example 2 (Case (a))

Consider an example similar to the monomolecular reaction (1.11),

$$\displaystyle{y^{{\prime}} = -ky,\quad y(0) = y_{ 0},\quad k > 0\;.}$$

The right-hand side is linear so that \(\vert f_{y}(y)\vert = k\). There exists a global Lipschitz constant L = k and thus a unique solution over all times, in the special case

$$\displaystyle{y^{{\ast}}(t) = y_{ 0}\exp (-kt)\;.}$$

As k > 0, the solution is bounded for all t ≥ 0.

Example 3 (Case (b))

Consider the nonlinear example,

$$\displaystyle{y^{{\prime}} = y^{2},\quad y(0) = 1\;,}$$

similar to the bimolecular reaction (1.13). Here we obtain \(\vert f_{y}(y)\vert = 2\vert y\vert \), which is only bounded, if we restrict the values of y. Thus we have only local Lipschitz continuity of f. In fact, by solving this equation analytically (using separation of variables), we see that there exists a unique solution

$$\displaystyle{y^{{\ast}}(t) = \frac{1} {1 - t},\quad -\infty < t < 1,}$$

only up to some finite time \(t_{+} = 1\). In Fig. 1.8 we give the graph of the solution.

Fig. 1.8
figure 8

Solution graph for Example 3

Remark 3

In systems biology, such a Lipschitz condition will typically only hold locally, i.e. for restricted arguments y, which would formally allow for case (b) as well. However, due to mass conservation (see the examples (1.12) or (1.14)) case (b) can be excluded, since any bounded sum of positive terms assures that each term is bounded. In actual modelling, some scientists ignore mass conservation – with the danger that then solutions may “blow up”. In addition, note that in numerical simulation things turn already to be bad when the solution only “nearly” blows up. Such events occur, e.g., in the realistic example in Sect. 3.5.3, where there is no mass conservation in the model.

1.3.1.2 Phase Flow and Evolution

Suppose a linear system of equations were given, say Ax = b. If it has a unique solution, say x , then this can be written as \(x^{{\ast}} = A^{-1}b\). The definition of the matrix inverse A −1 is just a clean notation to indicate the uniqueness of the solution; by no means should the linear equation be solved by first computing the matrix inverse and then multiply it to the right-hand side b.

In a similar way, a notation to indicate that an ODE initial value problem has a unique solution, say y , has emerged. For an autonomous initial value problem

$$\displaystyle{ y^{{\prime}} = f(y),\quad y(0) = y_{ 0}\;, }$$
(1.32)

we write

$$\displaystyle{y^{{\ast}}(t) =\varPhi ^{t}y_{ 0}}$$

in terms of some phase flow (often just called flow) Φ t satisfying a semigroup property

$$\displaystyle{\varPhi ^{t-t_{1} }\varPhi ^{t_{1} }y_{0} =\varPhi ^{t}y_{ 0},\quad t_{1} \in [0,t]\;.}$$

For a non-autonomous IVP

$$\displaystyle{y^{{\prime}} = f(t,y),\quad y(t_{ 0}) = y_{0}}$$

the unique solution y is defined via the evolution \(\varPhi ^{t,t_{0}}\) as

$$\displaystyle{y^{{\ast}}(t) =\varPhi ^{t,t_{0} }y_{0}\;.}$$

The evolution satisfies the semigroup property

$$\displaystyle{ \varPhi ^{t,t_{1} }\varPhi ^{t_{1},t_{0} }y_{0} =\varPhi ^{t,t_{0} }y_{0},\quad t_{1} \in [t_{0},t]\;. }$$
(1.33)

The notations \(\varPhi ^{t}y_{0}\) and \(\varPhi ^{t,t_{0}}y_{0}\) should not be misunderstood: these mappings are nonlinear functions of the initial values y 0. As in the case of the matrix inverse for linear equations, these notations should not be regarded as a recipe to solve the given ODE problem.

1.3.2 Sensitivity of Solutions

In a first step, we want to study the effect of a perturbation of the initial value y 0 in the form

$$\displaystyle{y_{0}\mapsto y_{0} +\delta y_{0}\;.}$$

1.3.2.1 Propagation Matrices

In the autonomous case, the question is how this deviation propagates along the solution \(y(t) =\varPhi ^{t}y_{0}\). In order to study this propagation, let us start with Taylor’s expansion with respect to the initial perturbation δ y 0, i.e.

$$\displaystyle{\varPhi ^{t}(y_{ 0} +\delta y_{0}) -\varPhi ^{t}y_{ 0} = D_{y}\varPhi ^{t}y\vert _{ y=y_{0}}\delta y_{0} + D_{y}^{2}\varPhi ^{t}y\vert _{ y=y_{0}}[\delta y_{0},\delta y_{0}] +\ldots \;.}$$

Upon dropping terms of second and higher order in δ y 0, we arrive at some linearized perturbation theory

$$\displaystyle{\varPhi ^{t}(y_{ 0} +\delta y_{0}) -\varPhi ^{t}y_{ 0}\doteq D_{y}\varPhi ^{t}y\vert _{ y=y_{0}}\delta y_{0} =:\delta y(t)\;,}$$

wherein the notation \(\doteq\) denotes the linearization. The thus defined perturbation δ y(t) is given by the linear mapping

$$\displaystyle{ \delta y(t) = W(t)\delta y_{0} }$$
(1.34)

in terms of the (d, d)-matrix

$$\displaystyle{W(t):= D_{y}\varPhi ^{t}y\vert _{ y=y_{0}} = \frac{\partial y(t)} {\partial y_{0}} \quad \Rightarrow \quad W(0) = I_{d}}$$

called the propagation matrix or Wronskian matrix. This matrix can be interpreted as the sensitivity of the nonlinear mapping Φ t with respect to the initial value y 0. Just like in the nonlinear case (1.33), we get some semigroup property

$$\displaystyle{ W(t - t_{1})W(t_{1}) = W(t),\quad t_{1} \in [0,t]\;. }$$
(1.35)

For non-autonomous IVPs, we merely modify the definition of the Wronskian matrix by expanding the notation to

$$\displaystyle{W(t,t_{0}):= D_{y}\varPhi ^{t}y\vert _{ y=y_{0}} = \frac{\partial y(t)} {\partial y(t_{0})}\quad \Rightarrow \quad W(t,t) = I_{d}\;\text{for all}\;t}$$

and thus obtain the analogous linear relation

$$\displaystyle{ \delta y(t) = W(t,t_{0})\delta y_{0}\;. }$$
(1.36)

The corresponding semigroup property reads

$$\displaystyle{ W(t,t_{1})W(t_{1},t_{0}) = W(t,t_{0}),\quad t_{1} \in [t_{0},t]\;. }$$
(1.37)

1.3.2.2 Variational Equation

Starting from (1.34) we may derive an ODE for the perturbation according to

$$\displaystyle{\delta y^{{\prime}} = W^{{\prime}}(t)\delta y_{ 0}\;.}$$

Upon recalling the definition of the propagation matrix, we find that

$$\displaystyle{ W^{{\prime}}(t) = f_{ y}(\varPhi ^{t}y_{ 0})W(t),\quad W(0) = I_{d}\;. }$$
(1.38)

Insertion of this ODE above then yields

$$\displaystyle{\delta y^{{\prime}} = f_{ y}(\varPhi ^{t}y_{ 0})W(t)\delta y_{0} = f_{y}(\varPhi ^{t}y_{ 0})\delta y}$$

The thus arising linear ODE

$$\displaystyle{ \delta y^{{\prime}} = f_{ y}(\varPhi ^{t}y_{ 0})\delta y,\quad \delta y(0) =\delta y_{0} }$$
(1.39)

is called the variational equation . Note that this equation is non-autonomous due to the time dependent argument in the derivative matrix f y . Its formal solution is (1.34), which shows that the Wronskian matrix is just the flow (or evolution, respectively) of the variational equation. Note that (1.38) is just the variational equation for the Wronskian matrix itself.

For the non-autonomous case \(y^{{\prime}} = f(t,y)\), we would obtain the modified variational equation

$$\displaystyle{ \delta y^{{\prime}} = f_{ y}(\varPhi ^{t}y_{ 0},t)\delta y + f_{t}(\varPhi ^{t}y_{ 0},t),\quad \delta y(0) =\delta y_{0}\;. }$$
(1.40)

Analogously to the autonomous case, Eq. (1.36) supplies the solution of this non-autonomous variational equation.

1.3.2.3 Condition Numbers

With the above preparations, we are now ready to define the condition of initial value problems. Recall from introductory textbooks on Numerical Analysis (such as [17]) that the condition of a problem is independent of any algorithm applied to solve it. There are two basic possibilities depending on the focus of interest. For notation, we introduce | ⋅ | as the modulus of the elements of a vector or matrix to be well distinguished from \(\|\cdot \|\), the norm of a vector or matrix.

  1. (a)

    Assume one is interested only in the solution y(t) at a specific time t. Then the pointwise condition number κ 0(t) may naturally be defined as the smallest number for which

    $$\displaystyle{ \vert \delta y(t)\vert \leq \kappa _{0}(t) \cdot \vert \delta y_{0}\vert \;. }$$
    (1.41)

    On the basis of (1.34), we thus arrive at the definition

    $$\displaystyle{ \kappa _{0}(t) =\| W(t)\|\;,\quad \kappa _{0}(0) = 1\;. }$$
    (1.42)
  2. (b)

    If one is interested in the entire course of the solution y(t) on the whole time interval [0, t], then the interval condition number κ[0, t] may be defined as the smallest number for which

    $$\displaystyle{\max _{s\in [0,t]}\vert \delta y(s)\vert \leq \kappa [0,t] \cdot \vert \delta y_{0}\vert \;}$$

    which then implies

    $$\displaystyle{ \kappa [0,t] =\max _{s\in [0,t]}\kappa _{0}(s)\;. }$$
    (1.43)

    The above semigroup property  (1.37) directly leads to the following relations:

    1. (i)

      κ[0, 0] = 1,

    2. (ii)

      κ[0, t 1] ≥ 1,

    3. (iii)

      \(\kappa [0,t_{1}] \leq \kappa [0,t_{2}],\quad 0 \leq t_{1} \leq t_{2}\)

    4. (iv)

      \(\kappa [0,t_{2}] \leq \kappa [0,t_{1}] \cdot \kappa [t_{1},t_{2}],\quad 0 \leq t_{1} \leq t_{2}\)

The role of the local condition number can be seen in the following example.

Example 4

For the famous Kepler problem , which describes the motion of two bodies (say Earth-Moon) in a gravitational field, one may show that

$$\displaystyle{ \kappa _{0}^{\mathrm{Kepler}}(t) \sim t\;, }$$
(1.44)

which is a mild increase. The situation is very different in molecular dynamics , see, e.g., [16, Section 1.2], where one obtains

$$\displaystyle{ \kappa _{0}^{\mathrm{molecular\;dynamics}}(t) \sim \exp (t/t_{\mathrm{ crit}}),\qquad t_{\mathrm{crit}} \approx 100\,\mathrm{fs} = 10^{-13}\,\mathrm{s}\;. }$$
(1.45)

This means that after some very small critical time \(t_{\mathrm{crit}}\) the initial value problems turn to get ill-posed. As a consequence, a different type of computational approach is necessary, called conformation dynamics , more recently also Markov state modelling , see, e.g., the survey article by P. Deuflhard and C. Schütte [21] and references therein.

The just introduced two different condition numbers will be needed below in Sect. 2.1.2, where we discuss error concepts in the numerical simulation, and in the following Sect. 1.3.3.

1.3.2.4 Parameter Sensitivities

In the majority of problems in systems biology, parameter dependent systems arise in the form

$$\displaystyle{y^{{\prime}} = f(y,p),\quad y(0) = y_{ 0} \in \mathbb{R}^{d},\;p \in \mathbb{R}^{q}\;.}$$

Here we are naturally interested in the effect of perturbations

$$\displaystyle{p\mapsto p +\delta p\;.}$$

with respect to \(p = (p_{1},\ldots,p_{q})\). For this purpose we define the parameter sensitivities

$$\displaystyle{ y_{p} = \frac{\partial y} {\partial p} \in \mathbb{R}^{d\times q}\;. }$$
(1.46)

Upon application of the chain rule of differentiation, this quantity can be seen to satisfy a modified variational equation for each parameter component

$$\displaystyle{ y_{p}^{{\prime}} = f_{ y}(y(t),p)y_{p} + f_{p},\quad y_{p}(0) = 0\;. }$$
(1.47)

Remark 4

The actual numerical solution of any of the variational equations (1.39), (1.40), or (1.47) requires to treat an extended ODE system including the original ODE (1.32) to compute the argument within the Jacobians f y or f p , respectively. For certain algorithmic details see Sect. 2.5.1 below.

1.3.3 Asymptotic Stability

In order to sharpen our mathematical intuition, we analyze the two types of condition numbers as introduced in the previous section for a notorious scalar ODE problem.

Example 5

Despite its simplicity this problem yields deep insight into the structure of ODEs. Let \(\lambda \in \mathbb{R}\) denote some parameter in the initial value problem

$$\displaystyle{ y^{{\prime}}(t) = g^{{\prime}}(t) +\lambda (y - g(t)),\quad y(0) = g(0) +\delta y_{ 0}\;. }$$
(1.48)

The general solution may be written in the form

$$\displaystyle{\delta y(t):= y(t) - g(t) =\exp (\lambda t)\delta y_{0}\;.}$$

Obviously, there exists an equilibrium solution y(t) = g(t) for all t where g is defined. In Fig. 1.9, we give two examples for the above model problem. Upon varying the initial values y 0, we may clearly distinguish two qualitatively different situations, asymptotic stability versus inherent instability.

Fig. 1.9
figure 9

Example 5 for an equilibrium solution \(g =\sin (t),t \in [0,1.5]\). Left: asymptotically stable problem (here: \(\lambda = -16,\;\epsilon _{0} = 1\)). Right: inherently unstable problem (here: \(\lambda = 3,\;\epsilon _{0} = 0.05\))

Condition numbers. Let us exemplify the two condition numbers defined above. From definition (1.41) and (1.42) we immediately obtain the pointwise condition number

$$\displaystyle{\kappa _{0}(t) = \vert \exp (\lambda t)\vert \;,}$$

from which (1.43) yields the interval condition number, say κ[0, T] over an interval [0, T]. There are three qualitatively different situations for the two characteristic numbers:

  1. (a)

    λ < 0: Here we get

    $$\displaystyle{\kappa _{0}(t) =\exp (-\vert \lambda \vert t)\stackrel{t \rightarrow \infty }{\longrightarrow }0\;,\quad \kappa [0,T] =\kappa _{0}(0) = 1,}$$

    i.e. any initial perturbation will decay over sufficiently large time intervals, see Fig. 1.9, left; in this case, the equilibrium solution y = g is said to be asymptotically stable;

  2. (b)

    λ = 0: here we obtain

    $$\displaystyle{\kappa [0,T] =\kappa _{0}(T) = 1,\quad \text{for all}\;T \geq 0\;,}$$

    i.e. any initial perturbation is preserved;

  3. (c)

    λ > 0: here we get

    $$\displaystyle{\kappa [0,T] =\kappa _{0}(T) =\exp (\lambda T)\stackrel{T \rightarrow \infty }{\longrightarrow }\infty \;,}$$

    i.e. any perturbation grows exponentially with time, the equilibrium solution y = g is inherently unstable, see Fig. 1.9, right.

The same three cases also appear for complex valued \(\lambda \in \mathbb{C}\), if we replace λ by ℜ λ in (a), (b), (c) above.

Next, we want to study a characterization of the stability properties for two more general cases.

1.3.3.1 Matrix Exponential

Suppose we have to solve the linear homogeneous autonomous initial value problem

$$\displaystyle{ y^{{\prime}} = Ay,\quad y(0) = y_{ 0} \in \mathbb{R}^{d}\;. }$$
(1.49)

Its formal solution is often written in terms of the matrix exponential

$$\displaystyle{y(t) =\exp (tA)y_{0}\;.}$$

The careful reader will observe that the matrix exponential is just the Wronskian matrix for the special case (1.49), i.e.

$$\displaystyle{W(t) =\exp (tA)}$$

In [57], a list of algorithms for the evaluation of \(\exp (tA)y_{0}\) is collected. We want to emphasize, however, that the matrix exponential, just like any phase flow in general, should preferably be understood as a formal representation of the solution of (1.49), not as a basis for actual computation.

The following property of the matrix exponential is most important. Let M be an arbitrary nonsingular matrix. Then one can show that

$$\displaystyle{ \exp (tMAM^{-1}) = M\exp (tA)M^{-1} }$$
(1.50)

For principal reasons, we briefly outline the proof. Upon multiplying (1.49) by M, we get

$$\displaystyle{\underbrace{\mathop{My^{{\prime}}}}\limits _{=:\bar{y}^{{\prime}}} =\underbrace{\mathop{ MAM^{-1}}}\limits _{=:\bar{A}}\underbrace{\mathop{ My}}\limits _{=\bar{y}}\quad \Leftrightarrow \quad \bar{y}^{{\prime}} = \bar{A}\bar{y},\;\bar{y}(0) = My_{ 0}\;.}$$

This yields the formal solution

$$\displaystyle{\bar{y}(t) =\exp (t\bar{A})\bar{y}(0)}$$

and, after insertion of the definitions,

$$\displaystyle{M\exp (tA)y_{0} =\exp (tMAM^{-1})My_{ 0}\;,}$$

which holds for every y 0 so that (1.50) is proven.

Warning. Note that generally

$$\displaystyle{\exp (t(A + B))\neq \exp (tA)\exp (tB)\;,}$$

unless the so-called commutator \([A,B]_{-} = AB - BA\) vanishes.

1.3.3.2 Stability of Linear Homogeneous Autonomous ODEs

For simplicity, let us assume now that A is diagonalizable. The results also hold in the non-diagonalizable case, which, however, is skipped here, since it is rather technical. In this case there exists a matrix M such that

$$\displaystyle{\bar{A} = M\mathop{\mathrm{\mathrm{diag}}}\nolimits (\lambda _{1},\ldots,\lambda _{d})M^{-1}\;.}$$

Then, with \(\bar{y} = My\), the ODE y  = Ay decomposes into d one-dimensional ODEs

$$\displaystyle{ \bar{y}_{i}^{{\prime}} =\lambda _{ i}\bar{y}_{i},\quad i = 1,\ldots,d\;, }$$
(1.51)

from which we obtain

$$\displaystyle{\bar{y}_{i}(t) =\exp (t\lambda _{i})\bar{y}_{i}(0)\quad \Rightarrow \quad \vert \bar{y}_{i}(t)\vert =\exp (t\mathfrak{R}(\lambda _{i}))\vert \bar{y}_{i}(0)\vert \;.}$$

This gives rise to the following classification:

  1. (a)

    \(\mathfrak{R}(\lambda _{i}) < 0\; \Rightarrow \;\vert \bar{y}_{i}(t)\vert \rightarrow 0\) for t → , i.e. the solution component \(\bar{y}_{i}\) dies out asymptotically,

  2. (b)

    \(\mathfrak{R}(\lambda _{i}) \leq 0\; \Rightarrow \;\vert \bar{y}_{i}(t)\vert \leq \vert \bar{y}_{i}(0)\vert \), i.e. the solution component \(\bar{y}_{i}\) remains bounded for all t ≥ 0,

  3. (c)

    \(\mathfrak{R}(\lambda _{i}) > 0\; \Rightarrow \;\vert \bar{y}_{i}(t)\vert > \vert \bar{y}_{i}(0)\vert \), i.e. the solution component \(\bar{y}_{i}\) blows up for t → .

Of course, for systems, different components of \(\bar{y}\) may fall into different classes and may be mixed via the transformation matrix M. Hence, we arrive at the following stability criteria:

  1. (a)

    The solution y is stable, if \(\mathfrak{R}(\lambda _{i}) \leq 0\;\) for all i.

  2. (b)

    The solution y is asymptotically stable, if \(\mathfrak{R}(\lambda _{i}) < 0\;\) for all i.

  3. (c)

    The solution is unstable, if the condition \(\mathfrak{R}(\lambda _{i}) > 0\;\) holds for at least one index i; in this case, the instability will occur in at least one direction.

1.3.3.3 Stability of Nonlinear ODEs Around Fixed Points

We now consider general nonlinear autonomous ODEs. As shown above, linearized perturbations δ y are governed by the variational equation (1.39). This equation is linear, but non-autonomous, i.e. of the type

$$\displaystyle{\delta y^{{\prime}} = A(t)\delta y,\quad \text{where}\quad A(t) = f_{ y}(y(t))}$$

with y(t) the given solution to be studied. As a consequence, the above stability classification does not apply. Counter-examples, where the eigenvalues of some matrix A(t) satisfy the above stability criterion for all t, but the perturbations δ y(t) nevertheless blow up, can be found in the literature (see the notorious example of H. O. Kreiss, e.g., [16, Remark 3.29]).

For this reason, a simpler approach studies the behavior of the solution around some fixed point \(y^{{\ast}}\in \mathbb{R}^{d}\) defined by f(y ) = 0. Upon defining initial values

$$\displaystyle{y(0) = y^{{\ast}} +\delta y_{ 0}}$$

we arrive at the variational equation,

$$\displaystyle{\delta y^{{\prime}} = f_{ y}(y^{{\ast}})\delta y,\quad \delta y(0) =\delta y_{ 0}\;.}$$

Obviously, in this case the Jacobian matrix \(A:= f_{y}(y^{{\ast}})\) is autonomous so that the above stability theory applies.

Recall, however, that we have used a linearized perturbation analysis. Caution against blind application of such a theory is strongly advised. For illustration, we give the following warning example.

Example 6

We compare two simple nonlinear initial value problems.

  1. (a)

    The ODE is given by

    $$\displaystyle{y^{{\prime}} = -y^{3}\;.}$$

    Its solution for arbitrary initial value y 0 is

    $$\displaystyle{y(t) = \left ( \frac{1} {y_{0}^{2}} + 2t\right )^{-1/2}\stackrel{t \rightarrow \infty }{\longrightarrow }0\;,}$$

    i.e. the system returns from any given y 0 to the fixed point \(y^{{\ast}} = 0\). Hence, it is asymptotically stable.

  2. (b)

    This time the ODE is given by

    $$\displaystyle{y^{{\prime}} = y^{3}\;.}$$

    Its solution is

    $$\displaystyle{y(t) = \left ( \frac{1} {y_{0}^{2}} - 2t\right )^{-1/2}\stackrel{t \rightarrow t_{ +}}{\longrightarrow }\infty \;,}$$

    i.e. the system blows up at \(t_{+} = 1/(2y_{0}^{2})\). Hence, it is unstable.

Observe, however, that both systems have the same variational equation \(\delta y^{{\prime}} = 0\) around the fixed point y  = 0, which implies that \(\delta y(t) =\mathop{ \mathrm{\mathrm{const}}}\nolimits\), even though the qualitative behavior of the two ODEs is very different. Consequently, the linearized perturbation analysis may be misleading in predicting the qualitative behavior of a nonlinear initial value problem.

1.3.4 Singularly Perturbed Problems

Assume that a given ODE system has a solution y = (u, v) that naturally splits into a “slow” component u and a “fast” component v. Such a system may be written as a two-component system of the kind

$$\displaystyle{ u_{\varepsilon }^{{\prime}} = f(u_{\varepsilon },v_{\varepsilon }),\quad \varepsilon \,v_{\varepsilon }^{{\prime}} = g(u_{\varepsilon },v_{\varepsilon }) }$$
(1.52)

where some “fast” time scale \(\tau = t/\varepsilon\) with \(0 <\varepsilon \ll 1\) has been introduced such that

$$\displaystyle{ \frac{\mathrm{d}v} {\mathrm{d}(\tau )} = \frac{\mathrm{d}v} {\mathrm{d}(t/\varepsilon )} =\varepsilon \, \frac{\mathrm{d}v} {\mathrm{d}t} =\varepsilon \, v^{{\prime}}}$$

Assume further that

$$\displaystyle{ \mathfrak{R}(\lambda (g_{v})) < 0 }$$
(1.53)

and let \(\varepsilon \rightarrow 0^{+}\). Then, in the quasi-steady state approach (abbreviated: QSSA), we obtain the differential-algebraic equation (DAE)

$$\displaystyle{ u_{0}^{{\prime}} = f(u_{ 0},v_{0}),\quad 0 = g(u_{0},v_{0}) }$$
(1.54)

for some two-component solution y 0 = (u 0, v 0). Due to (1.53) we may interpret the limit in such a way that, for arbitrary starting value v 0(0), the solution component v 0 “immediately” approaches a near-by value on the constraint manifold. For illustration, see Fig. 1.10.

Fig. 1.10
figure 10

Singular perturbation problem: Immediate approach from arbitrary starting value v 0(0) to a point v 0 on the manifold g(u, v) = 0

With the availability of modern adaptive stiff integrators (see Chap. 2 below), there typically is no visible performance difference between the numerical solution of the ODE (1.52) and of the DAE (1.54). In fact, while the ODE system usually has a unique solution, the DAE may not have a unique solution, unless further assumptions hold. Instead of diving into theoretical details (to be found, e.g., in the textbook [16] and references therein) we give an illustrative example from reaction kinetics.

Example 7

This example treats a chemical network that models the thermal decomposition of n-hexane. The system comprises 47 chemical reactions for 25 chemical species, i.e. there are d = 25 ODEs. Among the 25 species, chemical insight may identify 13 species as chemically stable, while 12 are so-called “free radicals”. Hence, in a first QSSA treatment of the kind (1.54) (reported in [18]), one might be tempted to come up with 13 ODEs and 12 algebraic equations. In this case there exists no unique solution – as can be proven mathematically precisely; this result also came out by application of the stiff integrator LIMEX, which is equipped with a special uniqueness monitor (skipped here). If only 7 of the radicals are selected for the algebraic equations (after some trial and error), then a unique solution exists. However, the computing times are the same as without any QSSA preprocessing. These results are arranged in Table 1.1.

Table 1.1 Computing time comparison of two QSSA approaches for an ODE system originating from 47 chemical reactions for d = 25 species (due to [18]). Chemical insight would indicate a subset of 12 species regarded as “free radicals”, which mathematically leads to a problem that does not have a unique solution