Iterative Solution For Equations
Iterative Solution For Equations
www.elsevier.com/locate/compchemeng
ai
Iterative solution for % equations
i u −ci
D.S. Billingsley
Suite 708, 7520 Hornwood, Houston, TX 77036 -4326, USA
Received 27 September 2001; received in revised form 15 November 2001; accepted 16 November 2001
Abstract
A useful improvement upon currently available procedures is presented for solving the type of equation indicated in the title.
Such equations arise, for instance, in minimum reflux calculations for multicomponent distillation problems. Those engaged in
improving the performance of distillation software will find the most use for the proposed method. It requires no explicit step size
limits, is more robust than Newton’s method, cannot converge to a root other than the one being sought, and retains the
quadratic convergence exhibited by Newton’s method. © 2002 Elsevier Science Ltd. All rights reserved.
Nomenclature
1. Iteration procedure
where Newton’s method frequently diverges or converges
to an undesired root (Fig. 1). In these cases, various
Models for multicomponent distillation may employ
Newton iterates must be limited or replaced by some
equations of the type
other procedure. Moreover, the limits themselves are
ai often sources of trouble.
P(u) % −1 (1)
i u −ci Eq. (1) may be solved by existing software, but there
0098-1354/02/$ - see front matter © 2002 Elsevier Science Ltd. All rights reserved.
PII: S0098-1354(01)00767-0
458 D.S. Billingsley / Computers and Chemical Engineering 26 (2002) 457–460
is at hand an improved procedure possessing the fol- In what follows, the term ‘pole’ will denote a vertical
lowing desirable characteristics. asymptote on the graph of P(u). Let ci and ai be
1. asymptotic quadratic convergence— the same as arranged so that ci B cj whenever iB j. In multicompo-
Newton’s method; nent distillation models, this means the components are
2. all iterates remain in the vicinity of the root of in order of decreasing volatility. Eq. (1) has a pole at
interest; u= ci for each i and exactly one root (and one inflec-
3. no step size limits or other explicit limiting proce- tion point) between each pair of successive poles and
dures required; exactly one root greater than the location of the last
4. generally requires fewer iterations than Newton’s pole. Since the locations of the poles are known, it is
method; assumed that when one seeks the root in the range
5. more robust than Newton’s method; ck B uBck + 1, the initial estimate will also be within
6. no derivatives beyond the first are required; this range. By retaining only the terms ak /(u − ck ) and
7. little computation beyond that required for New- ak + 1/(u − ck + 1), one can form an approximating func-
ton’s method. tion tangent to P(u) at a specified u, having exactly one
Elimination of the requirement for step size or other root within the range ck B uBck + 1 and solvable in
explicit limits without allowing iterates to leave the closed form. The resulting iterative procedure follows.
vicinity of the root of interest, items 2 and 3, is both a
un + 1 = 12(i(un )− i 2(un )− 4v(un )), a 0/a 1 \ 0 (2)
conceptual and an actual improvement upon current
practice. One replaces the tangent of Newton’s method i(un ) ck + ck + 1 + (ak + ak + 1)/(a 0/a 1) (3)
with a better, non-polynomial, invertible approximation
derived from and tangent to P(u). This makes more use v(un ) ckck + 1 + (akck + 1 + ak + 1ck )/(a 0/a 1) (4)
of information available in Eq. (1) than is customary a 0/a 1 = − [P(un )/a 1]+ P 0k(un ) (5)
and, in particular, hastens convergence outside of the
region of quadratic convergence. It is practical because a1
dP/du ) (6)
the ci are available. dP 0k/du u(n)
)
convergence. The column headed ‘Order of Conver-
dP(u) ai gence’ shows the asymptotic order of convergence.
= −% (7) The ‘bound’ is the maximum change permitted in the
)
2
du u(n) i (un −ci )
solution estimate per iteration and, where given ex-
dP 0k(u) ak ak + 1 plicitly, was set arbitrarily. The starting estimate was
=− − (8)
du u(n) (un −ck )2 (un −ck + 1)2 (c2 + c1)/2. The secant method requires two initial es-
ak ak + 1 timates, and the second was (3c2 + c1)/4. c1 and c2 are
P 0k(un ) + (9) so close together that the initial estimates would be
un − ck un −ck + 1
considered good. Still, Newton’s method and the se-
To iterate, one evaluates Eq. (1) at un and then Eq. cant method failed. As the number of terms in Eq.
(9) through Eq. (2) in reverse order of their equation (1) increases, the numbers indicated by [ in Table 2
numbers. Since P 0k(u) is part of P(u), only the right are soon approached.
sides of Eq. (2), Eq. (3) and Eq. (4) involve quantities Results from a commercially available library of
not required for Newton’s method. If a 0/a 1 50, Eq. mathematical routines are included. The ‘Numerical
(2) is replaced by Eq. (2a) or (2b) Recipes’ (Press, Teukolsky, Vetterling & Flannery,
un + 1 = 12(i(un )+ i 2(un ) − 4v(un )), a 0/a 1 B0 (2a) 1992) routine zbrent, ‘Bent’s method,’ combines root
bracketing, bisection and inverse quadratic interpola-
un + 1 = (akck + 1 + ak + 1ck )/(ak +ak + 1), 0 1
a /a =0
tion. It is the method of choice of Press et al. (1992)
(2b)
for general one dimensional root evaluation when
To find the single root greater than the last pole, only function values are used. It requires initially two
let k denote the term in Eq. (1) corresponding to the estimates which bracket the root. Those used here
largest ci and use were 1.0001 c1 and 0.999 c2.
ak To determine the asymptotic order of convergence,
un + 1 = +ck (10) denote the right side of Eq. (2) by g(un ) so that the
(a /a 1)
0
equation may be expressed as
)
a 0 = − P(un )+aka 1/(un −ck ) (11)
dP(u)/du un + 1 = g(un ) (13)
a1= − (12)
ak /(u − ck )2 u(n)
evaluating Eq. (1), Eq. (7) and Eqs. (12), (11) and Let u* denote the solution of Eq. (13) so that u*=
(10), the last again in reverse order of their equation g(u*) and P(u*)= 0. Following Storer and Bulirsch
numbers. (1993), expand g about u* and obtain
Table 2
Illustrative problem results
(un − u*) d g
p p
un + 1 = g(u*)+ Pk (u) and introduces no additional roots since u=ck
)
p! du p u*
and u= ck + 1 are each a pole of Pk (u).
(un −u*)m d mg
+ % (14) (u− ck )(u − ck + 1)Pk (u)
m=p+1 m! du m u* −
a0
when lower derivatives vanish at u*. Divide by (un −
ak (u−ck + 1)+ ak + 1(u−ck )
u*)p and the summation becomes O un −u* so that as =− + (u− ck )(u − ck + 1)
(a 0/a 1)
)
n increases
= u 2 − iu + v =0 (20)
un + 1 − u* 1 d pg
[ (15)
(un −u*)p p! du p u* with i and v given by Eq. (3) and Eq. (4) and roots by
Eq. (2) and Eq. (2a).
To prove asymptotic quadratic convergence, one shows
To find the sign of the square root one invokes Eq.
that dg/dun vanishes at u* so that p = 2 in Eq. (15). To
(3) and Eq. (4) and forms
this end differentiate Eq. (5) and find
(ck + ck + 1)(ak + ak + 1)
d(a 0/a 1) 1 dP(un ) P(un ) da 1 dP 0k(un ) i 2 − 4v= (ck + ck + 1)2 + 2
=− 1 + 12 + =0 (a 0/a 1)
dun a dun (a ) dun dun
(16) (ak + ak + 1)2
+
at un = u* after substituting Eq. (6) in the first term on (a o/a 1)2
the right side. Inspection of Eq. (4), Eq. (3) and Eq. (2)
in that order shows their derivatives contain the factor
− 4 ckck + 1 +
akck + 1 + ak + 1ck
d(a 0/a 1) /dun and so one has also at u* (a 0/a 1)
(ck − ck + 1)(ak − ak + 1)
dv(un ) di(un ) dg(un ) = (ck − ck + 1)2 + 2
= 0, =0, =0. (17) (a 0/a 1)
dun dun dun
(ak − ak + 1)2 aa
The proof for Eq. (10), Eq. (11) and Eq. (12) is + + 4 k0 k +1 12
0 1 2
(a /a ) (a /a )
similar.
2
(ak − ak + 1) akak + 1
= (ck − ck + 1)+ +4
(a o/a 1) (a 0/a 1)2
2. Development (21)
2
Upon multiplying the previous line by (− 1) one finds
The problems with Newton’s method applied to Eq.
(1) arise because the straight line tangent often approx- (i+ i 2 − 4v)/2 \ck + 1 + ak + 1/(a 0/a 1) (22)
imates P(u) very poorly beyond minute distances from
when a /a \ 0, while if a /a B 0
0 1 0 1
the point of tangency. To improve the approxima-
tion without sacrificing a closed form solution, note (i− i 2 − 4v)/2 Bck − ak / a 0/a 1 (23)
that within the range ck Bu B ck + 1 the graph of
Eq. (22) and Eq. (23) are outside of the range ck BuB
P(u) is dominated by the terms ak /(u − ck ) and ak + 1/
ck + 1 so that in each case the other root is, by construc-
(u− ck + 1). Using P 0k(u) from Eq. (9) create Pk (u)
tion, the root of Pk (u)= 0 within this range.
tangent to P(u) at un by defining
If a 0/a 1 = 0, that is a 0 = 0, one uses
Pk (u) a 1P 0k(u)−a 0 (18)
(u−ck )(u − ck + 1)Pk (u) / a 1
1 0
with a given by Eq. (6) and a by
= ak (u−ck + 1)+ ak + 1(u−ck )= 0 (24)
P(un ) = a 1P 0k(un )−a 0 (19)
instead of Eq. (20) and Eq. (2b) follows.
Pk (u) has exactly one root in ck Bu B ck + 1. Since this
root will be the next estimate of u, all iterates will
remain in the range ck Bu B ck + 1 provided the initial References
estimate is. Although changed at each iteration, a 1 =
a 1(un ) and a 0 =a 0(un ) are constants with respect to Press, W. H., Teukolsky, S. A., Vetterling, W. T., & Flannery, B. P.
Pk (u). (1992). Numerical Recipes in FORTRAN (2nd ed, pp. 352 –355
plus diskette). Cambridge, UK: Cambridge University Press.
One obtains the desired root of Pk (u) upon multiply- Storer, J., & Bulirsch, R. (1993). Introduction to Numerical Analysis
ing by (u−ck )(u − ck + 1). This preserves the roots of (2nd ed, pp. 265 –266). New York: Springer.