(08-08-2018 02:26 AM)Claudio L. Wrote: (08-06-2018 01:35 PM)Namir Wrote: Hi All,
I posted here a PDF file than contains an article I wrote about two new algorithms that use optimization to calculate real and complex roots for real-coefficient polynomials. The algorithms are:
1) Newton-Vieta method that uses Newton's method to obtain teh real roots of the polynomial and then optimizes the Vieta Formulas to obtain the pair of conjugate complex roots from the deflated polynomial.
2) Quasi Lin-Bairstow method. A method that, like Lin-Bairstow, uses optimization to extract quadratic polynomials from a bigger polynomial using optimization. The extracted quadratic polynomials have either a pair of real roots or a pair of conjugate complex roots.
Enjoy!
Namir
Ahhhh... food for thought! Interesting as usual. I just finished implementing the multiple nonlinear equation solver for newRPL and went the optimization route as well. In my case I used the Nelder-Mead method, which I implemented from scratch from the description in Wikipedia. The method works really nice, but seems to be a bit picky with the initial guess.
BTW, the basic root finder in newRPL was heavily inspired on your bisection experiments and improvements. Keep them coming!
MATLAN implements its fminsearch() optimization function using the Nelder-Mead method, so you are in good company.
Namir