94 422, 00 2 - defense technical information center 422 6~e una~ 94 422, 00 2-x-not,. to. ......
TRANSCRIPT
-X
-NOT,. TO. ISE RteP"vas
United* Kingdom-Atomi6ic-Eeg uhrt
:k~tg
C-Ag
PRCE-0e f n olynom.aial nery'Osf ic
SA.E.R.E. R.7986
FORTPAU SUBRMOINES FOR, FltING ltMOLY1JCIAL ZEROS
by
K. Madsen* and J.K. Reid
ABSTRACT
In this report we present subroutines for finding all the rootsof a polynomial and bounds on their errors. To find the zeros we usethe algorithm of Madsen (1973) and to find error bounds we use the workof Peters and Wilkinson (1971) with some significant modifications. Boththe real and complex cases are treated.
* Institute for Numerical Analysis, Technical University of' Denmark,2800 Lyngby, Denmark.
A
Computer Science and Systems Division,A.E.R.E. Harwell, Didcot,Oxford, England. JU:,c•
February, 1975 By
HL.75/1172 (C.13)
Di ct
(i) --
B . ~~~slri mrp1~i nsc aea
CONTENTS
Page No.
1. Introduction 1
2. Finding the roots in the complex case 2
3. Error estimation 6
4. Changes to the algorithms in the real case 13
5. Description of Fortran subroutines 15
6. Test results and comparisons with other methods 18
7. Appendix. Specification sheets and listings 23
8. References. 65
ISBN--0-70-580215-9
(ii)
j1. Introduction
In this report we consider the problem of finding all the zeros of
the polynomial
f(z) = ao + a z +...+a nzn (1.1)
and estimating error bounds for them. To find the set of zeros we use
the algorithm of Madsen (1973), which we have found to compare favourabI
with other algorithms. For error estimation we apply Rouche's theorem
as recommended by Peters and Wilkinson (1971), but with some difference
in detail. Both of these algorithms are a little simpler in the case
where the polynomial has complex coefficients, so we describe the
algorithms for this case in sections 2 and 3 and the modifications for
real case in section 4.
We believe that our code is in accord with the ANSI standard, havir
checked it with Bell Telephone Laboratories' Fortran verifier (Ryder,
1973) and run our test programs with array subscript checking. We
describe this code in section 5 and in an appendix give specification
sheets, and listings (produced by the Bell Laboratories'verifier, so the
include cross references). For the Harwell subroutine library we have
made a small number of changes in order to shorten the argument lists,
at the expense of a departure from ANSI standard. We have decided aga7
including a single-length version in the library because the IBM 370/1E
has a very short single-length word (6 hexadecimal digits, so that
numbers just greater than unity are held to about I part in 10 6) but hE
double-length hardware which executes very little slower than the singi-
length hardware. Some results obtained with the library subroutines,
together with comparisons with other algorithms are given in section 6.
Our code (listed in section 7) contains comments suitable for machine
processing which detail the changes needed for the single-length and
-l -
Harwell li.'rary versions.
We would like to acknowledge the help of M.J.D. Powell in carefully
checking a draft of ýhis reoort and making several valuable suggestions.
2. Finding the routs in the complex case
We use the algoritrim of Madsen (1973) to find the .-oot of minimal
or near-minimal modulus and then use forward deflation to construct a
polynomial of degree n-1 whose roots are the remaining roots of the
original polynomial. The process is repeated until approximations to
all the roots have been found. Wilkinson (1963) has shown that forward
deflation is stable provided a large root is not accepted before a much
smaller one. Our algorithm does not guarantee that the moduli of the
roots are strictly increasing but our experience has always been that they
are found in roughly increasing order. A version with the composite
deflation of Peters and Wilkinson (1971), which should be stable no matter
in which order the zeros are found, was tried but it did not give more
accurate results. In any case it is not clear how to apply the
composite deflation when two complex conjugate roots of a real polynomial
have been found so that deflation by a real quadratic factor is wanted.
It remains necessary to describe Madsen's (1973) algorithm in detail
and we will consider its application to the original polynomial. The
general strategy of the algorithm is that. given an iterate zk, a
tentative step dzk is found and the next iterate z k+l is taken at the best
point (in the sense of If(z)I) encountered in a short search of values
on the line through zk and zk+dzk. Because the search may sometimes
yield no better value than that at zk we may sometimes have z k+l =Zk and.
in this case ensure that the next tentative step is shorter and in a
different direction. The inclusion of searches ensures rapid convergence
to multiple roots and reliable convergence when difficulties are
-2-
ATTRIBUTES: Col 1: C if in COMMON
F encountered. Such a search is, however, wasteful if we are so near a simple
root that Newton's iteration is reliable and fast. We have therefore
devised a *test (given by inequality (2.7)) which normally ensures this.
While the algorithm performs searches we say it is in stage 1; otherwise
it is in stage 2, performing straightforward Newton iteration. It begins in
stage 1, which we now describe.
The tentative step dzk is found with the help of stored values of
Zk, f(zk)O f'(zk),zk-l and the previous tentative step dZkl. If the
last iteration was successful (zk i Zkkl) then the Newton correction
nk= f(zk)/f'(zk) (2.2)
is calculated and the next tentative step is taken as
k nk if InkI • 31zk-zk-lI (2.3a)dz 31zk-zk-lleie nk/Inki otherwise (2.3b)
where e is chosen (rather arbitrarily) as arctan(3/4). If the last
step was unsuccessful (zkNZk-l) then we take the tentative step to be
dzk = -• eie dzkl. (2.3c)
After a successful iteration we normally expect to want to take a Newton
step (2.3a), but we include the alternative (2.3b) because accidently
coming near to a stationary point of f(z) is likely to make the Newton step
ridiculously large. We include a change of direction in (2.3b) because
if a saddle point is being approached the direction nk may be a worse,
search direction than almost any other. After an unsuccessful iteration
we want to change the search direction to one likely to be successful
and reduce the step size; this leads to formula (2.3c). Its repeated
use is sure to yield a descent direction.
-3-
F The algorithm used by PAO6BD to find the roots has already been
Once the tentative step has been found we test the inequality
!f(zk+dzk)I < 1f(zk)t . (2.4)
If this is satisfied then we calculate the numbers
ff(zk+p dzk)1, p=l,2,...,n (2.5)
continuing for as long as these are strictly decreasing. If inequality
(2.4) does not hold th;n we calculate the numbers
If(zk + dzk/2P)I, p=O,l,2, If(zk + jeie dzk)0 (2.6)
again continuing until the sequence ceases to decrease. In all cases we
take Zk+l to be the best point found. Note that if there is a true multiple
zero of multiplicity m or if we are a fair distance from a cluster of m
zeros then zk+mnk will be a very good estimate of the solution and will be
found by our search. In fact we get quadratic convergence to a multiple
zero. Note also that when an iteration fails following a search to the
end of sequence (2.6), the choice (2.3c) leads to a step likely to be in
a direction of decreasing jf(z)I.
To complete our description of stage 1 we need to specify starting
iterates. We take these to be
dz 0 (fO)/f'(O) if f'(o)=O1l otherwise (2.7)
z min (Ia Ill/k\ dz0zI = (ijmink>o IdZao
The iteration really starts from zI but we have to include z0 and dz0
because they are needed for choosing the tentative step dzI. This choice
of zI is used because its modulus is certainly less than that of any root
of f(z) and it is in the direction of steepest descent of If(z)I from the
-4-
origin. It is therefore likely that we will converge to a root of near-
minimal modulus.
We do not make our main test for switching to stage 2 (straightforward
Newton iteration) until a stage 1 search has led to the choice
Zk+l=Z k+dz k This is obviously sensible and has the added virtue that
we should (correctly) avoid the switch when converging to a multiple root.
The test itself is based on the Kantorowitz theorem (see, for example,
Ostrowski (1966)) which states that if K. is the circle with centre
zk+nk and radius Inkl where nk is the Newton step (2.2) then the
conditions
f(zk) f'(Zk) A 0 (2.8)
21f(zk)I max If"(z)l ! If'(zk)l 2 (
zE:Ko
ensure the convergence of Newton's iteration starting from z k This
leads us to test the inequality*
2If(zk)jjf'(Zk- 1 ) - f'(zk)I 5 If'(zk)l 2 lZkl-Zkl (2.9)
Of course this is not equivalent to test (2.8) because we have replaced
max If"(z)l by a rather crude difference approximation but we
ZEo K
nevertheless expect it usually to predict correctly that straightforward
Newton iteration will be satisfactory. We check inequality (2.9) at every
step in stage 2 and switch back to stage 1 if it is violated. We also
check the inequality (2.4) and if this is violated return to stage 1
beginning by modifying the tentative step with formula (2.3c) as in stage 1.
We complete this section by describing our convergence criterion.
We terminate if a stage 1 search or a stage 2 iteration leads to a new
iterate Zk+l different from zk and yet such that the inequality
-5-
IZk+l-ZkI < EZ:k+ll (2.10)
holds where e is the largest number such that to machine accuracy I+E = I.
We also terminate if the condition
If(zk+l)I = lf(zk)I • 16nlaolc (2.11)
holds. The expression 16nlaolE is a generous overestimate of the final
roundoff made in calculating f(z) at the root of smallest modulus and we
expect that such accuracy will be attainable. The normal convergence
pattern is that If(zk)I decreases until well below 16niao0 E and then
roundoff errors cause a new iterate Zk+l=Zk to be taken so that (2.11) is
satisfied. If such accuracy is unattainable then the step will decrease
steadily because of the application of (2.3c) until (2.10) is satisfied.
This combination of convergence criteria means that we are certain to
obtain a good solution and almost certain to obtain the best possible.
Furthermore this result is usually obtained with only one more iteration than
is necessary to get this good accuracy.
3. Error estimation
We seek to estimate error bounds for all the roots produced by the
algorithm of the previous section. We base our algorithm on ot f
Peters and Wilkinson (1971) and will follow their notation. The most
significant difference is that they look for non-overlapping discs each of
which contains precisely the same number of exact and approximate roots,
whereas we allow overlapping discs. This 's because it can happen that
one root is well determined although it is inside the best disc
obtainable for another (ill-determined) root. We therefore look for a
separate disc for each root and take its centre to be at the calculated root
itself. This also allows a very simple form of output to the user since
-6-
all that is required is a radius for each root.
We suppose that we have approximate roots ai, i=l,2,...,n. Then
the polynomial
nP(z) = a n H (z-ai) (3.1)
i=l
should agree with the original polynomial (1.1), but because the roots
are not exact there will be an error
Q(z) = P(z) - f(z). (3.2)
Now Rouche's theorem states that if P(z) and Q(z) are analytic
functions in and on the closed curve C and the inequality
IQ(z)I < IP(z)I (3.3)
holds on C then P(z) and P(z)-Q(z) have the same number of zeros inside C.
We apply this here by looking for circles with centres ai, i=,2 ,...,n on
which condition (3.3) holds. The following theorem shows that there is
no need to worry about the overlapping of some of these discs.
Theorem 1 If condition (3.3) holds on each of the circles centre ai'
radius ri, i=l,2,...,n, then the roots 0i of f(z) may be ordered so
that
Jai-oil :5 ri, i=I,2,.....n . (3.4)
Proof Regard the perimeters of the circles as dividing the plane into aset of non-overlapping regions Ri, each of which is the intersection of a
subset of the set of discs that the circles enclose and their complements.
A simple case is illustrated in Figure 1. Let Rki be the region
containing ci' i=l,2,...,n. Note that a region may contain more than one
ai so that there may be coincidences among the ki (e.g. klk 2 =3 in
Figure 1). The set of regions Rk. i=1,2,... ,n together contain all the
-7-
Figure 1 Four circles centre a. dividing plane into seven regions Ri
rofts a. of P(z) and each Rk has a boundary on which condition (3.3)
holds so contains exactly the same number of roots of f(z) as of P(z).Therefore the regions Rki(i=l,2 ... ,n) contain all the roots of f(z) and
these may be ordered so that Rk contains ¢i (i=l,2,....,n). The result
now follows since each Rki is contained in the disc centre a. radius ri. UBeing able to use overlapping discs leads to simplifications in
coding and sometimes to much better error bounds. This improvement isillustrated by the example shown in Figure 1, where a1 and a2 are quite
ill-conditioned but a3 and a.4 are not. The procedure of Peters and
Wilkinson would have forced us to regard all four a. as a cluster and to
enclose them in a single disc. This would h~ve made little difference tothe bounds for a1 and a2 but would have significantly worsened the bounds
-8-
for a, and a4. Another illustration of this point is given in §6 with
an example using our code.
We now suppose that the error polynomial is
nQ(z) = I Eiz
1 (3.5)i=o
and describe how to find a suitable circle for a typical root. For
simplicity of notation let us imagine that the roots are reordered so
that the one for which we are seeking a circle is al and [ai-ail increases
monotonically with i. Rouche's condition (3.3) is satisfied on a circle
centre al and radius r if the inequality
n .n
X lEil (r+IliV' < Ian i (T i-I -al r)I (3.6)i=0o
holds. If m is such that
I am-OiI < r < lam_l-all (3.7)
(we ignore the case r = ic-Call for some i because clearly inequality (3.6)
cannot be satisfied in this case) then we may rewrite inequality (3.6) in
the form m
k(r) < TI (r - Jai-alI) (3.8)
where k(r) is given by the equation
nI I i I (r+l~ I ali=o
k(r) =n (3.9)
lani ITl (I ai -alI-r)
Peters and Wilkinson (1971) solve the equation
(1.1) k(O) = (rI - max ai-I (3.10)
-9-
and then check whether rI satisfies inequalities (3.7) and (3.8). Almost
always inequality (3.8) holds because
(i) -the right hand side of (3.10) underestimates the corresponding
expression in (3.8),
(ii) the safety factor (1.1) has been introduced
and (iii) k(r) is nearly constant in the usual case where the roots
ai, i=1,2,...,m are well separated from the rest.
They give no recommendation for dealing with the case where rI does not
satisfy (3.8), but presumably intend that an iteration should be set up
with 0 and rI in (3.10) being replaced by rj and rj+I. This yields a
montonically increasing sequence, so that we must eventually either
satisfy inequality (3.8) or break the right-hand inequality (3.7)
necessitating a new start with a greater value for m. Actually Peters andm
Wilkinson take the centre of their circle to be i = E cti/m rather thani=l
a and this means that the right-hand side of (3.10) is quite a good
estimate of the right-hand side of (3.8) so that the procedure gives a
realistic radius r without very much computation. Unfortunately this is
not the case with a, in use, except when m=l and we have sometimes
obtained solutions such that the right-hand side of (3.8) exceeds the left
by factors as big as 1,000. We have therefore decided to use an iteration
based directly on (3.8). Given an iterate r. we seek a new iterate such
that
m(1.05) k(rj) < I (rj~l - cai-cll) < (1.1) k(rj). (3.11)
In view of inequality (3.7) it seems sensible to start with ro = lam-all
rather than Wilkinson and Peters' ro=O. To solve (3.11) we use the method
of bisection because m is usually small so that function evaluations are
cheap, no great accuracy is required in view of the slack in (3.11),
-10-
S (double-length standard version only) is a REAL work array of
and suitable initial upper and lower bounds are available in rj and the
Peters and Wilkinson overestimate obtained from the analogue of equation
(3.10). Typically between four and seven iterates are required.
Peters and Wilkinson suggest that rj+l should be checked directly
in (3.8) but a simple test often avoids any need for this. If the
inequality
i n q a i y( r~j + ++ l aY l am + l -al - . n 1 .0 5 (3 .1 2 )
rji + I lm+ all - rI
holds then it follows from the definition (3.9) that the inequality
k(rj+l) ! 1.05 k(rj) (3.13)
also holds. From this last inequality and the first inequality (3.11)
we deduce that rj+l satisfies inequality (3.8).
Rounding errors occur when the coefficients of P(z) are calculated,
but can be reduced by multiplying out the factors (z-ai) in order of
increasing Jail. We therefore use the same order as that in which they
were calculated. If bounds ei on the errors were available we couldn
work with the error polynomial E (lcil+ei)z in place of the polynomiali=o
(3.5) and obtain strict bounds on the errors in the calculated roots.
We hoped to use the running error analysis of Peters and Wilkinson for
this purpose, but unfortunately found that it sometimes gave gross over-
estimates, as explained in the last paragraph of this section. We
therefore have ignored this source of error, relying on such errors being
reflectedin larger coefficients ci in the polynomial Q(z). It should ber
noted that the sequence of constructed polynomials H (z-ai), r=l,2,...,ni=l
is not identical with the sequence of deflated polynomials used when
finding the roots because we perform the multiplication in the same order
as that in which the roots were found. Therefore errors produced by the
-11-
nmultiplication are likely to show in enlarged coefficients Ei" Not
bounding these errors means that our bounds are not strict bounds, but
they are more realistic. In none of our tests did the actual errors exceed
the estimated bounds.
It is straightforward to allow for the effects of uncertainties in
the original coefficients by working with the error polynomialn
-E (Ieil+bi) where bi, i=O,l,...,n, are bounds on these errors. This
we do in our subroutine.
We complete this section by explaining why the running errorn
analysis of Peters and Wilkinson for the coefficients of H (z-ai)i=l
sometimes gives very pessimistic results. If the computed productr rIT (z-ci) is E b r)zi then they generate coefficients fir) from the
i=I 1=0
recurrences.
f(l) -f(l) = 0o 1f(r+l) = I ccljf~r)+ lb r+l)l
f~r+l) = ffr) +Jr+l 1 fr) + arl br)l +1b r+l)1, r=1,2 .... n-l (3.14)1 : -1 rJlfl r~l1l~~ +1 br1
f(r+l) = f(r+l) 0- r+l
to yield bounds 2 -tfn) for the coefficients of P(z) if floating-point
computation with t binary places is used. This can sometimes lead to
very pessimistic bounds since the recurrence (3.14) fails to distinguish
properly between H(z-ci) and H(z+IctiI). In fact the recurrence (3.14)
is obtained by bounding the corresponding recurrence
er+l) ( a er) ( b(r) E b r+l) (3.15)i~ 1 Elr+l. i 2 1 3.5
-12-
NPl (standard versions only) is an INTEGER which must be set to n+l.
Such bounds are particularly unrealistic in such a case as
f(z) = zn-l since the numbers f(r) grow with r in much the same way as the
recurrence for generating the coefficients of (z+l)n and these coefficients
are nCr,r=O,l, .... n. In fact the recurrence (3.14) has some added
nterms when compared with the recurrence for the coefficients of (z+l)
4. Changes to the algorithms in the real case
The only change made to our root-finding algorithm in the case where
f(z) has real coefficients is that once a complex root has been found it is
either perturbed into a real root or its conjugate is taken as another r'
This ensures that each deflated polynomial is also real and that work
saved for genuinely complex roots. Once a complex root ak=Xk+iYk has been
found we evaluate f(xk) and use Peters and Wilkinson's (1971) running
error analysis to bound the roundoff error made in this evaluation. The
recurrence used for evaluating f(xk) is given by the equations
sn =an
si xksi÷++ai, i=n-l,...,O (4.1)
f(xk) = so
and the corresponding running error analysis is given by the equations
gn = 0 (4.2)gi = Ixkl(gi+l+isi+I) + Isil' i=n-l, ... I 0
to yield the bound Eg0 for the error in f(xk) where e is the relative
floating-point accuracy. If the inequality
Is0 1 < 2cg0 + If(a k0 (4.3)
holds (where f(ctk) is the computed value at ak), we take v,, to be a real
root and deflate with it. Otherwise we deflate with the complex conjugate
pair xk ± iyk. It is very important that the case where we have a simple
-13-
real root well separated from the other roots should not be taken as a
complex pair because a double deflation in such a case would be disastrous.
We therefore consider this case and suppose that hk is such a real root and
Lk is the (complex) approximation to it found by the algorithm. xk (real
part of ck) is a better approximation to h in the sense that the
inequality
1ýk -Xk1 :5 lh -O•kI (4.4)
holds since hk is real. Further the exact value f(z) behaves like a
constant times (Z-hk) if z is near 4k" It is therefore reasonable to expect
that the inequality
Jf(xk) 0 5 f((xk)l (4.5)
holds between the corresponding exact values. We therefore expect xk to be
at least as good a root as ak so that it is virtually certain that in-
equality (4.3) will hold, since eg0 is a rigorous upper bound on the round-
off error in computing f(xk) and may also be taken (slightly incorrectly)
as a bound on the error in computing Jf(lk)1.
A disadvantage of the test (4.3) is that we may decide we have a
real root when a complex conjugate pair is the true position. We feel
that this disadvantage is quite slight because it is reasonable to regard
any point for which inequality (4.3) holds as a good approximate root.
The only change to the error bounding algorithm is that once a
bound for a complex root has been found, this bound is also used for its
complex conjugate.
-14-
5. Description of Fortran subroutines
In this section we describe the Fortran subroutines themselves. It is
a short section because we have included rather full comments in the code
itself, since we believe that this provides the most convenient form of
documentation. Specification sheets and listings of the code are given
in section 7. The specification sheets document all three versions (double-
and singe-length standard Fortran and double-length IBM Fortran). The
listings are of the standard Fortran double-length versions and contain
specially coded comments detailing changes needed for the other versions.
We have been using a simple preprocessor (written in standard Fortran) to
convert from one version to another. Where a statement differs between
versions we preceded the genuine (double-length standard) statement by the
alternative version or versions modified by the insertion of C in column 1,
/ in column 72, and the letter I or S (for IBM version or single-length
version) in column 71.
The listings used are those produced by the Bell Telephone
Laboratories' Fortran verifier because they include cross-references which are
very helpful when reading the code. They consist of lists of all the
identifiers and labels in lexographical order together with the statement
numbers of all references to them and the following coded inforwition
for each identifier:
TYPE: Col 1: E if explicitly typedCol 2: I for integer
R for realD for double precisionC for complexL for logicalH for Hollerith
USE: FA for arithmetic statement function argumentFN for functionE for external subroutine or functionGT for assigned "go to" variableIF for intrinsic functionSN for subroutineV for variable
-15-
U
ATTRIBUTES: Col 1: C if in COMMONCol 2: E if an EQUIVALENCECol 3: A if a dummy argumentCol 4: S if value set by program unitCol 5: S if scalar
A if arrayCol 6: if array then number of dimensions
Because double-length complex facilities are not available in
standard Fortran we do not use any complex variables, although the arguments
A,R and E may be regarded as COMPLEX*16 (or COMPLEX for the single-length
version) on the IBM 360/370 series. All complex variables are written
as arrays of length two and all complex arrays are written as 2-dimensional
arrays whose first dimension is two. This leads to the code being almost
as easy to read as if the complex facilities were used. Complex division
is more complicated than can be written conveniently as in-line code so we
have taken this out of line to the subroutines PAO6ED/7ED.
We begin by describing the versions for complex polynomials, that
is PAO6AD/BD/CD/DD/ED.
The main call is to a short routine PAO6AD which calls PA06BD to find
the roots and PA06CD to find error bounds. PAO6DD and PAO6ED are short
subroutines for polynomial evaluation and complex division, respectively.
The time taken to find error bounds is usually about 25% of that taken to
find the roots themselves but can rise to as much as 100% when there are
many multiple roots. Because of this overhead we felt it was desirable
for the user to be allowed to call PAO6BD directly and instructions about how
to do this are included in the specification sheet. When calling PA06CD
(instruction 9 of PAO6AD) the work-space provided by the user is divided
into the four areas required by PAO6CD. Also PAO6AD checks for zero
leading coefficients and sets dummy error bounds to correspond, since
PAO6CD assumes that the leading coefficient is non-zero.
-16-
U The algorithm used by PAO6BD to find the roots has already been
explained in section 2 with the minor exceptions of the inclusion of
tests for zero leading coefficients (roots at infinity), tests for zero
trailing coefficients (roots at zero) and the scaling of all deflated
polynomials so that the largest coefficient has modulus approximately equal
to the reciprocal of the modulus of the smallest non-zero coefficient.
We implicitly assumed in section 2 that leading and trailing coefficients
were non-zero and the inclusion of scaling minimizes the likelihood of
underflow or overflow. To avoid additional roundoff we scale by a power
of the floating-point base. For speed of execution (in function calls
rather than basic arithmetic) we use single-length working for scaling and
for finding the initial iterate. Also we avoid time-wasting evaluations
of the moduli of complex numbers by working with the squares of the
moduli or the sums of the absolute values of the real and imaginary parts.
Subroutines PAO6DD and PAO6ED, called from several places in PAO6BD, should
be regarded as part of PAO6BD. PAO6DD evaluates a complex polynomial at a
complex point and finds the square of the modulus of the result. PAO6ED
is a simple subroutine for complex division. The arguments of PAO6DD and
PAO6ED are explained in comments at the heads of each subroutine. Other
coding details of PAO6BD are explained in comments.
Subroutine PAO6CD, which finds the error bounds using the algorithm
of section 3, again makes use of single-length arithmetic whenever possible.
In particular we found that CABS executes significantly faster than its
double-precision equivalent (which in any case is not standard FORTRAN).
Therefore the error polynomial is held in single-length, the function
k(r) given by equation (3.9) is calculated in single-length and all the
Rouche tests are performed in single-length. The details of the code are
explained in comments.
-17-
V
We have tried to make the code for the case with real coefficients,
namely subroutines PAO7AD-PAO7ED, resemble that for the complex case as
much as possible, using the same labels and the same comments wherever this
is appropriate. The only significant change in PAO7AD lies in the way
the work-array W is subdivided when PAO7CD is called. The only
significant changes in PAO7BD lie in the code for deflation (instructions
138-166), which is much more complicated because we need to test for a
real root and need to include code for deflation with a pair of complex
conjugate roots. The code for polynomial evaluation (in PAO7DD) is
longer because we make use of the fact that the coefficients are real and
treat separately the case where the point of evaluation is real. The
main changes in PAO7CD are
(i) Recognising complex roots when forming the polynomial IE(z-ai)
and multiplying them in as a complex conjugate pair to preserve real
coefficients (instructions 18-28). It is assumed that conjugate pairs
are adjacent in array R.
(ii) Much more complicated code (instructions 39-59) for finding
distances from the Ith root to all the rest. This code avoids calling
CABS to find the distances between two real roots and so is much
faster where most roots are real.
(iii) Using the same error bound for a complex root and its
conjugate (instructions 114-115).
6. Test results and comparisons with other methods
Our original reason for providing a new routine for the Harwell
library was that the existing routine PAOI sometimes gave incorrect answers.
The new routine (PA07) is able to get answers all of which have good accuracy
in about half the time. We did not pursue the error in PAOI.
-18-
We have compared our algorithm with that of Jenkins and Traub
(1970) in two ways. First we compared the Algol-W code given by Madsen
(1973) with an Algol-W version of the code of Jenkins (1969) and found
Madsen's to be 4 to 5 times faster. The required changes from Algol-60
to Algol-W are very minor. Next we compared our Fortran code with a rather
free translation into Fortran of Jenkins'code. We did not try to make
a literal translation but rather to use his ideas to produce efficient
Fortran code. The resulting program executed between 2 and 4 times slower
than ours. A further advantage of our algorithm is that it is simpler and
so the code is less bulky (the object code being about 2/3 as long). The
accuracy of the roots produced by the two algorithms was very comparable
except in the last test shown in Table 1 (Jenkins' 6th example) where we
obtained much smaller errors (all less than 2xlO- 14 ) because the roots of
modulus 0.9 were not all found before those of modulus 1 and therefore ill-
conditioned deflated polynomials were not generated. To compare the
error bounds with those of Jenkins we ran the examples documented in his
report. In his 6th example our bounds were much better simply because the
roots had been found so much more accurately. In his 5th example (a
complex polynomial of degree 21 having roots of multiplicities 1,2 and 3)
several of his bounds were quite unrealistic and our bounds were all better,
most of them by factors over 100 and three (or seven if multiplicities are
included) by factors over 1,000. In the remaining examples the
differences between the bounds were not severe.
Special purpose subroutines exist in the Harwell library for solving
real cubic and quadratic equations (PAO3A/AD and PAO5A/AD, respectively).
They use direct methods involving only the extraction of square and cube
roots but sometimes they lose accuracy through unnecessary cancellation.
We had hoped that a direct call of PAO7BD might be nearly as fast so that
-19-
we could withdraw the special purpose subroutines, but the speed difference
is by a factor of about 7. It is hoped that better versions of PAO3A/AD
and PAO5A/AD will be written for the library in due course. Extra tests
for ensuring reliability are likely to slow down the programs a little, but
it seems likely that good programs significantly faster than PAO7BD can be
written for these special cases.
To test our subrcutines we read in sets of roots and a relative error
level. We used extended precision arithmetic to c.nstruct the corresponding
polynomial and then made pseudo-random perturbations to its coefficients at
the required relative level. The polynomial and its errors were then
handed to our subroutines. This enables us to check the actual errors
against the computed error discs. We began by using all the polynomials of
Jenkins (1969) and about as many others from local sources, but eventually
reduced our test set to those shown in Table 1 (and a few trivial ones
designed to explore corners in our code) because the remainder showed no
useful additional information. We used the same test data for the real
case by adding an additional root consisting of the complex conjugate of any
complex root.
Our test results are summarised in Table 1. For each example we show
the errors and error bounds obtained for the first and last root found
and one intermediate one. This gives the reader an indication of our
success in finding the roots in order and we have been able to choose the
intermediate root displayed so that the three roots together indicate the
full range of conditioning. We also show the times (370/168 secs) for a
call of PAO6BD/7BD (roots only) and PAO6AD/7AD (roots and bounds). It can
be seen that finding the bounds usually involves quite a small overhead.
The last two cases are exceptional because of the large number of roots which
required discs containing many other roots. Such cases are relatively slow
-20-
because we try to find a disc with only one root, then try with two, and
so on.
It was the complex version of the last example which led us to
abandon finding disjoint discs, because some of the roots (e.g. (0,0.9))
are so ill-conditioned that the best disc obtainable covers all the roots.
Therefore if we insist on distinct discs all that can be obtained is one
disc for all the roots. By using overlapping discs,however, we obtained
12 good error bounds of which two are displayed in Table 1.
The real versions of the third and the last examples led us to
abandon Peters' and Wilkinsons' running error analysis on the computed
polynomial P(z) = T(z-cr). In the last example all the roots are well
conditioned but the bounds for the errors in computing P(z) were so
pessimistic that each disc contained all the roots. Example 3 was less
dramatic but all the error bounds came to about 10-8 instead of about
lO-14.
-21-
L LILL LIL ILIL .2 L L -_ _ - -__
4,-n -ý w, WC.fl W COL L Cflf .- '04C
LL w*cL L L , ,LLL
O 002i
In nnr- wO n
- t 00 -- C; 00 z0 n 00
CC 0) CC 0 -22
.00 - C OR
-9-
S.. .... . .. ... . . . .. .. .. .. ... . .l~ .• . .,. ... . .... . .. . . . . . . . . . .
* 7. Appendix. Specification sheets and listings
Harwell Subroutine Library PAO6AD/BD
1. Purpose
To find all the roots of a complex polynomial
a1 + a2x+...+a n+lanx
and error bounds for these roots.
2. Argument List
CALL PAO6AD(A,N,R,E,W,S,NPI,LW) (double-length standard)CALL PAO6AD(A,N,R,E,W,NPI,W) (single-length standard)
CALL PAO6AD(A,N,R,E,W) (IBM)
A is a DOUBLE PRECISION (REAL for the single-length version) array
of dimensions (2,n+l) which must be set by the user so that the
real and imaginary parts of ai are held in A(l,i), A(2,i). It
is unaltered by the subroutine. For the IBM version A may be a
COMPLEX*16 array of length n+l.
N is an INTEGER variable containing the degree n of the polynomial.
Its value must be positive.
R is a DOUBLE PRECISION (REAL for the single-length version) array
of dimensions (2,n) used to return the roots. These are held with
real and imaginary parts in R(l,i), R(2,i), i=l,2,..:,n. The dummy
value (1D70,1D70) is returned for each infinite root (corresponding
to a zero leading coefficient). For the IBM version R may be a
COMPLEX*16 array of length n.
E. is a REAL array of dimension at least (n+l) which must be set by
the user to error bounds on the coefficients, or to zero if these
are accurate to machine precision. On exit the first n locations
contain approximate bounds on the moduli of the errors in the roots.
W is a DOUBLE PRECISION (REAL for the single-length version) work
array of dimensions (2,LW).
-23-
-10-
S (double-length standard version only) is a REAL. work array of
dimensions (4,LW), which may be equivalenced with W.
NPl (standard versions only) is an INTEGER which must be set to n+l.
LW (standard versions only) is an INTEGER which must be set to
at least 5n/4+2 (or 3n/2+2 for the single-length version).
3. Alternative Entry
The error analysis part of a call to PAO6AD takes typically about
20% of its time. If speed is important and error bounds are not wanted
then a call of the form
CALL PAO6BD(A,N,R,W,NPI) (standard versions)or CALL PAO5BD(A,N,R,W) (IBM version)
should be made. The arguments are the same as those of the main call,
but W need have length only (2,n+l).
4. Method
The roots are found by the algorithm of Madsen (BIT(1973) 13, 71-75),
the principal features of which are Newton iteration followed by
deflation. The error bounds are found by the application of Rouche's
theorem as recommended by Wilkinson (J.Inst.Maths Applics.(1971) 8,
16-35) except that discs are always taken with centres on the approximate
roots and errors in multiplying out the polynomial II(x-R(I)) are ignored.
The disc for each root is such that it contains exactly the same number
of approximate roots R(I) as exact roots of the true polynomial. Note
that in the case of true multiple roots the corresponding approximate
roots may be quite well separated but each will lie in the disc of all
the others and their mean will be a good estimate of the true multiple
root.
-24-
a
PAO7AD/BD
1. Purpose
To find all the roots of a real polynomial
aI+a 2 x+...+an+l xn
and error bounds for these roots.
2. Argument List
CALL PAO7AD(A,N,R,E,W,S,NPI,LW) (double-length standard)
CALL PAO7AD(A,N,R,E,W,NPI,LW) (single-length standard)
CALL PAO7AD(A,N,R,E,W) (IBM)
A is a DOUBLE PRECISION (REAL for the single-length version) array of
length at least (n+]) which must be set by the user. to contain the
coefficients and is unaltered by the subroutine.
N is an INTEGER variable containing the degree n of the polynomial.
Its value must be positive.
R is a DOUBLE PRECISION (REAL for the single-length version) array
of dimensions (2,n) used to return the roots. These are held with
real and imaginary parts in R(l,i),R(2,i),i=l,2,...,n. The dummy
value (lD70,ODO) is returned for each infinite root (corresponding
to a zero leading coefficient). For the IBM version R may be a
COMPLEX*16 array of length n.
E is a REAL array of dimension at least (n+l) which must be set by
the user to error bounds on the coefficients, or to zero if these
are accurate to machine precision. On exit the first n locations
contain approximate bounds on the moduli of the errors in the roots.
W is a DOUBLE PRECISION (REAL for the single-length version) work
array of length LW.
S (double-length standard version only) is a REAL work array of
dimensions (2,LW), which may be equivalenced with W.
-25-
-12-
NPI (standard versions only) is an INTEGER which must be set to n+l.
LW (standard versions only) is an INTEGER which must be set to
3n/2+2 (or 3n+2 for the single-length version).
3. Alternative Entry
The error analysis part of a call to PAO7AD takes typically about 20%
of its time. If speed is important and error bounds are not wanted then
a call of the form
CALL PAO7BD(A,N,R,W,NPI) (standard versions)CALL PAO7BD(A,N,RW) (IBM version)
should be made. The arguments are the same as those of the main call,
but W need have length only n+l.
4. Method
The roots are found by the algorithm of Madsen (BIT(1973) 13,71-75),
the principal features of which are Newton iteration followed by
deflation. The error bounds are found by the application of Rouche's
theorem as recommended by Wilkinson (J.Inst.Maths Applics.(1971) 8,
16-35) except that discs are always taken with centres on the approximate
roots and errors in multiplying out the polynomial fl(x-R(I)) are ignored.
The disc for each root is such that it contains exactly the same number
of approximate roots R(I) as exact roots of the true polynomial. Note
that in the case of true multiple roots the corresponding approximate
roots may be quite well separated but each will lie in the disc of all
the others and their mean will be a good estimate of the true multiple
root.
-26-
e
Ul L
00 z
00 NCr 0
00 PZ"
CL .. 11u
.U 4 +++0
+ 00 - z-k
2. M wN 000 w34cc
3~ ~ 0 + ) *0*--J - at .e I- 00 cc3
; S. gsS Z;;: a WU-4 'O' 00 w 4. co WWA0C) a. 1-4 + a i_ _
CL .r- 04. W- r 4 -C S. -CV
-U ) .Z.dN U4 c V) -
z3Z cJ waw a. 10 S.0z ::: :" "N &Z 4- 0 NC' h co co Lj
DA WW 3 - -U ulu 1 U&0.1 4 0> u0. S. C~ *.4 S. LiS.N 0 1
W a a _j a.- M ~ _i)U .---_Z- j z+1
wZZw. w ZC 4 u 0000 L91 f lu-J -- ~*r " Zz "- - S.3cj
6J a*Q 44 UQL)
UL) .. J -334u o 0 L)~~d
0) 4Su +4% OOOW 1-+4 v N
COON ~ . -27-
0
P-4
0 w
-4 -4
U.z
uj - r-ý4 rý 4 4c r -4 4-
cc -4
Wý ,.C W 4
ce
a- LL U I ful III w fl 44
4: 4
0 00~~--#- ~&- 0~ A ~ ije -ai 0I C
-28
LAU.
4A Lu
N ~ ~ ~ c X~~I - ) 'Ill .J~I 4 N
-~~~ -.1lC I4
7' "1 % j A 0 .-4 ce
I- k2 KLA ". -. 1O l'
CN N Z 41 _jL _.jWW L '- -l
NZ N. -.A) LI. I w) x'-~
U.~~~ aL CL.ab 'o 1 SO q^ ** 7 1,- ZC LUI I J.) V)
W Nl u CL m -
3 ~ P -C . r_, &n IU II a v.4
-- ~ ~ ' + -41J (LNWuaJ .
443 3rtjI -- II( * * U.E
F- :1.C z. C I4U ~ j S
a 241 CC-'1L Z NWZ I.-0L0
~~'u~'A I.- tu i'uZwO 04 0 4A Le
4.4 V-- 4) 4.11 Lu. W0 WLL- . It
~LJN NJ> > 0 - a'. Z
44 * 3 ) 4 .w I.'- a j 0 zC3 41. .. '.iCu w 01- 04 0 CIL L. 0 U- L) 70 j( Z 4 C,>+ 5 4 -... r- - -. 4
a -. F-a -1-4OL LI- :)- -~ . Z Z JU -j-i -. 1i ILLp-00.N .00-0 .IZ 0)U-O 4 =C-K . !I C I UJ) > AJ L)
U.U. 0U 0 U.1 a W.NDI .iU-U. * 1-'DIL s xZ
T O - Us *C u. l.-e
-J .LJ K =C 'Z> Z >- 'oJEJ~
a o rJO.0C 0 1.-~~ C E J 4y 1-Z4 N.
0. .N 0 L N, L.m. "1- V I.) ") I. DI -. 5
M0~ M N q -K DLI NU-OO ZNN -C~iI- -1 0 C c V) &fZ _D'O O -o'- ),o ) , ce-1. 0~ U) =? *"l Z. %.wi,") 4t
0 0 V-* T~ V) -- Cu "r'...J4 0.J "% .W E 4D ) 1 ^ -1 -
-a 0V -K4 I.- I- - *Z W4.UI .-. Z r- r-I > f) 4 0 -1
M CL U. a o-Nt4 M-Mm Z I., IU.-0I St" LA 41 d.. 0. ..
3EU*L -i ' <U l- C. 1 J *U.; E 1- SeA:OL Z- 0. uo x .111
z z INAcc -0 . !4. xI Cic-- LL. V)uy --1I- 0A. -a ý44 N
--r0 4 4CU. 61. LL. E -1 .0 LO 4 L. 114 N IfI tI i
OON w L Ls 113 aUl Z U. j LL -'u LL '. < 4 0 - -j itON ..JII 0
t% -.1 ~ l ýWJjO ýrNm " L C 71ir - Ln V -JjZ LL L 't .10 C+ -
ir W < L. ti" xu o : ('1U =) C I--I-'- A . 0 7 C Inj 00)-.
-n -i - -C w4 or) U.;N t^*IIf-4'-.
0ý~~~ ~ ~ ~ 0. a Cr -A u- ,zP z I .0( n 4 we
-0 _j401 . -JL +'EL2 - 1-
4. -. s/C it:~- J ~ " LI
-jN - -D
-29-
00a
000
00 a ccoatCoL (0 1.- uj + I.- 0 rj 0 D * *0 =
00 0 so ** ; iA .
:--oa .9
le ~ ~ 0 N --cc cc --416 LI -- w9 -0aw01244 -- --+ZZ 0" t-x-Ili-- 0. 0- tu - a
44N 0N 0 00 z 4-'
000 0 DNI -lUU-* £
(7.J* ,0S4. ev 4A.t =04 0 W 4 p- go * . 0N rq fn fn u. m m m *%. m in-"44
- ~ -- .-49~fl I 0 -4 U S~. ~ - *..
- 04 .- * 0 W '--0 S -O~4 E~4 44 N0o4
UU
LLJ 6. I
L) IN ý- z0 U)
tz -OxW u
CS CL Lu I- U
C3 u- 0 64
-ý LL . >U U uli
dK I.- I.- ui Lu Zui14 u CA V) C
4 -I Lu 0 o>u'J tn A 1 J I.- .
1*11 4z V).-
_j- 0 LL.* Z - 0CC
V) . 4> 4A u00I0. U - . t Py- f- P4) w )0U ri: 11 1 - .J D 0 goc
-C *L ^ -4 wJ~ I. F 4 i :
N OU. Lu ).- LA + 'Al
* .J.- U cc I- -Z = I-- cc -IN WUr.J 6. I.- . -. -C 4u
1. 0~ z I- X -wN 0' -j 0+ ) I.-. Id Z CL b-- Z -Or-LL 11
g0 -OU WI 141 u N 4 ' -4 -. J *ULf 24- nV 1 j-
C* D UNCI I-W -CC c - z z - LL. -44 -0-X%0 2 -
cc'~ V) N4 w 0 *O.' I '4+z~ re 4g - 1- 0 D Z*- T It"4 '-' -i I-i N 4L I- 44 04
It 1-; *0 IS -j x 2.I-.-ccz 640 r1 X~ 0 4~. +4 *-* .
4-1- -ILI~ LA to toJ W 4c o11 t)V)C
LL- U. 6- LZO)-i I-t LLLiI D- -w 'N')U
*..J N2 L* Lu CID ~ r_ N N 04 *
o~ nz -C a, o-~JN. Nr' mJ )e W ~ -4 %n 'o t- cc 0. 0 m-NNO* N
4AI in VlW-4& in0 O. O .- 0.. f In44 LttA No 0 0 -4 - p
N42 ...wZ~X I-... ~ U u.~--.-31-~- ~ 0 iS*--'4
C%%
LI-
LAN -LL
I, Dj- 2yfy
I-. -.(3~00 C-1
41-
L* . .u.
+,. + 4I II J.) -N- aj jj- j P c47 0C
*J Z* - . , L0N4 F- CC -4 N P4J P's I.- t' 0
em 0 CL.% P 1.P- z Muf *-t 00 0 fiti 1 ol
ItjN -C C -.. - IJ.- d - - 4 1- FIZ ý t)eI 4ý4. 0*j - 00 N 111 L 14NP- P N1-0 0 a0 - LLLL - ItI.J . 11-
0 T* f-4 N~~ U-N 0- 0 P4 Nj LL - - C 7' L L 0-4 It U
OD c?,~ 0l 0 4V 4 9- o+ 00..0..,.w 0 oINr- co n 0 ww w0%.f a .4N O.NlJ I' af)0jý a Q4 44CO 00-
* 0 .'4. 4* * * * 0- - in-~ , -.- ~' 4.. - --32-(D
II
tS
INN
0' 0 p-i
60 N- +0 4- ,
-) ý- 0014 C. -- 0 0 1-0C'Il 00 0 +* ++ I + + 0 0-f'J tJ
'N4 2j (
-e 1.- N N' -4 .n e(
;co F-4- - 0 w U P r. #0 I t * 660 0 0a D AV) .1 1 0 Ae4lV)-. -. j 01
0 UU11N 'IL )I' 4 O Z N z* 0 0, 0I N QmM
-. ON JU *D 7C- -. 6 it
O11 -M) L3L1 Z . 00++ 'V0 1 zz U. ...
T O0In- 1 -at . 0,IA L .IIr U. -t' cc &+ I III I*)0 . e r I. LL -a 0 -
"II -1 - -1 4u 14I NI-0 N - I N1 14 r, mi M m m0U.. * (I' I
-33-
z
U.
C4Z
z +
.4
w -
LU N N
-. UJ0~.K 0 1 1
-i IL "1 00NJN II C
'-4 0 4
40 Jt- 0 1.C c IIIOU -C **0 4 4' c
M 0 I-4J .0 fl a-,
w0 0tA 4 f- w 0'It IA. 4^4 Min M* o za. 44 -6 -4 4N -4 - -
-34
N 0 - 0 co m fn 0
IN 4010, 01 04 (q O4
.- 4.I co1 A o U. cm D 04 mI m a, 01- - - - -
.In~t. -n in ryO A4f Nn 10-0., NLA ruwt- inO nN 4W
.7O A 4 cq O N O 4 4 0 CI . a r n ztI .it w O0
-0-
w CO 0 0 r- 0, nO 0 0I 4 L 't C> .-.- g w , e 1m 0.'in4, -Ir N 0 00 W 4 In N~I r-in 'Dt
LU~ mn mNMM0f- w - 4 m ýwmI -- m Nw4-4- M
w
UA
4j '-4 4 10r , 4K nL WM Mn M1 l '0. U. Nr o f" i N
Lu z UI. z LI.Vi) > >I. >' > > > > UL> > »> >>> >»>
wU o a'0 -.a cc - 0 Ocjuewooc 0 0 cM-C wj M l i ow wir msi WW U LW ULJ IbUi LLWL
cr 7
ei 0 0 LnU) V- Z n
ee ar .' 4j JJ-j 4 4- N.P L'PJ r a-CX .4 U. j r 1 F14 0 cv
0. < - -C 90 do 44 cc 03 00 ULLJ L LU. UU. LLU u.U.U. t L
THIS
PAGEIS
MISSING
IN
ORIGINAL
DOCUMENT
0 ... . .. . .. . . . . . 0 0~i 0'l, l 0I.. ,,, I 0,I ,,,, .. . f .. . . . 0, .. . .. . . . . . .
-23-
LA. z Z 0
ilu W) 6"P ~. X 0 L
UL U. cm
o o W4 -9 -j ztW I. A) ..) uZ j
I-I.- x~ 04 WW #- wu LL.
ID X I.-
-j 0 -j U: 0 2
a 00 V) -.W: 1. 0~ W- 0 '-0 4j
I- CD ..J I-~ 3 0 . : - - l O4f 0 c o 4.
S U i .1 - 2 1 L IW -.1 -0 * I -'0 4A Z4 0 x-
U UN Ix.J +.+J 0
(+Q+OU ZC In az 0ý 3WWNX Z; XU 0 +4N
x I- .- z- 2I.- t- -C 3K- M -J
WLU U. U. I rU ~0.C 11 - n
IL .UJ z 9 0<-j U U..L L 0 *0 .40 ) 1 + 0
4Z0 % - ý.lI- f>I. - 4 0c.4 0 -l-. >- M X 4 N c
w o ex ~ . - e 4 C U. -. 1 U.z ty U0.4Z0 < 04 .- 4 4 V) 3C 0 3 c
Cc V)U. >W iU. u* U. ** > 3
t~.~4* W4 .JU WOerr .q a 0Z -- .- I. Z- Z~0.UL~a~U04W> *0 * W * :* 2 * - --- 2 . ""-.-.-Z > -a G1.42 4 ..m0 ...id . LO l- 4 if *f C4 UL) If .it (va-
2) 0~ o0. V18Z~ %.... cjA OK41I -NI ~l - '
-j 00 =03 A x it+1 0f8 --d*-.fcf.)-I+ . '-1
D:U-10..jmo.,Iw 00 i-14-939 iZ ft W".4 z *2 -l *4 0 - iNz-. .(0) - 4 M W4 aI--8.- Hi --.5.N ýfie'1ý4 N 4.-41'N 0 ll - -- 4c~j
4)~ O4Kj u -It-Inh--..4Cc....8-C -4 I- 0
U- U- 0 ZI-o a-40 0 "-)2X 30 U- 0 "1-4 0 U1-- 03 U...
00 UUUUQUu)QUtj 0 uLJLJ C.i. 0
-38-
0L
z uz1'o 0
I. L'U
x0 L
UA 0 z
4A z cc-C 00.
b.4 11
U. 'LA
+U M
14 V) '
f4 1- -
-j 0I-A N -j I-
3E. '0 0 z V) ! .101"
t- Z- - -- Z -. 1 z NP4Z ZL 0= -I-- )-l / a- 0 ZZU -'
- :) It U.' -4 ft N ) 011 u a d *-_I.cc If O 0 u It - ri ' - - 4N )I 0- * Owl 0
Z ft~ us e I'- cc + e XIE 0 oW:d0 C 1 If L)L) 1'- *.. U O- j- b4c
0 - zz (I I..I 1 1- 1 .it 11 - t-04 -f IfI *A.I'fI 0 u f0 cc t 0 -M.. 0- CC V -4 It -. - 0 A( i "Z 4I= If -- vd'Z 11L. P-t 1 Z 0-10
wwo. O 1$ 00- - 11 nI -0 -I - W i < i X i - 04- If Ii U0a- . 0t LL I. LL it i a-.6L0 F- P4 u-.4t~ b-. 0-N P)C F4 n O.- mP4 N w tArI4 02
- 0U-. I.-(% n ip
ON U .L) U MuuI o-
0n u- 0 0ý coLN4 -M C l oP 4 r n4 -mcl
-39-
CL
oc
o 0
I.--
o 0 39*-c 0 j1-- 1
00 *-a00 ccn U)wj CLx- U *.S
-t t -0 a 0 LW0I ,0
- 4yo3+ a1 ý 0 -
o if ni ti c IfOg Ln - . oI-9 ," ' ;a-L a-L4 -1 0. 0. . fwNLU -U 10X0i LL tC0i ) - 1% L
U) -I- U
02V0 0- ~~LL --r.Z. 0. VIC 0 0
30' o- * - Il-0 P
fn-0n.9-. .. o-oi) rn ~ 04 2 isl o:2 0j -- OZ -r C'oý n51 I
-o 10.C P, U ... I`- r- r-r -r -c Dt o c oa Da , - 0,o -o f
w v 0I- .) * D .C 0 .* * ll I~ U- 0 . ~ 0 0405
10 Go 4 mI Ncfou doj -m N C14
0. 0- o Inco Ul1
-A
N N r- t o. &( -D .t C,4 cc 0ifnlo. .-. f- -4 r -0 (N' " O -
LL,
-4 t c0.. ,t m LdN A N, I InO h I .- -L I'm-to
cc r- -4 (n mO 0~~ I" o D mIl I 4 0 N " e Iln en '- 0 ' .
2. LU M4' A .* tv N r N in ~ 4' Ol kA% lmmN. l v A -4 L 41 Ill, 'fl4
is .-.-
vs4 V)< d L n 4U V) fl V)i V) (4 V)4u n 4In 4n V)
'0
0. .1
LU. LL U- Z .L L U.
I-0. LA.J II i Lii LL) Ill tf, lot tu
4e TW4WI
0 =1 U.1 4AD v0 $-- In (O -W0 4 x-4- 4') cr 0. C^. LL(D (Ln- L
re 4Y 29 w I- II .- 4 7cc &- aOWW .U. 1-q 1.1- LL -0
m me- in' - -,
tOm 10 gMo4 r. 4
'0 ~ ~ ' 4m ODsu~v I-~0
N-~o ODg U - -4 0%l
0 0 D*OD N N~ %t U w '0
co .4 i'n M - OD0%0 %0 -*4 OD Nco c
N Ih t'.j I- N 4 OD C4 rO 0' C), 0 N 0 NV M*( N LIN ,o in %0 Ln r' 4 0 W% W 't 0' 't 0 t-in CDU CI 11 nr-%D.0.oMti 41i Ni4-4p-woa'a'NNcqm01 oo 1% I - OD I-
4 Wep. 0 .t (n Ln Mf D0 &A~ 0 N -4 4'4 M t-) -40' 0N"N 0 .* -OW ~t Ij 0, 0, N UN r
V)V L)V V)~'''4f VA~) V) V WiV)4 V
a- 0 a ~ t1~"
- 000 0 CL0000CL_ i(Y - 0 0 0 #-4N M 0 0 0 n04c
-42-
II
U.
)- uJ
of Or 4 P4P4 *
4 ..
P-4 *L I- Ur)n
04
LA 0. IP -n ) 1 ~ t
U. *L - 4 - . ."Z C -( _jLUN
N - U.N 4-.
.44 - Z CL t- +Oc
0 N W .. *iWLL1,1.- .J " U &) n NV n LA 4 0 V)tA x..
w. .- Z~- w .- 0Az1 CA U . z LU .. Ifc
N-.1-.1 ZK )4Z IZ4~ rox - a
-uz 0 ~L
No-J UN 4.~- r. 0 0 Nm
-6-0 I-4 -4 "4-
O4 Z .J U 0 W- 6, Z LI -4
244 44)U-43-
-jW14
.4I
xi 1.0 Ii C
U. -i cow.
,04 L -4 -C-
-+ -N4*U *(*Q WWI LOr4m
or zLU <0 <P - U.--
=- r -.t -4 ItI t 4zu
LA~I 4/L/ IV .J> >>
4o in 4L) 0 NJ 0 D
-4-
+
+ +
2 U)
C'&. 31 3 3
t Zý I-I.- NN.ZO
A LII 0 a *
-~ ~ ~ u z z~ ~ ~ ~ '
2~ ~ In cn U. aa .- n0
M- X3I 00 +4+1az3 zj Lu] '2 uj oa L
- z 0 -- = LW~~j.IWC m 0. elEZZ
-1 00 4 4 Z a
ZZZN'-O.- 2.- 0 00 0-
(A4 3aa U.,U +0 W +
Z z0 a- c 0. m I- t a * n
Co3Z CC a auU j O ac:
~ODO 11 Pý.'. cc44 1ID
U]WIMC-W-4 mA Aj x w - =4 Z:x (flzPZ =) D U) 0 U, .4.4.4At 11ItwU.N za fta V) U
~ Inn . .0 II
14 u~w in co l4lL U. NI IL LO -1 0 Z
tA ILU LU W 4 VfU).4 0 %A InlV) ujZ .9 Q
0 0 ;Nq I30-- X 0 " ~ Z : 4w "
N I4J U. Ua . - 4 J L4 U I -9-
F- LU 1. 0 0.j' C0 Im LL I 1-0Ui I.- CL IZ fq 0 V)~
IL 4 *.J.i x Uj $(A3E~u .I P -6 - ~ U. L. SIL.
In _j CU U IL-.WW4J3E .4 Z . 4 0w X .1-- 0 wI- 0 .
U. ~ _ .J-0- 0 a 39 of 00 t u"t 0. -I- v40U 4* 4 4 Wc WO In
-r N zK !O4-4- U. . ZnNw Z"W
30 - U. 4 4.J 'u - -. JA 0 Il
- N C C '.10 Uj P4 (A.0o
I~~~ 6-4 MZ~ :X - 9 UJ -(16 L LL - ..
ey -. J 0 - * 00 - .4 4 w u* 4 S zfN z E n *N W+ 0. ; 04w CA f0Wo
N~~L -i 1 *2. Kj I.-- Un *e~0~ ~ ~ C2ON0zz aL N . ~ .% 0 0cI >L
*ý I 0 W'J -2.4 -) 0 )u 4 " 0 -'4 LLW. 0 AU zu r a U'. D.4 X : 0-4~in~
-N - NU X .J44 lu " 0. 0: z UJ4Zc, ox-4 ( -N 00 deL V) 0 46A .j -4 0 o L L 4 -0 -w j 0
3e : N _- 4U -4x0 0 xU 0. >-I Z~ IWLI -9~ U)aP4 Nsaýccc0, _j0 >0 K4 0 0 I-9I- -C X z 10 0u 4 0 x NALIu ' - 4 4 LL t00.- 0L>z0 XI
4ft 6-~4 a .W - L L9 I- . I- 0. ". U. 0 us 0 1.. -:) 0Co N-A fa C fti ZI .0Z 4 ~ o (A O. OIXZ 4j
r- I-- - Jf X4 0> C) z 51 0 Nu j .- 000 1 D fl I-ILli I'dV-4. u )I0 00 N - 0.- 91-- ATX& J2 .- 4 - .U. " 0. 1-0I- CA40>P r -L .
C t0 44 "a 1.- 1,K 1U.- .- 04 Z t - Ln ft .J P" % Z 2UAX > V)4U. --tN- e0 Z D-L.LA"a i e 0Wf~n Z U. U. 1~-4 0 C -I. 4 -cc0 ' )1-4 i ZU 4 0 0 Z)P -j 00 oiAL.j4W&I- 4Z U .
44N"De DNOf I-01- CCLLJ 0c 0c anO 4ý CV- ,KZ4-aE ) -9 .
00- -b@ M 4i onCO L 0..f OU NN . 0.0 w- 1- NI U) 11i- 1,0 NZ 0f w L U - & -O * 2- -24 .0C £l u%~ .J 2
4 4Q 13 U.; Z % -i -i I.- *Z LL C7f w I CL NZ CL-aI# *K 0"> U) 0 -0.0. - -A4 ccN~ ý- 2UUJ.UO *N .a b4C-4jQIl- *O W0U 4i -i 0.4ý 11 -
CCCC-0wOD - IL N....J -4MU 'LU f W -C *~ -4. Z..LL 40 Ec - 4I.-
doCD.40. 0.> :)2N 39' 4 X 33UX 4IL0.00 0 N-L D l- .- Z~ A, ~ w r3 aT !L1:) 1-L0' .Oi. TL cc ~ de *&.aco 4 % .4.J@ 44J t4 " .4s
~~-W- ZUP4.UI- UO 0W. -i w ý4 ON (3 " C b4 t-ý
~~- It XO-.-iI-. *V. '') 0 U 4.. . 40 co 07 i
.4N N- Nf In.~ In4In- O
.4~. N4 .Or
-47-
00
IN l
0 C
zoov C t1
1-o ? 0 Il4 *.
-- a z11- V) - .00- t* *i 0- -o 0 ' 1- -4 0' ~
00 0~ N =) =) e 4, @0 *0 0 ZL C 011 -1 1-j "i .- I -1 - 0 L .U. *0' I- -4 0 ;
t ý4 t 1 0 0 .. - - .4 UU1 (4 -1 + ~ - l 4 0 * ~ . .J4 =. I, P.-4LL- I -Z2 1-0LA r f4 - -L )-* i 0e -l -.1 LL., *-
044 - -0 - -Ii .IL Z- - Us0j = ~ Z-* 27 * 4. a'.aCOt- co co 41C . CII off -ý 0L O - 0 OZ -O- -C .41 If 1 -cIMI fZ
, 04401*--o z. . u 9 s-4 *~r cc a 0 4c *-)ou- AI f- o.- fn- - I zZ -OLL x. 11m4.r4 m -I- aL.- < e < I-. -- .e W
0- --- .002 I-I 1-. It " 0- Z (A I AD ýe...7z-It W C-COOI1 LL -L 4 -. 4 m 0 it1 &j LLC) 1itit rl1 ~ - U.CL)0 0 0
"4" 44D4 Z"O-.eZ Pl~U 14%4 J.--4 U.
0 0 400
0 ' Nt~u uJ. Q J U
ý4 -4 -1 P4 N N N NN N (IN N i~ cli m1- (I'll 'r m
-48-
V) Z kuILI
10 LU U -a Ol- I- (5
A.. I.-- 4A
4 Ui LUB-
I-.Z 0 '.
LU N cc- Z 4"
U. Z .U
at Z~ UAI-. .~ lA; of
4A CLNO I.- IL .
4 iI-- Lut 2 W4AL u1' 1.- '-. LL-uK1 4L C4 -.
t-* .. LI 1.- 0 LU N* au. > CA Lu I-ofIL
LUJ 4. A b V)- Vu.-L Z
4N~~u Ii j) -I. j )P4 >~ I.-
.. 0 U.2 Z I- CC P. 0
w#AN P4 1-
4~ : -CL W . I - -0~,u W- - 4 - Z - -
ofL f~is B- 0 :: 0 -0N0 Z 1- N.4O *- O N-
Li > U.1 Z- OD x -4 "4 ~ - * 0IB- .- u ~ 4 cc of ~ pJ* Y l--
'- l '- c LU 4'AL 0 K* uiC4'B 4"- x V) 0-0 - + u. l-Z- u.- .- 440
1- 0Z l'- = 3 Lu C -j ~ PS 2 obN 0 N-( 0020- CL " IC- 0- 1.1.i to P4 N..4 5+4
4 0 U) LJ N 4K '~. P- N- ZL. w u.- w w .0I- . l'- cc .3 U- uU. - If'
0r Z "* ZU 2 Z-- OD- - * *'B.0N-.W I- I-Ol-u - - - ~ O - Z -- N - NO L u. 0
Zee.(~b 0 1- 1- N 44 -4- B 0 W* ; 4Lu *41-4Z~4 41. sa- -- =I 4 O I.-W- O -A. OB J U. 0 U.0 0.
N i .. JN.1 NP4i F14 YbA(A leb - W-. - - ai O *N00* =Lu0w %40O u--LWU-- % - 4K W'g M bU .AA 0 * 2--0OZ a 0 Kr-'l QUx - *N-4CL. of. " a LA F-.i
ILI IL040.1 B-XO L i-. 0 ~ 4 Ii ~ - ~ J 0 4 4 B..--044~c onB-LUCD Yb- 1,- aSB< -- F- - - -4 LNN- --O.9 * 4.AO 1 aJK 4
-. 1. I - A - of 0oo II 0.a u.9 Z ILA N -" NNB- 0 a . HOIL N4 0 -. aof aS u,-1
w b NA O~ D~ I- au u, W) A Of-ba--- M " I W v .- 0(A-
X CO 0N u. j cc
Ur.UU UU w cl 00 .-1 INU 4,w 0f I n0C i
'1 t4Ii% ~IU%LAMIAU'iLnA.0,0.0.0$ -a00 10 .0.a.0 1- r--
6 -49-
LA VA I
L4
U.
I~l 0
4( 4A )w4
C I.- 0 3 03I-
"0W nW l . x:ijV L LC C V N
OD 4 NNNN 0 -m
- W I.- 1--
%, U 2 z zz tf4 4 ('7- * %
N-I It4 N - 0 0-i ', Za
-- ;- ; ,; Z4Z;rr NLAJW CO CO 0 -0P14A S Uw zm 9-C' (D * "- -1 tA N +0
0ac 00UI0lb ~ *.
pc4 oZZZ400 z w P- .m IL of P. U. z.4~
.CN.-NJ.4N ** aaO0 Laa.LL -it U. Z. a 0~d L*0 4-I
X- P-4~ N LLa 0 -N ILI X * U_ LL%4 Z0.U
M f w I II 0 >N f 4 0I 1- COD I~ln~ 0 - OD 010 fnO0 i 0 1-- Caa w OD CD OD~ Nil (D OD 44 WI co 0 CPo *(P.D lo 1 10 U 0 - II 0 400
W4 N 4 W
N -500
UL
2
0
z
0
c- -O IL o
N N N
0 II :S 1--4N. 00 z 0 0
0 00 N q<: ; :0W: 0o - 0 + +$-
0~ If~ a ---
0.-O 1.1. LL belel' 0 JUN IN- V4 ILA 0* 1- 1- 1-- -- 1Iitoi- c 00->_j4 NN f. "- 'J 0 - - 0 if 4 j- t I-V)
to a fN-1. C- Z 0" -C -C 00 A - 9 J
*0 itZ 0 n4e-O 04"0 a 0
-4- 0 4 L ON I- If-."0 Oi M- 0- 11ItN-.U f 0 WL- piw1 L N i* -. i X+ ( -- W- 02.-0 4 L It
N~~o 42 0*-N 00J WO - L -~uA-h0 0 UN 'tN- .L) NNIn * In co4 ~00-W.
R-4N CN0N O 411- -~ INN *0J 10' 00l-
4 -4 OA-N-- cm Wum. INSL -. N0 ev .21A- 00, i nrt t
Cr1C
N0
CID
aja:
0-U
er 06L
L U. 0. +o - 0
4 nt-0.
2.e * -,. 7: l e L L L L - .- o r a .c o
.Nc - +w o eA
00lo Lnn 4A7 n 1
P-u - O 11* -I.t - IC
0 L LUL
coE * 4 cmI*j I I - 0- 4 In1 -wC 0 -4't.L I. In in W% 6-1 0n % nI ,U 0z0'o. oý D r -
.- 4 ýw - 4 w P - 1- qý -4 -4 r'ý ý4 .- -4 0
c 0-
r--- u.C
- I t -r--
t In 0 (,, r- N a m ItIf, In Cm a) rý r- W\4 () %t 40 '~~t 0,C) g t 0( .
.4 14 U . - .J .4
S-l Iu*' 1- 0 tt-Nu( ~ '
N %0 P- 0 .4 o N C ,• -D c. - t- Y P .
tft4t C 0IWN -6 m NI 4 a, 1 tr QMOD - C 0 0 4 J1 0.i #A 010--4 .4. .4.4 . 4 .4 .4
.K 14 In0 iA,.1't4 'A I'- ;om - r- -4
1-.'- 1,4 .,'jaMCo oit N 10 4 W~w1 NLU my, 104 C" In.NCJa 0f JC -- 4 . .10N0 t4 -4 Inu
C 0:ey U. In0U -D In( '5 C-1 4- -1 U 0I
U.1 -. .4 .4 .4 4.
=> 0 4f , t 4 V) V) W 9 l L/) 4n V)/ 4A Vfl V)U~f tf41C0 t) IAt~n in~ 0 n V fl VI V V) In t~L uI~n 0 U V) VtA L
0 a
WA Z U. U. Z i.
-53
U.. a ... . of n w a•11 0ll lo v w..C ,oo.wo c!.I Up Us. U) t..u U.) Us W W W UI 1 Wt W Lu tUJ Us u. I 11J
U.1
w cc
M Ui 1 (3 C ua tV NZ z 4z0 C) 7 00C VtL 0 c > " y-s "I 0 -4c- &f 4c u-Ii 4J! 4 vc" C 7 P N .- r4 a. -4 0 U j T 3 P.O
0 24 49 .44 W0D00 000 0 0 WUs U. LL U.U.U.U.LL LL.U. U.
-53.-
UtM1 '0 C 0 in W .0 (P.4
d . .4 _ -I
.4~ Q..t "~- r4~0'5 toi 000 I S~1UN 0 ri 10 4 10 - r'* I' N 0 '0 c
-~ -. 6.4 - 4 4
00 0I''0 M. 000' Go C% In Int In It 0 0 CKco00 ul-10'IIt. fw U% OIMV I 4 0 .4 %0OIN1m .0O In If% 0 .0I
..4 -1 .44 .4 -64 .4
to o 0,ýO f C4 % 0,f 'o r- ' Mn -400 DW.tý O* ~I(n( 0' f Olr-'0.0 intbI UCm 0'In O f-- .C'Oq. '0 O'It*1.4, t5 0
- 4.4.4 -0 -. .4
OD ýr- P)I 4ý 00w0N D OD U% n Nv IJt- 9M rn O O''0 en0ON! m~1C. In N e(4 in P44IL .UM C-4O0 M '0 100 ý-.4 -0~ P- 4 r'-.o u '0r InU% I"m 'ot
.4~~~ý .4.. 44 .. 44 .4
-ýr na r 40O .4 0-4 614 1- m C . .44 N .0 4 . -N , N(..4 In .4 .4N
on 10 It -4 IN It- W ý4 4 It 1-0 N0 4 L r% 6%P 0 In i f , N4 I n~ 0' s 'EIt .0' IN 10 0' W UN. I" m w *
(' ~ ~ I .0 .4 NJ -'0 4 .t In- U\ .N ' t Ni.N 4 ..4 4 ý4 .4 .4 .4 . 4
.44. .4io P
>»>> » > » LV > >U f> > >»> > >w >> >> >» >
a 0W ." "" 1-1 0 oone0 Of0J& c re* orc 0LiU) W. L U. ILI ILI U. ul Wi III W. Wj U)
0 lu -j -j aW
oo 0 0 .4 0 z .4
-54-
tN co
r4 't cc
ýi-4 .4 -
-4 0% r- efl 61%N Mf 4 0 N
,4 #.4 .4
o co 0. N oW
~4-a-a -
o4sIA~ c4 r-1 int- -4pr ucm *in0o
-4- -4 -4- -4 -- 4- ý4 -4 -
o-4N
000000 0000cumf'-Omr0O 00
.4 . -4 -4 4 C-NtlN N N C4N N N JN M MM t N I
-55-
4.1) 0 -
U. Z 0 ~o * w - a -I. - Ow0x L I.- e
IX . LL %A- 14.4 LI. L. l' L-1 Wl
ft w Lu Ix) W w.i I.-80 0 W4) -o .jZ1W Wi Li I.... V)9Z
4 W W I LI)8
a. CL a -0 32w C. 0.C C Z-- .0
x In T~ w n-x 0 -iC.. 4
Ono tI Li31 t- 000 1-- 0 A UC
).- - -V 10 UJ ILI x.0 040ý u j 0 -1I
U4L M. WMU wJ W .1
U:.W0. w . U. + + Z -.-> V)- -Z Z leiý-4 ceZ Z U IX- .23 L3() w.n .- 1I3x I. C) -OD x
Z0 L Z- - - ( fL Ji 0 ix o 4.4 u LZ E -j 4 W0 f j LA ('4
.. j~ ~ (D -- > -LL LL " -
Z 4- CL orLL LA- 0 00 0 Q) N - i-nI.--o - z Li 0 00 * in) bi440 0- I- x -n -
4.-".it 5. fro III, xI o)3-i 4C 00 - --34-3)4 - 4 - .- I-z 0 2 z 0
<~Z .4 4 m < cz.-~ w w %%. III M 3i s-
9iZ ZA-rec3lX cc )-ce w L. -. 1 LA 4- .)--Noz~u.w04wO< O4z 0 %, 0 0 or 0 w
0 0 - "-4 42 P-""- I ujw Si C. & I+ 04 O VU) . -.1 >-WLjLL III u a U Z > - IN&Lw .'- ou4WLLJ.J wu~ C, M -4 - LII Z 0- ,1* J0'~- L~i- 04 > aX * uW * -4 + +4 +WU -W 4 T 4 mCL T4C m - W. *A - Z - - -4 -,-) -2)-O.QeO.a.0C. ov)1-X ) co U) " -I P. tb" 4z cKz us z iA r Ne 4.0') C 3 2: T I- z 6-4 co " "' ) ; %';,
I-I- Vca OLOIx CL 0.3L n 301 m 10 9.. " S-i .n) .-4 . . n If01 crto3 4w Wjc9.jwwo0.g-0C,-ww b-." .-4. 0 C 4 1 I .'J it .-- - aZ
a f ..j o000wI303U 7 11 + Iii 11 e.in..wui..-j~.2m.3w 00 LU4044 $.-Z )' N Z X- -6+ I. ýc + * + I-cc I n- 43d4&< 1ý~-I.- * uil *.j 0 .40linr "-)- 1a to- ~ ' '= 0WUJ0 vi AtJ <4W 0 . .9 V4 ) e u4. -9- CL 0 -fl " LL. I0 11 u.~I 0 11 L.-O
U)Z~0 T X I) CCImna-1111VLU)UZ b 4 I L ~ ~ 3
31 0 LL 0 I-0U1 Q.'
.4.4. -4 -14 (IN N N 4JIi ('.N
-56-
9w
L'L
_j Ui
Us L)UiU.
- C0-
x D
Jý4 V4 LO C
24c
wi 0
4. U,
W) L~4 _j -Ws- IC'. in
z 0ICZ c r Zc
U. ar .- OD I-o -
If ce V-4.4- 4 04 N1v -oo " 1 ,ooItI e - ý jP
C)t ,w ti 11 0-- N, U.rz JC . tc N r-i U.l CIt- cItLIn U.. IL -. x- 2 .
0U 7.1.- 0
U-C U. z-4a )0 .C 0 X CL)1.. .JC
I- 2y It~ 00 14 u M - U "L) Q U..J uN f" m en 0
CD fb 0 -- 4 %1 _a vrC '0Z 0, -. --- r-- 0r CCYC nI n M qI n( n -22 442 M.- U W% i.- t a',I d p1%
- LU -'- DI-t$. U 1 I-~ - I-57-
z
Q
0-.1
4 4e
oc
U, 0.
0c o 03 c o o
0 D x 0 1. -0-0
0- 0 aI-~C 0 .z
0 - 0 0L CA 4.ZitD 0I~V 0- w- COU ~
-C4 -2 0 a :.Cc 1- .9O f- 4 *I- V) Ix *_ 0 0 z-.2
-- "- .9 a O-'- 4c- (% I
Z -Zu. 4A~. 0 - 00 04 1.- *. in C)t0a- Z *- C, u * 0,-i" *"*O. + ul s- -1 us
Uj --.- 4O.. a- 0 0-~ 4 .ij0D~9(- ; vii; 0- .i OILwu @8) 0 000 + 0A-' 0~ ~ * rn I
o t I*S C1 c-q I' I-a ýe z oo 4 Cc 4 lu.4 J _j ernp-c 00 co co+4 X Z- -..4c - * U-F.-.0 O. r OR6O+ 0 W - CW)o4 * e C . .0 00 0 0 4c0
a:" ntctor if U colfr" l z - 02-1 -t0o1 (L Z-0'' V)- I Ne LN-0D CC LvCC e0 e I--
if If~--0 . . A LL-r II L COL c sj q( ~ ý If ar 0 U. U..f.j0Ox It U.% Ic 0 Woo
vi 2 v
6'%, Foo M p - %0 -M 0 -4f p 4 in oU4 Q 0 10- -r-P -fU - f - G I O-0C D C DC D0 0' 01 'O 1 1(IQ 0'
-58-
.- 4MM 004J~O r'J rnLs. - L
10-4, -4
I- 0 P-4 'u ~ , 10 0C 0r."a,
inLU 0 a 0 10.-.LM4-d (1) . N Pi .00',--40
r- 4 m A m 0 N O.14 -t ct-.sO I C. (q O'4 V, r-In r4 in co
LU ~ ~ ~ ~ ~ L 0(. qtL -C ler-.0'm0O' l e4 . d 0An1
LU
O'I r-.0L4 i C N - ,-4N O u.) .. j-4 -1 LA408-CI -4f OD , f- % U .U's n ji
LL m n 1 tm o i , -4 4ý 1 1 -4 .
LUJ
-4 4
00
I- LL -4 -4 -- L-U
2 j w mAAL q- flu ceLAL w. w c c wa wm y P
.0L U) LL, U l W U U') LA U'L Ai A L LM AL~ L /
0 .1 w AI- i L WV I- n u
a, ILI w u ~ o lzo IL .U..l
-60
N 0 Ol -
1~~0 N~U
'-44
",- In4-~ 44 0 Lc- -d a
.4A( -6 '4 .1 CC0. 01~q Go
0 4 .40' 04
(n -4, t-4-c, '1 1C ý 3Mc -4 C -d
m cf' 4 o co l 0'.' mU.J~j' fn r- f- In WN,'fl0 If% -Lt' ,r*
04-
) n In L~In 4 SA InIt.V) ) I n ul V) V) nii<
U->» »>»>>>>> > > > > > >
U, IliLJ Lu
- l C)c 17) e 0 00 C.O..- '4 jr 4 I-1IxrM Z CO 0 0 0 IV4-1 fn 0-~' .CI-o a' 0 0 C -
T Z Z8 o or e arty y 11 r~l, 1 0 -6 1-- 4ý 0. I v "f f -C
%b ~
0
PU-
uj .C i**- 4
4~ ~ ~ CD 0 -0
.1 e 0. w)L
14 ZjV 0 -#
Nu x 1.-440
' 0'0 Oft -U- *-1 0.
0 C - C 0' *O-n +~4z Zgt - C .
r-oO'CO *b4L0 J. -0 *
*sO~ *Z.1In4 0 -41ý
-u. 4ý u> -C. - A + --0Z. -. N ý(-4 -K At2 ~j V
0 N 0 i0 * - - -0U0+ .4 * Fh - JL ý 0 #1N
W U)U 0 - N + If1 U- l
_j 4 04 -i Z<- Pi go
_j' '4 (0U 01 *e Or II-I4 4941- r- M
L4 )I.c a-4.I aN b- L 1A fL Z 1i P4*m i If P-4 P-4 4L
ee ~ ~ ON .1ea0zz . 14I 4 a *4) - ww0 0Ii- 'U.
- ~~0 0 (n ~ 0~0e.~r
uuuu -I N4 B .4 @A040 .
"4 JN-4 in . 4t A-Dr-co0 *. *n -4 'In - O O. 04 N, rN4 101-0N
a)JI. OD-'N0
-62-
ý~ ~ ~ N-4ý# .
N --
C-40,M 0 r 0 f-4 '-.M
LLI -t 0 en~ ý4 N .-1 -4 0. 01I ZL - .-4 - 4..
-W -4 -. N . - ... -
Z. U..44..44
CL L, D4. UIfl h , i UJ 4
r 0
I-63
-- Or ~
W go CY N U. M VJ '(1
IL .
0. 0
.c 4 v) ++.4 4) u -
U) 'JL -. U
0u Wcfnd V0 0) viV)
0 _jI C a ) 1 CLy cc~ Z- <4 -cc - -
5i u WW2: t-04 1,..)- 0:' Z 4V4I U LL. L
l-NA I- w~- 0 w- 4i > >4
oL UL-.4 t.,II 0,U i JU lt,
N-JL
CL 0 0 000 GW Z
-64
References
M.A. Jenkins (1969). Three-stage variable-shift iterations forthe solution of polynomial equations with a posteriori errorbounds for the zeros. Stanford Report CS 138.
M.A. Jenkins and J.F. Traub (1970). A three-stage variable-shiftiteration for polynomial zeros and its relation to generalizedRayleigh iteration. Numer. Math. 14, 252-263.
K. Madsen (1973). A root-finding algorithm based on Newton's method.BIT 13, 71-75.
A.M. Ostrowski (1966). Solution of equations and systems of equations.Academic Press.
G. Peters and J.H. Wilkinsun (1971). Practical problems arising in thesolution of polynomial equations. J. Inst. Maths. Applics.,8, 16-35.
B.G. Ryder (1973). The FORTRAN verifier: user's guide. Computingscience technical report # 12, Bell Telephone Laboratories.
J.H. Wilkinson (1963). Rounding errors in algebraic processes. HMSO.
-65-