Let f∈C(R×Rd,Rd) be continuous in the first variable and Lipschitz continuous in the second variable. For all p∈Rd, the Picard–Lindelöf theorem ensures the existence of an open interval I⊂R containing 0 and a unique u:I→Rd such that
∀t∈I,u˙(t)=f(t,u(t)),u(0)=p.
Besides, u depends continuously on u; in other words, this initial value problem is well-posed.
We are willing to approximate the flow of f in the interval [0,T] for some T∈I∩R+. For simplicity, we construct an approximate flow using constant time steps. Let n≥1, define h=T/n and tk=kh for k∈{0,…,n}. We consider a general marching procedure described by the following framework:
A starting mapSh:Rd→S embeds the initial condition into a state space S,
A marching mapMh:S→S evolves the state for one time step,
A finishing mapFh:S→Rd converts the state space into the solution space.
We define the recurrences (sk)0≤k≤n and (uk)0≤k≤n by
s0=Sh(p),sk+1=Mh(sk),uk=Fh(sk).
In other words, sk=Mhk∘Sh(u0) and uk=Fh∘Mhk∘Sh(u0). We want to design the scheme (Sh,Mh,Fh) so that uk approximates u(tk).
Let Eh:Rd→Rd denote the exact flow of f for a time step h, that is E(u(t))=u(t+h). A first idea is to compare the approximate and continuous solutions at time T. The corresponding error is called the global truncation error and is defined as
GTE(h)≐∥Fh∘Mhn∘Sh(p)−Ehn(p)∥.
We are only in the dependence of GTE on h and the derivatives of f; not on p. It is easier to look at the error after a single step. This is called the local truncation error,
LTE(h)≐∥Fh∘Mh∘Sh(p)−Eh(p)∥.
We can now state the consistency and convergence of a scheme.
Definition (Consistency) A scheme is consistent with orderp if LTE(h)=O(hp). When p=0, this property is called pre-consistency. When p=1, this property is called consistency.
Definition (Convergence) A scheme is convergent with orderp if GTE(h)=O(hp+1).
We now move to the linear stability of a scheme. It is defined in terms of the behaviour of the scheme when applied to the test problem f(t,u)=λu for λ∈C. The exact solution is u(t)=exp(λt)p; in particular u vanishes at infinity when ℜλ<0. We are interested in schemes that mimic this property numerically.
Definition (Linear stability) The stability function of a scheme is the transfer function M:C→Rd×d involved in uk+1=M(λh)uk when applied to f(t,u)=λu.
Zero-stability / D-stability: M(0) is bounded, that is, ∥∥M(0)k∥∥ is bounded.
Strict zero-stability: M(0) is is convergent, that is, ∥∥M(0)k∥∥→0.
The scheme is said to be absolute stable at z=λh∈C: ρ(M(z))<1. The region of absolute stability of the scheme is defined as
R≐{z∈C,ρ(M(z))<1}.
The interval of stability is R∩R. Related stability notions are as follows:
A-stability: {z∈C,ℜz<0}⊂R.
A(α)-stability: {z∈C,ℜz≤0,∣∣ℜzℑz∣∣≤tanα}⊂R.
A(0)-stability: A(α)-stability for some α>0.
A0-stability: A(α)-stability for α=0.
Stiff stability: {z∈C,ℜz<−C}∪{z∈C,−C≤ℜz<0,∣ℑz∣≤D}⊂R for some C,D>0.
I-stability: {z∈C,ℜz=0}⊂R.
L-stability / Super stability / Strong A stability: A-stability and ρ(M(z))→0 when z→∞.
AN-stability: equivalent of A-stability when λ∈Cd.
We now move to some nonlinear stability properties. We are interested in dissipative problems where
ℜ⟨f(t,u)−f(t,v),u−v⟩≤0.
In that case, if u0,v0∈Rd are two initial conditions, then the corresponding solutions u,v satisfy
∂t(∥u(t)−v(t)∥2)≤0,
so u and v merge at infinity. It is desirable to reproduce this behaviour numerically.
Definition (B-stability and BN-stability, G-stability) A scheme is B-stable if ∥un+1−vn+1∥≤∥un−vn∥ when applied to a monotonic autonomous problem and two arbitrary initial conditions. A scheme is BN-stable if the same condition holds for a non-autonomus problem. G-stability refers to the same property but in a norm induced by an SPD matrix.
Definition (RK-stability) A scheme is RK-stable if M(z) has a single non-zero eigenvalue. This eigenvalue is then interpreted as the stability function of a Runge-Kutta method.
Definition (Symplecticity) A scheme is symplectic if its stability function is a symplectic map when applied to a Hamiltonian system.
Similar stability and order notions can be defined in the state space or in some internal process of the marching procedure.
In the following, we briefly introduce the θ-method, Runge-Kutta schemes and linear multi-step. We then provide a detailed analysis of general linear methods, which are a generalisation of theses schemes.
The θ-method is a simple family of schemes that includes the explicit and implicit Euler schemes, as well as the trapezoidal rule as special cases. We simply consider S=Rd, S=F=IdRd and M(sk)=sk+1 is defined implicitly through
sk+1=sk+hf((1−θ)tk+θtk+1,(1−θ)sk+θsk+1),
where θ∈R characterises the scheme. The choice θ=0 is the only explicit member of the family and is known as explicit Euler. The choice θ=1 corresponds to implicit Euler, and θ=1/2 is the trapezoidal rule.
The third-order Taylor expansion of the exact and approximate solutions are
Observe that regardless of θ, the expansions u(tk+1) and uk+1 coincide up to O(h), so the θ-method is at least of order 1. They coincide up to O(h2) if and only if θ=1/2.
In the case of a linear first-order ODE, the definition of uk+1 is
uk+1=uk+(1−θ)zuk+θzuk+1,
so we infer
M(z)=1−θz1+(1−θ)z.
Observe that
∣M(z)∣≤1⟺(1−2θ)∣z∣2+2ℜ(z)≤0.
We distinguish three classes:
If θ<1/2, the stability region is the circle of radius 1/(1−2θ) centred at (−1/(1−2θ),0). This scheme is not A-stable.
If θ=1/2, the stability region is the whole left complex plane. The scheme is A-stable.
If θ>1/2, the stability region includes the whole complex plane except the circle of radius 1/(2θ−1) and centred at (1/(2θ−1),0). In particular, this scheme is A-stable.
The Runge-Kutta method is a multi-stage method consisting in enforcing a zero residual at intermediate times between tk and tk+1, and forming uk+1 from linear combinations of these intermediate solutions. Here again, S=Rd and S=F=IdRd. A RK scheme depends on s≥1, a matrix A∈Rs×s and vectors b,c∈Rs. They are conveniently arranged in a Butcher tableau
Linear multi-step methods store previous iterates and predict the next. As notable examples, this class of methods includes Adams-Moulton, Adams-Bashford and Backward Differentiation Formula (BDF) methods.
In this setting, S=(Rd)r for some r≥1, S can be a Runge-Kutta method and represents u(kh) for k∈{0,…,r−1}. In that case F simply extracts the first component of the state, that is F(s1,…,sr)=s1. The marching procedure is defined as
M(s1,…,sr)=(s0,s1,…,sr−1),
where s0∈Rd solves
s0=i=1∑rαisi+hi=0∑rβif(tk−(i−1)h,si).
Here α∈Rr and β∈Rr+1 are the parameters of the method.
The stability matrix is the companion matrix of the polynomial π(w,z)=ρ(w)−zσ(w), so the stability condition at a given z∈C is that the roots of π(w,z) are in the unit circle.
The zero-stability requires the roots of ρ to lie in the unit circle. The pre-consistency condition is then ∑i=1rαi=1, that is ρ(1)=0. The consistency condition is ∑i=0rβi=r−∑i=1rαi(r−i), that is ρ′(1)−σ(1)=0.
Runge-Kutta and linear multi-step methods can be examined under the broad class of general linear methods (GLM). In this class of methods, we allow for r≥1 reused steps and s≥1 internal stages. Runge-Kutta methods are recovered for r=1, while linear multi-step methods correspond to s=1. GLM were introduced to offer more flexibility than RK and LM methods, provide a better understanding of order conditions, and break order barriers.
The state space is thus S=(Rd)r. The starting and finishing procedures depend on the particular scheme; we describe them below. The marching procedure has the form
Mh(s)i=Vijsj+hBijf(wj),
where w1,…,ws∈Rd are defined implicitly via
wi=Uijsj+hAijf(Wj).
These schemes are characterised by the matrices A∈Rs×s, B∈Rr×s, U∈Rs×r and V∈Rr×r, as well as assumptions on the interpretation of the state variables, the shape of the stage variables and the finishing procedure. One usually assume that the starting procedure is such that the state at time t represents approximations of u(t) involving higher-order derivatives, that is
si(t)=k=0∑pα0,ku(t)+O(hp+1).
where α0,…,αp∈Rr. We do not focus on the design of the starting procedure for now. The internal stages are assumed to represent
wi(t)=u(t+cih)+O(h2)
for some c∈Rs. Finally, we assume that the finishing procedure is just a linear combination of the state vectors, that is
Applied to the linear ODE f(t,u)=λu, the recursions defining w and sk read
w=Usk+zAw,sk+1=Vsk+zBw.
We readily infer sk+1=(V+zB(I−zA)−1U)sk, and thus
uk=Fh∘(V+zB(I−zA)−1U)k∘Sh(p).
Strictly speaking, the linear stability analysis requires the knowledge of Sh and Fh, but one usually directly relates it to the stability in the state space, and introduces
In particular for k=0, one must have Fh∘Sh=IdRd, so Sh must be left-invertible and Fh has to be a left-inverse of Sh. Besides, V must be power-bounded for uk to remain bounded.
The pre-consistency and consistency conditions are β∗Vα0=1 and β∗(B1+Vα1)=1. In fact, these are projections on the output space of the pre-consistency and consistency conditions in the state space, Vα0=α0 and α0+α1=B1+Vα1, respectively. It is often of interest to look for the pre-consistency and consistency at the stage level. These conditions are Uα0=1 and c=A1+Uα1, respectively.
The analysis of GLM is simplified through the formalism of B-series. We introduce ξ∈Bs to represent the stage vectors (corresponding to u(t+ch)) and η∈Br for the state vectors (corresponding to αku(k)(t)). They are related by
ξ=Uη+AξD=Ec+Oq+1,Eη=Vη+BξD+Op+1,E=β∗Eη+Oo+1.
Here q is the stage order, p is the state order and o is the order of the method.