Re: Plotting with arbitary precision????

*To*: mathgroup at smc.vnet.net*Subject*: [mg69626] Re: Plotting with arbitary precision????*From*: Paul Abbott <paul at physics.uwa.edu.au>*Date*: Sun, 17 Sep 2006 22:46:10 -0400 (EDT)*Organization*: The University of Western Australia*References*: <eejaoo$3q4$1@smc.vnet.net>

In article <eejaoo$3q4$1 at smc.vnet.net>, "lcw1964" <leslie.wright at alumni.uwo.ca> wrote: > However, the problem comes with the plotting. In a very good rational > approximation for Exp[x] I have a maximum relative error of, say, about > 10^-22. Let's call it RatApp. If I try to plot (RatApp-Exp[x])/Exp[x] > on my interval of approximation, I don't get a nice smooth double > ripple error curve like I should. I get a noisy mess confined to > about +/- 10^-17. Which is precisely what I should get since Plot uses > only machine precision (not the 30 or so digits of arbitary working > precision specified) when generating plots. Since the numerator of my > error function will differ only in the 22nd digit or so and beyond, > the subtlety of the subtraction is lost. > > Online help for Plot doesn't seem to provide an arbitrary precision > "override" to get over this issue. In the other system, one simply had > to increase the Digits setting since everything is done in software > floating point anyway--slower, but easier to use. Is there any way in > Mathematica to plot a function that requires such high precision in > interim calculations so that the plot is accurate? This is (almost) a FAQ -- look up high precision plotting at http://groups.google.com/group/comp.soft-sys.math.mathematica and you will get a number of hits. As a simple example, if f[x_] = LegendreP[50, x] then machine precision is insufficient for plotting: Plot[f[x], {x, -1, 1}, PlotRange -> All, PlotPoints -> 50]; The trick is to re-define the function as g[x_?NumericQ] := With[{q = SetPrecision[x, 30]}, f[q]] Plot[g[x], {x, -1, 1}, PlotRange -> All, PlotPoints -> 50]; In a future version of Mathematica I expect that there will be a WorkingPrecision option to Plot ... Cheers, Paul _______________________________________________________________________ Paul Abbott Phone: 61 8 6488 2734 School of Physics, M013 Fax: +61 8 6488 1014 The University of Western Australia (CRICOS Provider No 00126G) AUSTRALIA http://physics.uwa.edu.au/~paul