Polynomial Root Calculator
Given a real or complex polynomial \[ p(x)=a_nx^n + a_{n-1}x^{n-1}+\cdots+a_2x^2+a_1x+a_0,\] this application calculates the roots $r$'s of the polynomial such that $p(r)=0$. The calculator find the polynomial roots using the Jenkins–Traub algorithm as implemented in Algorithm 419 and Algorithm 493 in the references below. Actually, this calculator use the codes translated from both algorithms. The original Fortran codes should be used if you require better performance.
Input Data
This calculator require that the coefficients and the exponents of the terms of $p(x)$ are entered in two-column matrix with the coefficients in the first column and the corresponding exponents in the second. For example the polynomial $a_nx^n + a_{n-1}x^{n-1}+\cdots+a_2x^2+a_1x+a_0$ can be entered as
a_n n ..... a_1 1 a_0 0or entered as
a_1 1 ..... a_n n a_0 0or in other orders if you want. You can ignore terms with zero coefficients, say $x^2 - 9$ can be entered as
1 2 -9 0ignoring the term $0\cdot x^1$. Note that the first column is for coefficients which can be real or complex numbers and the second column is for exponents which are nonnegative integers. For more detail of entering matrix data see Matrix Data Input.
References
- Jenkins, M. A. and Traub, J. F. (1972), Algorithm 419: Zeros of a Complex Polynomial, Comm. ACM, 15, 97–99.
- Jenkins, M. A. (1975), Algorithm 493: Zeros of a Real Polynomial, ACM TOMS, 1, 178-189.