What is the best way to numerically solve a system of polynomial multivariate equations?

18 views (last 30 days)
I have a system of polynomial equations that I need to solve a whole bunch of times. What do you think is the most efficient way to solve them using some numerical solver in matlab? I have the optimization toolbox, etc.
Thanks,
Chris

Accepted Answer

Walter Roberson
Walter Roberson on 28 Jun 2011
If they really are multivariate polynomials (e.g., no sin() or gamma() or integrals, no sqrt() or x^n when n is not 0 or a positive integer), then the \ operator might be appropriate, especially if it is only the right-hand sides that are varying (in which case they can all be done at the same time.)
If the coefficients are changing each time, I would consider using symbolic algebra to solve() for the variables, and then turn the resulting formula into MATLAB code (matlabFunction() might help.) Any RootOf() symbolic polynomials can be converted in to roots() calls.

More Answers (2)

Chris
Chris on 28 Jun 2011
Also, I need to find all of the answers, not just one.
Thanks,
Chris

Hugo Tadashi Kussaba
Hugo Tadashi Kussaba on 10 Aug 2023
State-of-art homotopy continuation methods can be used to compute (almost) all solutions of system of polynomial equations.¹ A MATLAB package for computing real verified solutions of polynomial systems of equations and inequalities is available at: http://159.226.47.210:8080/verifyrealroots/index.html
[1] Yang, Zhengfeng, Hanrui Zhao, and Lihong Zhi. "VerifyRealRoots: A Matlab Package for Computing Verified Real Solutions of Polynomials Systems of Equations and Inequalities." Journal of Systems Science and Complexity 36.2 (2023): 866-883.

Categories

Find more on Polynomials in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!