Finding all roots of a group of equations
- To: mathgroup at smc.vnet.net
- Subject: [mg25416] Finding all roots of a group of equations
- From: Fenghua Zhou <fzhou at nal.go.jp>
- Date: Fri, 29 Sep 2000 01:07:14 -0400 (EDT)
- Organization: National Aerospace Laboratory
- Sender: owner-wri-mathgroup at wolfram.com
Dear MathGroup members, It seems to be a quite basic question but I don't see an efficient method. I am solving a set of simultaneous equations, numerically: f1[a1, a2, ..., an]=0 f2[a1, a2, ..., an]=0 ..... fn[a1, a2, ..., an]=0 Where f1, f2, ... fn are polynomial expressions (to the third power) of unknown {a1, a2, ..., an}. Because there are many equations. The command: NSolve[{f1==0, f2==0, ..., fn==0}, {a1, a2, ..., an}] just doesn't work. Instead, I use the FindRoot command to solve the equations, FindRoots[{f1==0, f2==0, ..., fn==0}, {a1, a10}, {a2, a20} ..., {an, an0}] It find one without difficulty. The question is, we wish to obtain all the real roots of the equations, or be sure that beside the already knowns, there is no real roots anymore. How can we do this efficiently? Not just change the initial points {a10, a20, ..., an0} in FindRoot command randomly. The equations are quite smooth. Take a simple, two-variable system for example: ------------------------------- In[1]:= f1 = 12 a1^2 + 23 a1 a2 + a2^2 + 2 a1 + 6.5 a2 + 13; f2 = 2.1 a1^2 + 17 a1 a2 + 5.5 a1 + 17 a2 + 10; NSolve[{f1 == 0, f2 == 0}, {a1, a2}] Out[3]= {{a2 -> 1.39919, a1 -> -1.26916}, {a2 -> 15.5573, a1 -> -1.02484}, {a2 -> -0.450807 + 0.0285982 I, a1 -> 0.329769 + 0.830228 I}, {a2 -> -0.450807 - 0.0285982 I, a1 -> 0.329769 - 0.830228 I}} In[4]:= FindRoot[{f1 == 0, f2 == 0}, {a1, -5}, {a2, -5}, MaxIterations -> 500] Out[4]= {a1 -> -1.26916, a2 -> 1.39919} --------------------------------- How to do next? Any suggestion is greatly appreciated. Sept. 26 -- Fenghua ZHOU, Ph.D | 7-44-1 Jindaijihigashi,Chofu,Tokyo 182,JAPAN Research Fellow, | Tel +81-422-40-3475, Fax +81-422-40-3440 Aeroengine Division | Email fzhou at nal.go.jp ------------------- National Aerospace Laboratory (NAL) ----------