We present a combination of two algorithms that accurately calculate multiple roots of general polynomials. Algorithm I transforms the singular root-finding into a regular nonlinear least squares problem on a pejorative manifold, and calculates multiple roots simultaneously from a given multiplicity structure and initial root approximations. To fulfill the input requirement of Algorithm I, we develop a numerical GCD-finder containing a successive singular value updating and an iterative GCD refinement as the main engine of Algorithm II that calculates the multiplicity structure and the initial root approximation. While limitations of our algorithm exist in identifying the multiplicity structure in certain situations, the combined method calculates multiple roots with high accuracy and consistency in practice without using multiprecision arithmetic even if the coefficients are inexact. This is perhaps the first blackbox-type root-finder with such capabilities. To measure the sensitivity of the multiple roots, a structure-preserving condition number is proposed and error bounds are established. According to our computational experiments and error analysis, a polynomial being ill-conditioned in the conventional sense can be well conditioned with the multiplicity structure being preserved, and its multiple roots can be computed with high accuracy.
翻译:我们展示了两种算法的组合, 精确地计算了普通多面体的多重根根。 ALgorithm I 将单根调查转换成一个常规的非线性最小平方, 并同时从给定的多重结构和初始根近似值中计算多重根根。 为了满足 Alogorithm I 的输入要求, 我们开发了一个数字的 GCD- Finder, 包含一个连续的单值更新, 以及作为 Algorithm II 主引擎的反复的 GCD 精细化, 计算多重结构和初始根近似。 虽然在某些情形下, 我们的算法在确定多重结构方面存在局限性, 但是在确定多重结构时, 综合方法在实际操作中以高度精确和一致的方式计算多重根根, 即使系数是不精确的。 这也许是第一个具有这种能力的黑盒型根底线的输入要求。 为了测量多重根的灵敏度, 提议了一个结构保留条件编号, 并且设置了错误的界限。 根据我们的计算实验和错误分析, 一种在常规意义上的多元性中处于不精确度的多面的多面结构, 可以很好地进行修改。