MPSolve (Multiprecision Polynomial Solver) is a package for the approximation of the roots of a univariate polynomial. It uses the Aberth method,[1] combined with a careful use of multiprecision.[2]

MPSolve
Original author(s)Dario Bini, Giuseppe Fiorentino, and Leonardo Robol
Stable release
Version 3.1.5 / April 2017
Written inC
Operating systemLinux, Windows, Mac OS X
PlatformPC
Available inEnglish
TypeMathematical software
LicenseGPLv3
Websitenumpi.dm.unipi.it/software/mpsolve

"Mpsolve takes advantage of sparsity, and has special hooks for polynomials that can be evaluated efficiently by straight-line programs"[3]

Implementation

edit

The program is written mostly in ANSI C and makes use of the GNU Multi-Precision Library. It uses a command-line interface (CLI) and, starting from version 3.1.0 has also a GUI and interfaces for MATLAB and GNU/Octave.

Usage

edit

The executable program of the package is called mpsolve. It can be run from command line in console. The executable file for the graphical user interface is called xmpsolve, and the MATLAB and Octave functions are called mps_roots. They behave similarly to the function roots that is already included in these software packages.

Output

edit

Typically output will be on the screen. It may also be saved as a text file (with res extension) and plotted in gnuplot. Direct plotting in gnuplot is also supported on Unix systems.

 

See also

edit

References

edit
  1. ^ "Design, Analysis, and Implementation of a Multiprecision Polynomial Rootfinder" by D. A. Bini and G. Fiorentino published in Numerical Algorithms, Volume 23 (2000), pages 127-173
  2. ^ "Solving secular and polynomial equations: A multiprecision algorithm" by D. A. Bini and L. Robol published in Journal of Computational and Applied Mathematics, Volume 272 (2015)
  3. ^ "Comparison of performance of MPSolve and Eigensolve by Steven Fortune". Archived from the original on 2007-08-15. Retrieved 2008-04-05.
edit