Re: //N bug, but WHY?
- To: mathgroup at smc.vnet.net
- Subject: [mg58656] Re: [mg58634] //N bug, but WHY?
- From: yehuda ben-shimol <bsyehuda at gmail.com>
- Date: Tue, 12 Jul 2005 05:21:39 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
Hi, You are trying to substract two very close large numbers, and of course you are entering to the limits of machine precision. Cosh[(43*Pi)/Sqrt[2]]//N returns 1.5263010243767756*^41 and (1 - Cosh[43*Sqrt[2]*Pi])*Csch[43*Sqrt[2]*Pi]* Sinh[(43*Pi)/Sqrt[2]]//N returns -1.5263010243767758*^41 so if you evaluate the original expression with high precision N[Cosh[(43*Pi)/Sqrt[2]] + (1 - Cosh[43*Sqrt[2]*Pi])* Csch[43*Sqrt[2]*Pi]*Sinh[(43*Pi)/Sqrt[2]], 50] you will get 6.5517875178543440140500579682357879451030334737036144\ 2804220253`50.*^-42 Now, FullSimplify[Cosh[(43*Pi)/Sqrt[2]] + (1 - Cosh[43*Sqrt[2]*Pi])* Csch[43*Sqrt[2]*Pi]*Sinh[(43*Pi)/Sqrt[2]]] returns Sech[(43*Pi)/Sqrt[2]] And this can be evaluated by //N without suffering precision problems. Sech[(43*Pi)/Sqrt[2]]//N 6.551787517854306*^-42 I hope this helps yehuda On 7/11/05, symbio <symbio at has.com> wrote: > Evaluating (using //N) two exact same expressions, gives wrong answer unless > fullsimplify is used first, I spent 2 days on a problem thinking my answer > was wrong, but turned out Mathematica 5 was giving me buggy answers, I > debugged it to this point, but WHY in the world is this happening? Please > help!!! > > cut and paste below to see the test case: > > In[243]:= > \!\(\(Cosh[\(43\ \[Pi]\)\/\@2] + \((1 - Cosh[43\ \@2\ \[Pi]])\)\ Csch[ > 43\ \@2\ \[Pi]]\ Sinh[\(43\ \[Pi]\)\/\@2] // FullSimplify\) // > N\[IndentingNewLine] > Cosh[\(43\ \[Pi]\)\/\@2] + \((1 - Cosh[43\ \@2\ \[Pi]])\)\ Csch[ > 43\ \@2\ \[Pi]]\ Sinh[\(43\ \[Pi]\)\/\@2] // N\) > Out[243]= > \!\(6.551787517854307`*^-42\) > Out[244]= > \!\(\(-1.9342813113834067`*^25\)\) > > > > thanks, > >