For higher order polynomials, various strategies have been devised. If the coefficients are integers and the order is low, intelligent guesswork can sometimes suffice. Another approach is to search for regions within which the value of the polynomial changes sign, and then zooming in on the zero. Such a strategy cannot guarantee to be always successful in finding all the roots of a polynomial, especially when they are close together.
UltimaCalc uses the Jenkins and Traub method which, although far too complicated to describe here, is of proven reliability. The precise locations of the roots (or even their existence) can be very sensitive to the coefficients of the polynomials and to accumulated rounding errors. The 38 digit precision to which UltimaCalc works helps to minimise these latter errors.
The image below shows an easy task - finding the roots of the cubic polynomial:
x3 + 2.x2 - x - 2
The results show that this polynomial can be factorised as:
(x + 2)(x + 1)(x - 1)
The button marked 'Copy' copies the calculation of the polynomial roots to the Windows clipboard. In the above example, this results in the following text:
Roots of Polynomial of order 3:
A3 = 1
A2 = 2
A1 = -1
A0 = -2
The roots are:
The 'Log' button writes the calculation to a log file. The 'Open', 'Save', and 'Save As' buttons allow calculated polynomial roots to be saved, along with notes, so that the calculation can be repeated later, perhaps after changing some of the coefficients.