Re[2]: Low precision exponentiation
- To: mathgroup at smc.vnet.net
- Subject: [mg129843] Re[2]: Low precision exponentiation
- From: "Blaise F Egan" <blaise at blaisefegan.me.uk>
- Date: Mon, 18 Feb 2013 06:01:43 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- Delivered-to: l-mathgroup@wolfram.com
- Delivered-to: mathgroup-newout@smc.vnet.net
- Delivered-to: mathgroup-newsend@smc.vnet.net
- Reply-to: "Blaise F Egan" <blaise at blaisefegan.me.uk>
Thanks to all the nice people who took the time to explain it to a newbie. Best wishes Blaise ------ Original Message ------ From: "Murray Eisenberg" <murray at math.umass.edu> To: "mathgroup" <mathgroup at smc.vnet.net> Sent: 17/02/2013 16:24:08 Subject: [mg129843] Re: Low precision exponentiation >You are not doing anything "silly"; you're just being caught by two common traps for Mathematica beginners. > >First, by default Mathematica treats 2.5 as a machine-precision number; no matter what you do with it as is, you won't get any more than machine-precision as result. You need to specify you mean exactly that number, to the desired precision, e.g.: > > 2.5`30 > >Second, no matter what the precision of a number, by default Mathematica only _displays_ 6 significant digits. To get more digits, use NumberForm (or depending on the format you want, perhaps ScientificForm, EngineeringForm, or AccountingForm), with second argument the number of digits to display. > >Thus: > > NumberForm[N[2.5`30^125, 30], 30] >5.527147875260444560247265192*10^(49) > >Actually, in such an example you probably want to be more careful, since the calculation may lose precision. In fact: > > Precision[N[2.5`30^125, 30]] >27.9031 > >You've lost 2 to 3 digits of precision. So just increase the precision in the calculation: > > Precision[N[2.5`40^125, 40]] >37.9031 > >Which means that when you display 30 digits of N[2.5`40^125, 40] with NumberForm, all 30 digits will be correct. > >On Feb 17, 2013, at 4:08 AM, Blaise F Egan <blaise at blaisefegan.me.uk> wrote: > > >> >>I am trying to evaluate 2.5^125 to high precision. >> >>R gives 5.527147875260445183346e+49 as the answer but Mathematica with N[2.5^125,30] gives 5.52715*10^49 and says that is to machine precision. >> >>I am inexperienced at Mathematica. Am I doing something silly? >> > > >--- >Murray Eisenberg murray at math.umass.edu >Mathematics & Statistics Dept. >Lederle Graduate Research Tower phone 413 549-1020 (H) >University of Massachusetts 413 545-2838 (W) >710 North Pleasant Street fax 413 545-1801 >Amherst, MA 01003-9305 > > > > > > >