## Access

You are not currently logged in.

Access your personal account or get JSTOR access through your library or other institution:

# A Three-Stage Algorithm for Real Polynomials Using Quadratic Iteration

M. A. Jenkins and J. F. Traub
SIAM Journal on Numerical Analysis
Vol. 7, No. 4 (Dec., 1970), pp. 545-566
Stable URL: http://www.jstor.org/stable/2949376
Page Count: 22
Preview not available

## Abstract

We introduce a new three-stage process for calculating the zeros of a polynomial with real coefficients. The algorithm finds either a linear or quadratic factor, working completely in real arithmetic. In the third stage the algorithm uses one of two variable-shift iterations corresponding to the linear or quadratic case. The iteration for a linear factor is a real arithmetic version of the third stage of the algorithm for complex polynomials which we studied in an earlier paper. A new variable-shift iteration is introduced in this paper which is suitable for quadratic factors. If the complex algorithm and the new real algorithm are applied to the same real polynomial, then the real algorithm is about four times as fast. We prove that the mathematical algorithm always converges and show that the rate of convergence of the third stage is faster than second order. The problem and algorithm may be recast into matrix form. The third stage is a quadratic form of shifted inverse powering and a quadratic form of generalized Rayleigh iteration. The results of extensive testing are summarized. For an ALGOL W program run on an IBM 360/67 we found that for polynomials ranging in degree from 20 to 50, the time required to calculate all zeros averaged 2n2 milliseconds. An ALGOL 60 implementation of the algorithm and a program which calculates a posteriori bounds on the zeros may be found in Jenkins' 1969 Stanford dissertation [2].

• 545
• 546
• 547
• 548
• 549
• 550
• 551
• 552
• 553
• 554
• 555
• 556
• 557
• 558
• 559
• 560
• 561
• 562
• 563
• 564
• 565
• 566