I'd also like to chime in here and say that I think PDL's support of data types is too limited right now. It should at least support long double formats. It would be more than awesome if PDL would work on the full range of numeric data types commonly used in scientific software and data formats, but it doesn't even come close currently.
Some relevant lists: HDF5: http://www.hdfgroup.org/HDF5/doc/UG/11_Datatypes.html HDF: http://www.hdfgroup.org/training/HDFtraining/UsersGuide/Fundmtls.fm3.html NetCDF: http://www.unidata.ucar.edu/software/netcdf/docs/netcdf/CDL-Data-Types.html It would make interfacing to these very common formats stupid easy without any additional memory or data storage expense that you get from using the current PDL interfaces to these formats... -Judd ____________________________ Judd Taylor Software Engineer Orbital Systems, Ltd. 3807 Carbon Rd. Irving, TX 75038-3415 [email protected]<mailto:[email protected]> (972) 915-3669 x127 ________________________________ From: MARK BAKER [[email protected]] Sent: Friday, February 10, 2012 11:29 AM To: "[email protected]" Subject: Re: [Perldl] Large Number Support? Im having the same problem where my piddle gets clobbered pdl> $a = pdl(34758935747354930567354689735940673659406798345); pdl> p $a; 3.47589357473549e+046 and it clobbers it even if i use a string method pdl> $a = pdl('34758935747354930567354689735940673659406798345'); pdl> p $a; 3.47589357473549e+046 is there any way to save the precision here and still use this matrix ? Thanks & Cheers -Mark R Baker [email protected] ________________________________ From: Joel Berger <[email protected]> To: Chris Marshall <[email protected]> Cc: "[email protected]" <[email protected]> Sent: Friday, February 10, 2012 7:21 AM Subject: Re: [Perldl] Large Number Support? I'm not sure how it interoperates with PDL (in fact I would guess it can't) but if you need more digits you can look at bignum (http://p3rl.org/bignum) which has been core since 5.8. Internally it uses different classes for Int Float etc, but on the surface are used like any other number in Perl (again probably not PDL). On Fri, Feb 10, 2012 at 7:54 AM, Chris Marshall <[email protected]<mailto:[email protected]>> wrote: > I think the problem is you are trying to use more > significant digits than can be represented by > IEEE double precision: about 15.95 decimal > digits while your time values are 17 digits. You > can either bias your dates (maybe starting from > 2000, e.g., 2000+xx so 2012->12) or use a 64bit > integer type. > > --Chris > > On Fri, Feb 10, 2012 at 6:32 AM, chm > <[email protected]<mailto:[email protected]>> wrote: >> Hi Cliff- >> >> Do you have a program showing the problem >> with some input data? What data type are >> the piddles? (help $mypdl in the shell) >> >> As for the output from the 'p' command >> for a piddle, you're looking at some format >> conversion of some pdl type and not the >> raw data. See PDL::Core for info on the >> current format. >> >> Also, you might see if the example you >> show for the PDL shell gives the same >> output for the debugger session. >> >> --Chris >> >> P.S. Could you please wrap your text to >> 72 characters so that the list archives >> are readable as paragraphs. I.e., for >> this post: >> >> http://mailman.jach.hawaii.edu/pipermail/perldl/2012-February/006432.html >> >> There appear to be problems with mac mail >> that result in this happening. No solution >> other than hand folding/wrapping was found. >> >> >> >> On 2/9/2012 10:49 PM, Clifford Sobchuk wrote: >>> >>> >>> Hi folks, >>> >>> I ran into a problem - or an effect, that I don't understand. There >>> seems to be a number that is too big to be displayed. See the >>> following code: >>> >>> pdl> p 2**40 1099511627776 >>> >>> pdl> p 2**32*1.00001 4295010245.67296 >>> >>> pdl> p 2**36*1.00001 68720163930.7674 >>> >>> pdl> p 2**38*1.00001 274880655723.069 >>> >>> My problem is that I am using a serialized value for the date and >>> time - to millisecond precision. So the following represents : >>> YYYYMMDDHHMMSS.msmsms >>> >>> DB<33> p ${$myData{MC800BTS1494}{1}{1}{time}}[0] 20120206201813.220 >>> >>> DB<34> p ${$myData{MC800BTS1494}{1}{1}{time}}[1] 20120206201813.320 >>> >>> DB<35> p ${$myData{MC800BTS1494}{1}{1}{time}}[2] 20120206201813.420 >>> >>> DB<36> p ${$myData{MC800BTS1494}{1}{1}{time}}[4] 20120206201813.620 >>> >>> You'll notice that there are two more digits displayed when they are >>> in Perl but after I convert them into a PDL, I lose the last two >>> digits. I didn't think that this was considered a BigFloat? >>> >>> Any thoughts. Thanks, >>> >>> >>> CLIFF SOBCHUK Ericsson Core RF Engineering Calgary, AB, Canada Phone >>> 613-667-1974 ECN 8109 x71974 Mobile 403-819-9233 >>> [email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>> >>> >>> yahoo: sobchuk http://www.ericsson.com/ >>> >>> "The author works for Telefonaktiebolaget L M Ericsson ("Ericsson"), >>> who is solely responsible for this email and its contents. All >>> inquiries regarding this email should be addressed to Ericsson. The >>> web site for Ericsson is www.ericsson.com<http://www.ericsson.com>." >>> >>> This Communication is Confidential. We only send and receive email on >>> the basis of the terms set out at >>> >>> www.ericsson.com/email_disclaimer<http://www.ericsson.com/email_disclaimer> >>> >>> >>> >>> >>> >>> >>> _______________________________________________ Perldl mailing list >>> [email protected]<mailto:[email protected]> >>> http://mailman.jach.hawaii.edu/mailman/listinfo/perldl >> >> > > _______________________________________________ > Perldl mailing list > [email protected]<mailto:[email protected]> > http://mailman.jach.hawaii.edu/mailman/listinfo/perldl _______________________________________________ Perldl mailing list [email protected]<mailto:[email protected]> http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
_______________________________________________ Perldl mailing list [email protected] http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
