function jd2carr, jd ; ; Given a scalar or array of Julian Day Numbers (& fraction), return ; the corresponding Carrington Solar rotation numbers. ; ; B. Knapp, 2001-01-10 ; ; RCS Data: ; ; $Header$ ; ; $Log$ ; ; Print usage? n = n_elements( jd ) if n eq 0 then begin print, ' carr = jd2carr( jd )' 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 jd_loc = double( jd ) carr = dblarr( n ) result = call_external( dll, 'ut2carr_arg_', n, jd_loc, carr ) ; ; Return scalar or array, according to argument jd if (size( jd ))[0] eq 0 then $ return, carr[0] $ else $ return, carr end