Professional Documents
Culture Documents
Broyden Method
Broyden Method
Broyden Method
Proefschrift
door
geboren te Uithoorn
op 20 oktober 1976
Samenstelling van de promotiecommissie:
Introduction 1
i
ii Contents
Bibliography 201
Nawoord 227
xk+1 = f (xk ), k = 0, 1, 2, . . . ,
where xk denotes the state of the reactor after k periods. Periodic states of
the reactor are fixed points of the period map f and a stable cyclic steady
state can be computed by taking the limit of xk as k → ∞. Depending on
the convergence properties of the system at hand, the transient phase of the
process might be very long, and efficient methods to find the fixed points of f
are essential.
1
2 Introduction
for a certain constant c > 0. Since it is not always possible to determine the
Jacobian of g analytically, we often have to approximate Jg using finite differ-
ences. The number of function evaluations per iteration step in the resulting
approximate Newton’s method is (n + 1).
In 1965, Broyden [8] proposed a method that uses only one function evalu-
ation per iteration step instead of (n + 1). The main idea of Broyden’s method
is to approximate the Jacobian of g by a matrix Bk . Thus the scheme (2) is
replaced by
xk+1 = xk − Bk−1 g(xk ), k = 0, 1, 2, . . . . (3)
After every iteration step, the Broyden matrix Bk is updated using a rank-
one-matrix. If g(x) is an affine function, so for some A ∈ Rn×n and b ∈ Rn ,
g(x) = Ax + b, then
yk = Bk+1 sk , (4)
with
sk = xk+1 − xk and yk = g(xk+1 ) − g(xk ).
Equation (4) is called the secant equation and algorithms for which this con-
dition is satisfied are called secant methods. If we assume that Bk+1 and Bk
are identical on the orthogonal complement of the linear space spanned by s k ,
the condition in (4) results in the following update scheme for the Broyden
matrix Bk
sTk g(xk+1 )sTk
Bk+1 = Bk + (yk − Bk sk ) = B k + (5)
sTk sk sTk sk
In 1973, Broyden, Dennis and Moré [11] published a proof that the method
of Broyden is locally q-superlinearly convergent, i.e.,
kxk+1 − x∗ k
lim = 0.
k→∞ kxk − x∗ k
In 1979, Gay [22] proved that for linear problems the method of Broyden is in
fact exactly convergent in 2n iterations. Moreover, he showed that this implies
locally 2n-step, quadratic convergence for nonlinear problems
kxk+2n − x∗ k ≤ ckxk − x∗ k2 ,
4 Introduction
with c > 0. This proof of exact convergence was simplified and sharpened in
1981 by Gerber and Luk [23]. In practice, these results imply that the method
of Broyden needs more iterations to converge than the method of Newton.
Yet, since only one function evaluation is made for every iteration step, the
method of Broyden might significantly reduce the amount of CPU-time to
solve the problem.
In Chapter 1, we discuss the method of Newton and the method of Broyden
in more detail and in particular describe the derivation and convergence prop-
erties. Subsequently, we consider the method of Broyden for linear systems
of equations in Chapter 2. We deduce that Broyden’s method uses selective
information of the system to solve it.
Both Newton’s and Broyden’s method need to store an (n × n)-matrix,
see (2) and (3). Therefore, for high-dimensional systems, this might lead to
severe memory constraints. From the early seventies, there has been serious
attention paid to the issue of reducing the amount of storage required for
the iterative methods. Different techniques have appeared for solving large
nonlinear problems [62].
The problem that we consider is the general nonlinear equation (1), so
nothing is known beforehand about the structure of the Jacobian of the sys-
tem. In Chapter 3, we develop several limited memory methods that do not
depend on the structure of the Jacobian and are based on the method of
Broyden. In addition to a large reduction of the memory used, these limited
memory methods give more insight in the original method of Broyden, since we
investigate the question of how much and which information can be dropped
without destroying the property of superlinear convergence. In Section 3.2,
we derive our main algorithm, the Broyden Rank Reduction method (BRR).
To introduce the idea of the BRR method we first consider an example.
using initial estimate vector x0 = (1, . . . , 1). In order to obtain a good example
of memory reduction, we choose n = 100, 000. Starting with a simple initial
matrix B0 = −I, the first Broyden matrix is given by,
B1 = B0 + c1 dT1 ,
Because Q is the sum of five rank-one matrices, it has rank less or equal to
five, and if we compute the singular value decomposition of Q (see Section 3.2
for details) we see that Q can be written as
Q = σ1 u1 v1T + . . . + σ5 u5 v5T ,
This suggests that we can ignore the singular value σ5 in the singular value
decomposition of Q without changing the update matrix Q. We replace the
matrix Q by Qe with
e5 k = kB0 + Q − B0 − Qk
kB5 − B e = kσ5 u5 v5T k = σ5 ku5 kkv5 k = σ5 ,
6 Introduction
which is equal to zero in this case. After this reduction we can store a new
pair of update vectors
c5 := g(x6 )/ks5 k and d2 := s2 /ks2 k.
Continuing, on every iteration step we first remove the singular value σ5 of
Q before computing the new update. This leads to Algorithm 3.11 of Section
3.2, the Broyden Rank Reduction method, with parameter p = 5. Surprisingly
the fifth singular value of the update matrix remains zero in all subsequent
iterations until the process is converged, see Figure 1. Therefore, if in every
iteration we save the four largest singular values of the update matrix and
drop the fifth singular value, we do not alter the Broyden matrix. In fact, we
apply the method of Broyden itself.
2.5
singular values
1.5
0
0 5 10 15
iteration k
Figure 1: The singular values of the update matrix during the BRR process with
p = 5.
5
10
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 10 20 30 40 50 60
iteration k
Figure 2: The convergence rate of the Broyden Rank Reduction method when com-
puting a fixed point of the function f given by (6). [’◦’(p = 1), ’×’(p = 2), ’+’(p = 3),
’∗’(p = 4), ’¤’(p = 5)]
norm. For nonlinear functions g the difference kBk − Jg (x∗ )kF , measured in
the Frobenius norm, may increase. However, we can choose a neighborhood
N1 of the solution x∗ and a neighborhood N2 of the Jacobian Jg (x∗ ), so that
if (x0 , B0 ) ∈ N1 × N2 the difference kBk − Jg (x∗ )kF never exceeds two times
the initial difference kB0 − Jg (x∗ )kF .
where the elements of S are in between zero and one. The matrix S contains
in fact the values of a gray-scale picture of a cat. We consider the system
of linear equations Ax = 0 and apply the method of Broyden from initial
condition x0 = (1, . . . , 1) and with initial Broyden matrix B0 = −I. The
dimension of the problem is n = 100. Since A is invertible, the Theorem of
Gay implies that it will take Broyden’s method less then 200 iterations to solve
the problem exactly. It turns out that in the simulation, about 219 iterations
are needed to reach a residual of kg(xk )k < 10−12 . The finite arithmetic of the
computer has probably introduced a nonlinearity into the system so that the
conditions of Gay’s Theorem are not completely fulfilled.
In Figure 3, we have plotted the matrix A and the Broyden matrix for
different iterations. We observe that in some way the Broyden matrix Bk
tries to approximate the Jacobian A. Although the final Broyden matrix is
certainly not equal to the Jacobian, it approximates the Jacobian to such an
extent that the solution to the problem Ax = 0 can be found.
After 50 iterations, the rough contour of the cat can be recognized in
the Broyden matrix B50 . While reconstructing the two main diagonals of the
Jacobian, the picture of the cat is sharpened. Note that the light spot at
the left side of the image of the Jacobian is considered less interesting by the
method of Broyden. On the other hand, the nose and eyes of the cat are
clearly detected.
Jacobian B50
B100 B218
Figure 3: The Jacobian as given by (8) and the Broyden matrix at three different
iterations of the Broyden process (n = 100). Black corresponds to values smaller than
0 and white to values larger than 1.
temperature
conversion
temperature
rad. distance rad. distance
ax. distance conversion ax. distance
The concentration and temperature depend on the axial and the radial
direction, c = c(z, r, t) and T = T (z, r, t). The second spatial dimension is
incorporated by including the radial components of the diffusion terms,
½ ¾ ½ ¾
1 ∂ ∂c 1 ∂ ∂T
εDrad r and λrad r ,
r ∂r ∂r r ∂r ∂r
in the component balance and the energy balance, respectively. The cooling
term in the energy balance disappears. Instead, at the wall of the reactor the
boundary condition
¯
∂T ¯¯
λrad = −Uw (T (R) − Tc ), (9)
∂r ¯r=R
is added to the system. Equation (9) describes the heat loss at the reactor
wall to the surrounding cooling jacket.
In summary, we can now give the complete two-dimensional model. The
component balance is given by
½ ¾
∂c ∂2c ∂c 0 1 ∂ ∂c
ε = εDax 2 − u − r (c, T ) + εDrad r , (10)
∂t ∂z ∂z r ∂r ∂r
∂T ∂2T ∂T
((ρcp )s (1 − ε) + (ρcp )g ε) = λax 2 − u(ρcp )g +
∂t ∂z ∂z ½ ¾
0 1 ∂ ∂T
(−∆H)r (c, T ) + λrad r , (11)
r ∂r ∂r
0
10
residual kg(xk )k
−5
10
PSfrag replacements
0 10 20 30 40 50 60 70 80 90 100
iteration k
Figure 5: The convergence rate of the method of Broyden and the BRR method, for
different values of p, applied to the period map of the reverse flow reactor using the
two-dimensional model (10)-(12) with the parameter values of Tables C.1 and C.2.
[’+’(p = 10), ’∗’(p = 5), ’O’(p = 2)]
14 Introduction
Part I
15
Chapter 1
An introduction to iterative
methods
g(x) = 0, (1.1)
17
18 Chapter 1. An introduction to iterative methods
g(xk )
xk+1 = xk − , k = 0, 1, 2, . . . . (1.2)
g 0 (xk )
This iteration scheme involves solving a local affine model for the function g
instead of solving the nonlinear equation (1.1) directly. A clear choice for the
affine model, denoted by lk (x), is the tangent line to the graph of g in the
point (xk , g(xk )). So, the function is linearized in the point xk , i.e.,
and xk+1 is defined to be the zero of this affine function, which yields (1.2).
We illustrate this idea with an example.
g(x) = x2 − 2. (1.4)
√
The derivative of this function is g 0 (x) = 2x and an exact zero of g is x∗ = 2.
As initial condition, we take x0 = 3. The first affine model equals the tangent
line to g at x0 ,
10
PSfrag replacements 0
x2 x1 x0
−2
1 2 3 4
Figure 1.1: The first two steps of the scalar version of Newton’s method (1.2) for
x2 − 2 = 0, starting at x0 = 3.
g(xk )
xk+1 = xk − , k = 0, 1, . . . ,
g 0 (xk )
The condition that g 0 (x) has a nonzero lower bound in D, simply means
that g 0 (x∗ ) must be nonzero for Newton’s method to converge quadratically.
If g 0 (x∗ ) = 0, then x∗ is a multiple root, and Newton’s method converges only
20 Chapter 1. An introduction to iterative methods
g(xk + hk ) − g(xk )
ak = . (1.5)
hk
The function g(x) is modeled by
Iterative methods that solve (1.6) in every iteration step are called quasi-
Newton methods. These methods follow the scheme
g(xk )
xk+1 = xk − , k = 0, 1, . . . . (1.7)
ak
Of course we have to choose hk in the right way. For hk sufficiently small,
ak is a finite-difference approximation to g 0 (xk ). In Theorem 1.5, we show
that using ak given by (1.5) with sufficiently small hk , works as well as using
the derivative itself. However, in every iteration two function evaluations are
needed. If computing g(x) is very expensive, using hk = xk−1 − xk may be a
better choice, where xk−1 is the previous iterate. Substituting hk = xk−1 − xk
in (1.5) gives
g(xk−1 ) − g(xk )
ak = , (1.8)
xk−1 − xk
and only one function evaluation is required, since g(xk−1 ) is already computed
in the previous iteration. This quasi-Newton method is called the secant
1.1 Iterative methods in one variable 21
method, because the local model uses the secant line through the points xk
and xk−1 . Since a0 is not defined by the secant method, a0 is often chosen
using (1.5) with h0 small or a0 = −1.
While it may seem locally ad hoc, it turns out to work well. The method is
slightly slower than a finite-difference method, but usually it is more efficient in
terms of the total number of function evaluations required to obtain a specified
accuracy.
To prove the convergence of the secant method we need the following
lemma, which also plays a role in the multi-dimensional setting.
Lemma 1.3. Let g : R → R be continuously differentiable in an open interval
D, and let g 0 ∈ Lipγ (D). Then for any x, y in D,
γ(y − x)2
|g(y) − g(x) − g 0 (x)(y − x)| ≤ .
2
Ry
Proof. The fundamental theorem of calculus gives that g(y)−g(x) = x g 0 (z)dz,
which implies
Z y
g(y) − g(x) − g 0 (x)(y − x) = (g 0 (z) − g 0 (x))dz. (1.9)
x
(1.9) becomes
Z 1
g(y) − g(x) − g 0 (x)(y − x) = (g 0 (x + t(y − x)) − g 0 (x))(y − x)dt.
0
Applying the triangle inequality to the integral and using the Lipschitz conti-
nuity of g 0 , yields
Z 1
0
|g(y) − g(x) − g (x)(y − x)| = |y − x| γ|t(y − x)|dt = γ|y − x|2 /2.
0
xk+1 − x∗ = a−1 ∗ ∗
k (ak (xk − x ) − g(xk ) + g(x ))
= a−1 ∗ 0 ∗ 0
k (g(x ) − g(xk ) − g (xk )(x − xk ) + (g (xk ) − ak )(x − xk ))
∗
Z
³ x ∗ ´
= a−1
k (g 0
(z) − g 0
(x k ))dz + (g 0
(x k ) − a k )(x ∗
− x k ) .
xk
22 Chapter 1. An introduction to iterative methods
If we define ek = |xk − x∗ | and use g 0 ∈ Lipγ (D) in the same way as in the
proof of Lemma 1.3, we obtain
³γ ´
ek+1 ≤ |a−1 | e 2
+ |g 0
(x k ) − a |e
k k . (1.10)
k 2 k
In order to use (1.10), we have to know how close the finite difference
approximation ak is to g 0 (xk ) as a function of hk .
γ|hk |
|ak − g 0 (xk )| ≤ . (1.11)
2
Proof. From Lemma 1.3, we have
γ|hk |2
|g(xk ) − g(xk + hk ) − hk g 0 (xk )| ≤ .
2
Dividing both sides by |hk | gives the desired result.
then the convergence is q-quadratic. If there exists some constant c3 such that
Proof (of Theorem 1.5). We first prove that the secant method is q-linearly
convergent. Choose ε = ρ/(4γ) and h = ρ/(2γ). Suppose x0 and x1 are in D
and in addition |x0 − x∗ | < ε, |x1 − x∗ | < ε and |h1 | = |x1 − x0 | < η 0 . Since
|g 0 (x)| ≥ ρ for all x ∈ D, (1.11) implies that
γ 2γ ³ ρ ρ´ 1
e2 ≤ (e 1 + |h 1 |)e 1 ≤ + e1 = e1 .
2 · 34 ρ 3ρ 4γ 2γ 2
1
Therefore, we have |x2 − x∗ | ≤ 2 · ε < ε and
3 3
|h2 | = |x2 − x1 | ≤ e2 + e1 ≤ ε = h < h.
2 4
Using the same arguments, we obtain
2γ 1
ek+1 ≤ (ek + |hk |)ek ≤ ek for all k = 1, 2, . . . . (1.15)
3ρ 2
To prove the two-step q-quadratic convergence of the secant method, we note
that
|hk | = |xk − xk−1 | ≤ ek + ek−1 , k = 1, 2, . . . .
24 Chapter 1. An introduction to iterative methods
2γ 2γ 1 2γ 2
ek+1 ≤ (ek + ek + ek−1 )ek ≤ (2ek−1 ) ek−1 = e .
3ρ 3ρ 2 3ρ k−1
0 3.0 3.0
1 1.833333333333 1.833333333333
2 1.462121212121 1.551724137931
3 1.414998429895 1.431239388795
4 1.414213780047 1.414998429895
5 1.414213562373 1.414218257349
6 - 1.414213563676
7 - 1.414213562373
10
PSfrag replacements 0
x2 x1 x0
−2
1 2 3 4
Figure 1.2: The first two steps of the secant method, defined by (1.7) and (1.8), for
x2 − 2 = 0, starting from x0 = 3.
We solve this affine model for s, that is, find sk ∈ Rn such that
lk (xk + sk ) = 0.
xk+1 = xk + sk .
The new iterate xk+1 is not expected to equal x∗ , but only to be a better
estimate than xk . Therefore, we build the Newton iteration into an algorithm,
starting from an initial guess x0 .
ii) xk+1 := xk + sk .
Example 1.8. We apply Algorithm 1.7 to find a zero of the discrete integral
equation function, given by
h³ ´
i
X n
X
gi (x) = xi + (1−ti ) tj (xj +tj +1)3 +ti (1−tj )(xj +tj +1)3 , (1.17)
2
j=1 j=i+1
final residual kg(xk∗ )k are given, where k ∗ is the number of iterations used.
The variable R is a measure of the rate of convergence and defined by
Table 1.2: The convergence properties of Algorithm 1.7 applied to the discrete integral
equation function (1.17) for different dimensions n.
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 1 2 3
iteration k
Figure 1.3: The convergence rate of Algorithm 1.7 applied to the discrete integral
equation function (1.17) for different dimensions n. [’◦’(n = 10), ’×’(n = 100), ’+’(n =
200)]
We can bound the integral on the right hand side of (1.20) in terms of the
integrand. Together with the Lipschitz continuity of Jg at x ∈ D, this implies
Z 1
kg(y) − g(x) − Jg (x)(y − x)k ≤ kJg (x + t(y − x)) − Jg (x)kk(y − x)kdt
0
Z 1
≤ γkt(y − x)kk(y − x)kdt
0
Z 1
2 γ
= γk(y − x)k tdt = ky − xk2 .
0 2
The next theorem says that matrix inversion is continuous in norm. Fur-
thermore, it gives a relation between the norms of the inverses of two nearby
matrices that is useful later in analyzing algorithms.
Theorem 1.12. Let k.k be the induced l2 -norm on Rn×n and let E ∈ Rn×n .
If kEk < 1, then (I − E)−1 exists and
1
k(I − E)−1 k ≤ .
1 − kEk
If A is nonsingular and kA−1 (B − A)k < 1, then B is nonsingular and
kA−1 k
kB −1 k ≤ .
1 − kA−1 (B − A)k
30 Chapter 1. An introduction to iterative methods
ε ≤ 1/(2βγ) (1.21)
1
kxk+1 − x∗ k ≤ kxk − x∗ k,
2
which implies that xk+1 ∈ N (x∗ , ε) if xk ∈ N (x∗ , ε).
We first consider the basis step (k = 0). Using the Lipschitz continuity of
Jg at x∗ , kx0 − x∗ k ≤ ε and (1.21), we obtain
kJg (x∗ )−1 (Jg (x0 ) − Jg (x∗ ))k ≤ kJg (x∗ )−1 kkJg (x0 ) − Jg (x∗ )k
1
≤ βγkx0 − x∗ k ≤ βγε ≤ .
2
Theorem 1.12 implies that Jg (x0 ) is nonsingular and
The second factor in (1.23) gives the difference between g(x∗ ) and the affine
model l0 (x) evaluated at x∗ . Therefore, by Lemma 1.11 and (1.22),
Note that if g is affine, the Jacobian is constant and the Lipschitz constant
γ can be chosen to be zero. We then have
kx1 − x∗ k ≤ βγkx0 − x∗ k2 = 0,
kJg (x∗ )−1 (Jg (x) − Jg (x∗ ))k ≤ kJg (x∗ )−1 kkJg (x) − Jg (x∗ )k
≤ βγkx − x∗ k = γrel kx − x∗ k.
Quasi-Newton methods
We have already indicated that it is not always possible to compute the Ja-
cobian of the function g, or that it is very expensive. In this case, we have to
approximate the Jacobian, for example, by using finite differences.
i) Compute
£ ¤
Ak = (g(xk + hk e1 ) − g(xk ))/hk · · · (g(xk + hk en ) − g(xk ))/hk
Table 1.3: The convergence properties of Algorithm 1.13, applied to the discrete
integral equation function (A.5) for different values of h.
xk+1 = xk − A−1
k g(xk ), k = 0, 1, 2, . . . ,
where
£ ¤
Ak = (g(xk + hk e1 ) − g(xk ))/hk · · · (g(xk + hk en ) − g(xk ))/hk ,
lim hk = 0,
k→∞
1.2 The method of Newton 33
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 1 2 3 4
iteration k
Figure 1.4: The convergence rate of the discrete Newton method 1.13 applied to
the discrete integral equation function (A.5) for different values of h. [’◦’(h = 10 −4 ),
’×’(h = 10−8 ), ’+’(h = 10−12 )]
|hk | ≤ c1 kxk − x∗ k1 ,
For the proof of Theorem 1.15 we refer to [18]. Another way to avoid com-
putations of the Jacobian in every iteration is to compute the Jacobian in the
first iteration, A = Jg (x0 ), and use this matrix in all subsequent iterations as
an approximation of Jg (xk ). This method is called the Newton-Chord method.
It turns out that the Newton-Chord method is locally linearly convergent [38].
ii) xk+1 := xk + sk .
Table 1.4: The convergence properties of Algorithm 1.16 and Algorithm 1.7 applied to
the discrete integral equation function (A.5) for different initial conditions (x 0 , 10x0
and 100x0 ).
5
10
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 2 4 6 8 10 12 14 16 18 20
iteration k
Figure 1.5: The convergence rate of Algorithm 1.16 applied to the discrete integral
equation function (A.5) for different initial conditions. [’◦’(x0 ), ’×’(10x0 ), ’+’(100x0 )]
1.3 The method of Broyden 35
5
10
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 1 2 3 4 5 6 7 8 9 10
iteration k
Figure 1.6: The convergence rate of Algorithm 1.7 applied to the discrete integral
equation function (A.5) for different initial conditions. [’◦’(x0 ), ’×’(10x0 ), ’+’(100x0 )]
g(xk+1 ) − g(xk )
ak+1 = .
xk+1 − xk
The next iterate xk+2 is the zero of the local model, lk+1 . Therefore we arrive
at the quasi-Newton update
For Newton’s method Bk+1 equals the Jacobian Jg (xk+1 ). We enforce the same
requirement that led to the one-dimensional secant method. So, we assume
that lk+1 (xk ) = g(xk ), which implies that
Bk+1 sk = yk . (1.25)
We refer to (1.25) as the secant equation. For completeness we first give the
definition of a secant method.
Definition 1.18. The iterative process
is called a secant method if the matrix Bk satisfies the secant equation (1.25)
in every iteration step.
The crux of the problem in extending the secant method to more than
one dimension is that (1.25) does not completely specify the matrix Bk+1 . In
fact, if sk 6= 0, there is an n(n − 1)-dimensional affine subspace of matrices
satisfying (1.25). Constructing a successful secant approximation consists of
selecting a good approach to choose from all these possibilities. The choice
should enhance the Jacobian approximation properties of Bk+1 or facilitate
its use in a quasi-Newton algorithm.
1.3 The method of Broyden 37
This is equivalent to
so,
Bk+1 sl = yl , l = k − m, . . . , k − 1. (1.26)
For m = n−1 and linear independent sk−m , . . . , sk the matrix Bk+1 is uniquely
determined by (1.25) and (1.26). Unfortunately, most of the time sk−m , . . . , sk
tend to be linearly dependent, making the computation of Bk+1 a poorly posed
numerical problem.
The approach that leads to the successful secant approximation is quite
different. Aside from the secant equation no new information about either the
Jacobian or the model is given. The idea is to preserve as much as possible of
what we already have. Therefore, we try to minimize the change in the affine
model, subject to the secant equation (1.25). The difference between the new
and the old affine model, at any x is given by
The last equality is due to the secant equation. Now if we write an arbitrary
x ∈ Rn as
x − xk = αsk + q, where q T sk = 0, α ∈ R,
the expression that we want to minimize becomes
We have no control over the first term on the right hand side of (1.27), since
it equals
(Bk+1 − Bk )sk = yk − Bk sk . (1.28)
However, we can make the second term on the right hand side of (1.27) zero
for all x ∈ Rn , by choosing Bk+1 such that
This implies that (Bk+1 − Bk ) has to be a rank-one matrix of the form usTk ,
with u ∈ Rn . Equation (1.28) now implies that u = (yk − Bk sk )/(sTk sk ). This
leads to the Broyden or secant update
(yk − Bk sk )sTk
Bk+1 = Bk + . (1.30)
sTk sk
The word ’update’ indicates that we are not approximating the Jacobian in
the new iterate, Jg (xk+1 ), from scratch. Rather a former approximation Bk
is updated into a new one, Bk+1 . This type of updating is shared by all the
successful multi-dimensional secant approximation techniques.
We arrive at the algorithm of Broyden’s method.
ii) xk+1 := xk + sk
In this section we use the Frobenius norm, denoted by k.kF . The norm is
defined by
³Xn X n ´1/2
kAkF = A2ij . (1.31)
i=1 j=1
So, it equals the l2 -vector norm of the matrix written as a n2 -vector. For
y, s ∈ Rn the set of all matrices that satisfy the secant equation As = y is
denoted by
Q(y, s) = {A ∈ Rn×n | As = y}.
In the preceding, we have followed the steps of Broyden when developing
his iterative method in [8], but the derivation of the Broyden update can be
made much more rigorous. The Broyden update is the minimum change to
Bk consistent with the secant equation (1.25), if (Bk+1 − Bk ) is measured in
Frobenius norm. That is, of all matrices A that satisfy the secant equation
(1.25) the new Broyden matrix Bk+1 yields the minimum of kA − Bk kF . This
will be proved in Lemma 1.20.
1.3 The method of Broyden 39
is given by
(y − Bs)sT
B̄ = B + .
sT s
Proof. We compute for any A ∈ Q(y, s),
° (y − Bs)sT °
° °
kB̄ − BkF = ° °
sT s F
° (A − B)ssT °
° °
= ° °
sT s F
° ssT °
° °
≤ kA − BkF ° T ° = kA − BkF .
s s 2
Note that Q(y, s) is a convex (in fact, affine) subset of Rn×n . Because the
Frobenius norm is strictly convex, the solution to (1.32) is unique on the
convex subset Q(y, s).
We have not defined yet what should be chosen for the initial approxima-
tion B0 to the Jacobian in the initial estimate, Jg (x0 ). The finite differences
approximation turns out to be a good start. It also makes the minimum change
characteristics of Broyden’s update more appealing, as given in Lemma 1.20.
Another choice, that avoids the computation of Jg (x0 ), is taking the initial
approximation equal to minus identity,
B0 = −I. (1.33)
Suppose the function g is defined by g(x) = f (x) − x, where f is the period
map of a dynamical process
xk+1 = f (xk ), k = 0, 1, . . . . (1.34)
A fixed point of the process (1.34) is a zero of the function g. By choosing
B0 = −I, the first iteration of Broyden is just a dynamical simulation step,
x1 = x0 − B0−1 g(x0 ) = x0 − (f (x0 ) − x0 ) = f (x0 ).
So, in this way, we let the system choose the direction of the first step. In
addition, the initial Broyden matrix is easy to store and can be directly imple-
mented in the computer code. This makes the reduction methods discussed
in Chapter 3 effective.
We now apply the method of Broyden to the test function (A.5).
40 Chapter 1. An introduction to iterative methods
Table 1.5: The convergence results for Algorithm 1.19 applied to the discrete integral
equation function (A.5) for different dimensions n.
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 2 4 6 8 10 12 14 16 18 20 22
iteration k
Figure 1.7: The convergence rate of Algorithm 1.19 applied to the discrete integral
equation function (A.5) for different dimensions n. [’◦’(n = 10), ’×’(n = 100), ’+’(n =
200)]
for Broyden’s method are described in Table 1.6. For the initial condition
100x0 the method of Broyden fails to converge.
Table 1.6: The convergence results for Broyden’s method 1.19 applied to the discrete
integral equation function (A.5) for different initial conditions, x0 , 10x0 and 100x0 .
Superlinear convergence
In order to prove the convergence of Broyden’s method, we first need the
following extension of Lemma 1.11.
Lemma 1.23. Let g : Rn → Rn be continuously differentiable in the open,
convex set D ⊂ Rn , x ∈ D. If Jg ∈ Lipγ (D) then for every u and v in D
kg(v) − g(u) − Jg (x)(v − u)k ≤ γ max{kv − xk, ku − xk}kv − uk. (1.35)
Moreover, if Jg (x) is invertible, there exist ε > 0 and ρ > 0 such that
(1/ρ)kv − uk ≤ kg(v) − g(u)k ≤ ρkv − uk, (1.36)
for all u, v ∈ D for which max{kv − xk, ku − xk} ≤ ε.
Proof. The proof of Equation (1.35) is similar to the proof of Lemma 1.11.
Equation (1.35) together with the triangle inequality implies that for u, v
satisfying max{kv − xk, ku − xk} ≤ ε,
kg(v) − g(u)k ≤ kJg (x)(v − u)k + kg(v) − g(u) − Jg (x)(v − u)k
≤ (kJg (x)k + γ max{kv − xk, ku − xk})kv − uk
≤ (kJg (x)k + γε)kv − uk.
Similarly,
kg(v) − g(u)k ≥ kJg (x)(v − u)k − kg(v) − g(u) − Jg (x)(v − u)k
³ 1 ´
≥ − γ max{kv − xk, ku − xk} kv − uk
kJg (x)−1 k
³ 1 ´
≥ − γε kv − uk.
kJg (x)−1 k
42 Chapter 1. An introduction to iterative methods
Thus if ε < (1/kJg (x)−1 kγ), then 1/kJg (x)−1 k − γε > 0 and (1.36) holds if we
choose ρ large enough such that
ρ > kJg (x)k + γε,
and
1 1
< − γε.
ρ kJg (x)−1 k
Proof. Let r ∈ (0, 1) be given and set β ≥ kJg (x∗ )−1 k. Choose δ(r) = δ and
ε(r) = ε such that
ε
(2α1 δ + α2 ) ≤ δ, (1.41)
1−r
and for η given by (1.37),
which by (1.41) implies that kBm − Jg (x∗ )k ≤ 2δ. To complete the induction
step we only need to prove that kxm+1 − x∗ k ≤ rkxm − x∗ k. This follows by
an argument similar to the one for m = 1. In fact, since kBm − Jg (x∗ )k ≤ 2ηδ,
Lemma 1.12 and (1.43) implies that
−1
kBm k ≤ (1 + r)β,
Corollary 1.25. Assume that the hypotheses of Theorem 1.24 hold. If some
subsequence of {kBk − Jg (x∗ )k} converges to zero, then the sequence {xk }
converges q-superlinearly at x∗ .
kxk+1 − x∗ k
lim = 0.
k→∞ kxk − x∗ k
By Theorem 1.24 there are numbers ε( 12 ) and δ( 21 ) such that kB0 −Jg (x∗ )kF <
δ( 21 ) and kx0 −x∗ k < ε( 12 ) imply that kxk+1 −k ≤ 12 kxk −x∗ k for each k ≥ 0. Let
now r ∈ (0, 1) be given. We can choose m > 0 such that kBm −Jg (x∗ )kF < δ(r)
and kxm − x∗ k < ε(r). So, kxk+1 − x∗ k ≤ rkxk − x∗ k for each k ≥ m. Since
r ∈ (0, 1) was arbitrary, the proof is completed.
It should be clear that some condition like the one in Corollary 1.25 is
necessary to guarantee q-superlinear convergence. For example, the Newton-
Chord iteration scheme, see Algorithm 1.16,
ek = x k − x ∗ . (1.46)
xk+1
PSfrag replacements
sk
ek+1
xk
ek
x∗
Note that Lemma 1.27 is also of interest to the stopping criteria in our al-
gorithms. It shows that whenever an algorithm achieves at least q-superlinear
convergence, then any stopping test that uses sk is essentially equivalent to
the same test using ek , which is the quantity we are really interested in.
Lemma 1.28. Let D ⊆ Rn be an open, convex set, g : Rn → Rn continuously
differentiable, and Jg ∈ Lipγ (D). Assume that Jg (x∗ ) is non-singular for some
x∗ ∈ D. Let {Ak } be a sequence of nonsingular matrices in L(Rn ). Suppose
for some x0 ∈ D that the sequence of points generated by
xk+1 = xk − A−1
k g(xk ) (1.47)
so that
and
kgk+1 k kAk − Jg (x∗ )sk k k − g(xk+1 ) + g(xk ) + Jg (x∗ )sk k
≤ +
ksk k ksk k ksk k
kAk − Jg (x∗ )sk k
≤ + γ max{kx − x∗ k, kx − x∗ k} (1.50)
ksk k
where the second inequality follows from Lemma 1.23. Equation (1.50) to-
gether with limk→∞ kek k = 0 and (1.48) gives
kg(xk+1 )k
lim = 0. (1.51)
k→∞ ksk k
1
kg(xk+1 )k = kg(xk+1 ) − g(x∗ )k ≥ kek+1 k, (1.52)
ρ
kg(xk+1 )k
0 = lim
k→∞ ksk k
1 kek+1 k
≥ lim
k→∞ ρ ksk k
1/ρ · kek+1 k 1/ρ · rk
≥ lim = lim ,
k→∞ kek k + kek+1 k k→∞ 1 + rk
lim rk = 0,
k→∞
kg(xk+1 )k ≥ ρkek+1 k
48 Chapter 1. An introduction to iterative methods
Proof. Note that I − (ssT /sT s) is a Euclidean projection, and so is ssT /sT s.
So by the Pythagorean theorem,
° ssT °2 ° ³ ssT ´°
° ° ° °2
kEk2F = °E T ° + °E I − T ° ,
s s F s s F
and the equality
° ssT ° kEsk
° °
°E T ° = ,
s s F ksk
we have proved (1.55). Because for any α ≥ |β| ≥ 0, (α2 − β 2 )1/2 ≤ α − β 2 /2α,
Equation (1.55) implies (1.56).
Proof (of Theorem 1.26). In order to be able use both Theorem 1.24 and
Lemma 1.28, we first derive an estimate for kB̄ − Jg (x∗ )k. Assume that x̄
and x are in D and ksk 6= 0. Define Ē = B̄ − Jg (x∗ ), E = B − Jg (x∗ ),
ē = x̄ − x∗ , and e = x − x∗ . Note that
Ē = B̄ − Jg (x∗ )
sT
= B − Jg (x∗ ) + (y − Bs) T
s s
³ ss T ´ sT
= (B − Jg (x∗ )) I − T + (y − Jg (x∗ )) T .
s s s s
Therefore,
° ³ ssT ´° ky − Jg (x∗ )sk
° °
kĒkF ≤ °(B − Jg (x∗ )) I − T ° +
s s F ksk
° ³ T
ss ° ´°
°
≤ °E I − T ° + γ max{kēk, kek}. (1.57)
s s F
For the last inequality of (1.57) Lemma 1.23 is used. Because I − ssT /(sT s)
is an orthogonal projection it has l2 -norm equal to one,
° ssT °
° °
°I − T ° = 1.
s s
Therefore, the inequality (1.57) can be reduced to
kx̄ − x∗ k ≤ ksk + kx − x∗ k ≤ ε.
or ³ ´
kEk sk k2
≤ 2kE k k F kE k k F − kE k+1 k F + γke k k . (1.63)
ksk k2
Theorem 1.24 gives that {kBk k} is uniformly bounded for k ≥ 0. This implies
that there exists an M > 0 independently of k such that
kEk sk k2 ³ ´
≤ 2M kEk kF − kEk+1 kF + γkek k , (1.64)
ksk k2
and summing the left and right sides of (1.64) for k = 0, 1, . . . , m, yields
m
X kEk sk k2 ³ m
X ´
≤ 2M kE0 kF − kEm+1 kF + γ kek k
ksk k2
k=0 k=0
³ ´
≤ 2M kE0 kF + 2εγ
³ ´
≤ 2M M + 2εγ . (1.65)
sk = −Hk g(xk ),
52 Chapter 1. An introduction to iterative methods
Hk+1 yk = sk . (1.66)
Equation (1.66) again does not define a unique matrix but a class of matrices.
In Section 1.3, the new Broyden matrix Bk+1 has been chosen so that,
in addition to the secant equation (1.25), it satisfies Bk+1 q = Bk q in any
direction q orthogonal to sk . This was sufficient to define Bk+1 uniquely and
the update was given by (1.30).
It is possible, using Householder’s modification formula, to compute the
−1
new inverse Broyden matrix Hk+1 = Bk+1 with very little effort from Hk .
Householder’s formula, also called the Sherman-Morrison formula, states that
if A is a nonsingular (n × n)-matrix, u and v are vectors in Rn , and (1 +
v T A−1 u) 6= 0, then (A + uv T ) is nonsingular and
A−1 uv T A−1
(A + uv T )−1 = A−1 − . (1.67)
1 + v T A−1 u
This formula is a particular case of the Sherman-Morrison-Woodbury for-
mula derived in the next theorem.
Theorem 1.30. Let A ∈ Rn×n be nonsingular and U, V ∈ Rn×p be arbitrary
matrices with p ≤ n. If (I + V T A−1 U ) is nonsingular then (A + U V T )−1 exists
and
(A + U V T )−1 = A−1 − A−1 U (I + V T A−1 U )−1 V T A−1 . (1.68)
Proof. The formula (1.68) is easily verified by computing
and
(A + U V T )(A−1 − A−1 U (I + V T A−1 U )−1 V T A−1 ),
that both yield the identity. Therefore A + U V T is invertible and the inverse
is given by (1.68).
−1 sTk −1
Hk+1 = Bk+1 = (Bk + (yk − Bk sk ) )
sTk sk
sTk Bk−1
= Bk−1 − (Bk−1 yk − sk )
sTk Bk−1 yk
sTk Hk
= Hk + (sk − Hk yk ) . (1.69)
sTk Hk yk
1.3 The method of Broyden 53
xk+1 = xk − Hk g(xk ), k = 0, 1, 2, . . . ,
together with the rank one update (1.69) equals Algorithm 1.19.
Instead of assuming that Bk+1 q = Bk q in any direction q orthogonal to sk ,
we could also require that
Hk+1 q = Hk q for q T yk = 0.
This is, in some sense, the complement of the first method of Broyden. Since
Hk+1 satisfies (1.66), it is readily seen that for this method Hk+1 is uniquely
given by
yT
Hk+1 = Hk + (sk − Hk yk ) Tk .
yk yk
This update scheme, however, appears in practice to be unsatisfactory and is
called the second or ’bad’ method of Broyden [8].
54 Chapter 1. An introduction to iterative methods
Chapter 2
55
56 Chapter 2. Solving linear systems with Broyden’s method
g(x) = αx + β,
g(x0 ) αx0 + β β
x1 = x 0 − 0
= x0 − =− .
g (x0 ) α α
and g(x1 ) = 0. It turns out that Broyden needs two iterations from the same
initial point x0 6= x∗ , if b0 ∈ R is an arbitrary nonzero scalar, with b0 6= α. We
compute
g(x0 ) α β
s0 = − = − x0 − .
b0 b0 b0
So, if x1 = x0 + s0 , then
³ ´ ³ ´ ³ ´
g(x1 ) = α 1 − α/b0 x0 + 1 − α/b0 β = 1 − α/b0 (αx0 + β).
g1 (1 − α/b0 )(αx0 + β)
b1 = b0 + = b0 + = b0 − (b0 − α) = α.
s0 −(αx0 + β)/b0
Thus after one iteration Broyden’s method succeeds to find the derivative of
the function g. Therefore the method converges in the next iterations step,
that is,
g(x1 ) α β β
x2 = x 1 − = x 1 − x1 − =− .
b1 b1 b1 α
g(x) = Ax + b, (2.2)
yk = Ask . (2.6)
and
(I − AHk+1 )yk = 0. (2.8)
A theorem of Gay
In this section, we show that Algorithm 2.1 converges in at most 2n steps when
applied to an affine function g : Rn → Rn , given by (2.2), where A ∈ Rn×n
is nonsingular and b ∈ Rn . This follows as an easy corollary to the following
lemma. The notation bσc used below denotes the greatest integer less than or
equal to σ ∈ R.
In the proof of Lemma 2.3, we need the equalities
and
AHk+1 = AHk (I − (I − AHk )gk vkT ), (2.11)
for which we have used (2.6) and (2.7). From (2.10) we deduce
(I − AHk−2 )yk−3 = 0.
Therefore yk−3 , gk−2 and AHk−2 gk−2 are linearly independent. Note that, as
before,
gk−2 = (I − AHk−3 )gk−3
and
T
(AHk−2 )gk−2 = (1 − vk−3 gk−2 )(I − AHk−3 )AHk−3 gk−3 .
Since yk−3 = AHk−3 gk−3 , we see that (AHk−3 )i gk−3 , 0 ≤ i ≤ 2, are linearly
independent. Therefore (2.13) holds for j = 2.
We apply the method of Broyden, see Algorithm 1.19, starting with the initial
matrix B0 = −I and initial estimate x0 = (1, 1, 1, 1). The rate of convergence
is given in Figure 2.1. Clearly, here the number of 2n iterations is an upper
bound for Algorithm 1.19 to obtain the exact zero of the function g 1 and g2 .
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 1 2 3 4 5 6 7 8
iteration k
Figure 2.1: The convergence rate of Algorithm 1.19, when solving Ai x = 0, for i = 1, 2,
where A1 and A2 are defined in (2.14) [’◦’: A1 , ’×’: A2 ]
In Section 1.3, we have seen that the Broyden matrix Bk does not neces-
sarily converge to the Jacobian even if the sequence {xk } converges to x∗ .
2.1 Exact convergence for linear systems 61
In other words, the difference between the Jacobian and the Broyden ma-
trix, is projected on an (n−1)-dimensional subspace orthogonal to the Broyden
step sk . Therefore, the final difference kBk∗ − AkF depends in particular on
the orthogonality of the Broyden steps {s0 , . . . , sk∗ }.
Lemma 2.7. Let g : Rn → Rn be an affine function, with nonsingular Ja-
cobian A ∈ Rn×n . Consider Algorithm 2.1 and suppose for some k ≥ 1, that
yk 6= 0, vkT yk−1 6= 0 and rank(I − AHk ) = n − 1 then rank(I − AHk+1 ) = n − 1
and yk spans the kernel of (I − AHk+1 ).
Proof. The assumption that yk 6= 0 implies that yk−1 6= 0. According to (2.8)
we see that yk is in the kernel of (I −AHk+1 ). Similarly, since rank(I −AHk ) =
n − 1 the vector yk−1 spans the kernel of (I − AHk ). Any other null vector y
of (I − AHk+1 ) must (after scaling) satisfy (I − yk vkT )y = yk−1 . But vk spans
the kernel of (I − yk vkT )T , and because, by assumption, vkT yk−1 6= 0, yk−1 is
not in the range of (I − yk vkT ). So, yk spans the kernel of (I − AHk+1 ).
Lemma 2.7 leads to the important observation that the sequence of ma-
trices Hk does not terminate with the inverse of the matrix A, at least in the
usual case in which all vkT yk−1 6= 0. In fact, each matrix Hk and A−1 agree
only on a subspace of dimension one.
62 Chapter 2. Solving linear systems with Broyden’s method
for k ≥ 0. We will call subspace Zk the kth Krylov subspace. So, Z0 will
be called the zeroth subspace. We already have proved that Algorithm 2.1
terminates at the kth iteration if and only if g(xk ) = 0. Thus sk = 0 if and
only the dimension of Zk is zero.
We proceed to show how the Zk ’s decrease in dimension and first derive
several lemma’s.
Lemma 2.8. Let zk+1 be any vector in Zk+1 . Then there exists a vector zk in
Zk such that
zk+1 = (I − AHk )zk .
Proof. It suffices to show that for j ≥ 0, there is a vector tj in Zk such that
Lemma 2.9. Let the vectors {t1 , t2 , . . . , td } span Zk . Then the vectors
span Zk+1 .
d
X
wk = αi (AHk )i gk , αd 6= 0.
i=0
Proof. We have
d
X
0 = (I − AHk )wk = α0 gk + (αi − αi−1 )(AHk )i gk − αd (AHk )d+1 gk .
i=1
Theorem 2.11. If dim Zk+1 = dim Zk , then dim Zk+2 = dim Zk+1 − 1.
vkT wk 6= 0, (2.19)
Before we start to prove both theorems, a few remarks are in order on the
vector wk in Theorem 2.12. Since dim Zk+1 = dim Zk − 1, Lemma 2.9 shows
that a nonzero wk must exist. In fact, it can be shown that wk = λyk−1 for
some scalar λ, with the exception of the case where there exists a nonzero w 0 .
64 Chapter 2. Solving linear systems with Broyden’s method
Proof (of Theorem 2.11). Since dim Zk+1 = dim Zk , the subspaces Zk+1 Zk
are identical by (2.17), and so yk ∈ Zk+1 . By (2.7)-(2.8) and Lemma 2.10, yk
spans
Zk+1 ∩ Ker(I − AHk+1 ).
Applying Lemma 2.9 completes the proof.
β0 + (β1 − β0 + 1)AHk gk + . . .
+ (βd−1 − βd−2 )(AHk )d−1 gk − βd−1 (AHk )d gk = 0.
2.2 Two theorems of Gerber and Luk 65
For d = 1 we obtain
β0 gk + (1 − β0 )AHk gk = 0.
Either case is impossible, as the vectors (AHk )i gk , i = 0, . . . , d, are linearly
independent. So yk ∈/ Zk+1 and hence Zk+1 ∩ Ker(I − AHk+1 ) = {0}.
Proof (of Theorem 2.12). The proof follows directly from the Lemmas 2.9 and
2.13.
Theorems 2.11 and 2.12 imply finite termination of the method. Let
dim Z0 = d0 and dim Z1 = d1 . From (2.18), we see that d0 − 1 ≤ d1 ≤ d0 .
Applying the Theorems 2.11 and 2.12, we conclude that Algorithm 2.1 must
terminate in exactly d0 + d1 steps, if (2.19) is satisfied in every iteration where
dim Zk+1 = dim Zk − 1. A weaker statement, though easier to check, is that
Broyden’s method needs at most 2d0 iterations, which is a direct consequence
of 2.11 and (2.18).
Corollary 2.14. Let d0 = dim Z0 then Algorithm 2.1 needs at most 2d0 iter-
ations to converge.
Example 2.15. It turns out that in case of the function g1 in Example 2.5
both the zeroth and the first Krylov space of the Broyden process has dimen-
sion 2 (= d0 + d1 ). This predicts the four iterations the method of Broyden
needs to solve g1 (x) = 0.
In case of the function g2 of Example 2.5, both the zeroth and the first
Krylov space of the Broyden process has dimension 4. The method of Broyden
needs 8 iterations to solve the equation g2 (x) = 0.
In the next example, we show (2.19) is a necessary condition for Theorem
2.12.
Example 2.16. Consider the linear function g(x) = Ax, where
−1 1 0
A = 0 −1 1 .
0 0 −1
If we apply the method of Broyden starting with the initial matrix B0 = −I
and initial estimate x0 = (1, 1, 1). Then we obtain the following process. Note
that the inverse of the Broyden also equal minus the identity, H0 = −I.
The function value in x0 equals g(x0 ) = Ax0 = (0, 0, −1). Therefore the
zeroth Krylov space is given by
n 0 0 −1 o
Z0 = span{g0 , AH0 g0 , (AH0 )2 g0 , . . .} = span 0 , 1 , 2 ,
−1 −1 −1
66 Chapter 2. Solving linear systems with Broyden’s method
The function value in x1 equals g(x1 ) = Ax1 = (0, −1, 0). It turn out that
the first Krylov space is two-dimensional and is given by
n 0 1 o
Z1 = span{g1 , AH1 g1 , . . .} = span −1 , −1 .
0 0
Therefore
and
s̃k = x̃k+1 − x̃k = U T xk+1 − U T xk = U T sk .
This leads to
e T
ek + (ỹk − Bk s̃k )s̃k
ek+1 = B
B
s̃Tk s̃k
T
ek + g̃k+1 s̃k
= B
s̃Tk s̃k
U T g(U U T xk+1 )(U T sk )T
= U T Bk U +
(U T sk )T (U T sk )
g(xk+1 )sTk
= U T Bk U + U T T U
sk U U T sk
g(xk+1 )sTk
= U T (Bk + )U = U T Bk+1 U.
sTk sk
Ze0 = span{g̃0 , A
eHe 0 g̃0 , (A
eHe 0 )2 g̃0 , . . .}
= span{U −1 g0 , U −1 AU U −1 H0 U U −1 g0 , (U −1 AU U −1 H0 U )2 U −1 g0 , . . .}
= span{U −1 g0 , U −1 AH0 g0 , U −1 (AH0 )2 g0 , . . .} = U −1 Z0
Because U is of full rank, the dimensions of Z0 and Ze0 are equal. Corollary
2.14 completes the proof.
70 Chapter 2. Solving linear systems with Broyden’s method
Chapter 3
In the previous chapters, we saw that the method of Broyden has several
advantages. In comparison with the method of Newton it does not need ex-
pensive calculation of the Jacobian of the function g. According to a clever
updating scheme of the Broyden matrix, every iteration step includes only
one function evaluation. This makes the method efficient for problems where
the evaluation of g is very time-consuming. Although Broyden’s method fails
to have local q-quadratic convergence it is still q-superlinearly convergent for
nonlinear equations and exact convergent for linear equations. In addition, the
method of Broyden turns out to be quite suitable for problems stemming from
applications, for example, from chemical reaction engineering, see Section 8.3.
A disadvantage of Broyden’s method arises if we consider high-dimensional
systems of nonlinear equations, involving a large amount of memory to store
the n2 elements of the Broyden matrix.
In this chapter, we develop a structure to reduce the number of storage
locations for the Broyden matrix. All methods described in this chapter are
based on the method of Broyden and reduce the amount of memory needed
for the Broyden matrix from n2 storage locations to 2pn storage locations.
Therefore we call these algorithms limited memory Broyden methods. The
parameter p is fixed during the iteration steps of a limited memory Broyden
method.
In Section 3.1, we describe how we can use the structure of the Broyden
update scheme, to write the Broyden matrix B as a sum of the initial Broyden
matrix B0 and an update matrix Q, which is written as the product of two
(n × p)-matrices, Q = CD T . The initial Broyden matrix is set to minus the
71
72 Chapter 3. Limited memory Broyden methods
p−1
X sT
Bp = B 0 + (yk − Bk sk ) Tk = B0 + CDT , (3.2)
k=0
sk sk
for k = 0, . . . , p − 1.
3.1 New representations of Broyden’s method 73
The sum of all correction terms to the initial Broyden matrix B0 in (3.2),
we call the update matrix. So, if Q denotes the update matrix, then
p
X
Q = CD T = ck dTk . (3.3)
k=1
In the next iteration step of the Broyden process, 2(p+1)n storage locations
are needed to store the Broyden matrix Bp+1 . In the following iteration step
2(p + 2)n storage locations are needed to store Bp+2 , etc. In case n is even,
after n/2 iterations of Broyden’s method, 2(n/2)n = n2 storage locations are
needed, which equals the number of storage locations we need for the Broyden
matrix itself. In other words, this alternative notation for the Broyden matrix,
given by (3.2), is only useful if p can be kept small (p ¿ n). However, if the
method of Broyden needs more than p iterations to converge, we have to reduce
the number of rank-one matrices that forms the update matrix (3.3). We fix
the maximal number of corrections to be stored at p. After p iterations of the
method of Broyden all columns of the matrices C and D are used. To make it
possible to proceed after these p iterations, the two next examples are obvious.
We remove all corrections made to the initial Broyden matrix and start all over
again, or, we freeze the Broyden matrix and neglect all subsequent corrections.
iterations are needed (24 and 26, respectively). However, for p = 2 about 92
iterations are needed.
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 3.1: The convergence rate of Algorithm 1.19 applied to the discrete integral
equation function (A.5) where after p iterations the Broyden process is restarted.
[’◦’(Broyden), ’×’(p = 10), ’M’(p = 5), ’∗’(p = 4), ’/’(p = 3), ’.’(p = 2), ’✩’(p = 1)]
k kBk+1 − Bk k k kBk+1 − Bk k
0 2.2125 10 1.893
1 0.052184 11 0.233
2 2.044 12 0.028375
3 0.11172 13 1.8165
4 0.19556 14 0.37294
5 2.014 15 0.0093723
6 0.0085303 16 1.9524
7 1.6974 17 0.10937
8 0.59031 18 0.060311
9 0.014515 19 1.9682
Table 3.1: The difference in l2 -norm between two subsequent Broyden matrices of
Algorithm 1.19 applied to the discrete integral equation function (A.5).
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
0 2 4 6 8 10 12 14 16 18 20 22
iteration k
Figure 3.2: The convergence rate of Algorithm 1.19 applied to the discrete inte-
gral equation function (A.5), where after p iterations the Broyden matrix is frozen.
[’◦’(Broyden), ’×’(p = 10), ’¦’(p = 8), ’O’(p = 7), ’+’(p = 6), ’M’(p = 5), ’/’(p = 3),
’.’(p = 2), ’✩’(p = 1)]
e T = CZ T D
CDT = C(DZ) e T =: C
eDeT , (3.4)
After rewriting the matrices C and D, the columns are ordered in such
a way that the last p − q columns of the matrices C and D can be removed
to perform the reduction. So, the first q columns are saved and the reduced
Broyden matrix is given by
p
X q
X
e = Bk −
B cl dTl = B0 + cl dTl . (3.5)
l=q+1 l=1
3.1 New representations of Broyden’s method 77
Note that the first approach, (3.8) has the disadvantage that we have to
store the vector yk . The number q determines which approach is the cheapest
one in floating points operations. Especially if q = p − 1, the second approach,
(3.9), is very attractive. The update is then reduced to
In (3.9), the last p − q columns of C and D are still used to compute the new
update before they are set to zero. We proceed with the first approach.
We are now ready to give the algorithm of a general limited memory Broy-
den method.
Algorithm 3.4 (The limited memory Broyden method). Choose an
initial estimate x0 ∈ Rn , set the parameters p and q, and let C = [c1 , . . . , cp ],
D = [d1 , . . . , dp ] ∈ Rn×p be initialized by ci = di = 0 for i = 1, . . . , p (m := 0).
Set k := 0 and repeat the following sequence of steps until kg(xk )k < ε.
78 Chapter 3. Limited memory Broyden methods
ii) xk+1 := xk + sk ,
and set m := m + 1.
It actually turns out that one can avoid solving the large n-dimensional
system Bk sk = −g(xk ), by using the Sherman-Morrison formula (1.68). This
gives
(B0 + CDT )−1 = B0−1 − B0−1 C(I + D T B0−1 C)−1 DT B0−1 . (3.10)
Finally, note that in the first p iteration steps no reduction takes place.
So, during these iterations the limited memory Broyden method is equivalent
to the method of Broyden. Since xp+1 is computed still using the original, not
yet reduced, Broyden matrix Bp . The difference between a limited memory
Broyden method and the method of Broyden itself can be detected only in
iteration step k = p + 2.
We make a first attempt to reduce the number of columns of the matrices
C and D. The simplest thought is to do nothing with the columns of the
matrices C and D (so, Z = I) and if no additional corrections to the Broyden
matrix can be stored, free memory can be created by removing old updates.
We just make a selection of q updates that we would like to keep. The columns
of C and D corresponding to these updates are placed in the first q columns
3.1 New representations of Broyden’s method 79
and hereafter the last p − q columns of both matrices are put to zero. After
the reduction additional updates can be stored for the next p − q iterations of
the Broyden process. We will discuss some of the basic choices for the updates
to save.
One possibility is removing the update matrix Q completely and start all
over again. Thus take q = 0 and remove all columns of C and D. Note,
however, that the Broyden process does not restart with the initial matrix
Be = B0 , because directly after the reduction a new update is stored in the
first columns of C and D. So the algorithm considered in Example 3.5 is indeed
different from the algorithm of Example 3.2. Note also that, in this case, it is
superfluous to rewrite the matrices C and D, because all columns are removed.
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 3.3: The convergence rate of Algorithm 3.4 applied to the discrete integral
equation function (A.5) with q = 0. [’◦’(Broyden), ’×’(p = 10), ’M’(p = 5), ’∗’(p = 4),
’/’(p = 3), ’.’(p = 2), ’✩’(p = 1)]
matrix
0 1
.. ..
. .
Z=
..
,
(3.11)
. 1
1 0
step (iv) of Algorithm 3.4, then implies that
£ ¤
e = CZ T = c2 · · ·
C c p c1
and £ ¤
e = DZ −1 = d2 · · ·
D d p d1 .
Example 3.6. Let g be the discrete integral equation function given by (A.5).
As initial estimate we choose x0 given by (A.6) and we set ε = 10−12 . We apply
the Algorithm 3.4, where q is set to p − 1 and Z is given by (3.11). We choose
n = 100 and thus kg(x0 )k ≈ 0.7570. The rate of convergence is given in Figure
3.4. For p = 2 and p = 3 a few more iterations are needed than for the method
of Broyden. For all other values of p the convergence is much slower. For p = 1
we have no convergence, which was already known because this is exactly the
same case as the algorithm used in Example 3.5 with p = 1.
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 3.4: The convergence rate of Algorithm 3.4, applied to the discrete integral
equation function (A.5), with q = p − 1 and Z given by (3.11). [’◦’(Broyden), ’×’(p =
10), ’M’(p = 5), ’∗’(p = 4), ’/’(p = 3), ’.’(p = 2), ’✩’(p = 1)]
The next approach of reduction is removing the last column of both ma-
trices, C and D, i.e., the latest update of the Broyden process. So, again
3.1 New representations of Broyden’s method 81
Example 3.7. Let g be the discrete integral equation function given by (A.5).
As initial estimate we choose x0 given by (A.6) and we set ε = 10−12 . We apply
Algorithm 3.4, where q is set to p − 1 and Z = I. We choose n = 100 and thus
kg(x0 )k ≈ 0.7570. The rate of convergence is given in Figure 3.5. The process
diverges for p = 4 and 5. For p = 2 and 3 the convergence is rather slow. Only
for p = 10 we have fast convergence. Note that we already have discussed the
case p = 1 in the previous two examples.
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 3.5: The convergence rate of Algorithm 3.4 applied to the discrete integral
equation function (A.5), with q = p − 1 and Z = I. [’◦’(Broyden), ’×’(p = 10),
’M’(p = 5), ’∗’(p = 4), ’/’(p = 3), ’.’(p = 2), ’✩’(p = 1)]
Instead of removing one single update, we can remove the first two columns
of both matrices, C and D, the two oldest updates of the Broyden process.
In Section 1.3, we have seen that after the method of Broyden diverges for
one iteration, the next iteration it makes a large step in the right direction.
Perhaps two updates are in some way related. The parameter q is set to p − 2.
82 Chapter 3. Limited memory Broyden methods
and
£ ¤
e = DZ −1 = d3 · · ·
D d p d1 d2 ,
and subsequently the last two columns of C and D are set to zero.
Example 3.8. Let g be the discrete integral equation function given by (A.5).
As initial estimate we choose x0 given by (A.6) and we set ε = 10−12 . We apply
Algorithm 3.4, where q is set to p−2 and Z given by (3.12). We choose n = 100
and thus kg(x0 )k ≈ 0.7570. The rate of convergence is given in Figure 3.6. The
method cannot be applied for p = 1. The rate of convergence is rather fast for
the smaller values of p, for p = 8 and p = 10 the process converges slower.
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 3.6: The convergence rate of Algorithm 3.4 applied to the discrete integral
equation function (A.5), with q = p − 2 and Z is given by (3.12). [’◦’(Broyden),
’×’(p = 10), ’¦’(p = 8), ’∗’(p = 4), ’/’(p = 3), ’.’(p = 2)]
3.2 Broyden Rank Reduction method 83
In the final example of this section, we remove the last two columns of the
matrices C and D, when a reduction has to be applied. So, we remove the
two latest update of the Broyden process. The parameter q is set to p − 2, and
again Z = I.
Example 3.9. Let g be the discrete integral equation function given by (A.5).
As initial estimate we choose x0 given by (A.6) and we set ε = 10−12 . We apply
Algorithm 3.4, where q is set to p − 2 and Z = I. We choose n = 100 and
thus kg(x0 )k ≈ 0.7570. The rate of convergence is given in Figure 3.7. Again
the method cannot be applied for p = 1. It is Remarkable that for p = 5 and
p = 10 the rate of convergence is much lower.
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 3.7: The convergence rate of Algorithm 3.4 applied to the discrete integral
equation function (A.5), with q = p − 2 and Z = I. [’◦’(Broyden), ’×’(p = 10),
’M’(p = 5), ’∗’(p = 4), ’/’(p = 3), ’.’(p = 2)]
Q = σ1 u1 v1T + · · · + σp up vpT .
Next choose q and remove the smallest p − q singular value and their corre-
sponding left and right singular vectors from the singular value decomposition
of Q.
In other words, considering the general Algorithm 3.4, for step (iv) the
singular value decomposition of Q is computed and stored in the matrices C
and D. Then, by setting the last p − q columns of both matrices to zero the
last p − q terms of the singular value decomposition are removed. This leads
to the best rank q approximation of the update matrix Q that is available in
the l2 -norm.
A problem we still have to deal with is that we do not want to compute the
(n × n)-update matrix Q explicitly. So, the question is how we can determine
the singular values of this matrix.
Using the QR-decomposition of D = DR e we observe that Q can be written
as
CDT = C(DR)e T = CRT D eT = C eDeT ,
where D e is orthogonal. Now, using the singular value decomposition of Ce=
T
U ΣW , we see that
eD
C e T = (U ΣW T )D
e T = (U Σ)(DW
e )T = C
bDbT .
iii) xk+1 := xk + sk ,
and set m := m + 1.
sT ³ ssT ´
e + (y − B)s
B̄ = B e T /(sT s) = B + (y − Bs) − R I − . (3.15)
sT s sT s
Comparable to the proof of the convergence of Broyden’s method, Theorem
1.26, we estimate the difference between the new Broyden matrix and the
Jacobian of g at x∗ . It follows that
³ ssT ´ sT ³ ssT ´
B̄ − Jg (x∗ ) = (B − Jg (x∗ )) I − T + (y − Jg (x∗ )s) T − R I − T .
s s s s s s
Thus instead of (1.58) we obtain
sT ³ ssT ´
B̄ = B + (y − Bs) − R I − ,
sT s sT s
is well defined in a neighborhood N = N1 × N2 of (x∗ , Jg (x∗ )), and the corre-
sponding iteration
xk+1 = xk − Bk−1 g(xk )
with Bk+1 ∈ Φ(xk , Bk ), k ≥ 0, is locally and q-superlinearly convergent at x∗ .
88 Chapter 3. Limited memory Broyden methods
Table 3.2: Characteristics of Algorithm 3.11 applied to the discrete integral equation
function (A.5), with q = p − 1.
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 3.8: The convergence rate of Algorithm 3.11 applied to the discrete integral
equation function (A.5), with q = p − 1. [’◦’(Broyden), ’×’(p = 10), ’¦’(p = 8),
’O’(p = 7), ’+’(p = 6), ’M’(p = 5), ’∗’(p = 4), ’/’(p = 3), ’.’(p = 2), ’✩’(p = 1)]
10
10
quotient σp /ksk−1 k
0
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 3.9: The quotient σp /ksk−1 k for Algorithm 3.11, applied to the discrete integral
equation function (A.5), with q = p − 1. [’◦’(Broyden), ’×’(p = 10), ’¦’(p = 8),
’O’(p = 7), ’+’(p = 6), ’M’(p = 5), ’∗’(p = 4), ’/’(p = 3), ’.’(p = 2), ’✩’(p = 1)]
step. After computing the singular value decomposition of the update matrix
in step (vi), we additionally permute the columns of the matrices C and D, so
that the first column of both matrices is moved to the last column. In other
words, we apply Algorithm 3.4 where q is set to q = p − 1 and the matrix Z
90 Chapter 3. Limited memory Broyden methods
is equal to
0 1
.. ..
. . −1
Z=
..
W R.
(3.18)
. 1
1 0
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 3.10: The convergence rate of Algorithm 3.11 applied to the discrete integral
equation function (A.5), with q = p − 1 and Z given by (3.18). [’◦’(Broyden), ’×’(p =
10), ’O’(p = 7), ’M’(p = 5), ’∗’(p = 4), ’/’(p = 3), ’✩’(p = 1)]
The computations
In order to compute the singular value decomposition of the update matrix
Q = CD T , we use two steps. First we make the matrix D orthogonal and
e In these
then we compute the singular value decomposition of the matrix C.
steps two important matrices are involved. We now have a closer view to the
the matrix R of the QR-decomposition of D and the matrix W, containing the
e T C.
eigenvectors of C e
3.2 Broyden Rank Reduction method 91
Note that after p iterations of the BRR process, the matrix D is nearly
orthogonal. The first p − 1 columns denoted by v1 , . . . , vp−1 are the right
singular vectors of the previous update matrix, and form an orthonormal set
in the Rn . Let cdT be the new rank-one update to the Broyden matrix, then
the last column of D contains the vector d. The decomposition of the update
matrix is rewritten by
e T = CRT D
CDT = C(DR) eT = C
eDeT ,
where the last column (r1p , . . . , rpp ) describes how the new vector d is dis-
tributed over the old ’directions’ of the update matrix. In fact rlp = vlT d,
l = 1, . . . , p − 1, and rpp normalizes the new vector d˜p after the orthog-
onalization. The matrix R is invertible if and only if rpp 6= 0, that is, if
d∈/ span{v1 , . . . , vp−1 }. The inverse matrix is then given by
1 −r1p /rpp
.. ..
. .
R−1 = ,
1 −r1,p−1 /rpp
1/rpp
e = DR−1 , thus
and D
p−1
X rlp
1
d˜p = d− vl ,
rpp rpp
l=1
eD
C e T = (U ΣW T )D
e T = (U Σ)(DW
e )T = C
bDbT .
92 Chapter 3. Limited memory Broyden methods
After the first p iterations of the BRR process, W has no particular structure
w11 · · · w1p
.. .
W = ... ..
. .
wp1 · · · wpp
Nothing can be said about the entries of the matrix, because a rank-one per-
turbation of a matrix can disturb the singular value decomposition completely.
On the other hand, if C eDe T is already in SVD-format then W = I. The matrix
W tells us how we have to turn the columns of D e to obtain the right singular
vectors of Q. By considering the diagonal of W we can observe whether or
not the update to the Broyden matrix changes the form of the singular value
decomposition.
Tables 3.3 and 3.4 can be explained in the following way. Because ini-
tially the matrices C and D are zero, the singular values decomposition of the
update-matrices does not have to be computed in the first iteration. For k = 2
it is trivial that all but the first element of the first column of R are equal to
zero, since m = 1. For k = 3 the element |r12 | is close to one. This implies
that the first two Broyden steps, s0 and s1 , point in more or less the same
direction. Note that the difference between the Broyden matrices B1 and B2
is small, see Table 3.1. The diagonal of W shows that the update matrix is
in singular value decomposition format, in spite of the addition of a rank-one
matrix. In the fourth iteration (k = 4) a second direction orthogonal to the
first is involved. According to the diagonal of W the two directions have to
be adjusted slightly to obtain the singular value decomposition. In the sixth
iteration (k = 6) the fourth and fifth direction are twisted (|w44 |, |w55 | 6= 1).
Note that the singular values corresponding to these directions are small. Di-
rectly after the introduction of a third direction in iteration 7 the second and
third direction are twisted. So, a direction is found that is more important
than the second direction of the last iteration. In iteration k = 8 the Broyden
step lies mainly in this new direction. Note that the first direction obtained by
Broyden’s method, remains the principal direction in all subsequent iterations.
3.2 Broyden Rank Reduction method 93
£ ¤ £ ¤
k m |r1m | ··· |rpm | |w11 | ··· |wpp |
1 1
2 1
0 0
1 1
3 2
0 0
1 1
4 3
0 0
1 1
5 4
0 0
1 1
6 5
0 0
1 1
7 6
0 0
1 1
8 7
0 0
1 1
9 7
0 0
1 1
10 7
0 0
1 1
11 7
0 0
Table 3.3: The absolute values of the elements of column m of R and the diagonal
of W during the BRR process, Algorithm 3.11 with p = 7 and q = 6, applied to the
discrete integral equation function (A.5) (n = 100).
94 Chapter 3. Limited memory Broyden methods
£ ¤ £ ¤
k m |r1m | ··· |rpm | |w11 | ··· |wpp |
1 1
12 7
0 0
1 1
13 7
0 0
1 1
14 7
0 0
1 1
15 7
0 0
1 1
16 7
0 0
1 1
17 7
0 0
1 1
18 7
0 0
1 1
19 7
0 0
1 1
20 7
0 0
1 1
21 7
0 0
Table 3.4: The absolute values of the elements of column m of R and the diagonal
of W during the BRR process, Algorithm 3.11 with p = 7 and q = 6, applied to the
discrete integral equation function (A.5) (n = 100).
3.2 Broyden Rank Reduction method 95
i) sk := g(xk ) − CD T g(xk ),
ii) xk+1 := xk + sk ,
and
and set m := m + 1.
96 Chapter 3. Limited memory Broyden methods
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 3.11: The convergence rate of Algorithm 3.15, applied to the discrete integral
equation function (A.5), with q = p − 1. [’◦’(Broyden), ’×’(p = 10), ’¦’(p = 8),
’O’(p = 7), ’+’(p = 6), ’M’(p = 5), ’∗’(p = 4), ’/’(p = 3), ’.’(p = 2), ’✩’(p = 1)]
B = B0 + Q,
3.3 Broyden Base Reduction method 97
10
10
quotient σp /ksk−1 k
0
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 3.12: The quotient σp /ksk−1 k for Algorithm 3.15 applied to the discrete inte-
gral equation function (A.5), with q = p − 1. [’◦’(Broyden), ’×’(p = 10), ’¦’(p = 8),
’O’(p = 7), ’+’(p = 6), ’M’(p = 5), ’∗’(p = 4), ’/’(p = 3), ’.’(p = 2), ’✩’(p = 1)]
where the update matrix, denoted by Q, has at most rank p. As we have seen
before Q is the product of two (n × p)-matrices C and D,
Q = CD T .
e = CV
QV = QV e T V = C.
e
Note that we have projected the update matrix on the q-dimensional subspace
V,
e = QV V T .
Q
98 Chapter 3. Limited memory Broyden methods
Example 3.17. We assume that rank Q ≤ p and take the subspace V spanned
by the right singular vectors {v1 , . . . , vp }, corresponding to the largest p sin-
gular values σ1 , . . . , σp of Q. The set of right singular vectors also forms an
orthonormal basis of V. We define D e := V = [v1 , . . . , vp ] and C
e := QV. The
product CeDe T represents the singular value decomposition of Q, since
eT C
C e = V T QT QV = V T Σ2 V = Σ2 ,
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 3.13: The convergence rate of Algorithm 3.4 applied to the discrete integral
equation function (A.5), with q = p − 1 and Z given by (3.22). [’◦’(Broyden), ’×’(p =
10), ’M’(p = 5), ’∗’(p = 4), ’/’(p = 3), ’.’(p = 2), ’✩’(p = 1)]
Another choice for V could be the subspace that contains the first p − 1
Broyden steps. Thus V ⊃ span{s0 , . . . , sp−2 }. Note that after the pth iteration,
100 Chapter 3. Limited memory Broyden methods
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 3.14: The convergence rate of Algorithm 3.4, applied to the discrete integral
equation function (A.5), with q = p − 1 and Z = R. [’◦’(Broyden), ’×’(p = 10),
’M’(p = 5), ’∗’(p = 4), ’/’(p = 3), ’.’(p = 2), ’✩’(p = 1)]
equations. These new compact representation is of interest in its own right, but
also of use in limited memory methods. Therefore we include the derivation
in this chapter.
Let us define the (n × k)-matrices Sk and Yk by
£ ¤ £ ¤
Sk = s0 . . . sk−1 , Yk = y0 . . . yk−1 . (3.24)
Bk = C k + D k , (3.29)
C0 = B 0 , Ck+1 = Ck (I − ρk sk sTk ) k = 0, 1, 2, . . . ,
and
where
ρk = 1/sTk sk .
Considering first Ck we note that it can be expressed as the product of C0
with a sequence of projection matrices,
Proof. Let
U = Y k − B0 Sk , V T = Nk−1 SkT ,
so that (3.27) becomes
Bk = B 0 + U V T
Applying the Sherman-Morrison-Woodbury formula (1.68), we obtain
Note that since we have assumed that all the updates given by (3.35) exist,
we have implicitly assumed the non-singularity of Bk . This non-singularity
along with the Sherman-Morrison formula (1.68) ensures that (Mk + SkT H0 Yk )
is nonsingular.
In applications, we only use the representation (3.36) of the inverse Broy-
den matrix. Because we always start with H0 = −I as initial matrix (3.36) is
reduced to
Hk = −I − (Yk + Sk )(Mk − SkT Yk )−1 SkT . (3.38)
The matrix we want to invert, (Mk −SkT Yk ), can be approximately singular,
because the size of the Broyden step ksk k decreases if the process converges.
In that case, the norm of the first column of M is much larger than the
norm of the last but one column. In the pth iteration, the first column of M
equals (0, −sT1 s0 , . . . , −sTp−1 s0 ) and column p − 1 equals (0, . . . , 0, −sTp−1 sp−2 ).
For the same reason the (p × p)-matrix SpT Yp probably does not have p large
singular values. In addition, the vectors {s0 , . . . , sp−1 } can be more or less
linear dependent. There exists a remarkable way to solve this problem. Instead
of storing the Broyden steps and their yields, we define
h sp−1
i
s
D = ks00 k · · · ksp−1 k = Sp T, (3.39)
h yp−1
i
y
C = ks00 k · · · ksp−1 k = Yp T, (3.40)
Removing updates
Using this notation, the method of Broyden can simply be transformed into a
limited memory method. We apply the condition that at most p updates to
the Broyden matrix can be stored. The Broyden steps and their corresponding
yields are stored according to (3.39) and (3.40) in the matrices C and D. So,
before a new Broyden step in iteration k = p + 1 can be computed, we have
to remove a column of both matrices C and D.
Pm T
Pm T
ii) Solve (M − l=1 dl cl )tk =− l=1 dl g(xk ) for tk ,
Pm
iii) dm+1 := −g(xk ) + l=1 (cl + dl )tk ,
vii) Let m := m + 1,
Therefore
Bk+1 sk = B0 sk + (C − B0 D)N −1 DT sk
= B0 sk + (C − B0 D)ksk kem
= B 0 sk + y k − B 0 sk = y k .
3.4 The approach of Byrd 107
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 3.15: The convergence rate of Algorithm 3.23 applied to the discrete integral
equation function (A.5), for different values of p. [’◦’(Broyden), ’×’(p = 10), ’M’(p =
5), ’∗’(p = 4), ’/’(p = 3), ’.’(p = 2), ’✩’(p = 1)]
108 Chapter 3. Limited memory Broyden methods
Part II
109
Chapter 4
111
112 Chapter 4. Features of Broyden’s method
and write
l(x) = Ax + b (4.1)
where
A = Jg (x∗ ) and b = −Jg (x∗ )x∗ . (4.2)
In this section we compute both the singular values of the matrix A + I and
of the zeroth Krylov space for the linearized problem, given by
where h i
v Av An−1 v
K(v, A) = kvk kAvk ··· kAn−1 vk .
The rank of K0 equals the dimension of Z0 . However, we can derive the singular
values of K0 , to obtain a more continuous description of the rank of K0 . The
rank of K0 can be approximated by the number of relatively large (for example,
≥ 10−15 ) singular values of K0 .
0
10
residual kg(xk )k
−5
10
PSfrag replacements 10
−10
−15
10
quotient σp /ksk−1 k 0 5 10 15 20 25 30 35 40
iteration k
10
10
quotient σp /ksk−1 k
0
10
PSfrag replacements
−10
10
residual kg(xk )k
0 5 10 15 20 25 30 35 40
iteration k
Figure 4.1: The convergence rate of Algorithm 1.19 and Algorithm 3.11, with q = p−1,
applied to the discrete integral equation function (A.5) and additionally the quotient
σp /ksk−1 k. [’◦’(Broyden), ’×’(p = 10), ’¦’(p = 8), ’O’(p = 7), ’+’(p = 6), ’M’(p = 5),
’∗’(p = 4), ’/’(p = 3), ’.’(p = 2), ’✩’(p = 1)]
converge to a residual of kg(xk )k < 10−12 , starting from the initial condition
x0 given by (A.6). In Figure 4.1 we have plotted the rate of convergence for
the method of Broyden and the BRR method for different values of p.
The method of Broyden needs 21 iterations to obtain the same order of
residual. It turns out that the BRR method needs also 21 iterations for p ≥ 7,
cf. Section 3.2, where we took n = 50. For smaller values of the parameter p
the residual diverges from the path of Broyden’s method when the quotient
σp /ksk−1 k has become too large, see again Figure 4.1. Thereafter the residual
kg(xk )k changes very little from iteration to iteration and the process slowly
diverges. So, the quotient σp /ksk−1 k decreases rather because the size of the
Broyden step increases than because the singular value σp gets smaller.
In Figure 4.2, we have plotted the singular values of both Jf (x∗ ) and K0 ,
defined by (4.3). The graph of the singular values of Jf (x∗ ) describes an
exponential decay to 2. Clearly the matrix Jf (x∗ ) has full rank. The singular
4.1 Characteristics of the Jacobian 115
values of K0 describe a fast linear decay until the 9th singular value. The
remaining singular values are of the same order. Note that it is not evident to
determine the dimension of the zeroth Krylov space.
2.3 0
10
2.25
−5
2.2 10
2.15
−10
10
2.1
2.05 −15
10
2
0 5 10 15 20 0 5 10 15 20
Figure 4.2: The singular values of Jf (x∗ ) (left) and K0 (right) in case of the discrete
integral equation function (A.5), n = 20.
In Figure 4.3, we have plotted the singular values of the same matrices
Jf (x∗ ) and K0 for a larger dimension (n = 50). We observe that the number
2.3 0
10
2.25
−5
2.2 10
2.15
−10
10
2.1
2.05 −15
10
2
0 10 20 30 40 50 0 10 20 30 40 50
Figure 4.3: The singular values of Jf (x∗ ) (left) and K0 (right) in case of the discrete
integral equation function (A.5), n = 50.
of large singular values of K0 is about the same as in case of n = 20. So, for
the linearized system the method of Broyden would need as many iterations
for n = 20 as it needs for n = 50. This explains the same rate of convergence
for different dimensions of the nonlinear problem, see Example 1.21.
residual of kg(xk )k < 10−10 , starting from the initial condition x0 , given by
(A.3). The method of Broyden needs 60 iterations to obtain the same order of
residual, see Figure 4.4. It turns out that the BRR method fails to converge
for every value of p. As can be seen in Figure 4.4 the residual increases directly
after the quotient σp /ksk−1 k has become too large.
5
10
residual kg(xk )k
0
10
−5
PSfrag replacements 10
−10
10
quotient σp /ksk−1 k 0 10 20 30 40 50 60
iteration k
quotient σp /ksk−1 k
0
10
−5
10
PSfrag replacements
−10
10
residual kg(xk )k
0 10 20 30 40 50 60
iteration k
Figure 4.4: The convergence rate of Algorithm 1.19 and Algorithm 3.11, with q = p−1,
applied to the discrete boundary value function (A.2) and additionally the quotient
σp /ksk−1 k. [’◦’(Broyden), ’×’(p = 10), ’M’(p = 5), ’∗’(p = 4), ’/’(p = 3), ’.’(p = 2),
’✩’(p = 1)]
The singular values of Jf (x∗ ) are all different and are nicely distributed
over the interval [1, 5], Figure 4.5. All singular values of K0 are larger than
10−15 and more than 10 singular values are even larger than 10−5 . Although
one might consider K0 not to have full rank it is rather close to be nonsingular.
So, the method of Broyden would need almost all 2n iterations to converge on
the linearized problem.
4.1 Characteristics of the Jacobian 117
5 0
10
4
−5
10
3
−10
2 10
0 5 10 15 20 0 5 10 15 20
Figure 4.5: The singular values of Jf (x∗ ) (left) and K0 (right) in case of the discrete
boundary value function (A.2), n = 20.
Therefore, the Jacobian Jf (x∗ ) has two different singular values, that is, σ1 =
. . . = σn/2 ≈ 21.5134 and σn/2+1 = . . . = σn ≈ 0.4183, see Figure 4.7. Clearly,
only two singular values of the matrix K0 are significant. So, the dimension of
the zeroth Krylov space Z0 is 2 and the method of Broyden would need at most
4 iterations to solve the linearized system. Note that the BRR method can
approximate the zero of the extended Rosenbrock function if we take p = 3.
118 Chapter 4. Features of Broyden’s method
5
10
residual kg(xk )k
0
10
−5
10
PSfrag replacements
−10
10
−15
10
quotient σp /ksk−1 k 0 5 10 15 20 25
iteration k
5
10
quotient σp /ksk−1 k
0
10
−5
10
PSfrag replacements
−10
10
Figure 4.6: The convergence rate of Algorithm 1.19 and Algorithm 3.11, with q = p−1,
applied to the extended Rosenbrock function (A.7) and additionally the quotient
σp /ksk−1 k. [’◦’(Broyden), ’M’(p = 5), ’∗’(p = 4), ’/’(p = 3), ’.’(p = 2), ’✩’(p = 1)]
The unique solution of the extended Powell singular function is the zero
vector, x∗ = (0, . . . , 0). The Jacobian Jf = Jg + I at the solution x∗ is a
4.1 Characteristics of the Jacobian 119
0
20 10
15 −5
10
10
−10
10
5
−15
10
0
0 5 10 15 20 0 5 10 15 20
Figure 4.7: The singular values of Jf (x∗ ) (left) and K0 (right) in case of the extended
Rosenbrock function (A.7), n = 20.
The Jacobian Jf is nonsingular and has four different singular values, that is,
σ1 = . . . = σn/4 ≈ 10.2501, σn/4+1 = . . . = σn/2 ≈ 3.3064, σn/2+1 = . . . =
σ3n/4 ≈ 1.0000, and σ3n/4+1 = . . . = σn ≈ 0.0590, see Figure 4.8. Only three
0
10 10
8
−5
10
6
4 −10
10
2
−15
0 10
0 5 10 15 20 0 5 10 15 20
Figure 4.8: The singular values of Jf (x∗ ) (left) and K0 (right) in case of the extended
Powell singular function (A.9), n = 20.
singular values of the matrix K0 are significant. The dimension of the zeroth
Krylov space Z0 is about 3 and the method of Broyden would need at most 6
iterations to solve the linearized system. The Jacobian Jg , however, is singular
120 Chapter 4. Features of Broyden’s method
at the zero x∗ of the function g and the theory of Sections 1.3 and 3.2 cannot
be applied.
Ax + b = 0, (4.4)
can be predicted by the sum of the dimensions of the Krylov spaces Z0 and
Z1 . By Corollary 2.14 we know that the method of Broyden needs at most
2d0 iterations on linear systems, where d0 = dim Z0 . According to Lemma
2.18 Broyden’s method needs at most 2d0 iterations for all linearly translated
systems of (4.4).
Therefore, we consider the method of Broyden applied to linear systems
where A has a Jordan canonical block form. In this section the vector b is
chosen to be the zero vector. As initial Broyden matrix we choose again
B0 = −I and in all examples we choose the initial condition x0 = (1, . . . , 1).
Another conclusion of Chapter 2 is that although the difference between
the Broyden matrix and the Jacobian does not grow, Lemma 2.6, it is not
necessary that the Broyden matrix approaches the Jacobian even if the linear
system (4.4) is solved. It has been proved that, under certain conditions, the
Broyden matrix and the Jacobian only coincide in one single direction, Lemma
2.7. In this section we illustrate the development of the Broyden matrix along
the Broyden process.
Jacobian B0 B3 B4
B5 B6 B10 B15
Figure 4.9: The Jacobian (4.5) of the linear system, the initial Broyden matrix and
the Broyden matrix at subsequent iterations (n = 20). Black corresponds to the value
−1 and white to the value 2.
122 Chapter 4. Features of Broyden’s method
Figure 4.10: The Broyden matrix at three different iterations of Algorithm 3.11, with
p = 20 (n = 20). Black corresponds to the value −1 and white to the value 2.
For smaller values of p the BRR method fails to converge. That is, the
convergence behavior of Broyden’s method is followed for about 2p iterations,
but then the process diverges. We now apply Algorithm 3.11 with p = 1. This
implies that there is only one singular value available to update the initial
Broyden matrix B0 in order to approximate the Jacobian (4.5). We have
plotted the Broyden matrix at four iterations of the BRR process, see Figure
4.11. Again the update process starts at the lower right corner of the matrix.
However, instead of creating the upper sub-diagonal, after a few iterations the
diagonal structure is restored in the lower right corner.
We apply Algorithm 3.11 with p = 2. We have plotted the Broyden matrix
at four iterations of the BRR process, see Figure 4.12. The update process
4.2 Solving linear systems with Broyden’s method 123
Figure 4.11: The Broyden matrix at three different iterations of Algorithm 3.11, with
p = 1 (n = 20). Black corresponds to the value −1 and white to the value 2.
starts as expected in the lower right corner of the matrix. It turns out that the
process fails to reconstruct the Jacobian again. Instead, two spots are created
on the diagonal and destroy the banded structure of the Broyden matrix. As
said before the process fails to converge.
Figure 4.12: The Broyden matrix at three different iterations of Algorithm 3.11, with
p = 2 (n = 20). Black corresponds to the value −1 and white to the value 2.
where both A11 , A22 ∈ Rn/2×n/2 , are Jordan blocks (4.5) with the same eigen-
value λ = 2. The vector b is the zero vector. If x0 is given by x0 = (1, . . . , 1)
the dimension of the zeroth Krylov space Z0 equals d0 = n/2. It takes Broy-
den’s method at most 2d0 = n iterations to solve (4.4). In Example 2.5 we
have seen that for n = 4 the method of Broyden needs 4 iterations to converge.
124 Chapter 4. Features of Broyden’s method
We choose the dimension n = 20 and plot the Jacobian A, see Figure 4.13.
The Broyden matrix is plotted at several iterations. The matrix B20 is the
final matrix before the method of Broyden solves the problem.
Figure 4.13: The Jacobian (4.6) of the linear system, the initial Broyden matrix and
the Broyden matrix at subsequent iterations (n = 20). Black corresponds to the value
−1 and white to the value 2.
As for the previous example, Broyden’s method tries to recover the struc-
ture of the Jacobian, starting from the initial matrix. The process starts at
the bottom right side of the matrix. Iteration after iteration the update to
the Broyden matrix involves a next entry of the main diagonal. Note that
the Broyden matrix again is developing a sub-diagonal. But, in addition, two
bands arise that connect both (n/2)-dimensional systems.
Here the method of Broyden needs 20 iterations to converge, and kg(x k )k
oscillates before it drops to 10−12 . It turns out that the BRR method is as fast
as Broyden’s method for p ≥ 11. For p ≤ 10 the process eventually diverges.
where both A11 , A22 ∈ Rn/2×n/2 , are Jordan blocks (4.5) but with different
eigenvalues λ1 = 2 and λ2 = 3. The vector b is the zero vector. If the initial
condition is given by x0 = (1, . . . , 1), the dimension of the zeroth Krylov space
Z0 equals d0 = n. It takes Broyden’s method at most 2d0 = 2n iterations to
solve (4.4).
We choose the dimension n = 20 and plot the Jacobian A, see Figure 4.14.
The Broyden matrix is plotted at several iterations. The matrix B40 is the
final matrix before the method of Broyden solves the problem.
4.3 Introducing coupling 125
Figure 4.14: The Jacobian (4.7) of the linear system, the initial Broyden matrix and
the Broyden matrix at subsequent iterations (n = 20). Black corresponds to the value
−1 and white to the value 3.
Broyden matrices of the process. After 8 iterations, only three elements on the
diagonal are ’recovered’, but evidently this is enough for Broyden’s method
to find the solution. The BRR method turns out to be convergent for every
value for p.
Jacobian B4 B6 B8
Figure 4.15: The Jacobian (4.8) of the linear system, with δ = 1.0 · 10−4 , and the
Broyden matrix at subsequent iterations (n = 20). Black corresponds to the value
−1 and white to the value 2.
Jacobian B6 B8 B10
Figure 4.16: The Jacobian (4.8) of the linear system, with δ = 1.0 · 10−3 , and the
Broyden matrix at subsequent iterations (n = 20). Black corresponds to the value
−1 and white to the value 2.
Figure 4.17: The Jacobian (4.8) of the linear system, with δ = 1.0 · 10−2 , and the
Broyden matrix at subsequent iterations (n = 20). Black corresponds to the value
−1 and white to the value 2.
Figure 4.18: The Jacobian (4.8) of the linear system, with δ = 0.1, and the Broyden
matrix at subsequent iterations (n = 20). Black corresponds to the value −1 and
white to the value 2.
Figure 4.19: The Jacobian (4.8) of the linear system, with δ = 0.5, and the Broyden
matrix at subsequent iterations (n = 20). Black corresponds to the value −1 and
white to the value 2.
0
10
residual kg(xk )k
−5
10
−10
10
PSfrag replacements
−15
10
0 5 10 15 20 25 30 35 40
iteration k
Figure 4.20: The rate of convergence of Broyden’s method solving (4.4) where A
is given by (4.8) for different values of δ. [’◦’(δ = 1.0 · 10−4 ), ’×’(δ = 1.0 · 10−3 ),
’+’(δ = 1.0 · 10−2 ) ’∗’(δ = 0.1), ’¤’(σ = 0.5)]
n are uniform for every simulation in a table. For every combination of the
method and parameter p, the number of iterations of the simulation are given
and the variable R that represents the rate of convergence of the process to
obtain a residual of kg(xk )k < ε. Note that if R is negative the final residual
kg(xk∗ )k is larger than the initial residual kg(x0 )k. If R is large, then the
method has a high rate of convergence. If a process fails to converge this is
indicated by an asterisk.
In the examples of Chapter 3 we saw that in some cases a process initially
converges, but fails after a few iterations. So, the residual kg(xk )k might have
been smaller than the final residual. This situation cannot be distinguished
in the tables of this section. We refer for further details to Chapter 3 and
Sections 4.1 and 4.2.
method p = 20 p = 19 p = 18 p = 17 p = 16
UPALL 21 1.3412 23 1.3544 21 1.3619 21 1.4441 22 1.2688
UP1 21 1.3412 21 1.3412 21 1.3412 21 1.3412 21 1.3327
BRR 21 1.3412 21 1.3412 21 1.3412 21 1.3412 21 1.3412
BBRI 21 1.3411 21 1.3411 21 1.3411 21 1.3411 21 1.3411
BRR2 21 1.3412 21 1.3412 21 1.3412 21 1.3412 21 1.3412
BBR 21 1.3412 21 1.3412 21 1.3412 21 1.3412 21 1.3412
BBS 21 1.3412 21 1.3412 21 1.3412 21 1.3412 21 1.3412
BYRD 21 1.3411 21 1.3411 21 1.3411 21 1.3410 21 1.3432
p = 15 p = 14 p = 13 p = 12 p = 11
UPALL 23 1.3103 20 1.3677 23 1.2103 22 1.3442 21 1.3353
UP1 24 1.2372 21 1.3029 27 1.0782 25 1.1281 29 0.9653
BRR 21 1.3412 21 1.3412 21 1.3412 21 1.3412 21 1.3412
BBRI 21 1.3411 21 1.3411 21 1.3411 21 1.3411 21 1.3411
BRR2 21 1.3412 21 1.3412 21 1.3412 21 1.3412 21 1.3412
BBR 21 1.3412 21 1.3412 21 1.3412 21 1.3412 21 1.3412
BBS 21 1.3412 21 1.3412 21 1.3411 21 1.3411 21 1.3401
BYRD 27 1.0585 32 0.8577 32 0.8585 63 0.4433 111 0.2489
Table 4.2: The number of iterations and the rate of convergence for the limited
memory Broyden methods of Table 4.1, applied to the discrete integral equation
function (A.5) (n = 20). [’*’ (no convergence)]
that is, the method converges for p ≥ 7 and fail for p ≤ 6. The same holds for
the methods BBR and BBS, both methods converge for p ≥ 8. These methods,
however, also converge for some smaller values of p. For p ≤ 12 the method
BYRD needs many iterations to converge, except for p = 3 and p = 4, where
4.4 Comparison of selected limited memory Broyden methods 131
the method does converge rather fast. We can conclude that every method
can be trusted if p is larger than a certain critical value (p = 6 for BRR,
p = 7 for BBR and BBS, etc). Beneath this critical value the method might
occasionally converge.
For the extended Rosenbrock function (A.7) with n = 20, we give the results
of the simulations only for p ≤ 10, since for every method starting from x0
given by (A.8) the rate of convergence hardly increases for larger values of p.
The results are listed in Table 4.3.
Table 4.3: The number of iterations and the rate of convergence for the limited
memory Broyden methods of Table 4.1, applied to the extended Rosenbrock function
(A.7) (n = 20). [’*’ (no convergence)]
The ’∞’-sign implies that accidentally the exact zero of the extended
Rosenbrock function is found. Again all methods fail to converge for p = 1.
For p = 2 only the methods UP1, BRR and BBS converge. Note that most
methods converge for p = 3. The method BBR and BBS are for p = 3 even as
fast as for p = 10.
132 Chapter 4. Features of Broyden’s method
Table 4.4: The number of iterations and the rate of convergence for the limited
memory Broyden methods of Table 4.1, applied to the linear equation (4.4) where A
is given by (4.5) and b = 0 (n = 20). [’*’ (no convergence)]
method p = 20 p = 19 p = 18 p = 17 p = 16
UPALL 20 1.7351 20 1.7351 20 1.6369 104 0.3384 200 0.0589 ∗
UP1 20 1.7351 20 1.7351 20 1.6805 167 0.1870 200 0.1403 ∗
BRR 20 1.7351 20 1.7351 20 1.7331 20 1.7259 20 1.6852
BRRI 20 1.7685 20 1.7685 20 1.7662 20 1.7521 20 1.7198
BRR2 20 1.7351 20 1.7351 20 1.7326 20 1.7280 20 1.6866
BBR 20 1.7351 20 1.7351 20 1.7465 20 1.7275 20 1.7245
BBS 20 1.7351 20 1.7351 20 1.7387 20 1.7325 20 1.7205
BYRD 20 1.7035 20 1.7036 200 −0.0623∗ 200 0.0924∗ 200 0.0033∗
p = 15 p = 14 p = 13 p = 12 p = 11
UPALL 200 0.0476∗ 200 0.0171∗ 200 0.0251∗ 200 0.0151∗ 200 0.0162∗
UP1 200 0.0132∗ 200 0.0182∗ 200 0.0235∗ 200 0.0079∗ 200 0.0042∗
BRR 20 1.6375 20 1.6571 20 1.6027 20 1.5553 20 1.5288
BRRI 20 1.7052 20 1.6270 20 1.6756 20 1.5609 20 1.5227
BRR2 20 1.6466 20 1.6467 20 1.6305 20 1.5621 73 0.4173
BBR 20 1.7495 20 1.7549 20 1.6908 20 1.6256 20 1.5424
BBS 20 1.7113 20 1.6994 20 1.7035 20 1.7338 20 1.7177
BYRD 200 0.0469∗ 200 0.0598∗ 200 0.0121∗ 200 0.0114∗ 200 0.0029∗
Table 4.5: The number of iterations and the rate of convergence for the limited
memory Broyden methods of Table 4.1, applied to the linear equation (4.4) where A
is given by (4.6) and b = 0 (n = 20). [’*’ (no convergence)]
134 Chapter 4. Features of Broyden’s method
method p = 20 p = 19 p = 18 p = 17 p = 16
UPALL 200 −0.0930∗ 200 −0.0806∗ 200 −0.0813∗ 200 −0.0798∗ 200 −0.0633∗
UP1 200 −0.0630∗ 200 −0.0570∗ 200 −0.0558∗ 200 −0.0465∗ 200 −0.0408∗
BRR 38 0.8408 45 0.7108 147 −0.2954∗ 149 −0.2953∗ 130 −0.3400∗
BRRI 38 0.8642 46 0.6741 200 0.0648∗ 200 −0.1018∗ 200 −0.0847∗
BRR2 38 0.8229 103 0.3301 112 0.2736 200 0.1223∗ 200 0.0566∗
BBR 42 0.7646 168 −0.2635∗ 200 −0.1886∗ 167 −0.2646∗ 164 −0.2708∗
BBS 40 0.8473 41 0.8489 146 0.2196 87 −0.5110∗ 105 −0.4182∗
BYRD 200 −0.0444∗ 200 −0.0678∗ 200 −0.0589∗ 200 −0.0672∗ 200 −0.0502∗
Table 4.6: The number of iterations and the rate of convergence for the limited
memory Broyden methods of Table 4.1, applied to the linear equation (4.4) where A
is given by (4.7) and b = 0 (n = 20). [’*’ (no convergence)]
Chapter 5
135
136 Chapter 5. Features of the Broyden rank reduction method
routine D02EJF. To solve the equation g(x) = 0 with g(x) = f (x) − x, the
BRR method is applied for different values of p.
0
10
residual kg(xk )k
−5
10
PSfrag replacements 10
−10
0 10 20 30 40 50 60
iteration k
Figure 5.1: The convergence rate of Algorithm 1.19 and Algorithm 3.11, with q = p−1,
applied to the period map of the reverse flow reactor (8.3) using the one-dimensional
model (6.23)-(6.25) with the parameter values of Table 6.2. [’◦’(Broyden), ’×’(p = 20),
’+’(p = 10), ’∗’(p = 5), ’¤’(p = 4), ’¦’(p = 3), ’O’(p = 2), ’M’(p = 1)]
the length of the reactor is set at R/L = 0.0025. As initial condition a state of
the reactor is taken that is at high constant temperature (T = 2T0 ) and filled
with inert gas (c = 0). For the finite volume discretization an equidistant grid
is used with N grid points in the axial direction (N = 100). In the radial
direction a non-uniform grid of M grid points is chosen that becomes finer in
the direction of the wall of the reactor (M = 25). In fact, a segment of the
reactor is divided in M rings with the same volume. The dimension of the
discretized problem is denoted by n (n = 2 · M · N = 5000). The system of
ordinary differential equations is integrated over one reverse flow period using
the NAG-library routine D02NCF.
To solve the equation g(x) = 0, with g(x) = f (x) − x, the BRR method
is applied for different values of p. It turns out that for the two-dimensional
model it is no longer possible to apply the original method of Broyden, due to
memory constraints.
0
10
residual kg(xk )k
−5
10
PSfrag replacements
0 10 20 30 40 50 60
iteration k
Figure 5.2: The convergence rate of Algorithm 3.11, with q = p − 1, applied to the
period map of the reverse flow reactor (8.3) using the two-dimensional model (6.26)-
(6.28) with the parameter values of Table 6.2. [’×’(p = 20), ’+’(p = 10), ’∗’(p = 5),
’¤’(p = 4), ’¦’(p = 3), ’O’(p = 2)]
Figure 5.2 shows that the BRR method has a high rate of convergence for
p ≥ 5. For 2 ≤ p ≤ 4 the BRR method does not converge within 60 iterations.
The amount of memory needed to store the Broyden matrix can be reduced
by choosing p = 10 instead of p = 20, using approximately the same number
of iterations.
138 Chapter 5. Features of the Broyden rank reduction method
0
10
singular values
−2
10
PSfrag replacements 10
−4
0 5 10 15 20 25 30 35 40 45
iteration k
0
10
singular values
−2
10
PSfrag replacements 10
−4
0 5 10 15 20 25 30 35 40 45 50
iteration k
0
10
singular values
−2
10
PSfrag replacements −4
10
0 5 10 15 20 25 30 35 40 45 50 55
iteration k
Figure 5.3: The singular value distribution of the update matrix during the BRR
process, with q = p − 1, applied to the period map of the reverse flow reactor (8.3)
corresponding to the one-dimensional model (6.23)-(6.25). [up (p = 50), middle
(p = 10), down (p = 5)]
It turns out the we can describe the behavior of the singular values of the
update matrix in the same way as we did for the one-dimensional model. The
only difference is that for p = 5 the singular value σ4 starts to alter instead of
the singular value σ1 .
140 Chapter 5. Features of the Broyden rank reduction method
0
10
singular values
−2
10
PSfrag replacements 10
−4
0 5 10 15 20 25 30 35 40 45
iteration k
0
10
singular values
−2
10
PSfrag replacements −4
10
0 5 10 15 20 25 30 35 40 45 50
iteration k
0
10
singular values
−2
10
PSfrag replacements 10
−4
0 10 20 30 40 50 60
iteration k
Figure 5.4: The singular value distribution of the update matrix during the BRR
process, with q = p − 1, applied to the period map of the reverse flow reactor (8.3)
corresponding to the two-dimensional model (6.26)-(6.28). [pu (p = 50), middle
(p = 10), down (p = 5)].
of the RFR. In addition, we have shown that even when using the one-
dimensional description of the RFR, the BRR method saves memory. It turned
out that, surprisingly, for the two-dimensional model the same values for p can
be used as in case of the one-dimensional model. We now show that it is pos-
sible to use a finer grid with the same amount of memory to store the Broyden
matrix at the expense of just a few more iterations.
For the above simulation of the two-dimensional model a very slim reactor
is used (R/L = 0.0025). As will be discussed in Section 8.3, gradients in the
radial direction are absent in this case, and the two-dimensional model leads
to exactly the same results as the one-dimensional model. If we take a larger
radius for the reactor (R/L = 0.025), then radial temperature gradients are in
fact introduced. To illustrate the benefits of our limiting memory method we
compare two simulations of the model with M = 25 and M = 5 grid points
in the radial direction. So, the dimension of the discretized problem becomes
n = 5000 and n = 1000, respectively.
We have applied the BRR method with different values of p to compute
the periodic state of the reactor, see Table 5.1.
M = 25 M =5
Although a few more iterations are needed than in case of the slim reactor
(R/L = 0.0025), still the same values for p can be used for both the fine and
the coarse grid. Note that for every value of p the rate of convergence for
M = 25 is higher than for M = 5. Suppose, for example, that at most 40, 000
storage locations are available. To accelerate the convergence we want to use
the largest value of p. For the coarse grid the parameter p can be chosen to
142 Chapter 5. Features of the Broyden rank reduction method
be 20 and for the fine grid at most p = 4. This implies that instead of 53
iterations for a coarse grid, 65 iterations are needed for a fine grid to solve
the discretized problem while using the same amount of memory to store the
Broyden matrix.
Although the approximation of the cyclic steady state is qualitatively good
using the coarse grid, Figure 5.5(b), the more accurate approximation using
the fine grid, Figure 5.5(a), is preferable.
1.2 1.2
temperature
temperature
1 1
0.8 0.8
0.6 0.6
0.4 0.4
0
PSfrag replacements 0.2
0 0
0.2 0.2
0.4 0.4
1 1
0.6 0.8 0.6 0.8
0.6 0.6
Figure 5.5: Temperature distribution over the reactor bed using a coarse and a fine
grid in the radial direction.
It turns out that the methods BRR, BRRI, BRR2, BBR and BBS are
rather fast for p ≥ 5. Note that for p = 5 we need 2pn = 2 · 5 · 200 = 2000
storage locations to store the update matrix and for p = 50 we need 20, 000
storage locations. The method BRR can even be applied for p = 4 using 57
iterations. The method BRRI is still applicable for p = 3 using 69 iterations.
We clearly see that a smaller value of p does not have to imply that more
iterations are needed for the limited memory Broyden process. The fact that
for p = 50 not all methods converge in 48 iterations can be explained by the
introduction of rounding errors of the large computations. For two simulations
the results were not returned by the program, because an evaluation of the
period map failed during the process.
method p = 50 p = 40 p = 30 p = 25 p = 20
UPALL 49 0.5186 75 0.3421 66 0.3917 79 0.3178 63 0.4051
UP1 49 0.5186 65 0.3839 92 0.2731 86 0.2923 118 0.2156
BRR 48 0.5202 47 0.5324 53 0.4750 51 0.4998 55 0.4575
BRRI 50 0.5019 56 0.4610 51 0.4979 47 0.5305 50 0.5056
BRR2 48 0.5202 47 0.5324 49 0.5134 60 0.4221 52 0.5067
BBR 49 0.5186 50 0.5069 49 0.5101 50 0.5187 55 0.4543
BBS 49 0.5186 47 0.5340 53 0.4744 55 0.4547 48 0.5264
BYRD 52 0.4831 50 0.4991 62 0.4215 57 0.4429 59 0.4441
p = 15 p = 14 p = 13 p = 12 p = 11
UPALL 82 0.3046 95 0.2654 71 0.3540 74 0.3421 72 0.3455
UP1 120 0.2076 126 0.2013 146 0.1716 119 0.2096 115 0.2216
BRR 56 0.4503 51 0.4889 50 0.5029 49 0.5119 54 0.4670
BRRI 53 0.4815 55 0.4561 48 0.5201 49 0.5193 46 0.5727
BRR2 46 0.5490 48 0.5216 57 0.4471 46 0.5414 47 0.5298
BBR 49 0.5078 48 0.5314 64 0.3968 46 0.5497 44 0.5732
BBS 54 0.4626 52 0.4851 59 0.4232 53 0.4701 51 0.5023
BYRD 76 0.3287 68 0.3807 101 0.2477 65 0.3883 85 0.3010
Table 5.2: The number of iterations and the rate of convergence for different limited
memory Broyden methods, applied to the period map of the reverse flow reactor (8.3)
according to the one-dimensional model (6.23)-(6.25), n = 200. [’*’ (no convergence),
’. . .’ (no data)]
5.4 Comparison of selected limited memory Broyden methods 145
method p = 50 p = 40 p = 30 p = 25 p = 20
UPALL 47 0.4780 52 0.4259 54 0.4373 66 0.3568 67 0.3269
UP1 47 0.4780 61 0.3734 72 0.3167 98 0.2240 78 0.2830
BRR 47 0.4782 47 0.4782 47 0.4783 47 0.4783 47 0.5126
BRRI 47 0.4782 47 0.4783 47 0.4782 47 0.4783 47 0.5118
BRR2 47 0.4782 47 0.4782 47 0.4781 47 0.4778 47 0.4770
BBR 47 0.4780 47 0.4796 47 0.4912 47 0.4995 47 0.4669
BBS 47 0.4780 47 0.4782 47 0.4819 47 0.4876 50 0.4434
BYRD 47 0.4781 48 0.4567 53 0.4235 59 0.3742 56 0.4087
p = 15 p = 14 p = 13 p = 12 p = 11
UPALL 62 0.3760 72 0.3071 77 0.2880 115 0.1924 84 0.2659
UP1 78 0.2809 93 0.2357 101 0.2180 116 0.1909 115 0.1960
BRR 47 0.4913 47 0.5062 48 0.4657 48 0.4574 46 0.4781
BRRI 47 0.4955 47 0.5027 48 0.4640 48 0.4785 47 0.4690
BRR2 47 0.4796 48 0.4666 48 0.4833 47 0.4668 50 0.4427
BBR 48 0.4652 51 0.4580 47 0.4802 46 0.4833 47 0.4655
BBS 48 0.4648 50 0.4532 49 0.4813 60 0.3727 48 0.4678
BYRD 77 0.2861 61 0.3597 79 0.2813 74 0.3017 ... . . .∗
Table 5.3: The number of iterations and the rate of convergence for different limited
memory Broyden methods, computing a fixed point of the period map (8.3) according
to the two-dimensional model (6.26)-(6.28), n = 5000. [’*’ (no convergence), ’. . .’ (no
data)]
146 Chapter 5. Features of the Broyden rank reduction method
Part III
147
Chapter 6
149
150 Chapter 6. Periodic processes in packed bed reactors
has been studied by e.g. Hufton et al. [29], Carvill et al. [13] and Kodde and
Bliek [36].
The PSR potentially offers the following advantages:
• Increased conversion of reactants,
• Improved selectivities and yields of desired products,
• Reduced requirements for external supply or cooling capacity,
• Reduced capital expenditure by process intensification,
• More favorable reaction conditions might be possible, resulting in longer
lifetime of equipment and less catalyst deactivation.
A well known application of the pressure swing reactor is the removal of
CO from syngas, combining low-temperature shift catalysis and selective CO 2
removal by adsorption. Production of high purity hydrogen from syngas, as
required for instance for fuel cell applications, normally uses a multi-step pro-
cess, involving both a water gas shift and a selective oxidation process. In the
latter step a part of the produced hydrogen is inevitably lost. This disadvan-
tage can be avoided in a reactive separation using PSR. By a combination of
low temperature shift catalysis and selective adsorption of carbon dioxide in
one vessel, the removal of CO as a result of the shift reaction rather than by
selective oxidation might become feasible.
The shift reaction is given by
H2 O + CO −→
←− H2 + CO2 .
When adsorbing the CO2 the equilibrium of the above reaction shifts to the
right. This implies that more H2 is produced and more CO is removed. Being
a member of the family of adsorptive reactors, the PSR is limited to compara-
tively low temperature applications in order to maintain sufficient adsorption
capacity for the sorbent.
– Thermal conduction through the fluid film near the contact surface
of two pellets,
– Heat transfer by convection,
– Heat conduction within the fluid,
6.2 The model equations of a cooled packed bed reactor 153
The contribution of radiation to the total heat flow turns out to be im-
portant at temperatures above 400◦ C. Below this temperature the various
mechanisms of heat transport, except for the heat transport by convection,
are usually described by a lumped parameter, the effective thermal conduc-
tivity.
The transport resistance between the gas phase and the catalyst is negli-
gible, as is the multiplicity of the catalyst particles, that is, the difference in
activity. Therefore the effectivity, denoted by η, is equal to one. We assume
that the gas phase satisfies the ideal gas law, and flows through the vessel at a
constant velocity. The velocity over a cross section of the reactor is assumed
constant, due to a high rate of turbulence. We assume that the pressure drop
over the unit caused by the flow along the catalyst bed, is negligible
The equipment both upstream and downstream the reactor have no influ-
ence on the behavior of the flow inside the vessel. Furthermore we assume that
dispersion of energy and mass, caused by diffusion and turbulence around the
catalyst particles, can only occur inside the reactor and not in the channels
leading to it. In addition, the reaction only occurs inside the reactor. There-
fore we can apply Danckwerts boundary conditions, see [63]. The temperature
and composition of the feed streams and the mass flow are constant in time.
The thermal equilibrium between the gas and the catalyst occurs instan-
taneously. Hence, intra-particle gradients in temperature or concentration are
assumed to be negligible. We assume that all the physical properties are con-
stant in the range of temperature and concentration that occurs in the reactor.
The dispersion coefficient is assumed to be constant and equal for every com-
ponent. The reaction is exothermic and the heat of reaction is independent
of the temperature. The reaction does not change the number of moles in the
gas phase, thus one mole of species A gives one mole of species B.
In order to model the cooling we assume that the reactor wall is cooled at
an more or less constant temperature, caused by a high flow rate or a large
density of the cooling flow. Inside the reactor the cooling occurs only via the
gas phase due to the negligible contact area between the catalyst particles and
the reactor wall.
In Table 6.1 we have summarized the assumptions made for both the one
and the two dimensional model of a packed bed reactor. The additional con-
dition for the one-dimensional model is that concentration and temperature
are constant over a cross section of the reactor.
154 Chapter 6. Periodic processes in packed bed reactors
BA = C A · u mol/(m2 s).
PSfrag replacements
z z + ∆z
FA = εAc WA mol/s.
The left hand side of the component balance denotes the accumulation of
component A in the gas phase. The convective and diffusive contributions to
the flow and the reaction rate are represented by the right hand side terms.
In the same way we obtain the component balance of species B, given by
∂CB ∂ n ∂yB o
ε = ρεDax − εuCB + (1 − ε)ρcat r0 . (6.2)
∂t ∂z ∂z
Note the plus sign in front of the reaction term, which implies that the reaction
increases the concentration of species B.
Finally, a third species is also present in the reactor, namely, the carrier
gas. The carrier gas is an inert, that is, it does not take part in the reaction.
Therefore, the component balance of the inert is given by
∂CI ∂ n ∂yI o
ε = ρεDax − εuCI . (6.3)
∂t ∂z ∂z
If we add the component balances of all species we obtain the overall
mass balance, which is an important equation if the velocity is not necessarily
constant. Because the sum of the mole fractions equals one, yA + yB + yI = 1,
and has zero derivative, the overall mass balance is given by
∂ρ ∂uρ
ε = −ε .
∂t ∂z
Note that the reaction term is also canceled in this equation since the reaction
does not change the total number of molecules.
The component balance equations contain a second order derivative of the
mole fraction. So, we derive the boundary conditions at both ends of the
reactor. Note that we have assumed that mass dispersion appears only inside
the reactor. The reactor is called a closed-closed vessel, that is, either upstream
or downstream of the reactor mass dispersion is negligible. At the entrance
the boundary equation compares the flux in and in front of the reactor This
leads to the equality WA,0 = WA |z=0 , which is equal to
∂yA ¯
¯
CA,0 u = −ρDax + C A u¯ . (6.4)
∂z z=0
At the other end we have assumed that no influences exists of the equipment
on the behavior of the flow, which implies no gradients in the concentration
of the components,
∂yA ¯¯
¯ = 0. (6.5)
∂z z=L
6.2 The model equations of a cooled packed bed reactor 157
The energy Ei of a species in the gas phase consists of the enthalpy, Hi , and the
product −P Vi . Here Vi is the specific volume per mol of species i. Therefore,
X X X
E i ρi = (Hi − P Vi )ρi = Hi ρi − P.
i i
P
In the last step we used that i Vi ρi = 1. Dividing (6.6) by ∆V and differen-
tiating in time leads to the change in energy. If we assume that the density of
the catalyst is constant (∂ρs /∂t = 0), then the change in potential energy is
linearly proportional to the change in temperature, that is,
∂H ∂T
= cp ,
∂t ∂t
where cp denotes the specific heat capacity, at constant pressure. The specific
heat capacity cp is assumed to be independent of temperature and concentra-
tion. Using the component balances (6.1)-(6.3), that is,
∂ρi ∂Wi
ε =ε + νi (1 − ε)ρs r0 ,
∂t ∂z
the change in energy reads
1 ∂Esys ∂Es X ∂ρi X ∂Hi ∂P
= ρs (1 − ε) + ε Hi +ε ρi −ε
∆V ∂t ∂t ∂t ∂t ∂t
i i
∂T ∂T X ∂Wi
= (1 − ε)(ρcp )s + ε(ρcp )g +ε Hi
∂t ∂t ∂z
i
∂P
+(1 − ε)ρs (−∆H)r 0 − ε , (6.7)
∂t
P
where (−∆H) = i ν i Hi denotes the heat of reaction.
158 Chapter 6. Periodic processes in packed bed reactors
On the other hand, we can consider the interaction of the segment with its
surrounding. We have to take into account conduction (through the gas phase
and the catalyst particles), heat transport due to the flow in the reactor, and
cooling. The energy that results from the work of equipment is neglected.
For the conduction term, we use Fick’s first law of diffusion, cf. [63, 72].
The amount of energy that passes a cross section of the reactor per square
meter, per second equals
∂T
−λax , (6.8)
∂z
where λax is the effective axial heat conductivity, that depends on the heat
conductivities in the gas and the solid phase and on the heat-transfer resistance
between the two phases. Note that the conduction operates in the direction
of decreasing temperature, indicated by the minus sign.
The flow of energy is the amount of energy that crosses a passes section of
the reactor per second and is given by
X X
Fi Ei = εAc W i Ei .
i i
By assuming that the specific volume is equal for every species in the gas
phase, the second term of the last expression in (6.9) disappears.
The cooling, denoted by Q̇, is the amount of energy that leaves the segment
at the wall of the reactor per second. The cooling rate per square meter
surface area is linearly proportional to the difference in temperature of the
segment and of the cooling jacket (−Uw (T − Tc )). The surface area of the
segment equals 2πR∆Z and the volume of the segment is πR2 ∆z. By aw
we denote the ratio between the surface area and the volume of the segment
(aw = 2πR∆z/(πR2 ∆z) = 2/R.). The total cooling per second is thus given
by
Q̇ = −Uw (T − Tc )Ac ∆zaw . (6.10)
From (6.8), (6.9) and (6.10), we obtain the following expression for the change
6.2 The model equations of a cooled packed bed reactor 159
Note that the second term of the right hand side can be expanded to
∂ X X ∂Hi X ∂Wi
ε Wi Hi = ε Wi + ε Hi . (6.12)
∂z ∂z ∂z
i i i
Because
X X³ ∂yi ´
Wi = − ρDa x + ρi u = ρg u.
∂z
i i
and because ∂Hi /∂z can be approximated by (cp )g ∂T /∂z the first term of the
right hand side of (6.12) becomes
∂T
ε(ρcp )g u .
∂z
PSince (6.7) is valid for all ∆V, we can combine (6.7) and (6.11). The term
ε i Hi · ∂Wi /∂z cancels and we derive the equation for the energy balance
³ ´ ∂T ∂P ∂2T ∂T
(1 − ε)(ρcp )s + ε(ρcp )g −ε = λax 2 − ε(ρcp )g u
∂t ∂t ∂z ∂z
∂ n o
− P u − Uw aw (T − Tc ) + (1 − ε)ρs (−∆H)r 0 . (6.13)
∂z
The left hand side shows the accumulation of enthalpy in the gas and solid
phase. On the right hand side, the first two terms show the contribution of the
heat transfer by convection and diffusion. The fourth term denotes the heat
transfer through the reactor wall to the surroundings. The last term gives the
enthalpy change due to reaction.
The boundary conditions are obtained in a similar way to those of the
component balance, (6.4) and (6.5), and are given by
∂T ¯
¯
u(ρcp )g T0 = −λax + u(ρcp )g T ¯ ,
∂z z=0
160 Chapter 6. Periodic processes in packed bed reactors
Reaction rate
The reaction rate depends on many factors. First of all it depends on the
concentration of the reactants in the reactor. In addition the temperature is
important. At low temperature, for example, the reaction might not occur at
all. If the heat of the reactor is extremely high, it can accelerate the reaction
and the reactor might explode. The type of the catalyst and the system of the
reaction on the catalyst increase the complexity of the formula.
In the simulations of Chapter 8 we restrict ourselves to the reaction rate
given by
ηk∞ av kc exp[−Ea /Rgas T ]
r0 (c, T ) = c,
av kc + ηk∞ exp[−Ea /Rgas T ]
according to Khinast et al. [33].
Radial direction
To extend to one-dimensional model with the radial direction, we assume
that the state in the reactor is cylindrically symmetric and that the dispersion
coefficient Drad and the thermal conductivity λrad are independent of position,
concentration and temperature. In addition, we assume that energy transport
by mass diffusion can be lumped into the thermal conductivity.
We consider the radial part of the diffusion in the energy balance equation.
The radial part of the diffusion in the component balance is obtained in a
similar way. We subdivide the segment of the reactor with width ∆z in M
rings, see Figure 6.2. The widths of the rings are given by ∆r1 , . . . , ∆rM .
Denote by ri the center radius of the ith ring, that is r1 = 12 ∆r1 , r2 = ∆r1 +
1 Pi−1 1
2 ∆r2 , and in general ri = j=1 ∆rj + 2 ∆ri , i = 1, . . . , M. We take a ring
with center radius r and width ∆r. The volume of this ring is given by
n ³ 1 ´2 ³ 1 ´2 o
∆V = ∆z π r + ∆r − π r − ∆r
2 2
= 2π∆z · r∆r.
Similarly to the axial case (6.8), the heat conductivity in radial direction per
m2 surface area, is given by
∂T
−λrad .
∂r
6.2 The model equations of a cooled packed bed reactor 161
r2
r1
PSfrag replacements
∆z
The accumulation in the ring under consideration equals the flow through the
surface of the ring at r − 21 ∆r minus the flow through the surface of the ring
at r + 12 ∆r. If we divide the accumulation term by the volume of the ring, we
obtain
¯
1 n ∂T ¯¯ ³ ³ 1 ´ ´
(−λrad ) 2π r − ∆r ∆z
∆V ∂r ¯r− 1 ∆r 2
2
¯ ³ ³
∂T ¯¯ 1 ´ ´o
− (−λrad ) 2π r + ∆r ∆z . (6.14)
∂r ¯ 1 r+ 2 ∆r2
∂T ¯¯
λrad ¯ = −Uw (T (R) − Tc ), (6.17)
∂r r=R
is added to the system. Equation (6.17) describes the heat loss at the reactor
wall to the surrounding cooling jacket, which is linearly proportional to the
difference in the temperature inside and outside of the reactor wall. Because
no material can pass through the wall of the reactor, we have
∂yA ¯¯
¯ = 0.
∂r r=R
∂yA ¯¯ ∂T ¯¯
¯ = 0, and ¯ = 0.
∂r r=0 ∂r r=0
³ ´ ∂T
(1 − ε)(ρcp )s + ε(ρcp )g =
∂t
∂2T ∂T
λax − ε(ρcp )g u − Uw aw (T − Tc ). (6.19)
∂z 2 ∂z
6.2 The model equations of a cooled packed bed reactor 163
∂ T̄ ∂ 2 T̄ ∂ T̄
((ρcp )s (1 − ε) + (ρcp )g ε) = λax 2 − u(ρcp )g +
∂t ∂z ∂z
Z R ¯
2 0 2 ∂T ¯¯R
(−∆H) 2 r · r (c, T )dr + λrad 2 r . (6.21)
R 0 R ∂r ¯r=0
Using the boundary conditions in radial direction, we can rewrite the last term
of (6.21) in the following way
¯
2 ∂T ¯¯R 2 ¡ ¢
λrad r ¯ = − · U w T (R) − T 0 . (6.22)
R2 ∂r r=0 R
If we substitute (6.22) in (6.21) and assume that the concentration and the
temperature are constant in the radial direction, we recover the energy balance
of the one-dimensional model, (6.19), with aw = 2/R.
In the same way we can show that the component balance of the one-
dimensional model is also a limiting case of the component balance of the
two-dimensional model.
Dimensionless equations
In order to obtain the dimensionless versions of the balance equations we
use the following dimensionless variables. The conversion is given by x =
(c0 − c)/c0 , where c0 is the concentration of the reactants in the feeding gas
and c = CA = ρyA . If the conversion equals zero no reaction has occurred
and if the conversion equals one the reaction is completed. The dimensionless
temperature is given by θ = (T − T0 )/T0 , where T0 is the temperature of the
feeding gas. Since the reaction is exothermic and the cooling temperature is
fixed at T0 , the dimensionless temperature is always positive. The independent
dimensionless variables are time, τ = tu/L, the axial distance, ξ = z/L, and
the radial distance, ζ = r/R, for the two-dimensional model.
164 Chapter 6. Periodic processes in packed bed reactors
Hereafter, we divide both sides by the factor −c0 u/L. By gathering all param-
eters in dimensionless groups, we obtain
∂x 1 ∂ 2 x ∂x (1 − x)
ε = − + a3 .
∂τ Pem ∂ξ 2 ∂ξ exp(β/(1 + θ)) + a4
In the same way the energy balance in (6.19) becomes
∂T0 (1 + θ)
((ρcp )s (1 − ε) + (ρcp )g ε)
∂τ L/u
2
∂ T0 (1 + θ) ∂T0 (1 + θ)
= λax 2
− u(ρcp )g +
∂(ξL) ∂ξL
ηk∞ av kc (1 − x)c0
(−∆H) Ea 1
− Uw aw (T0 (1 + θ) − Tc ).
av kc exp( RT 0 1+θ ) + ηk ∞
Therefore, we define
(ρcp )g Lu
Pehp = .
λrad
By substituting the dimensionless variables in the radial term of the com-
ponent balance (6.16) and subsequently dividing again by −c0 u/L, we obtain
εDrad L2 1 ∂ n ∂x o
· 2 ζ ,
uL R ζ ∂ζ ∂ζ
and we define Pemp by
uL
Pemp = .
εDrad
In Appendix C we explain that in general Dax 6= Drad . We have added the
parameters Pemp and Pehp in Table 6.2.
The dimensionless boundary conditions in axial direction of the one- and
two-dimensional model are derived in the same way as the balance equations
and given at the end of this section. To point out the difference between
the one- and two-dimensional model we explicitly derive the dimensionless
boundary condition for the temperature at r = R (ζ = 1). So, starting with
¯
∂T ¯¯
λrad = −Uw (T (R) − Tc ),
∂r ¯r=R
we substitute θ and ζ, and divide both sides by u(ρcp )g T0 R/L2 , which leads
to
λrad L2 ∂θ ¯¯ Uw L 1
· 2 ¯ =− · θ(1) = − Φ · θ(1).
Lu(ρcp )g R ∂ζ ζ=1 Ru(ρcp )g 2
Note that dimensionless cooling capacity, Φ, is multiplied by a factor one half.
∂x 1 ∂ 2 x ∂x
ε = − + χ(x, θ), (6.23)
∂τ Pem ∂ξ 2 ∂ξ
where the reaction rate is given by
n o−1
χ(x, θ) = a3 (1 − x) exp(β/(1 + θ)) + a4 .
166 Chapter 6. Periodic processes in packed bed reactors
∂θ 1 ∂ 2 θ ∂θ
a1 = − + a2 χ(x, θ) − Φθ. (6.24)
∂τ Peh ∂ξ 2 ∂ξ
The boundary conditions read
¯ ¯
¯ ∂θ ¯
θ − Pe1h ∂θ
∂ξ ¯ = 0, ∂ξ ¯ξ=1 = 0,
ξ=0
¯ ¯ (6.25)
1 ∂x ¯ ∂x ¯
x− Pem ∂ξ ¯ξ=0 = 0, ∂ξ ¯ξ=1 = 0.
∂x 1 ∂ 2 x ∂x 1 L2 1 ∂ n ∂x o
ε = − + χ(x, θ) + ζ , (6.26)
∂τ Pem ∂ξ 2 ∂ξ Pemp R2 ζ ∂ζ ∂ζ
∂θ 1 ∂ 2 θ ∂θ 1 1 ∂ n ∂θ o
a1 = − + a 2 χ(x, θ) + ζ (6.27)
∂τ Peh ∂ξ 2 ∂ξ Pehp ζ ∂ζ ∂ζ
167
168 Numerical approach for solving periodically forced processes
z=0 z=1
∆z
Figure 7.1: The distribution of the grid points over the interval.
Ut = F (U (t)), (7.2)
of u around zi
1
u(z) = u(zi ) + uz (zi )(z − zi ) + uzz (zi )(z − zi )2
2
1
+ uzzz (zi )(z − zi )3 + O(|z − zi |4 ). (7.3)
6
The first derivative can be computed in several ways. One approach is
called first order upwind. If the flow rate in the reactor is rather high, we
have to use information of grid points that lie in upstream direction. So, if
the flow comes from the left we use the state value u in zi−1 . We apply (7.3)
in z = zi−1 and obtain
1
u(zi−1 ) = u(zi ) − uz (zi )∆z + uzz (zi )(∆z)2 + O((∆z)3 ). (7.4)
2
If we rearrange the terms, the derivative of u in zi equals
u(zi ) − u(zi−1 )
uz (zi ) = + O(∆z). (7.5)
∆z
The first term of the right hand side of (7.5) is the approximation for the
derivative of u. The situation is given schematically in Figure 7.2.
u(zi )
PSfrag replacements
u(zi−1 )
zi+1
zi−1 zi
u(zi+1 ) zi− 12
1
u(zi+1 ) = u(zi ) + uz (zi )∆z + uzz (zi )(∆z)2 + O((∆z)3 ). (7.6)
2
170 Numerical approach for solving periodically forced processes
and therefore
u(zi+1 ) − u(zi−1 )
uz (zi ) = + O((∆z)2 ). (7.7)
2∆z
The situation is given schematically in Figure 7.3.
PSfrag replacements
u(zi ) u(zi+1 )
u(zi−1 )
zi−1 zi zi+1
zi− 21 zi+ 12
d ³ ´
u(z i+1 ) − 2u(z i ) + u(z i−1 )
(∆z)2
a ³ ´
− u(zi ) − u(zi−1 ) + h(u(zi )), (7.10)
∆z
7.1 Discretization of the model equations 171
1
uz (zi+ 1 ) = (u(zi+1 ) − u(zi )).
2 zi+1 − zi
u(zi ) − u(zi−1 )
−a + h(u(zi )), (7.11)
zi+ 1 − zi− 1
2 2
for i = 2, . . . , N − 1. Note that for equidistant grid (7.10) and (7.11) are equal.
Because the mesh is chosen such that z 1 = 0, the left boundary condition
2
reads (duz − au)|z 1 = 0. The first component function of F is given by
2
On the other hand, we have defined zN + 1 = 1 and thus duz |zN + 1 = 0. The
2 2
N th component function of F yields
µ ¶
1 u(zN ) − u(zN −1 ) u(zN ) − u(zN −1 )
d − −a + h(u(zN )).
1 − zN − 1 zN − zN −1 1 − zN − 1
2 2
For the first and the last grid point the boundary conditions have to be taken
into account. Because the derivative ur at r = 0 equals zero, we obtain for
j = 1,
d2 ¯ d2 1 ¯r 3 d2 u(r2 ) − u(r1 )
¯ ¯
(rur )r ¯ ≈ · (rur )¯ 2 ≈ · .
r r1 r1 r 3 − r 1 r1 r1 r2 − r 1
2 2 2
u(1)
u(rM )
PSfrag replacements
u(rM −1 )
rM −1 rM
rM − 12 rM + 12
So far, we have only considered the axial and radial terms separately.
In order to discretize (7.12) the values of u in the grid points of the two-
dimensional mesh should be stored in one single vector U. In order to obtain
a small band width of the Jacobian of the function F, we first count in the
direction that has the smallest number of grid points (often M < N ). So the
vector U becomes
We can check the simulation by computing the integral at the right hand side
simultaneously with the variable u.
Another possibility is multiplying both side of the partial differential equa-
tion by u and then integrating in time and space, which results in the following
’energy estimate’,
Z TZ 1 Z TZ 1
(uut )dzdt = u(duzz − auz + h(u))dzdt.
0 0 0 0
R1
This implies that if the function h satisfies 0 uh(u)dz < 0 then the ’total
R1
amount of energy’ in the system (ku(., t)k22 = 0 u2 (z, t)dz) is decreasing.
If the function h is affine, the two-dimensional problem (7.12) can be solved
explicitly by splitting the variables, that is, assuming that u in of the form
u(z, r, t) = Z(z)R(r)T (t). The resulting ordinary differential equations in z
and t are solved in the same way, as was done for the one-dimensional problem.
The ordinary differential equation that involves the variable r is a so-called
Bessel equation and the solutions are given in terms of the Bessel function. In
general the solution of (7.12) is an infinite sum of terms with cosine, sine, the
exponential function and the Bessel function, where the coefficients are fixed
by the boundary conditions and the initial condition.
We shortly discuss some additional approaches to check the implemen-
tation of the discretized equations. If a reliable implementation of the one-
dimensional model exists, we can consider (artificial) limit cases of the process
in which the one-dimensional and the two-dimensional should give the same
results. That is, when the state of the reactor has no gradients in radial di-
rection. We describe two situations starting from an initial state u0 , which
is constant in radial direction. Note that the boundary condition at z = 0
and z = 1 are uniform over the cross section of the reactor. If the diffusion
in radial direction is high, differences in radial direction will be removed in-
stantaneously. In terms of 7.12 this means that if d2 is large, the term (rur )r
will become small shortly. Another example is when the cooling of the reactor
stagnates at or nearby the reactor wall. That is, the reactor wall is isolated,
a2 = 0, or no diffusion exists in radial direction, d2 = 0. If a2 = 0 then the
temperature gradient at r = 1 will be zero and no gradients are introduced.
In order to check the implemented model if radial gradients are present,
we can again integrate the initial-boundary value problem (7.12) in time and
space. Note that for the radial direction we first have to multiply the equation
by r, in order to obtain the weighted average. We obtain similar integral
equations as in the case of the system (7.1). Terms of the integral equation
can simultaneously be integrated with the variable u.
fact, the periodic state depends on the value of the bifurcation parameter
(x∗ = x∗ (λ)). We are interested whether and how the periodic state changes,
when we vary the bifurcation parameter slightly. To understand the local
behavior of the system in more detail, we have to consider the Jacobian of the
period map, also called the monodromy matrix. The monodromy matrix M
describes the evolution of a small perturbation over one period. The stability
of periodic solutions is determined by the Floquet multipliers, the eigenvalues
of the monodromy matrix, [30].
A periodic solution is stable when the absolute values of all the (possibly
complex) eigenvalues of M are smaller than unity. This implies that a neigh-
borhood exists of the periodic state x∗ in which all trajectories converge to
the periodic state as time goes to infinity.
PSfrag replacements
µ1
µ1 µ1
θ0
1 −1
µ2
Example 7.1. If the eigenvalue leaves the unit circle at µ = 1 the number of
periodic solutions of the system changes. In general this will be by two. The
bifurcation point is called a limit point or a saddle-node. Let the flow-reversal
time tf be the bifurcation parameter and fixed all other physical parameters
of the system. For moderate values of tf a stable periodic state exists at high
temperature. However the longer we flow from one direction the more energy
is purged out of the reactor during one flow-reversal period. There exists a
minimum value for tf for which the extinguished state is still the only possible
periodic state. This value for tf corresponds to the bifurcation point.
If the eigenvalue leaves the unit circle at µ = −1 the period of the solution
is doubled. Let f be the map corresponding to half a period of the reverse flow
178 Numerical approach for solving periodically forced processes
Since f 2 equals the period map of a whole cycle of the reverse flow reactor,
x̃∗ is a periodic state of the process. However, it has becomes asymmetric, see
Figure 8.5(b).
If a pair of eigenvalues leaves the unit circle at µ1 = eiθ0 and µ2 = e−iθ0 ,
where 0 < θ0 < π, the limiting state of the reactor becomes quasi-periodic,
which implies the state follows two frequencies, see 8.5(c). Note that a com-
plex eigenvalue always has a conjugate partner. This bifurcation is called a
Neimark-Sacker bifurcation, and corresponds to a transition from a single to
a two-frequency motion.
Continuation techniques
Clearly, we are interested in the dependence of the limiting periodic state of the
periodically forced process on certain bifurcation parameters. In this section
we describe the basics of continuation techniques to analyze the dynamical
system
xk+1 = F (xk , α), α ∈ R,
where the period map F : Rn+1 → Rn depends upon one bifurcation parameter
α.
Fixed points of the period map, also called equilibrium points, satisfy the
equation
F (x, α) = x. (7.18)
If we denote a point in Rn+1 by y = (x, α) and define G : Rn+1 → Rn by
G(y) = F (x, α) − x, Equation (7.18) leads to
G(y) = 0. (7.19)
By the implicit function Theorem the system of (7.19) locally defines a smooth
one-dimensional curve C in Rn+1 passing through a point y0 , that satisfies
(7.19), provided that
rank JG (y0 ) = n. (7.20)
7.3 Bifurcation theory and continuation techniques 179
Here JG (y0 ) denotes the Jacobian of G at y0 . Every point on the curve C that
satisfies (7.20) is called regular.
During continuation, points on this curve (y0 , y1 , y2 , . . .) are approximated
with a desired accuracy. The first two points of the sequence are computed
by fixing the bifurcation parameter and applying iterative methods to solve
(7.18). For the subsequent points, most of the continuation algorithms used
in bifurcation analysis implement predictor-corrector methods that include
three basic steps, prediction, correction and step size adjustment. The next
continuation point is predicted by adding a step to the previous point, that is
based on previously computed points of the branch and an appropriate step
length. Next, the prediction is corrected bordered with a step length condition.
Finally the step size is adapted.
We describe some of the basic choices for the prediction and the correction
step, and strategies to validate the new computed point on the bifurcation
branch in order to choose the new step size.
Prediction
Suppose that a regular point yk in the sequence approximating the curve C
has been found. Then, the initial guess ỹ of the next point in the sequence is
made using the prediction formula
ỹ = yk + ∆sk vk , (7.21)
where ∆sk is the current step size, and vk ∈ Rn+1 is a vector of unit length
(kvk k = 1).
A possible choice for vk is the tangent vector to the curve in yk . To obtain
the tangent vector we parametrize the curve near yk , by the arc-length s with
y(0) = yk . If we substitute the parametrization into (7.19) and take derivative
with respect to s, we obtain
JG (yk )vk = 0, (7.22)
since vk = dy/ds(0). System (7.22) has a unique solution (vk has unit length)
because rank JG (yk ) = n by the assumption of regularity.
Another popular prediction method is the secant prediction. It requires
two previous points on the curve, yk−1 and yk . The prediction is given by
(7.21), where now
yk−1 − yk
vk = . (7.23)
kyk−1 − yk k
The advantage of this method is that the computation of the Jacobian J G and
of the solution of a large system of equations is avoided.
180 Numerical approach for solving periodically forced processes
vk = en+1 .
where en+1 is the last unit-vector in Rn+1 . A minor of this method is that
the branch can only be detected in increasing direction of the bifurcation
parameter.
Correction
Having predicted a point ỹ presumably close to the curve, one needs to locate
the next point yk+1 on the curve to within a specified accuracy. This correction
is usually performed by some Newton-like iterations. However, the standard
Newton iterations have to be applied to a system in which the number of
equations is equal to that of the unknowns. So, in order to apply Newton’s
method or a quasi-Newton method, a scalar condition
hk (y) = 0
Solving
G(y) = 0 (7.24)
geometrically means that one looks for an intersection of the curve C with some
surface near ỹ. It is natural to assume that the prediction point ỹ belongs to
this surface as well (that is, hk (ỹ) = 0). There are several ways to specify the
function hk (y).
The simplest way is to take a hyperplane passing through the point ỹ that
is orthogonal to the coordinate axis of the bifurcation parameter, namely, set
hk (y) = α − α̃.
PSfrag replacements y0
y1 v v
ỹ ỹ
y
0 = hy − ỹ, vk i.
Therefore we set
hk (y) = hy − ỹ, vk i
= hy − (yk + ∆sk vk ), vk i
= hy − yk , vk i − ∆sk . (7.25)
If the curve is regular (rank JG (y) = n for all y ∈ C) and the step size ∆sk
is sufficiently small, one can prove that the Newton iterations for (7.24) will
converge to a point on the curve C from the predicted point ỹ of the tangent
prediction or the secant prediction, [38].
For the third possibility not a hyperplane is taken but a sphere around
the previous computed point yk in the sequence. That is, the distant between
the approximation of the next point on the curve and yk is fixed at ∆sk . The
control function is therefore defined as
hk (y) = ky − yk k − ∆sk .
Clearly, the predicted point ỹ lies on the sphere. The main disadvantages of
this approach is that the control function is not linear and, especially in the
neighborhood of bifurcation point, the continuation might go in the wrong
direction, since the curve has at least two intersection points with the sphere.
Note that the matrix JG (yk ) needed in (7.22) can be extracted from the
last iteration of the Newton process solving (7.24).
182 Numerical approach for solving periodically forced processes
step-size control: If the correction step fails, then multiply ∆sk by b and
return to the prediction step. If the correction step succeeds using less
than imax /2 iterations of an iterative method, then accept the new point
in the sequence and set ∆sk+1 = a∆sk . If the correction step succeeds
but using more than imax /2 iterations, then accept the new point in the
sequence and set ∆sk+1 = b∆sk .
Chapter 8
Efficient simulation of
periodically forced reactors in
2D
The final chapter of this thesis is devoted to the connection between the it-
erative method for solving high-dimensional systems of nonlinear equations
and the efficient simulation of a two-dimensional model for the reverse flow
reactor, where the radial direction is taken into account.
183
184 Chapter 8. Efficient simulation of periodically forced reactors in 2D
Tc
catalyst
gas flow
PSfrag replacements
cooling jacket
Tc
Starting with an initial state, the reactor goes through a long transient
phase before converging to a periodic limiting state, also called the cyclic
steady state (CSS). Limiting states of periodically forced packed bed reactors
are of interest to the industry because the reactor operates in this situation
most of the time.
The basic model for a fixed bed catalytic reactor, such as the RFR, is
the so-called pseudo-homogeneous one-dimensional model. This model does
not differentiate between the fluid and the solid phase and considers gradients
in the axial direction only. Eigenberger and Nieken [19] have investigated a
simplified one-dimensional model. Due to a very short residence time of the
gas in the reactor, they assume the continuity equation and the mass balance
equation to be in quasi steady state when compared to the energy balance
equation. They apply standard dynamical simulation to compute the limiting
periodic states of the reverse flow reactor. Due to their choice of the model
and the values of the parameters all periodic states discovered are symmetric,
that is, the state after one flow reversal period is the mirror image of the initial
state.
Rehacek, Kubicek and Marek [57, 58] have extended the model of the RFR
to a two-phase model with transfer of mass and energy between the fluid and
solid phase. They consider the period map, that is, the map which assigns
the new state after one period of the process to an initial state. To obtain a
numerical expression of the period map, the authors discretize the partial dif-
ferential equations of the model in space and integrate the resulting system of
ordinary differential equations over one period. Again with dynamical simula-
8.2 The behavior of the reverse flow reactor 185
tion, that is, iterating the period map, symmetric stable periodic states of the
RFR are obtained. In addition, they observe asymmetric and quasi-periodic
behavior.
Khinast, Luss et al. [34, 32, 33, 35] have developed an efficient method to
compute bifurcation diagrams of periodic processes. Their approach is based
on previous work of Gupta and Bhatia [26] in which the system of partial
differential equations is considered as a boundary value problem in time. The
boundary condition implies that the initial state of the reactor equals the state
at the end of the cycle and, therefore, has to be a fixed point of the period map,
as explained in more detail in Section 7.3. The method of Broyden is used
in combination with continuation techniques to find the parameter dependent
fixed points of the period map.
For steady state processes that have coefficients and boundary conditions
invariant in time, two-dimensional models are standard practice, see [56].
When modeling a steady state process, a time invariant state can often be
expressed as the solution of a system of ordinary differential equations, where
time derivatives are absent. For the theoretical analysis of limiting states of
steady state processes, a great number of efficient mathematical and numer-
ical tools is available. In periodically forced systems, such as the RFR, the
limiting solution varies in time. To our knowledge, full two-dimensional mod-
els for the RFR have never been solved using a direct iterative method, such
as the method of Broyden. The reason being that an accurate simulation re-
quires a fine grid which yields a high dimensional discretized system. Due to
large computational costs, both regarding CPU-time and regarding memory
usage, two-dimensional models of periodically forced systems have so far been
avoided, at the expense of relevance and accuracy.
The radial transport of heat and matter, however, is very important in
non-isothermal packed bed reactors [72]. Highly exothermic reaction, a large
width of the reactor, and efficient cooling of the reactor at the wall cause
radial temperature gradients to be present, see Figure 8.2(b). Clearly, for
cooled reverse flow reactors the radial dimension must explicitly be taken into
account.
temperature
conversion
temperature
rad. distance rad. distance
ax. distance conversion ax. distance
Figure 8.2: Qualitative temperature and conversion distribution of the cooled reverse
flow reactor in the cyclic steady state according to the two-dimensional model (6.26)-
(6.28) with the parameter values of Table 6.2.
the temperature and c0 is the concentration of the feed gas. The dimensionless
initial condition is set to
θ≡1 and x ≡ 1.
We start the process and let the gas flow entering the reactor at the left end.
The feed gas contains a trace of the reactant A and is at low temperature.
When entering the hot reactor, the cold feed is heated up and comes into
contact with the catalyst. Therefore, the reaction occurs and the concentration
of species A decreases. Because the reaction is assumed to be exothermic, the
temperature increases and a reaction front is created. On the other hand, the
catalyst at the left side of the reactor is cooled due to the low temperature
of the feed gas. At the left side of the reaction front the temperature is too
low to activate the reaction. At the other side of the reaction front all of the
reactants has reacted and the conversion is completed.
In Figure 8.3 the state of the reactor is given a different times. The re-
action front can be easily distinguished. Because the reactor is cooled the
temperature decreases at the right side of the reaction front.
After a period of time tf the feeding at the left end of the reactor is stopped
and the flow direction is reversed by feeding from the right end of the reactor.
Directly after this flow reversal, the hot reaction zone withdraws from the
right end and moves in left direction. The concentration A still present in the
left part is purged out of the reactor and after a short intermediate phase the
8.2 The behavior of the reverse flow reactor 187
1 1
0.8 0.8
temperature
con
0.6 0.6
0.4 0.4
PSfrag replacements PSfrag replacements
0.2 0.2
temperature 0 0
0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
conversion conversion
axial distance axial distance
Figure 8.3: Snap shots of the first reverse flow period of the reactor.
conversion of species A in the product gas is again equal to one. The product
gas during this intermediate phase is often considered as waste gas. Note that
the reaction front now occurs at the right side of the hot zone, see Figure 8.4.
1 1
0.8 0.8
temperature
con
0.6 0.6
0.4 0.4
PSfrag replacements PSfrag replacements
0.2 0.2
temperature 0 0
0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
conversion conversion
axial distance axial distance
Figure 8.4: Sn-apt shots of the second reverse flow period of the reactor.
By reversing the flow direction after a fixed period tf over and over again,
the hot reaction zone is catch in the reactor. It depends on the conditions of the
process what will be the state of the reactor after many cycles. Clearly, when
the cooling capacity is too high the state extinguishes, because the reaction
188 Chapter 8. Efficient simulation of periodically forced reactors in 2D
1 1 1
temperature
temperature
0.3
PSfrag replacements 0.4
0.3
PSfrag replacements 0.4
0.3
0 0 0
0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
Figure 8.5: The limiting state of the reverse flow reactor at the switch of the flow
direction
8.2 The behavior of the reverse flow reactor 189
1.05
0.95
0.9
θmax
0.85
0.8
PSfrag replacements
0.75
0.7
0 50 100 150 200 250 300 350 400 450 500
number of flow-reversals
0.9
0.85
θmax
0.8
PSfrag replacements
0.75
420 430 440 450 460 470 480 490 500
number of flow-reversals
Figure 8.6: The maximal temperature of the reactor at the switch of the flow direction,
for the first 500 flow-reversal periods, and the same picture starting after 420 flow-
reversal periods (Φ = 0.3).
and
³Z 1/2 Z 1 ´
∆θave (n) = 2 θ(z, ntf )dz − θ(z, ntf )dz , n = 0, 1, 2, . . . . (8.2)
0 1/2
190 Chapter 8. Efficient simulation of periodically forced reactors in 2D
The value θave (n) is the average reactor temperature after the nth flow reversal
and ∆θave (n) is the corresponding averaged difference between the tempera-
tures in the right and left half of the reactor. Clearly, the sign of ∆θave (n)
changes upon alternating flow reversal. For symmetric period-1 states, the
Poincaré map consists of two points, both for the same θave (n) value. For
asymmetric period-1 states, the Poincaré map has two points, but not for the
same θave (n) values. In Figure 8.7 we have plotted the Poincaré map corre-
sponding to the quasi-periodic behavior of Figure 8.6.
consist of a set of points forming two closed curves, thus indicating quasi-
period behavior. Each curve corresponds to one flow direction.
0.5
0.45
0.4
0.35
0.3
∆θave
0.25
0.2
0.15
0.1
PSfrag replacements 0.05
0
0.41 0.415 0.42 0.425
θave
Figure 8.7: The Poincaré map of ∆θave (2k) versus θave (2k), representing the quasi-
periodic behavior of the reverse-flow reactor after the transient phase (2k ≥ 50).
8.3 Dynamic features of the full two-dimensional model 191
To obtain the results of this section the BRR method is used with p = 30.
The bifurcation diagrams, describing the dependence of the symmetric periodic
state of the reactor on the dimensionless cooling capacity, are constructed
using a standard continuation technique in combination with the BRR method.
Eigenvalues of the Jacobian Jf are determined using the subspace method with
locking [60].
We describe two different cases of the limiting periodic state for a fixed
value of the cooling capacity (Φ = 0.2). If the reactor is rather slim (for exam-
ple, R/L = 0.0025), we observe that the temperature is constant over every
cross section of the reactor, see Figure 8.8(b). In this way we can validate
the two-dimensional model. Indeed according to the theory of Section 6.2, if
192 Chapter 8. Efficient simulation of periodically forced reactors in 2D
radial gradients are absent, the weighted average of the two-dimensional tem-
perature profile equals the temperature profile of the one-dimensional model.
This has been confirmed by simulations of the one-dimensional model. The
same observation is valid for the conversion, see Figure 8.8(a).
1.2 1.2
1 1
temperature
0.8 0.8
conversion
0.6 0.6
0 conversion 0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Figure 8.8: Axial temperature and conversion profiles of the RFR (in CSS) at the
beginning of a reverse flow according to the two-dimensional model (6.26)-(6.28) with
the parameter values of Table 6.2. The cooling capacity Φ is fixed at 0.2 and the
radius of the reactor equals R/L = 0.0025.
We use the same value for the cooling capacity (Φ = 0.2), but now with a
larger reactor width (R/L = 0.025). This implies that the cooling now prop-
agates less easily through the reactor and steep temperature gradients in the
radial direction arise. In Figure 8.9(b) we have represented the distribution of
the temperature over the catalyst bed in the cyclic steady state. For several
positions in the radial direction, the temperature profile along the reactor is
plotted. The lines with the highest temperatures correspond to radial posi-
tions near the axis of the reactor. The lines with the lowest temperatures
correspond to radial positions near the wall of the reactor. Clearly, the cool-
ing is especially influencing the temperature of the catalyst near the wall of
the reactor. Note that for different radial positions the axial position of the
maximum temperature is shifted. This results in a lower maximum of the
weighted average of the temperature. In Figure 8.9(a) the conversion of the
same cyclic steady state is given. The lines with the highest conversion cor-
respond to radial positions near the axis of the reactor. The lines with the
lowest conversion correspond to radial positions near the wall of the reactor.
Note that only around the axis the conversion is complete at the end of the
8.3 Dynamic features of the full two-dimensional model 193
1.2 1.2
1 1
temperature
0.8 0.8
conversion
0.6 0.6
0 conversion 0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Figure 8.9: Axial temperature and conversion profiles of the RFR (in CSS) at the
beginning of a reverse flow period according to the two-dimensional model (6.26)-
(6.28) with the parameter values of Table 6.2. The cooling capacity Φ is fixed at 0.2
and the radius of the reactor equals R/L = 0.025. In addition, the weighted average
(6.18) is given (’◦’).
Two bifurcation branches are shown in Figure 8.10. The weighted average
(6.18) of the temperature is computed over every cross section. The maxi-
mum of these values is plotted versus the dimensionless cooling capacity Φ for
different values of R/L. It can be shown that, for every value of the cooling ca-
pacity, a stable extinguished state exists. For the slim reactor (R/L = 0.0025)
the maximum average temperature is always higher than for the wide reactor
(R/L = 0.025) at the same cooling capacity. This can be explained by the fact
that for the wide reactor, for different radial positions, the maximum of the
temperature is not found at the same axial position in the reactor. Note that
for the slim reactor there exists a minimum in the upper branch (at Φ ≈ 0.3).
The reason is that the two high temperature zones, cf. Figure 8.8(b), merge
into one. For cooling capacities higher than Φ ≈ 0.67, the reactor cannot op-
erate at high temperature and dies out. The part of the branch with negative
cooling capacity has of course no physical meaning. The bifurcation branch
for the wide reactor has more or less the same characteristics. However, the
minimum has disappeared and the upper branch has become monotonically
decreasing.
To determine the stability of the points on the bifurcation branches, we
194 Chapter 8. Efficient simulation of periodically forced reactors in 2D
1.2
0.8
0.6
θmax
0.4
0.2
1.8
1.6
1.4
1.2
1
µmax
0.8
−0.8
PSfrag replacements −1
−1.2
−1.4
−0.2 −0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
dimensionless cooling capacity Φ
Figure 8.10: The maximum dimensionless temperature (θmax ) and the largest Floquet
multiplier (µmax ) versus the cooling capacity (Φ) for two different values of the reactor
radius. The two-dimensional model (6.26)-(6.28) was used with the parameter values
of Table 6.2. [’∗’ (R/L = 0.0025), ’◦’ (R = 0.025)]
have also plotted the largest Floquet multiplier (µmax ) in Figure 8.10. Start-
ing with Φ = 0 at the upper branch of the bifurcation diagram the largest
eigenvalue of the Jacobian at the fixed points is slightly less than +1, im-
plying that the fixed points are stable. At Φ ≈ 0.15 a negative eigenvalue
the largest eigenvalue in modulus and crosses the unit circle at µ = −1 for
Φ ≈ 0.19, causing a symmetry loss bifurcation, that is, the symmetric state
become unstable and a stable asymmetric period-1 state emerges. For cooling
capacities higher than Φ ≈ 0.32 (Φ ≈ 0.48), the largest eigenvalue returns to
the unit circle but remains close to −1. Then the symmetric state is stable
but it takes the reactor a large number of cycles to converge to this limiting
state. Finally, at the limit point, for which Φ ≈ 0.67 (Φ ≈ 0.65), a positive
eigenvalue crosses the unit circle at µ = +1. So, for higher cooling capacities
the cooling eventually causes extinction of the reactor. The fixed points of the
lower branches for both the wide and the slim reactor are unstable.
Notes and comments
Section 1.1
For more information on finite arithmetic see [18] and [20].
A clear and detailed introduction in quasi-Newton methods to solve non-
linear equations and optimization problems is given by Dennis and Schnabel
[18].
The proof of Theorem 1.2 is given in [18] where it is Theorem 2.4.3.
Lemma 1.3 is Lemma 2.4.2 of [18] and Lemma 1.4 is Corollary 2.6.2 of [18].
Theorem 1.5 is given without proof in [18] where it is Theorem 2.6.3.
Section 1.2
In [8] Broyden uses the mean convergence rate R given by
1
R= log(kg(x0 )k/kg(xm−1 )k)
m
195
196 Notes and comments
Section 1.3
Lemma 1.20 is a special case of Lemma 8.1.1 of [18]. If the l2 -operator norm
is used in (1.32) instead of the Frobenius norm, multiple solutions for A exist,
some clearly less desirable than Broyden’s update.
Lemma 1.23 is a combination of Lemma’s 4.1.15 and 4.1.16 of [18]. The
lemma is also given in [11] where it is Lemma 3.1.
Theorem 1.24 is a special case of Theorem 3.2 of [11], where instead of the
Frobenius norm a weighted matrix norm, denoted by k.kM . This very general
theorem of Broyden, Dennis and Moré was developed to extend the analysis
given by Dennis for Broyden’s method [15], to other secant methods. The
theorem is in some sense considered as unsatisfying, because the initial Broy-
den matrix must be close to the Jacobian. For the limited memory Broyden
methods, where we choose B0 = −I in general, this is assumption is not satis-
fied. However, all other convergence proofs of the quasi-Newton methods for
nonlinear equations are built on this result.
Corollary 1.25 is Corollary 3.3 of [11].
Theorem 1.26 is a particular case of Theorem 4.3 of [11]. The proof of the
theorem is simplified by using results of [18] and [16].
Lemma 1.27 is Lemma 8.2.3 of [18].
Lemma 1.28 is Lemma 2.2 of [16].
Lemma 1.29 is Lemma 8.2.5 of [18].
Theorem 1.30 can be found in e.g. [28].
For practical implementation, the method of Broyden has to be used in
combination with global algorithms. Well known approaches are for example
line search and the model-trust region approach, see Sections 6.3 and 6.4
of [18]. To obtain a more robust method, Broyden himself chose the finite-
difference approximation of the Jacobian for the initial estimate B0 and applied
a backtracking strategy for the line search, see [8].
An overview of many of the important theoretical results of secant methods
is given in e.g. [17, 42].
In 1970 Broyden [7] has proved that his method converges R-superlinearly
on linear problems and in 1971 he has proved that the method converges
locally and at least linearly on nonlinear problems [9].
In 2000 Broyden has written a short note on the discovery of the ’good
Broyden’ method [10].
Notes and comments 197
Section 2.1
Section 2.2
Lemma 2.8 is Lemma 3.1 of [23], Lemma 2.9 is Lemma 3.2 of [23] and Lemma
2.10 is Lemma 3.3 of [23].
Theorems 2.11 and 2.12 are Theorems 3.1 and 3.2 of [23]. Note that
the condition (2.19) is unsatisfactory, since it has to be checked during the
process. We would like to sharpen Theorem 2.12 in the following way. If
dim Zk+1 = dim Zk − 1 and vkT wk = 0 then dim Zk+2 = dim Zk+1 − 1, a
nonzero vector wk+1 ∈ Zk+1 ∩ Ker(I − AHk+1 ) exists, that equals wk and
T w
satisfies vk+1 T
k+1 = 0. This would imply that if w0 6= 0 and v0 w0 = 0 the
method of Broyden needs d0 iterations to converge. Simulations confirmed
this conjecture, see Example 2.16.
Lemma 2.13 is Lemma 3.4 of [23].
Section 2.3
Section 3.1
In this thesis we only consider limited memory methods that are based on the
method of Broyden and are applicable for nonlinear functions with general
nonsingular Jacobian. In 1970 Schubert [62] has proposed a secant method
to solve nonlinear functions, where the Jacobian is sparse and the locations
of the nonzero elements are known. In addition to the secant equation, he
imposes the updated Broyden matrix to have the same sparsity structure as
the Jacobian. In 1971 Broyden [9] has investigated the properties of this
modified algorithm, both theoretical and experimental. Toint has extended
this approach to quasi-Newton algorithms for optimization problems, cf. [65,
66, 67].
The Newton-Picard method is first proposed by Lust et al. [41]. The
algorithm applies the method of Newton on a small p-dimensional subspace
and dynamical simulation, Picard iteration, on the orthogonal subspace. The
small subspace is formed by the eigenvectors corresponding to the largest
eigenvalues in modulus of the Jacobian Jg at the current iterate xk . The p
eigenvectors can be computed using subspace iteration, see [60], avoiding the
usage of a large (n × n)-matrix in the algorithm.
A relatively new field of research is the Newton-Krylov method, cf. [6], that
is based on solving the Newton iteration step without computing the Jacobian
of the function explicitly. To approximate the Newton step, subspace iteration
is used. Derived from this idea, Tensor-Krylov methods provide even faster
algorithms, see [5].
Limited memory quasi-Newton methods for optimization problems have
been studied by e.g. Kolda, O’Leary and Nazareth [37], Liu and Nocedal [40],
Morales and Nocedal [45] and Nocedal [48].
Section 3.2
A good overview of singular values can be found in e.g. [27, 25]
The rank reduction applied in Algorithm 3.11 with q = p − 1 can also be
considered as an additional rank-one update. Let vp be the right singular vec-
tor corresponding to the pth singular value of the update matrix Q in iteration
p + 1. The new update matrix Q e satisfies Qv
e p = 0, and in all other directions
e
Q has the same action as Q. This implies for the intermediate Broyden matrix
Be that
Bve p = B 0 vp ,
Bu
e = Bu for u ⊥ vp ,
Notes and comments 199
and therefore
vpT
e = B + (B0 vp − Bvp )
B = B − Qvp vpT ,
vpT vp
which is a rank one-update of B.
The condition (3.17) on the reduction matrix R is already suggested in
[11].
Section 3.4
The idea of Section 3.4 comes from an article by Byrd, Nocedal and Schnabel
[12], in which they derived short representation for different quasi-Newton
methods.
Lemma 3.20 is Lemma 2.1 of [12], Theorem 3.21 is Theorem 6.1 of [12] and
Theorem 3.22 is Theorem 6.2 of [12].
The scaling in Algorithm 3.23 is proposed by Richard Byrd.
In a limited context using the notation of Section 3.4, the multiple secant
version of Broyden’s update, see (1.25) and (1.26), is given by
Bk = B0 + (Yk − B0 Sk )(SkT Sk )−1 SkT . (8.4)
This update is well defined as long as Sk has full column rank, and obeys the
k secant equations Bk Sk = Yk .
Comparing (8.4) to the formula in (3.27) for k consecutive, standard Broy-
den updates, we see that in the multiple secant approach we use SkT Sk , while
in (3.27) it is the upper triangular portion of this matrix, including the main
diagonal. Therefore, the two update are the same if the directions in S k are
orthogonal. The preference between these two formulas does not appear to be
clear cut. The formula (3.27) has the advantage that it is well defined for any
Sk , while (8.4) is only well defined numerically if the k step directions that
make up Sk are sufficiently linearly independent. If they are not, only some
subset of them can be utilized in a numerical implementation of the multiple
Broyden method. This is the approach that has often been taken in implemen-
tations of this update. On the other hand, (8.4) always enforces the k prior
secant equations while (3.27) only enforces the most recent equation. Thus
it would probably be worthwhile considering either method (or their inverse
formulations) in a limited memory method for solving nonlinear equations.
Section 6.2
A comprehensive overview of chemical reactors and modeling techniques is
written by e.g. Scott Fogler [63] and Froment and Bischoff [21].
200 Notes and comments
Section 7.2
An introduction to dynamical systems can be found in [4].
Section 7.1
Basics of discretization techniques are given in [59].
Section 7.3
For locating a bifurcation branch it is enough to approximate the points on
the branch op to an error of about 10−2 during the continuation scheme. In
the neighborhood of bifurcation points the points on the branch might have
to be determined more accurately.
Van Noorden et al. [51, 52] compared several convergence acceleration
techniques (such as the method of Newton, the method of Broyden and the
Newton-Picard method) in combination with continuation techniques. From
their work it turns out that Broyden’s method is the most efficient for solving
large systems of nonlinear equations in terms of function evaluations.
An advanced adapted Broyden method that uses information of the con-
tinuation process to update the Broyden matrix is developed by Van Noorden
et al. [50].
Studies in continuation techniques and bifurcation analysis can be found
in work by e.g. Allgower, Chien and Georg [1] and Allgower and Georg [2].
Section 8.2
An extended investigation of the dynamical behavior of the reverse flow reactor
is given by Khinast et al. [33].
Recent studies of the reverse-flow reactor can be found in work by Glöckler,
Kolios and Eigenberger [24] and Jeong and Luss [31].
Bibliography
[1] E.L. Allgower, C.-S. Chien, and K. Georg. Large sparse continuation
problems. J. Comput. Appl. Math., 26:3–21, 1989.
[9] C.G. Broyden. The convergence of an algorithm for solving sparse non-
linear systems. Math. Comp., 25:285–294, 1971.
[10] C.G. Broyden. On the discovery of the ’good Broyden’ method. Math.
Program., B 87:209–213, 2000.
[11] C.G. Broyden, J.E. Dennis, Jr., and J.J. Moré. On the local and su-
perlinear convergence of quasi-Newton methods. J. Inst. Math. Appl.,
12:223–245, 1973.
201
202 Bibliography
[13] B.T. Carvill, J.R. Hufton, M. Anand, and S. Sircar. Sorption enhanced
reaction process. AIChE J., 42(10):2765–2772, 1996.
[15] J.E. Dennis, Jr. On the convergence of Broyden’s method for nonlinear
systems of equations. Math. Comp., 25:559–567, 1971.
[16] J.E. Dennis, Jr. and J.J. Moré. A characterization of superlinear con-
vergence and its application to quasi-Newton methods. Math. Comp.,
28:549–560, 1974.
[17] J.E. Dennis, Jr. and J.J. Moré. Quasi-Newton methods, motivation and
theory. SIAM Rev., 19:46–89, 1977.
[18] J.E. Dennis, Jr. and R.B. Schnabel. Numerical methods for unconstrained
optimization and nonlinear equations, volume 16 of Classics in applied
mathematics. Society for Industrial and Applied Mathematics (SIAM),
Philadelphia, PA, 1996. Corrected reprint of the 1983 original.
[21] G.F. Froment and K.B. Bischoff. Chemical reactor analysis and design.
John Wiley & Sons Ltd., New York, 1990.
[23] R.R. Gerber and F.T. Luk. A generalized Broyden’s method for solving
simultaneous linear equations. SIAM J. Numer. Anal., 18:882–890, 1981.
[25] G.H. Golub and C.F. Van Loan. Matrix computations. Johns Hopkins
Studies in the Mathematical Sciences. Johns Hopkins University Press,
third edition, 1996.
[26] V.K. Gupta and S.K. Bhatia. Solution of cyclic profiles in catalytic reactor
operation with periodic-flow reversal. Comput. Chem. Eng., 15:229–237,
1991.
[27] R.A. Horn and C.R. Johnson. Matrix analysis. Cambridge University
Press, Cambridge, 1990. Corrected reprint of the 1985 original.
[30] G. Iooss and D.D. Joseph. Elementary stability and bifurcation theory.
Undergraduate texts in mathematics. Springer-Verlag, New York, second
edition, 1990.
[33] J.G. Khinast, Y.O. Jeong, and D. Luss. Dependence of cooled reverse-flow
reactor dynamics on reactor model. AIChE J., 45:299–309, 1999.
[34] J.G. Khinast and D. Luss. Mapping regions with different bifurcation
diagrams of a reverse-flow reactor. AIChE J., 43:2034–2047, 1997.
[37] T.G. Kolda, D.P. O’Leary, and L. Nazareth. BFGS with update skipping
and varying memory. SIAM Journal on Optimization, 8:1060–1083, 1998.
204 Bibliography
[40] D.C. Liu and J. Nocedal. On the limited memory BFGS method for large
scale optimization. Math. Program., 45:503–528, 1989.
[43] Yu.Sh. Matros. Catalytic processes under unsteady state conditions. El-
sevier, Amsterdam, 1989.
[44] Yu.Sh. Matros and G.A. Bunimovich. Reverse-flow operation in fixed bed
catalytic reactors. Catal. Rev., 38:1–68, 1996.
[46] J.J. Moré and M.Y. Cosnard. Numerical solution of nonlinear equations.
ACM Trans. Math. Soft., 5:64–85, 1979.
[47] J.J. Moré, B.S. Garbow, and K.E. Hillstrom. Testing unconstrained op-
timization software. ACM Trans. Math. Soft., 7:17–41, 1981.
[49] T.L. van Noorden. New algorithms for parameter-swing reactors. PhD
thesis, Vrije Universiteit, Amsterdam, 2002.
[50] T.L. van Noorden, S.M. Verduyn Lunel, and A. Bliek. A Broyden rank
p + 1 update continuation method with subspace iteration. To appear in
SIAM J. Sci. Comput.
Bibliography 205
[51] T.L. van Noorden, S.M. Verduyn Lunel, and A. Bliek. Acceleration of
the determination of periodic states of cyclically operated reactors and
separators. Chem. Eng. Sci., 57:1041–1055, 2002.
[52] T.L. van Noorden, S.M. Verduyn Lunel, and A. Bliek. The efficient com-
putation of periodic states of cyclically operated chemical processes. IMA
J. Appl. Math., 68:149–166, 2003.
[53] Numerical Algorithms Group (NAG). The NAG Fortran library manual,
Mark 20, 2003. Available from http://www.nag.co.uk/.
[55] J.M. Ortega and W.C. Rheinboldt. Iterative solution of nonlinear equa-
tions in several variables, volume 30 of Classics in applied mathematics.
Society for Industrial and Applied Mathematics (SIAM), Philadelphia,
PA, 2000. Reprint of the 1970 original.
[59] R.D. Richtmyer and K.W. Morton. Difference methods for initial-value
problems, volume 4 of Interscience tracts in pure and applied mathematics.
John Wiley & Sons Ltd., New York-London-Sydney, second edition, 1967.
[60] Y. Saad. Numerical methods for large eigenvalue problems, algorithms and
architectures for advanched scientific computing. Manchester university
press, Manchester, 1992.
[61] Y. Saad and M.H. Schultz. GMRES: a generalized minimal residual al-
gorithm for solving nonsymmetric linear systems. SIAM J. Sci. Statist.
Comput., 7:856–869, 1986.
[65] Ph.L. Toint. On sparse and symmetric matrix updating subject to a linear
equation. Math. Comput., 31:954–961, 1977.
[68] B.A. van de Rotten and S.M. Verduyn Lunel. A limited memory Broy-
den method to solve high-dimensional systems of nonlinear equations.
Technical Report 2003-06, Universiteit Leiden, 2003.
[69] B.A. van de Rotten, S.M. Verduyn Lunel, and A. Bliek. Efficient sim-
ulation of periodically forced reactor in 2-d. Technical Report 2003-13,
Universiteit Leiden, 2003.
[70] H.A. van der Vorst. Bi-CGSTAB: a fast and smoothly converging variant
of Bi-CG for the solution of nonsymmetric linear systems. SIAM J. Sci.
Statist. Comput., 13:631–644, 1992.
[71] H.A. van der Vorst and G.L.G. Sleijpen. Iterative Bi-CG type methods
and implementation aspects. In Algorithms for large scale linear algebraic
systems (Gran Canaria, 1996), volume 508 of NATO Adv. Sci. Inst. Ser.
C Math. Phys. Sci., pages 217–253. Kluwer Acad. Publ., Dordrecht, 1998.
[72] K.R. Westerterp, W.P.M. van Swaaij, and A.A.C.M. Beenackers. Chemi-
cal reactor design and operation. John Wiley & Sons Ltd., second edition,
1988.
Appendix A
Test functions
g(x) = 0,
where
h2
gi (x) = 2xi − xi−1 − xi+1 + (xi + ti + 1)3 , i = 1, . . . , n, (A.2)
2
for x = (x1 , . . . , xn ) and xi = u(ti ), i = 1, . . . , n. The Jacobian of this function
has a band structure with on both sub-diagonals the value −1. The elements
on the diagonal of the Jacobian are given by
∂gi 2h2
=2+ (xi + ih + 1)2 , i = 1, . . . , n.
∂xi 2
207
208 Appendix A. Test functions
The so-called discrete boundary value function was first used by Moré and
Cosnard to test the methods of Brent and of Brown [46]. In Figure A.1 we
have plotted the initial condition x0 and the zero x∗ of the function g.
−0.05
−0.1
−0.15
−0.2
−0.25
Figure A.1: The initial condition x0 (dotted line) and the zero x∗ (solid line) of the
function g given by (A.2).
g(x) = 0,
h³ ´
i
X n
X
3
gi (x) = xi + (1−ti ) tj (xj +tj +1) +ti (1−tj )(xj +tj +1)3 , (A.5)
2
j=1 j=i+1
for i = 1, . . . , n. Note that the Jacobian of the function g has a dense structure.
As in case of the discrete boundary value function, we start with the initial
vector x0 , given by
g(x) = 0
The unique zero of (A.7) is given by x∗ = (1, . . . , 1), so that the Jacobian of g
is nonsingular at x∗ and has singular values approximately 22.3786 and 0.4469
with multiplicity n/2.
As initial vector x0 for the iterative methods we choose
The unique zero of (A.9) is x∗ = 0. So, the Jacobian is a block diagonal matrix
with blocks
1 10 √0 0
√
0 0 5 − 5
0 2(x4i−2 − 2x4i−1 ) −4(x4i−2 − 2x4i−1 ) 0
√ √
2 10(x4i−3 − x4i ) 0 0 −2 10(x4i−3 − x4i )
%%% I n i t i a l i s a t i o n %%%
g = f e v a l ( gcn , x , n ) ; i t e = 0 ;
ne ( i t e +1) = sqrt ( g ’ ∗ g ) ;
211
212 Appendix B. Matlab code of the limited memory Broyden methods
s = −B\ g ; ns = s ’ ∗ s ;
x = x + s;
y = f e v a l ( gcn , x , n ) − g ; g = y + g ;
i t e = i t e + 1;
ne ( i t e +1) = sqrt ( g ’ ∗ g ) ;
%%% Matrix u p d a t e %%%
B = B + ( y − B∗ s ) ∗ s ’ / ns ;
end ;
We are not only interested in the zero of the function g but also in the
convergence properties of the method. Therefore, we include extra output
parameters of the subroutine, such as the number of iterations ’ite’ and the
residue at every iteration step ’ne’. In addition the algorithm can stuck at
several points. The reason of failure of the subroutine we return in the variable
’ifail’. The local matrices and vectors are declared at the beginning of the
subroutine. The extended code for the method of Broyden reads
function [ x , i t e , ne , i f a i l ] = . . .
broyden ( gcn , x , B , n , imax , i e p s , meps , i f a i l )
%%% P r e a l l o c a t i o n %%%
g = zeros ( n , 1 ) ; s = zeros ( n , 1 ) ; y = zeros ( n , 1 ) ;
%%% I n i t i a l i s a t i o n %%%
g = f e v a l ( gcn , x , n ) ; i t e = 0 ;
ne ( i t e +1) = sqrt ( g ’ ∗ g ) ;
If the residual becomes larger than a predefined value ’meps(2)’, the process
is not expected to converge. Therefore the computation is stopped to avoid
213
%%% P r e a l l o c a t i o n %%%
g = zeros ( n , 1 ) ; s = zeros ( n , 1 ) ; y = zeros ( n , 1 ) ;
B2 = zeros ( p , p ) ;
%%% I n i t i a l i s a t i o n %%%
g = f e v a l ( gcn , x , n ) ; i t e = 0 ;
ne ( i t e +1) = sqrt ( g ’ ∗ g ) ;
Note that these reduction procedures also have been applied in the normal
format.
%%% R e d u c t i o n %%%
C ( : , 1 : q ) = C ( : , p−q +1:p ) ; C ( : , q +1:p ) = zeros ( n , p−q ) ;
D ( : , 1 : q ) = D( : , p−q +1:p ) ; D( : , q +1:p ) = zeros ( n , p−q ) ;
All reduction methods discussed above are applicable to the limited mem-
ory inverse Broyden method.
The scaling is inserted to overcome a bad condition number for the matrix
M 2. In contrast with the matrix B2 the matrix M 2 is not invertible if m < p,
because we have declared M 2 as a (p × p)-matrix. Therefore, we use the
left-upper (m × m)-part of the matrix M 2.
Appendix C
3 3
(ρcp )s 1382.0 kJ/m K (ρcp )g 0.6244 kJ/m K η 1
k∞ 9.85 · 106 s−1 av 1426.0 m2surf /m3react kc 0.115 m/s
h 0.02kW/(m2 K) L 4.0 m ε 0.38
Tc = T 0 323 K ∆Tad 50 K Ea /Rgas 8328.6 K
Dax 3 · 10−5 m2 /s u 1.0 m/s tf 1200s
λs 0.0 kW/(mK) λg 2.6 · 10−4 kW/(mK)
219
220 Appendix C. Estimation of the model parameters
λrad = λ0 + λ0rad ,
where λ0 and λ0rad act fairly independently. For the convective heat conduc-
tivity the following correlation is given
(ρcp )g dp u
λ0rad = .
8[2 − (1 − dp /R)2 ]
Note that under stagnant conditions, we have that λ0rad = 0 and that the
radial heat dispersion coefficient equals the thermal conductivity. If the heat
diffusion through the solid particles can be neglected (that is, λs = 0) the
following expression is valid for λ0 ,
λ0 = 0.67 · λg · ε,
in case of 0.26 < ε < 0.93 and T < 673K. Using the parameter values given in
Table C.1, we arrive at the following expression for the radial heat conductivity
0.6244 · dp · 1.0
λrad = λ0 + λ0rad = 6.6 · 10−5 +
8[2 − (1 − dp /R)2 ]
dp
= 6.6 · 10−5 + 7.81 · 10−2 .
2 − (1 − dp /R)2
221
Table C.2: The values of the radial parameters for the two-dimensional model of the
reverse flow reactor
Symbols
In Section 6.2 we have used the following symbols.
Roman
av specific external particle surface area, m2surf /m3reactor
aw specific reactor wall surface area, m2wall /m3reactor
c, C concentration, kmol/m3
D dispersion coefficient, m2 /s
dp particle diameter, m
Ea activation energy, kJ/kmol
h heat-transfer coefficient, kW/(m2 K)
kc mass-transfer coefficient, m/s
k∞ frequency factor for reaction, s−1
L reactor length, m
r radial distance, m
R radius of the reactor, m
Rgas universal gas constant, kJ/(kmol K)
u superficial gas velocity, m/s
Uw heat-transfer coefficient at reactor wall, kW/(m2 K)
t time, s
tf flow reverse time, s
T temperature, K
Tc (T0 ) cooling(feed) temperature, K
z axial distance, m
222 Appendix C. Estimation of the model parameters
Greek
−∆H heat of reaction, kJ/kmol
−∆Tad adiabatic temperature rise, K
ε void fraction, [−]
η effectiveness factor, [−]
λ0 (isotropic) thermal conductivity, kW/(m3 K)
λ0 convective heat conductivity, kW/(m3 K)
λ thermal conductivity, kW/(m3 K)
(ρcp ) volumetric heat capacity, kJ/(m3 K)
Φ dimensionless cooling capacity, [−]
Dimensionless parameters
Bo Bodenstein number
Pe Péclet number
Pr Prandl number
Re Reynolds number
Subscripts
ax axial direction
rad radial direction
g gas phase
s solid phase
Samenvatting
(Waarom Broyden?)
• Ecologisch onderzoek naar vervuiling van een fabriek die zijn afval loost
in een baai met open verbinding naar zee.
Wat deze processen met elkaar gemeen hebben is dat ze wiskundig ge-
zien eigenlijk hetzelfde zijn. Ze worden namelijk beschreven met behulp van
partiële differentiaalvergelijkingen met tijdsafhankelijke parameters en rand-
condities. We zijn vooral geı̈nteresseerd in wat een systeem doet na verloop
van (een lange) tijd. Omdat de condities van het proces periodiek in de tijd
zijn, verwachten we hetzelfde voor de uiteindelijke toestand van het systeem.
In dat geval noemen we het systeem in periodiek stabiele toestand (’cyclic
steady state’).
We beschouwen een variabele, zeg x, bijvoorbeeld de concentratie van de
giftige stof in het water van een baai, of de temperatuur van de reactor. Deze
variabele hangt af van plaats en tijd. In eenvoudige gevallen zijn de partiële
differentiaalvergelijkingen nog op te lossen. Maar wanneer meerdere variabe-
len in het proces een rol spelen of wanneer het mechanisme moeilijker wordt,
is dit al niet meer te doen en moeten we op een andere manier een oplossing
vinden. De laatste decennia kunnen we de hulp inroepen van de computer.
Daarvoor dienen we de partiële differentiaalvergelijkingen eerst aan te passen
223
224 Samenvatting
p
p
alle andere matrices en vectoren een Broyden matrix moet worden opgesla-
gen met 25.000.000 elementen. De ’Broyden Rank Reduction’ methode kan
wel worden toegepast voor bijvoorbeeld p = 20 of p = 10. Hiervoor moeten
respectievelijk 200.000 en 100.000 elementen worden opgeslagen. De methode
convergeert voor beide p’s even snel, terwijl het geheugengebruik wordt ge-
halveerd. De parameter p kan zelfs gelijk worden gekozen aan 5 (opnieuw een
halvering van het geheugengebruik) in ruil voor een paar extra iteraties. Een
periodieke toestand van de ’reverse-flow’ reactor met temperatuursgradiënten
in radiale richting kan met de ’Broyden Rank Reduction’ methode nu voor het
eerst efficiënt berekend worden.
Nawoord
Dit proefschrift was nooit voltooid zonder de inbreng en steun van vele vrien-
den, collega’s en bekenden. Daarbij denk ik vooral aan de personen die direct
bij het totstandkoming van dit proefschrift betrokken zijn geweest. Verschil-
lende leden van de promotiecommissie hebben door hun opmerkingen en vra-
gen de presentatie van de resultaten overzichtelijker gemaakt en het aantal
fouten en onnauwkeurigheden verminderd.
Financiële ondersteuning voor congres- en werkbezoek heb ik gekregen van
het Leids Universiteits Fonds, Shell en van NWO via het Pioneer project. Het
Mathematisch Instituut heeft mij alle vrijheid gegeven om ongestoord mijn on-
derzoek te doen en bovendien mij te kunnen voorbereiden op het toekomstig
werk voor de klas. Gedurende vier jaar heb ik me thuis gevoeld op twee totaal
verschillende instituten. Zowel in Leiden als bij het Instituut voor de Techni-
sche Scheikunde in Amsterdam was er altijd wel iemand om een oplossing te
vragen voor een probleem (niet noodzakelijk betreffende mijn onderzoek) of
om trots mijn nieuwste resultaten te laten zien (van mijn kat Siep bijvoorbeeld,
zie de introductie).
In het laatste jaar van mijn promotie kreeg ik de gelegenheid om een maand
de Colorado State University te bezoeken op uitnodiging van Don Estep. Het
was voor mij een grote uitdaging om het resultaat van mijn onderzoek te
bespreken met hem en zijn collega’s. Het was leuk om de verschillende fiets-
routes in en rondom Fort Collins te ontdekken.
Vanaf het begin van mijn promotie heb ik veel gehad aan de gesprekken
met Tycho, die mij in wezen is voorgegaan in dit onderzoek. Zowel zijn heldere
ideeën als vermogen tot relativeren hebben mij veel geholpen. Het basis-idee
van de ’Broyden Rank Reduction’ methode is mede aan hem te danken.
De tijd die ik met Miguel op de kamer zat, waren aangenaam en effectief.
Het schoolbord op de kamer werd intensief gebruikt, want het was vaak al
voldoende om een probleem uit te leggen aan de ander om zelf ineens de
oplossing te zien. Zijn kennis over Latex is dit proefschrift zeker ten goede
gekomen.
227
228 Nawoord
Ook buiten de universiteit hebben velen mij geholpen bij het voltooien
van mijn promotie, vaak ook zonder dat zij zich ervan bewust waren. Door
het commentaar van Bertram en Luuk is de leesbaarheid van het begin en
het einde van dit proefschrift vergroot. De onvoorwaardelijke steun van mijn
ouders, mijn broer en mijn zus is voor mij van onschatbare waarde.
Désirée is voor mij de reden om altijd vol te blijven houden.
Curriculum Vitae
229
230 Curriculum Vitae
verdiepen met behulp van de expertise van prof. dr. D. Estep en zijn groep.
Binnenkort keert hij terug naar de Vrije Universiteit waar hij een opleiding
gaat volgen tot wiskunde-docent.