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