Re: Root finding needs higher accuracy
- To: mathgroup at smc.vnet.net
- Subject: [mg123179] Re: Root finding needs higher accuracy
- From: Bill Rowe <readnews at sbcglobal.net>
- Date: Fri, 25 Nov 2011 04:57:35 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
On 11/24/11 at 6:57 AM, hwborchers at googlemail.com (HwB) wrote:
>I would like to numerically find the root of the following function
>with up to 20 digits.
>f12[x_] := Log[x] + x^2 / (2 Exp[1]) - 2 x / Sqrt[Exp[1]] + 1
>This problem is known to be difficult for solvers in double
>precision arithmetics. I thought it should be easy with Mathematica,
>but the following attempts were not successful.
>SetPrecision[ x /. FindRoot[f12[x], {x, 1.0, 3.4}, Method ->
>"Brent", AccuracyGoal -> Infinity, PrecisionGoal -> 20], 16]
>#1.648732212532746
>SetPrecision[ x /. FindRoot[f12[x], {x, 1.0, 3.4}, Method ->
>"Secant", AccuracyGoal -> Infinity, PrecisionGoal -> 20], 16]
>#1.648710202030051
>The true root obviously is Sqrt[Exp[1]]//N = 1.648721270700128...
>The symbolic solver explicitely says it cannot solve this
>expression. What do I need to do to get a much more exact result out
>of Mathematica?
On my machine the simple naive approach seems to work fine. That is
In[25]:= FindRoot[f12[x], {x, 2}, WorkingPrecision -> 20]
Out[25]= {x->1.6487220277297822898}
In[26]:= $Version
Out[26]= 8.0 for Mac OS X x86 (64-bit) (October 5, 2011)
- Follow-Ups:
- Re: Root finding needs higher accuracy
- From: DrMajorBob <btreat1@austin.rr.com>
- Re: Root finding needs higher accuracy