C C$$$ SUBPROGRAM DOCUMENTATION BLOCK C . . . . C SUBPROGRAM: TIMSUB PERFORMS TIME CHORES C PRGMMR: S. J. LORD ORG: W/NMC22 DATE: 91-06-06 C C ABSTRACT: VARIOUS ENTRIES CONVERT 6 DIGIT YYMMDD INTO YEAR, MONTH C AND DAY, AND FRACTIONAL JULIAN DAY FROM INTEGER JULIAN DAY, HOUR C AND MINUTE. C C PROGRAM HISTORY LOG: C 91-06-06 S. J. LORD C YY-MM-DD MODIFIER1 DESCRIPTION OF CHANGE C YY-MM-DD MODIFIER2 DESCRIPTION OF CHANGE C C USAGE: CALL PGM-NAME(INARG1, INARG2, WRKARG, OUTARG1, ... ) C INPUT ARGUMENT LIST: C INARG1 - GENERIC DESCRIPTION, INCLUDING CONTENT, UNITS, C INARG2 - TYPE. EXPLAIN FUNCTION IF CONTROL VARIABLE. C C OUTPUT ARGUMENT LIST: (INCLUDING WORK ARRAYS) C WRKARG - GENERIC DESCRIPTION, ETC., AS ABOVE. C OUTARG1 - EXPLAIN COMPLETELY IF ERROR RETURN C ERRFLAG - EVEN IF MANY LINES ARE NEEDED C C INPUT FILES: (DELETE IF NO INPUT FILES IN SUBPROGRAM) C DDNAME1 - GENERIC NAME & CONTENT C C OUTPUT FILES: (DELETE IF NO OUTPUT FILES IN SUBPROGRAM) C DDNAME2 - GENERIC NAME & CONTENT AS ABOVE C FT06F001 - INCLUDE IF ANY PRINTOUT C C REMARKS: LIST CAVEATS, OTHER HELPFUL HINTS OR INFORMATION C C ATTRIBUTES: C LANGUAGE: INDICATE EXTENSIONS, COMPILER OPTIONS C MACHINE: NAS, CYBER, WHATEVER C C$$$ SUBROUTINE TIMSUB(IDATE,IUTC,IYR,IMO,IDA,IHR,IMIN,JDY,DAY) C ENTRY ZTIME(IDATE,IUTC,IYR,IMO,IDA,IHR,IMIN) C C PARSE 6 DIGIT YYMMDD INTO YEAR MONTH AND DAY C IYR = IDATE/10000 IMO =(IDATE-IYR*10000)/100 IDA = IDATE-IYR*10000-IMO*100 IHR =IUTC/100 IMIN=IUTC-IHR*100 RETURN C C THIS ENTRY CALCULATES THE FRACTIONAL JULIAN DAY FROM INTEGERS C JULIAN DAY, HOUR AND MINUTE C ENTRY FLDAY(JDY,IHR,IMIN,DAY) DAY=FLOAT(JDY)+(FLOAT(IHR)*60.+FLOAT(IMIN))/1440. RETURN END