# Polynomial roots for Partial fraction Expansion, for polynomials with order 3 to 14.

Cuthbert Nyack
Many methods are available for numerical approximation of roots of polynomials. In the applet below, the Laguerre method is used.
Scrollbar 0 sets the order of the polynomial 3 to 14.
Scrollbar 1 is used to suppress plotting of the function. This enables coefficients to be changed much faster.

Each coefficient is set by 3 scrollbars. eg a(4) is set by scrollbars 11, 12 and 13. 11/12 are used for coarse/fine adjustment and 13 is used to add a power of 10.

To use the applet the following steps are required:-
1. Set the polynomial order by scrollbar 0 and enter the coefficients.
2. Change scrollbar 1(click down arrow) to plot the function. The roots are at the starting points of the red-blue boundaries.
3. Use scrollbars 44 and 45 to bring the origin close to the starting points of the boundaries so the algorithm can converge to that root. The origin is used as the starting point by the Laguerre algorithm.
4. If necessary scrollbars 47 and 48 can be used to scale the plot so all the roots appear within the plot. 46 and 49 can be used to scale the center coordinates and width and height coordinates.
5. The applet defaults to 5 iterations. If necessary the number of iterations can be changed by scrollbar 50.

A no result may occasionally occur with the function a NaN. This may be seen when the polynomial has multiple roots. Changing the starting point usually resolves this problem.

The gif image below shows the coefficients set to find the roots of the 5th order polynomial
s5 + 2 s4 + 3.5 s3 + -6.25 s2 + 12.5 s + 70 = 0.
Scrollbars 0 and 2 to 16 were used. Changing scrollbar 1 to plot the function results in the following image. The plot shows that the polynomial has 1 real root and 2 pairs of complex conjugate roots. The image shows that starting from the origin, the algorithm converges to the real root -1.91157. Changing the starting point to (1.3, 1.3) results in the algorithm converging to one of the complex roots 1.51956 + j1.40386. Changing the starting point to (-1.5, 2.4) results in the algorithm converging to one of the complex roots -1.56377 + j2.471979. The polynomial roots are therefore:-
-1.91157, 1.51956 ± j1.40386 and -1.56377 ± j2.471979.

The 2 images below shows the 11th order polynomial.
s11 + 2 s10 + 3.5 s9 + 4 s8 + 6 s7 + 10 s6 + 7 s5 + 12.5 s4 + 37.5 s3 + 9 s2 + 25 s + 6 = 0.  There is 1 real root and 5 pairs of complex conjugate roots.
The roots are found to be -0.24141, 0.059023 ± j0.863929, 0.384817 ± j1.400599, 1.108055 ± j0.796291, -1.52163 ± j0.509971 and -0.90956 ± j1.564912.

The following image shows a case where 2 roots are -1.0. The number of iterations in this case is increased to 12. Here 2 boundaries start at -1. The following image shows a case where all roots are -1.0. Here 4 boundaries start at -1. 