{"title":"一个Matlab包计算多项式的根和多重","authors":"Zhonggang Zeng","doi":"10.1145/980175.980189","DOIUrl":null,"url":null,"abstract":"MULTROOT is a collection of Matlab modules for accurate computation of polynomial roots, especially roots with high multiplicities, using standard machine precision. As a blackbox-type software, MULTROOT requires the polynomial coefficients as the only input, and outputs the computed roots, multiplicities, backward error, estimated forward error, as well as the pejorative condition number.There are two common limitations for standard numerical root-finding software when multiple roots are present. Namely, those methods suffer from severe loss of accuracy and lack the capacity of multiplicity identification. Symbolic polynomial factorization requires exact rational coefficients. In contrast, the most significant features of MULTROOT are the multiplicity identification capability and the remarkable accuracy on multiple roots without using the multiprecision arithmetic, even if the polynomial coefficients are inexact.There is a so-called \"attainable accuracy\" for conventional root-finders: the attainable number of corrected digits of a computed root is limited by the data/machine precision divided by the multiplicity. For roots with high multiplicities, this accuracy barrier suggests that multiprecision arithmetic is required in addition to exact coefficients. Using a novel approach based on the pejorative manifold theory, MULTROOT achieves high accuracy even if the polynomial is perturbed and the machine precision is not extended. A stable numerical polynomial GCD-finder is also developed as an essential component that determines the multiplicity structure.MULTROOT is a combination of two programs that can be used independently. GCDROOT calculates the multiplicity structure and initial root approximation. PEJROOT refines the root approximations by projecting the polynomial onto a prescribed pejorative manifold. A comprehensive test suit of polynomials that are collected from the literature is included for numerical experiments and performance comparison.The detailed algorithm and analysis is presented in this conference [1].","PeriodicalId":314801,"journal":{"name":"SIGSAM Bull.","volume":"78 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2004-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"7","resultStr":"{\"title\":\"A Matlab package computing polynomial roots and multiplicities\",\"authors\":\"Zhonggang Zeng\",\"doi\":\"10.1145/980175.980189\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"MULTROOT is a collection of Matlab modules for accurate computation of polynomial roots, especially roots with high multiplicities, using standard machine precision. As a blackbox-type software, MULTROOT requires the polynomial coefficients as the only input, and outputs the computed roots, multiplicities, backward error, estimated forward error, as well as the pejorative condition number.There are two common limitations for standard numerical root-finding software when multiple roots are present. Namely, those methods suffer from severe loss of accuracy and lack the capacity of multiplicity identification. Symbolic polynomial factorization requires exact rational coefficients. In contrast, the most significant features of MULTROOT are the multiplicity identification capability and the remarkable accuracy on multiple roots without using the multiprecision arithmetic, even if the polynomial coefficients are inexact.There is a so-called \\\"attainable accuracy\\\" for conventional root-finders: the attainable number of corrected digits of a computed root is limited by the data/machine precision divided by the multiplicity. For roots with high multiplicities, this accuracy barrier suggests that multiprecision arithmetic is required in addition to exact coefficients. Using a novel approach based on the pejorative manifold theory, MULTROOT achieves high accuracy even if the polynomial is perturbed and the machine precision is not extended. A stable numerical polynomial GCD-finder is also developed as an essential component that determines the multiplicity structure.MULTROOT is a combination of two programs that can be used independently. GCDROOT calculates the multiplicity structure and initial root approximation. PEJROOT refines the root approximations by projecting the polynomial onto a prescribed pejorative manifold. A comprehensive test suit of polynomials that are collected from the literature is included for numerical experiments and performance comparison.The detailed algorithm and analysis is presented in this conference [1].\",\"PeriodicalId\":314801,\"journal\":{\"name\":\"SIGSAM Bull.\",\"volume\":\"78 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2004-03-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"7\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"SIGSAM Bull.\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/980175.980189\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"SIGSAM Bull.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/980175.980189","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
A Matlab package computing polynomial roots and multiplicities
MULTROOT is a collection of Matlab modules for accurate computation of polynomial roots, especially roots with high multiplicities, using standard machine precision. As a blackbox-type software, MULTROOT requires the polynomial coefficients as the only input, and outputs the computed roots, multiplicities, backward error, estimated forward error, as well as the pejorative condition number.There are two common limitations for standard numerical root-finding software when multiple roots are present. Namely, those methods suffer from severe loss of accuracy and lack the capacity of multiplicity identification. Symbolic polynomial factorization requires exact rational coefficients. In contrast, the most significant features of MULTROOT are the multiplicity identification capability and the remarkable accuracy on multiple roots without using the multiprecision arithmetic, even if the polynomial coefficients are inexact.There is a so-called "attainable accuracy" for conventional root-finders: the attainable number of corrected digits of a computed root is limited by the data/machine precision divided by the multiplicity. For roots with high multiplicities, this accuracy barrier suggests that multiprecision arithmetic is required in addition to exact coefficients. Using a novel approach based on the pejorative manifold theory, MULTROOT achieves high accuracy even if the polynomial is perturbed and the machine precision is not extended. A stable numerical polynomial GCD-finder is also developed as an essential component that determines the multiplicity structure.MULTROOT is a combination of two programs that can be used independently. GCDROOT calculates the multiplicity structure and initial root approximation. PEJROOT refines the root approximations by projecting the polynomial onto a prescribed pejorative manifold. A comprehensive test suit of polynomials that are collected from the literature is included for numerical experiments and performance comparison.The detailed algorithm and analysis is presented in this conference [1].