Search All of the Math Forum:
Views expressed in these public forums are not endorsed by
NCTM or The Math Forum.



Re: How to import data without losing much precision
Posted:
Dec 2, 2012 10:54 PM


"Jeff " <spREMOVEHITSjeffAT@SIGNoptonline.net> wrote in message news:k9gk4s$2hh$1@newscl01ah.mathworks.com... > I'm trying to import some data, which was created by C code, into Matlab > without losing much precision. Can someone show me an example of how to do > so? > > I have about 52 decimal places of precision, with N=16 numbers on a line, > like this:
Double precision only allows you 52 bits of precision (well, plus the implicitly stored bit) not 52 digits.
*snip*
> I've tried using dlmread, csvread and importdata, but they cut off > precision.
You could read these in as _strings_ and convert them into symbolic objects using Symbolic Math Toolbox.
*snip*
> I've tried other things, too, but I cannot get any more precision. You can > see that their all losing precision after about 16 decimal places.
Yes. See:
http://en.wikipedia.org/wiki/Doubleprecision_floatingpoint_format
> Could someone show me an example of how to import my data with the most > precision?
Why do you believe you need 52 decimal digits of precision for your data? For comparison, you only need roughly 39 digits of pi to calculate the volume of the universe to within one atom.
http://en.wikipedia.org/wiki/Pi#Motivations_for_computing_.CF.80
Just because you HAVE the number out to N digits doesn't mean you NEED all those digits.
 Steve Lord slord@mathworks.com To contact Technical Support use the Contact Us link on http://www.mathworks.com



