Weierstrass (Durand-Kerner) method

from Wikipedia, the free encyclopedia

The Weierstraß (Durand-Kerner) method (W (DK) method) is an iterative method for the simultaneous determination of all zeros of a univariate polynomial . It is named after Karl Weierstraß , who developed it as part of a proof of the fundamental theorem of algebra between 1859 and 1891, and E. Durand and Immo Kerner, who converted it into a computer algorithm in 1960 and 1966, respectively.

The procedure

Let it be a standardized univariate polynomial with complex coefficients and with a leading coefficient 1. According to the fundamental theorem of algebra, this has exactly n zeros and can be broken down into linear factors,

Each of the zeros can be formally isolated from this formula, it applies

This formula can be understood as a trivial fixed point iteration, the iteration

obviously becomes stationary in the zero after the first iteration step.

If the other zeros in the iteration rule are replaced by good approximations, a fixed point remains and every iteration that starts near this zero also converges against it. The iteration of the W (DK) method results when approximation sequences are now determined simultaneously for all zeros by means of this iteration rule, and the respective determined approximation of a zero is immediately included in the determination of the next approximations of the other zeros.

At the beginning of each iteration step there are n complex numbers that are different in pairs . For the first step, these numbers can be chosen randomly but differently in pairs, in later steps these numbers stand for approximations of the zeros of p (X) .

The polynomial that has these complex numbers as zeros is assigned to the tuple . From this polynomial the derivative according to the indefinite X is determined. It apply

and

Of p (X) and of the derivative which are Weierstrass corrections , k  = 1, ...,  n is determined and the corrected tuple obtained as a result of the next iteration step and input.

The iteration can e.g. B. canceled if the correction falls below a previously defined return accuracy. (The calculation accuracy should be slightly higher than this return accuracy.)

Variants of the procedure

The derivation given above determines the new approximations simultaneously, in parallel, from the old approximations. In the simplest implementation of the method, however, the updates and thus the new approximations are determined one after the other, sequentially. Therefore the idea is to use every new approximation of a zero immediately instead of the old one. This difference between parallel and sequential updating corresponds to the analogous procedure in the Jacobi and Gauß-Seidel methods for the iterative solution of linear systems of equations.

The sequential variant converges faster in many cases, but this speed advantage is difficult to grasp theoretically. With high polynomial degrees, the parallel variant allows the use of methods of fast polynomial multiplication, such as Karatsuba or Schönhage-Strassen in the calculation of the update.

example

The cubic equation is to be solved . The complex parameter is selected as the start tuple . The following first iteration steps result for the parallel variant of the iteration

It no. z 1 z 2 z 3
0 +1.000000 + 0.000000 i +0.400000 + 0.900000 i −0.650000 + 0.720000 i
1 +1.360773 + 2.022230 i −1.398213 - 0.693566 i +3.037440 - 1.328664 i
2 +0.980963 + 1.347463 i −0.335252 - 0.644069 i +2.354289 - 0.703394 i
3 +0.317181 + 0.936495 i +0.490016 - 0.966141 i +2.192804 + 0.029647 i
4th +0.209016 + 1.572742 i +0.041206 - 1.527519 i +2.749778 - 0.045223 i
5 +0.212971 + 1.394827 i +0.184678 - 1.384565 i +2.602351 - 0.010262 i
6th +0.206531 + 1.374879 i +0.206001 - 1.374653 i +2.587468 - 0.000226 i
7th +0.206300 + 1.374730 i +0.206299 - 1.374730 i +2.587401 - 0.000000 i
8th +0.206299 + 1.374730 i +0.206299 - 1.374730 i +2.587401 + 0.000000 i

and for the sequential variant of the iteration

It no. z 1 z 2 z 3
0 +1.000000 + 0.000000 i +0.400000 + 0.900000 i −0.650000 + 0.720000 i
1 +1.360773 + 2.022230 i −0.365804 + 2.483787 i −2.385807 - 0.028361 i
2 +2.659661 + 2.713714 i +0.597676 + 0.822483 i −0.631985 - 1.671566 i
3 +2.270389 + 0.387972 i +0.131179 + 1.312808 i +0.282054 - 1.501550 i
4th +2.542817 - 0.015337 i +0.204444 + 1.371609 i +0.205573 - 1.372072 i
5 +2.587418 - 0.000012 i +0.206300 + 1.374733 i +0.206299 - 1.374730 i
6th +2.587401 - 0.000000 i +0.206299 + 1.374730 i +0.206299 - 1.374730 i
7th +2.587401 - 0.000000 i +0.206299 + 1.374730 i +0.206299 - 1.374730 i

In the first 4 iterations of both variants, the triple is moved apparently chaotically, from the 5 step onwards, more and more decimal places remain constant, iteration 8 in the parallel and 7 in the sequential case confirm the correctness of iteration 7 or 6 within the specified accuracy. This general behavior is characteristic of this method.

As a 3rd degree equation with real coefficients, p (X) has a real zero and a conjugate pair of complex zeros. The approximations satisfy this pattern. According to Vieta's theorem , e.g. B. the sum of all zeros corresponds to the negative of the coefficient of the second highest degree, i.e. 3. This is also confirmed in the approximations.

Justification as Newton's method

The - at least local - convergence of the Weierstrasse iteration results from its interpretation as a multi-dimensional Newton method . The equation system for this results from the comparison of the coefficients of the same degree in the desired identity

Since the polynomials are normalized on both sides (the highest degree coefficient is 1 ), the identity in degree n is trivial and there are n equations for the n unknowns.

In general, this identity is not fulfilled. The correction in each step of the Newton iteration results from the requirement that the identity

in the first order is fulfilled. The linear equation results from the Taylor expansion of the first order

Each individual correction can be derived from it by inserting to

can be obtained, which results in the Weierstraß correction given above.

A global proof of convergence for this method was already given in (K. Weierstrass 1891) as an alternative proof for the fundamental theorem of algebra .

Error estimation using Gerschgorin circles

An error estimate and an alternative derivation of the method is given in the article on Gershgorin's theorem . According to this, all zeros of the polynomial p (X) are contained in the union of the circular disks in each iteration step . If the circular disks are disjoint in pairs, each contains exactly one zero. (A. Neumaier 2003) shows the same statement for the somewhat smaller circular disks

literature

  • Karl Weierstrass: New proof of the theorem that every whole rational function of a variable can be represented as a product of linear functions of the same variable. In: Meeting reports of the Royal Prussian Academy of Sciences in Berlin. 1891. online
  • E. Durand: Equations du type F (x) = 0: Racines d'un polynomials . In: Masson et al. (Ed.): Solutions numeriques des equations algebriques. Vol. 1. 1960,
  • Immo O. Kerner: A total step procedure for calculating the zeros of polynomials . In: Numerical Mathematics . 8, 1966, pp. 290-294.
  • Marica Prešić: A convergence theorem for a method for simultaneous determination of all zeros of a polynomial . In: Publications de l'institut mathematique (Beograd) (NS) . 28 (42), 1980, pp. 158-168.
  • MS Petkovic, C. Carstensen, M. Trajkovic: Weierstrass formula and zero-finding methods . In: Numerical Mathematics . 69, 1995, pp. 353-372.
  • Bo Jacoby: Zero point for polynomial. CAE-nyt (a periodical for Dansk CAE Gruppe [Danish CAE Group]), 1988.
  • Agnethe Knudsen: Numeriske Metoder. (lecture notes), Københavns Teknikum.
  • Bo Jacoby: Numerisk løsning af ligninger. Bygningsstatiske meddelelser (Published by the Danish Society for Structural Science and Engineering) 63, no. 3-4, 1992, pp. 83-105.
  • Xavier Gourdon: Combinatoire, Algorithmique et Geometry des Polynomials . Ecole Polytechnique, Paris 1996 ( Postscript [accessed October 15, 2006]).
  • Victor Pan: Univariate Polynomial Root-Finding with Lower Computational Precision and Higher Convergence Rates . Tech-Report, City University of New York, May 2002.
  • Bini, DA; Gemignani, L .; Pan, VY: Inverse power and Durand-Kerner iterations for univariate polynomial root-finding. Comput. Math. Appl. 47 (2004), no. 2-3, 447-459
  • Arnold Neumaier: Enclosing clusters of zeros of polynomials . In: Journal of Computational and Applied Mathematics . 156, 2003.

Web links