Re: Using FindRoot
- To: mathgroup at smc.vnet.net
- Subject: [mg83446] Re: [mg83429] Using FindRoot
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Wed, 21 Nov 2007 02:38:40 -0500 (EST)
- Reply-to: hanlonr at cox.net
eqn = .15*Pi*(R^2) == (2*R^2*ArcCos[45.9/(2*R)]) - (.5*45.9*
Sqrt[4*R^2 - 45.9^2]);
Solve[4*R^2 - 45.9^2 == 0, R]
{{R -> -22.95}, {R -> 22.95}}
The root is complex for |R| < 22.95
Plot[Evaluate[eqn[[1]] - eqn[[2]]], {R, 20, 35}]
Use a closer starting value where R is real
FindRoot[eqn, {R, 25}]
{R -> 30.87736860938117}
Bob Hanlon
---- tdude <stiletto at bigfoot.com> wrote:
> I am trying to find the root of the following equation
> FindRoot[.15*[Pi]*(R^2)==(2*R^2*ArcCos[45.9/(2*R)])-(.5*45.9*Sqrt[4*R^2-45.9^2]),{R,.1}, MaxIterations->100000]
>
> When I try this with two other systems, both give me an answer of 30.8773686.
>
> However, with Mathematica, the answer I get appears to be a complex root, along with this message:
> FindRoot::lstol: The line search decreased the step size to within tolerance specified by AccuracyGoal and PrecisionGoal but was unable to find a sufficient decrease in the merit function. You may need more than MachinePrecision digits of working precision to meet these tolerances.
> {R -> 20.1137- 4.87774*10^-14 \[ImaginaryI]}
>
> Why would the answer be a complex root when using Mathematica, yet real when using the other two packages?
> Thanks Tony.
>