8th degree polynomial numerical instability

11 views (last 30 days)
hi there, I have a piece of my code where I form an 8th degree polynomial and find its roots via the "root" command. The problem is that the roots are not always correct. Basically for some polynomials the roots are all very close to zero. However if I slightly perturb my input values that eventually form the polynomial i do get the solution. I feel like there is some kind of numerical instability in this polynomial. And looking at it numerically the coefficients are wildly different. Some in the order of 10^-20 and some 10^20. I know that's a recipe for numerical instability, but i dont know what to do about it! any suggestions would be appreciated.
thanks in advance ,
H

Accepted Answer

Sean de Wolski
Sean de Wolski on 7 Mar 2013
Edited: Sean de Wolski on 7 Mar 2013
My suggestion is avoid any polynomial with degree greater than three or four. They are highly unstable and aren't actually modelling any physical process at this point. What are you trying to do? There is probably (i.e. definitely) a better fitting tool for whatever you are doing?
  3 Comments
Sean de Wolski
Sean de Wolski on 7 Mar 2013
We need a little more detail about what you're actually doing. Can you show us some data and expected results? Have you looked at splines or other curves?
Houman R
Houman R on 7 Mar 2013
thank you for your answer. I can not provide more context without significantly expanding the scope of the question. I think I will try to think of a way of avoiding the 8th degree polynomial. And that means going back to the drawing board. I thank you for your response.
H

Sign in to comment.

More Answers (0)

Categories

Find more on Polynomials in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!