| Re: CalDat [message #25122 is a reply to message #25026] |
Wed, 16 May 2001 08:48  |
Ben Tupper
Messages: 186 Registered: August 1999
|
Senior Member |
|
|
Thanks Mark and Martin,
I don't think the earlier discussion regarding float->double conversion had
sunk in.
It would be nice if the documentation for CalDat made the behavior clear.
Ben
Martin Schultz wrote:
> m.hadfield@niwa.cri.nz ("Mark Hadfield") writes:
>
>> But what about this:
>>
>> CALDAT, double(2529161.36), Month, Day, Year, Hour, Minute, second
>> print, Month, Day, Year, Hour, Minute, second
>> ; 7 4 2212 18 0
>> 0.00000000
>>
>> i.e. CALDAT gives the same result for double(2529161.36) as it does for
>> 2529161.36.
>
> Well, of course it should. The number 2529161.36 cannot be accurately
> represented as float. You can test this with
> IDL> print,float(2529161.36d0),format='(f15.6)'
> 2529161.250000
>
>> I suggest that there is nothing wrong with CALDAT, but that floats have
>> inadequate precision to represent Julian dates. The following shows that
>> they are only accurate to ~0.3 days.
>>
>> ma = machar() & print, 2529161.36*ma.eps
>> ; 0.301500
>>
>
> That hits the nail right on.
>
> Martin
>
> --
> [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ [[[[[[[
> [[ Dr. Martin Schultz Max-Planck-Institut fuer Meteorologie [[
> [[ Bundesstr. 55, 20146 Hamburg [[
> [[ phone: +49 40 41173-308 [[
> [[ fax: +49 40 41173-298 [[
> [[ martin.schultz@dkrz.de [[
> [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ [[[[[[[
--
Ben Tupper
248 Lower Round Pond Road
POB 106
Bristol, ME 04539
Tel: (207) 563-1048
Email: PemaquidRiver@tidewater.net
|
|
|
|