Re: FindRoot vs Solve
- To: mathgroup at smc.vnet.net
- Subject: [mg22452] Re: FindRoot vs Solve
- From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
- Date: Sat, 4 Mar 2000 02:26:26 -0500 (EST)
- Organization: Universitaet Leipzig
- References: <89ichk$n45@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Hi, first all solutions are valid, because you are searching for for solutions of an equation with infinite many solutions you can't say "right result" to the one you like. In[]=FindRoot[28 Cos[phi1 Degree] - 20 == 0, {phi1, 0.2, -90, 90.}] gives {phi1 -> 44.4153} FindRoot[] uses a damped Newton iteration. It is well known, that the newton iteration jump between the multiple solutions of an equations and I expect that the Newton iteration find differnt solutions depending on the initial range and the starting point you give to FindRoot[]. Hope that helps Jens "F. Mittermayr" wrote: > > Why is FindRoot not able to solve an equation using "Degree"? Solve can do > it. > > In[]= > > Solve[28. Cos[phi Degree] - 20. == 0, phi] > FindRoot[28. Cos[phi1 Degree] - 20. == 0, {phi1, 0.1, 0.1, 90.}] > > Out[]= > > {{phi->-44.4153},{phi->44.4153}} > {phi1->96.7112} > > Only the following statement gives the right result: > > In[]= > FindRoot[28. Cos[phi2] - 20. == 0, {phi2, 0.1, 0.1, 90.}] > Out[]= > {phi2->0.775193} > > so long F. Mittermayr