RationalFunctionApproximation.jl: Rational Approximation On Discrete and Continuous Domains
Tobin A. Driscoll
TL;DR
RationalFunctionApproximation.jl provides fast, high-precision rational approximation in Julia via AAA, greedy Thiele, and prescribed-poles methods. It leverages barycentric and Thiele representations, with continuum-domain adaptivity enabled by ComplexRegions to resolve nearby singularities. The package unifies core data types (DiscretizedPath, Arnoldi constructs, and abstract interpolants) and supports arbitrary-precision arithmetic, enabling compact, accurate representations on intervals, circles, and other complex domains. The work demonstrates robust performance and highlights ongoing research directions, including stability analyses and arithmetic operations on rational functions.
Abstract
Unlike polynomials, rational functions can represent functions having poles or branch cuts with root-exponential convergence and no Runge phenomenon. Recent developments of the AAA and greedy Thiele algorithms have sparked renewed interest in computational rational approximation. The \textsf{RationalFunctionApproximation} package supplies the fastest known implementations of these methods and the only arbitrary-precision ones. Combined with the \textsf{ComplexRegions} package, it can produce compact and accurate representations of a huge variety of functions over intervals, circles, or other domains in the complex plane.
