|
|
◆ WDka2()
| Function WDka2 |
( |
N As |
Long, |
|
|
A As |
Variant |
|
) |
| |
Roots of a polynomial (complex coefficients) DKA method (complex numbers in pairs of cells)
- Purpose
- WDka2 computes all roots of a polynomial p(z) with complex coefficients by DKA (Durand-Kerner-Aberth) method.
p(z) = a0*z^n + a1*z^(n-1) + ... + an
To represent complex numbers, a real part and an imaginary part are stored in a pair of adjacent cells (a real part in a left cell, and an imaginary part in a right cell). The computed results are stored in the same way.
- Returns
- N+1 x 2
| Column 1 | Columns 2 |
| Rows 1 to N | Real parts of the roots | Imaginary parts of the roots |
| Row N+1 | Return code | Number of iterations performed to converge |
Return code.
= 0: Successful exit.
= 1: Maximum number of iterations exceeded.
- Parameters
-
| [in] | N | Degree of polynomial. (N >= 1) |
| [in] | A | (N+1 x 2) Complex coefficients a0 to an of polynomial a0 x^n + a1 x^(n-1) + … + a(n-1)x + an. |
- Reference
- (Japanese book) Masatake Mori "FORTRAN77 Numerical Calculation Programming (augmented edition)" Iwanami Shoten (1987)
- Example
- Solve the following algebraic equation.
x^3 + (-19-14i)*x^2 + (67+191i)*x + 116-612i = 0
The exact solutions are 8 + 4i, 4 + 9i and 7 + i.
|