cd_poly_find_roots
#include <flint/acb_poly.h>double cd_poly_find_roots(double * roots, const double * poly, const double * initial, slong len, slong maxiter, double reltol)sourceSets roots (room for doubles) to approximations of the roots of poly and returns the largest relative step of the last iteration (at least ). initial is NULL or holds starting values (zero entries are replaced by values from the Newton polygon).
Zero leading coefficients give roots at infinity (set to ) and zero trailing coefficients roots at zero. At most maxiter iterations are done; the iteration stops when times the largest relative step is below reltol, where is the number of finite nonzero roots, or when the step is below . Each step is limited to an absolute size between and , adapted to the progress (the callers scale the polynomial so that the roots have modulus near 1), and roots of modulus greater than 1 are updated through the reversed polynomial to avoid overflow. The output is sorted.
The FLINT team, “cd_poly_find_roots (acb_poly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/acb_poly/cd_poly_find_roots.html (generated 2026-11-02).
@misc{flint-doc-acb-poly-cd-poly-find-roots,
author = {{The FLINT team}},
title = {{cd\_poly\_find\_roots (acb\_poly.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/acb_poly/cd_poly_find_roots.html},
note = {Generated 2026-11-02}
}