Announcing Polyroots-Fortran

Announcing Polyroots-Fortran, a new Modern Fortran library for finding the roots of polynomial equations. Many of the routine are refactored versions of classic codes (e.g., from SLATEC), but there are also more modern routines. The goal is to continue to expand the library.

Features include:

  • Lots of different methods (see the Readme for a list), for both real and complex coefficients.
  • Modern code (free-form, no gotos, etc.)
  • Works with the amazing Fortran Package Manager
  • Selectable real kind (works for real32, real64, and real128). To my knowledge, this library contains some of the only real128 compatible versions of these algorithms that I’ve seen.

Join us and help to improve it!

14 Likes

Thanks for all the effort you’ve put into this so far!

I wonder if the MATLAB roots routine does anything differently than the polyroots function in your new collection. For a quad-precision (Fortran) eigenvalue solver, I’ve located the following two packages:

offered by the Center for Computational Science & e-Systems of the Japan Atomic Energy Agency. Looking at the documentation it appears that both double-double (DD) and quadruple precision (QP) routines are available. (For the latter only if the compiler supports it.)

1 Like