function ut2td, ut ; ; Given a scalar or array of Universal Time Julian Day Numbers, ; return the corresponding Dynamic Time Julian Day Numbers. ; ; B. Knapp, 2002-12-18 ; ; RCS Data: ; ; $Header$ ; ; $Log$ ; ; Print usage? n = n_elements( ut ) if n eq 0 then begin print, ' td = ut2td( ut )' return, ' ' endif ; ; Use 32-bit or 64-bit shareable object library? mbits = ((!version.release ge 5.4) ? !version.memory_bits : 32) dll = getenv('bgkroot')+string(mbits,"('/lib/astron',i2,'.so')") ; ; Define output and then call the Fortran subroutine ut_loc = double( ut ) td = dblarr( n ) result = call_external( dll, 'ut2td_arg_', n, ut_loc, td ) ; ; Return scalar or array, according to argument ut if (size( ut ))[0] eq 0 then $ return, td[0] $ else $ return, td end