|
|
◆ WCpqr792()
| Function WCpqr792 |
( |
N As |
Long, |
|
|
A As |
Variant |
|
) |
| |
Roots of a polynomial (complex coefficients) by computing the eigenvalues of the companion matrix (complex numbers in pairs of cells)
- Purpose
- WCpqr792 computes all roots of a polynomial p(z) with complex coefficients by computing the eigenvalues of the companion matrix.
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 | 0 |
Return code.
= 0: Successful exit.
= 1: Maximum number of iterations (30) 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
- SLATEC
- 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.
|