Re: polyroot behaviour

Lukas Schneiderbauer <[email protected]>
Newsgroups gmane.comp.lang.r.general
Message-ID <CAHETjta_FqNddJqfX-ufJD1PtUBGH+A0c6KPnHp4WabzWfaC7Q@mail.gmail.com>
Dear Thomas,

How can f be strictly positive if the leading term is an odd power of x?
For large negative x, x^11 will dominate, and f should become quite
negative. This argument is also supported by a graphical plot of f.
Assuming that f can indeed be negative, my suspicion is that the 11th root
is still a reasonable approximation to the actual root, but the gradient in
this region is high and so f(x) evaluated numerically is too sensitive to
small errors (that is why f(roots[[11]]) evaluates to a seemingly huge
number).

Best,
Lukas


On Thu, Oct 2, 2025 at 6:14 PM tgs77m--- via R-help <[email protected]>
wrote:

> Colleagues,
>
> g <- function(x) ( x^11 + 1000*x^10 + 500 *x^9 + 1 )
> coeffs <- c(1, rep(0, 8), 500, 1000, 1)
> roots <- polyroot(coeffs)
>
> Output
>
> [1]    0.25770068+3.958197e-01i
>  [2]   -0.34615184+3.782848e-01i
>  [3]   -0.04089779-4.838134e-01i
>  [4]    0.44124314-1.517731e-01i
>  [5]   -0.04089779+4.838134e-01i
>  [6]   -0.56201931-1.282822e-01i
>  [7]   -0.34615184-3.782848e-01i
>  [8]    0.44124314+1.517731e-01i
>  [9]   -0.56201931+1.282822e-01i
> [10]    0.25770068-3.958197e-01i
> [11] -999.49974975+1.110223e-16i
>
> [11] -999.49974975+1.110223e-16i  makes  no sense since f>0 for all x
>
> Why does polyroot do this?
>
> Thomas Subia
>
> ______________________________________________
> [email protected] mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> https://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

	[[alternative HTML version deleted]]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.