[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Computing Time
- Subject: Re: Computing Time
 
- From: Martin Schultz <martin.schultz(at)dkrz.de>
 
- Date: Mon, 20 Mar 2000 10:33:04 -0100
 
- Newsgroups: comp.lang.idl-pvwave
 
- Organization: MPI fuer Meteorologie
 
- References: <8asr1h$3p5$1@nnrp1.deja.com>
 
- Xref: news.doit.wisc.edu comp.lang.idl-pvwave:18955
 
loeh@my-deja.com wrote:
> 
> Hi,
> I have a couple of measurements and like to calculate the time between
> them. But I am not sure which routine to use.
> I tried the following but the result is confusing
> IDL> diff=JULDAY(3,17,2000,17,30,22)-JULDAY(3,17,2000,15,22,17)
> IDL> print,diff
> 0.088946760
> IDL> CALDAT, diff, Month, Day, Year, Hour, Minute, Second
> IDL> PRINT, Month, Day, Year, Hour, Minute, Second
> 1 1 -4713 14 8
> 5.0000381
> Thanks for help
> Mirko
> 
JULDAY will give you fractional days as an answer. To convert this back
into
days, hours, minutes, etc., you can do:
   days = fix(diff)   ; or long() if you desire
   hour = fix( (diff-days)*24. )
   minute = fix( (diff-days-hour/24.)*1440. )
   second = fix( (diff-days-hour/24.-minute/1440.)*86400. )
just that you may run into roundoff problems here or there. And this is
why you should probably follow Liam's advice and use the JHU APL
routines.
Cheers,
Martin
PS: and to save you from likely headaches: always use DOUBLE if you deal
with time variables (except maybe for storing them in a file)
-- 
[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[
[[ 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                                        [[
[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[