$! $! EDR processing command procedure $! $! add 48 second roll data output, 09/06/94 SBK $! modified to submit batch job, 04/06/95 SBK $! change one way light time constant from 0.1 to 2.7, 02/11/97 SBK $! change syntax of EDRIN and QUE assignments, 09/11/97 SBK $ $! replace one way light time check with forward time $! progression check, 05/28/98 SBK $! $! Allow redirection of counts output generated by flag 32 SBK 05/17/2003 $! $! Add flag 28 for composite mag processing SBK 03/05/2006 $! $ ON CONTROL_Y THEN GOTO END $ ON WARNING THEN GOTO ERRMSG $ ON ERROR THEN GOTO ERRMSG $ ON SEVERE_ERROR THEN GOTO ERRMSG $ CLR :== @SYS$SYSTEM:CLEAR.COM $ WO :== WRITE SYS$OUTPUT $ ASK :== INQUIRE $! $ START: $ CLR $ WO "" $ WO " VOYAGER PRODUCTION PROCESSING DRIVER" $ WO " Voyager MAG Production" $ WO "" $ WO "" $ WO "" $ WO "IMPORTANT NOTE!" $ WO "" $ WO "EDRs must reside in the directory VOYAGER:[VOYAGER.DATA.EDR]" $ WO "AND follow the naming convention (EDRNAME).JPL." $! $! Get and verify EDR name $! $ WO "" $ ASK EDRNAME "Enter EDR input file name" $ IF F$LOCATE("A",EDRNAME) .LT. F$LENGTH(EDRNAME) $ THEN $ SCID = 1 $ X = F$LOCATE("A",EDRNAME) - 2 $ YEAR = F$EXTRACT(X,2,EDRNAME) $ ENDIF $ IF F$LOCATE("B",EDRNAME) .LT. F$LENGTH(EDRNAME) $ THEN $ SCID = 2 $ X = F$LOCATE("B",EDRNAME) - 2 $ YEAR = F$EXTRACT(X,2,EDRNAME) $ ENDIF $ IF F$LOCATE("A",EDRNAME) .GE. F$LENGTH(EDRNAME) .AND. - F$LOCATE("B",EDRNAME) .GE. F$LENGTH(EDRNAME) $ THEN $ WO "" $ WO "Invalid EDR name." $ WO "EDR name must contain an ""A"" or ""B"" designating the flight id." $ WO "" $ READ/PROMPT="Press RETURN to continue" SYS$COMMAND DUMMY $ GOTO START $ ENDIF $! $! Get processing flags $! $ READFLAG: $ FLAGS = "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" $ WO "" $ WO " 12345678901234567890123456789012" $ READ/PROMPT="Enter system flags: " SYS$COMMAND FLAGS $ IF F$EXTRACT(0,1,FLAGS) .EQS. "?" $ THEN $ TYPE/PAGE VOYAGER:[VOYAGER.COMMAND]FLAGS.LIS $ WO "" $ READ/PROMPT="Press RETURN to continue" SYS$COMMAND DUMMY $ CLR $ GOTO READFLAG $ ENDIF $ FLAGS = F$EXTRACT(0,32,FLAGS) $ FLAGS = F$EDIT(FLAGS,"UPCASE") $ I = 0 $ VECTOR = "" $ LOOP: $ IF F$EXTRACT(I,1,FLAGS) .NES. "T" THEN SWITCH = "F" $ IF F$EXTRACT(I,1,FLAGS) .EQS. "T" THEN SWITCH = "T" $ VECTOR = VECTOR + SWITCH $ I = I + 1 $ IF I .LT. 32 THEN GOTO LOOP $ FLAGS = VECTOR $! $! NOTE: F$EXTRACT VIEWS FLAG CHARACTERS 1-32 AS 0-31 $! $ IF F$EXTRACT(3,1,FLAGS) .EQS. "T" THEN MODE = "D" $ IF F$EXTRACT(4,1,FLAGS) .EQS. "T" THEN MODE = "A" $ IF F$EXTRACT(8,1,FLAGS) .EQS. "T" THEN FLAG = 1 $ IF F$EXTRACT(8,1,FLAGS) .EQS. "F" THEN FLAG = 2 $ FLIM = "0" $ FPASS = "0" $ IF F$EXTRACT(11,1,FLAGS) .EQS. "T" $ THEN $ WO "" $ READ/PROMPT="Enter population filter limit: " SYS$COMMAND FLIM $ WO "" $ READ/PROMPT="Enter population filter passes: " SYS$COMMAND FPASS $ ENDIF $ IF F$EXTRACT(3,1,FLAGS) .EQS. "T" .OR. - F$EXTRACT(4,1,FLAGS) .EQS. "T" THEN GOTO ZERO $ IF F$EXTRACT(20,1,FLAGS) .EQS. "F" .AND. - F$EXTRACT(21,1,FLAGS) .EQS. "F" THEN MODE = "D" $ IF F$EXTRACT(20,1,FLAGS) .EQS. "T" .AND. - F$EXTRACT(21,1,FLAGS) .EQS. "F" THEN MODE = "P" $ IF F$EXTRACT(20,1,FLAGS) .EQS. "F" .AND. - F$EXTRACT(21,1,FLAGS) .EQS. "T" THEN MODE = "S" $ IF F$EXTRACT(20,1,FLAGS) .EQS. "T" .AND. - F$EXTRACT(21,1,FLAGS) .EQS. "T" THEN MODE = "PS" $ IF F$EXTRACT(27,1,FLAGS) .EQS. "T" THEN MODE = "COMP" $! $! Get zeros $! $ ZERO: $ WO "" $ WO "ZERO TABLE SELECTION" $ WO "" $ WO " 1 - Auto select" $ WO " 2 - User select" $ WO "" $ ASK ZTYPE "Select zero tables" $ IF F$INTEGER(ZTYPE) .LT. 1 .OR. F$INTEGER(ZTYPE) .GT. 2 $ THEN $ WO "" $ WO "Invalid entry. Try again." $ GOTO ZERO $ ENDIF $! $ V1ZEROS: $ IF SCID .EQ. 2 THEN GOTO V2ZEROS $ IF F$INTEGER(ZTYPE) .EQ. 1 $ THEN $ ZNAME = "V1_DUAL_ZEROS.DAT" $ GOTO GETFILES $ ENDIF $! $ V2ZEROS: $ IF F$INTEGER(ZTYPE) .EQ. 1 $ THEN $ ZNAME = "V2_DUAL_ZEROS.DAT" $ GOTO GETFILES $ ENDIF $! $ USERZEROS: $ IF F$INTEGER(ZTYPE) .EQ. 2 $ THEN $ WO "" $ ASK ZNAME "Enter zeroes file name ( VOYAGER:[VOYAGER.DATA.ZERO] )" $ IF ZNAME .EQS. "" $ THEN $ WO "" $ WO "Invalid entry. Try again." $ GOTO ZERO $ ENDIF $ ENDIF $! $ GETFILES: $ LOGFILE = "VOYAGER:[VOYAGER.DATA.LOG]" + EDRNAME + ".LOG" $! $! ASSUME POST NEPTUNE ENCOUNTER TIME TAGS (1991+) $! $ IF SCID .EQ. 1 $ THEN $ NAVFILE = "VOYAGER:[VOYAGER.DATA.SEDR]A10053.DAT" $ PNTFILE = "VOYAGER:[VOYAGER.DATA.SEDR]A10053.PTG" $ ENDIF $ IF SCID .EQ. 2 $ THEN $ NAVFILE = "VOYAGER:[VOYAGER.DATA.SEDR]A00159.DAT" $ PNTFILE = "VOYAGER:[VOYAGER.DATA.SEDR]A00159.PTG" $ ENDIF $! $! FIX TO ALLOW INPUT OF SEDR DATA FOR PRE 1990 EDR'S SBK 03/01/95 $! $ IF F$INTEGER(YEAR).GE.77 .AND. F$INTEGER(YEAR).LT.91 $ THEN $ WO "" $ WO "Pre 1991 EDRs require user specification of SEDR data" $ WO "" $ ASK NAVFILE "Enter navigation file name" $ WO "" $ ASK PNTFILE "Enter pointing vector file name" $ ENDIF $! $ ZEROFILE = "VOYAGER:[VOYAGER.DATA.ZERO]" + ZNAME $ IF SCID .EQ. 1 THEN SENFILE = "VOYAGER:[VOYAGER.DATA.SENSITIVITY]PRESENS1.DAT" $ IF SCID .EQ. 2 THEN SENFILE = "VOYAGER:[VOYAGER.DATA.SENSITIVITY]V2SEN86.DAT" $ IF SCID .EQ. 1 THEN SAMFILE = "VOYAGER:[VOYAGER.DATA.ALIGNMENT]V1SAM77.DAT" $ IF SCID .EQ. 2 THEN SAMFILE = "VOYAGER:[VOYAGER.DATA.ALIGNMENT]V2SAM77.DAT" $ IF SCID .EQ. 1 THEN BAMFILE = "VOYAGER:[VOYAGER.DATA.ALIGNMENT]V1BAM11.DAT" $ IF SCID .EQ. 2 THEN BAMFILE = "VOYAGER:[VOYAGER.DATA.ALIGNMENT]V2BAM81.DAT" $ EDRIN = "VOYAGER:[VOYAGER.DATA.EDR]" + EDRNAME + ".JPL" $! $! Display selected processing parameters $! $ DISPLAY: $ WO "" $ WO "PROCESSING EDR: ",EDRNAME,".JPL" $ IF F$EXTRACT(0,1,FLAGS) .EQ. "T" THEN WO - "WRITE ASCII 1.92 SECOND AVERAGES" $ IF F$EXTRACT(1,1,FLAGS) .EQ. "T" THEN WO - "WRITE ASCII 48.0 SECOND AVERAGES" $ IF F$EXTRACT(2,1,FLAGS) .EQ. "T" THEN WO - "PROCESS ENGINEERING RECORDS" $ IF F$EXTRACT(3,1,FLAGS) .EQ. "T" THEN WO - "WRITE MAG DETAIL DATA PRI AND SEC" $ IF F$EXTRACT(4,1,FLAGS) .EQ. "T" THEN WO - "WRITE MAG DETAIL DATA AMB AND S/C FIELD" $ IF F$EXTRACT(5,1,FLAGS) .EQ. "T" THEN WO "WRITE ASCII DETAIL DATA" $ IF F$EXTRACT(6,1,FLAGS) .EQ. "T" THEN WO - "ROTATE DETAIL DATA FROM PAYLOAD COORDINATES" $ IF F$EXTRACT(7,1,FLAGS) .EQ. "T" THEN WO "ENABLE DELTA MODULATION" $ IF F$EXTRACT(8,1,FLAGS) .EQ. "T" THEN WO - "SUPPRESS COORDINATE SYSTEM ROTATION" $ IF F$EXTRACT(9,1,FLAGS) .EQ. "T" THEN WO "SUPPRESS DATA PRESENCE CHECK" $ IF F$EXTRACT(10,1,FLAGS) .EQ. "T" THEN WO "SUPPRESS DATA QUALITY CHECK" $ IF F$EXTRACT(11,1,FLAGS) .EQ. "T" THEN WO "ENABLE POPULATION FILTER" $ IF F$EXTRACT(12,1,FLAGS) .EQ. "T" THEN WO "BYPASS SENSOR ALIGNMENT" $ IF F$EXTRACT(13,1,FLAGS) .EQ. "T" THEN WO "BYPASS TIME REGRESSION CHECK" $ IF F$EXTRACT(14,1,FLAGS) .EQ. "T" THEN WO "FORCE ZEROS TO FIRST TABLE" $! IF F$EXTRACT(15,1,FLAGS) .EQ. "T" THEN WO "BYPASS ONE WAY LIGHT TIME CHECK" $ IF F$EXTRACT(15,1,FLAGS) .EQ. "T" THEN WO "BYPASS TIME PROGRESSION CHECK" $ IF F$EXTRACT(16,1,FLAGS) .EQ. "T" THEN WO "JUPITER PLANETARY COORDINATES" $ IF F$EXTRACT(17,1,FLAGS) .EQ. "T" THEN WO "SATURN PLANETARY COORDINATES" $ IF F$EXTRACT(18,1,FLAGS) .EQ. "T" THEN WO "URANUS PLANETARY COORDINATES" $ IF F$EXTRACT(19,1,FLAGS) .EQ. "T" THEN WO "NEPTUNE PLANETARY COORDINATES" $ IF F$EXTRACT(3,1,FLAGS) .EQS. "T" .OR. - F$EXTRACT(4,1,FLAGS) .EQS. "T" .OR. - F$EXTRACT(29,1,FLAGS) .EQS. "T" THEN GOTO CONT1 $ IF F$EXTRACT(20,1,FLAGS) .EQ. "T" .AND. F$EXTRACT(21,1,FLAGS) .EQ. "T" - .AND. F$EXTRACT(27,1,FLAGS) .NE. "T" $ THEN $ WO "PRIMARY AND SECONDARY MAG SEPARATED" $ ENDIF $ IF F$EXTRACT(20,1,FLAGS) .NE. "T" .AND. F$EXTRACT(21,1,FLAGS) .EQ. "T" - .AND. F$EXTRACT(27,1,FLAGS) .NE. "T" $ THEN $ WO "SECONDARY MAG ONLY" $ ENDIF $ IF F$EXTRACT(20,1,FLAGS) .EQ. "T" .AND. F$EXTRACT(21,1,FLAGS) .NE. "T" - .AND. F$EXTRACT(27,1,FLAGS) .NE. "T" $ THEN $ WO "PRIMARY MAG ONLY" $ ENDIF $ IF F$EXTRACT(20,1,FLAGS) .NE. "T" .AND. F$EXTRACT(21,1,FLAGS) .NE. "T" - .AND. F$EXTRACT(27,1,FLAGS) .NE. "T" $ THEN $ WO "DUAL MAG" $ ENDIF $ IF F$EXTRACT(27,1,FLAGS) .EQ. "T" THEN WO - "COMPOSITE MAG - SECONDARY X & Z REPLACE PRIMARY X & Z (SUMMARY ONLY)" $ CONT1: $ IF F$EXTRACT(22,1,FLAGS) .EQ. "T" THEN WO "BYPASS BOOM ALIGNMENT" $ IF F$EXTRACT(23,1,FLAGS) .EQ. "T" THEN WO "FORCE IB MAG AS PRIMARY" $ IF F$EXTRACT(24,1,FLAGS) .EQ. "T" THEN WO - "WRITE MAG/PLS COMMAND WORDS AND MAG STAT WORDS" $ IF F$EXTRACT(25,1,FLAGS) .EQ. "T" THEN WO "" $ IF F$EXTRACT(26,1,FLAGS) .EQ. "T" THEN WO "PROCESS S/C FIELD AS AMBIENT" $ IF F$EXTRACT(28,1,FLAGS) .EQ. "T" THEN WO "OVERRIDE RECORD CHECK ROUTINE" $ IF F$EXTRACT(29,1,FLAGS) .EQ. "T" THEN WO "RESERVED" $ IF F$EXTRACT(30,1,FLAGS) .EQ. "T" THEN WO "RESERVED" $ IF F$EXTRACT(31,1,FLAGS) .EQ. "T" THEN WO - "WRITE ASCII COUNTS & GAMMAS BEFORE SENSOR AND BOOM ALIGNMENT" $ WO "" $ ASK ANS "Are these parameters correct? (Y/N)" $ IF ANS .NES. "Y" .AND. ANS .NES. "y" $ THEN $ CLR $ GOTO START $ ENDIF $! $! GET STARTING PROCESS TIME $! $ START_TIME: $ WO "" $ ASK STIME "Enter start time (yy/ddd/hh:mm:ss.fff)" $ SYEAR = F$EXTRACT(0,2,STIME) $ SDAY = F$EXTRACT(3,3,STIME) $ SHOUR = F$EXTRACT(7,2,STIME) $ IF SYEAR .EQS. "" .AND. SDAY .EQS. "" .AND. SHOUR .EQS. "" THEN GOTO SKIP $ IF F$LENGTH(F$EDIT(SYEAR,"TRIM")) .LT. 2 $ THEN $ WO "" $ WO "Invalid entry. Enter 2 digit year (00-99)." $ GOTO START_TIME $ ENDIF $ IF F$LENGTH(F$EDIT(SDAY,"TRIM")) .LT. 3 $ THEN $ WO "" $ WO "Invalid entry. Enter 3 digit day (001-365)." $ GOTO START_TIME $ ENDIF $ IF F$LENGTH(F$EDIT(SHOUR,"TRIM")) .LT. 2 $ THEN $ WO "" $ WO "Invalid entry. Enter 2 digit hour (00-23)." $ GOTO START_TIME $ ENDIF $ IF SCID .EQ. 1 THEN EDRNAME = "V1"+SYEAR+SDAY+SHOUR $ IF SCID .EQ. 2 THEN EDRNAME = "V2"+SYEAR+SDAY+SHOUR $ SKIP: $! $! GET ENDING PROCESS TIME $! $ END_TIME: $ WO "" $ ASK ETIME "Enter end time (yy/ddd/hh:mm:ss.fff)" $! $! DETAIL DATA PROCESSING $! $ DETPROC: $ IF ( F$EXTRACT(3,1,FLAGS) .EQS. "T" .OR. F$EXTRACT(4,1,FLAGS) .EQS. "T" ) $ THEN $ PROCTYPE = "DETAIL" $ IF MODE .EQS. "D" THEN SUFFIX = "PSD" $ IF MODE .EQS. "A" THEN SUFFIX = "AFD" $ DETOUT = EDRNAME + "." + SUFFIX $ OUTFILE = "VOYAGER:[VOYAGER.DATA.DETAIL]" + DETOUT $ GOTO INDAT $ ENDIF $! $! SUMMARY DATA PROCESSING $! $ SUMMPROC: $ PROCTYPE = "SUMMARY" $ IF MODE .EQS. "D" THEN SUMMOUT = EDRNAME + ".DUA" $ IF MODE .EQS. "P" THEN SUMMOUT = EDRNAME + ".PRI" $ IF MODE .EQS. "S" THEN SUMMOUT = EDRNAME + ".SEC" $ IF MODE .EQS. "PS" THEN SUMMOUT = EDRNAME + ".DBL" $ IF MODE .EQS. "COMP" THEN SUMMOUT = EDRNAME + ".CMP" $ OUTFILE = "VOYAGER:[VOYAGER.DATA.SUMMARY]" + SUMMOUT $! $ INDAT: $ OPEN/WRITE FOR005 FOR005.DAT $! log file name $ WRITE FOR005 LOGFILE $! navigation file name $ WRITE FOR005 NAVFILE $! pointing vector file name $ WRITE FOR005 PNTFILE $! zeroes file name $ WRITE FOR005 ZEROFILE $! sensitivities file name $ WRITE FOR005 SENFILE $! sensor alignment file name $ WRITE FOR005 SAMFILE $! boom alignment file name $ WRITE FOR005 BAMFILE $! edr file name $ WRITE FOR005 EDRIN $! output (summary/detail) file name $ WRITE FOR005 OUTFILE $! processing flags $ WRITE FOR005 FLAGS $! data start time $ WRITE FOR005 STIME $! data end time $ WRITE FOR005 ETIME $! time mode (SCET,ERTS,ERTE) $ WRITE FOR005 "SCET" $! maximum forward time jump (replaces one way light time) $ WRITE FOR005 "259200.0" ! maximum advancement in seconds ( = 3 days ) $!WRITE FOR005 "2.7" ! more realistic value for 1990's data ( = 1 day ) $!WRITE FOR005 "0.1" $! range control $ WRITE FOR005 "-1" $! inboard initial range $ WRITE FOR005 "0" $! outboard initial range $ WRITE FOR005 "0" $! mode control $ WRITE FOR005 "-1" $! inboard initial mode $ WRITE FOR005 "F" $! outboard initial mode $ WRITE FOR005 "F" $! initial prime mag (T-inboard,F-outboard) $ WRITE FOR005 "F" $! population filter limit $ WRITE FOR005 FLIM $! population filter passes $ WRITE FOR005 FPASS $ CLOSE FOR005 $! $! Show i/o files $! $ WO "" $ WO "PROGRAM INPUT" $ WO "" $ WO "LOG FILE: " + LOGFILE $ WO "NAV FILE: " + NAVFILE $ WO "PNT FILE: " + PNTFILE $ WO "ZERO FILE: " + ZEROFILE $ WO "SENS FILE: " + SENFILE $ WO "SAM FILE: " + SAMFILE $ WO "BAM FILE: " + BAMFILE $ WO "EDR INPUT: " + EDRIN $ WO "OUTPUT FILE: " + OUTFILE $! $ WO "" $ ASK ANS "Are these values correct (y/n)?" $ IF ANS .NES. "Y" .AND. ANS .NES. "y" THEN GOTO DISPLAY $! $! BUILD BATCH JOB COMMAND PROCEDURE $! $ OPEN/WRITE EDRBATCH SYS$LOGIN:EDRBATCH.COM $ WRITE EDRBATCH "$ SET VERIFY" $! $ IF F$EXTRACT(31,1,FLAGS) .EQS. "T" $! Redirect raw count dumps if requested SBK 05/17/2003 $ THEN $ WRITE EDRBATCH - "$ ASSIGN VOYAGER:[VOYAGER.DATA.COUNT]",EDRNAME,".CNT FOR081" $ CNTOUT = "VOYAGER:[VOYAGER.DATA.COUNT]" + EDRNAME + ".CNT" $ WRITE EDRBATCH "$ ON ERROR THEN GOTO DONE" $ ENDIF $! $ IF F$EXTRACT(5,1,FLAGS) .EQ. "T" $! Redirect ascii detail data SBK 11/28/2006 $ THEN $ WRITE EDRBATCH - "$ ASSIGN VOYAGER:[VOYAGER.DATA.DETAIL]",EDRNAME,".DAT FOR084" $ ENDIF $! $ IF F$EXTRACT(24,1,FLAGS) .EQ. "T" $! Redirect ascii MAG instrument status output SBK 12/4/2006 $ THEN $ WRITE EDRBATCH - "$ ASSIGN VOYAGER:[VOYAGER.DATA.DEBUG]",EDRNAME,".STATUS FOR088" $ WRITE EDRBATCH - "$ ASSIGN VOYAGER:[VOYAGER.DATA.DEBUG]",EDRNAME,".STATDMP FOR090" $ ENDIF $! $ WRITE EDRBATCH "$ RUN VOYAGER:[VOYAGER.EXECUTABLE]VOYPROD.EXE" $ CLOSE EDRBATCH $ APPEND FOR005.DAT SYS$LOGIN:EDRBATCH.COM $ DELETE FOR005.DAT; $! $ IF F$EXTRACT(31,1,FLAGS) .EQS. "T" $! Close redirected count file SBK 05/17/2003 $ THEN $ OPEN/APPEND EDRBATCH SYS$LOGIN:EDRBATCH.COM $ WRITE EDRBATCH "$ DONE:" $ WRITE EDRBATCH "$ DEASSIGN FOR081" $ WRITE EDRBATCH "$ SET ACL/ACL=(ID=[RESEARCH,Z1SBK],ACCESS=READ+WRITE+EXECUTE+DELETE) ",CNTOUT $ WRITE EDRBATCH "$ SET ACL/ACL=(ID=[RESEARCH,XRTPM],ACCESS=READ+WRITE+EXECUTE+DELETE) ",CNTOUT $ WRITE EDRBATCH "$ SET ACL/ACL=(ID=[RESEARCH,MAG],ACCESS=READ+WRITE+EXECUTE+DELETE) ",CNTOUT $ WRITE EDRBATCH "$ SET FILE/PROT=(W:R) ", CNTOUT $ CLOSE EDRBATCH $ ENDIF $ $ IF F$EXTRACT(5,1,FLAGS) .EQS. "T" $! Close redirected ascii detail data SBK 11/28/2006 $ THEN $ OPEN/APPEND EDRBATCH SYS$LOGIN:EDRBATCH.COM $ WRITE EDRBATCH "$ DEASSIGN FOR084" $ CLOSE EDRBATCH $ ENDIF $! $ IF F$EXTRACT(24,1,FLAGS) .EQS. "T" $! Close redirected ascii MAG instrument status SBK 12/4/2006 $ THEN $ OPEN/APPEND EDRBATCH SYS$LOGIN:EDRBATCH.COM $ WRITE EDRBATCH "$ DEASSIGN FOR088" $ WRITE EDRBATCH "$ DEASSIGN FOR090" $ CLOSE EDRBATCH $ ENDIF $! $ OPEN/APPEND EDRBATCH SYS$LOGIN:EDRBATCH.COM $! Prevent file access denial between production staff - SBK 12/06/2004 $ WRITE EDRBATCH "$ SET ACL/ACL=(ID=[RESEARCH,Z1SBK],ACCESS=READ+WRITE+EXECUTE+DELETE) ",OUTFILE $ WRITE EDRBATCH "$ SET ACL/ACL=(ID=[RESEARCH,Z1SBK],ACCESS=READ+WRITE+EXECUTE+DELETE) ",LOGFILE $ WRITE EDRBATCH "$ SET ACL/ACL=(ID=[RESEARCH,XRTPM],ACCESS=READ+WRITE+EXECUTE+DELETE) ",OUTFILE $ WRITE EDRBATCH "$ SET ACL/ACL=(ID=[RESEARCH,XRTPM],ACCESS=READ+WRITE+EXECUTE+DELETE) ",LOGFILE $ WRITE EDRBATCH "$ SET ACL/ACL=(ID=[RESEARCH,MAG],ACCESS=READ+WRITE+EXECUTE+DELETE) ",OUTFILE $ WRITE EDRBATCH "$ SET ACL/ACL=(ID=[RESEARCH,MAG],ACCESS=READ+WRITE+EXECUTE+DELETE) ",LOGFILE $! Set output files world readable - SBK 12/06/2004 $ WRITE EDRBATCH "$ SET FILE/PROT=(W:R) ",OUTFILE $ WRITE EDRBATCH "$ SET FILE/PROT=(W:R) ",LOGFILE $ CLOSE EDRBATCH $! $ WO "" $ IF PROCTYPE .EQS. "DETAIL" THEN - WO "Output Detail file is ",OUTFILE $ IF PROCTYPE .EQS. "SUMMARY" THEN - WO "Output Summary file is ",OUTFILE $ WO "Output log file is ",LOGFILE $ WO "" $ IF PROCTYPE .EQS. "DETAIL" THEN GOTO BATCH $! $! PLOT SUMMARY DATA $! $ PLOT: $! these queues should exist in Mongo's rast.com file $ if f$edit(mongo_def,"UPCASE") .eqs. "LEPVGRP" .or. - f$edit(mongo_def,"UPCASE") .eqs. "LEPBURP" .or. - f$edit(mongo_def,"UPCASE") .eqs. "LEPHPW124" .or. - f$edit(mongo_def,"UPCASE") .eqs. "LEPHPS101" .or. - f$edit(mongo_def,"UPCASE") .eqs. "LEPHP166" .or. - f$edit(mongo_def,"UPCASE") .eqs. "LEPVGR_LEPVGRP" .or. - f$edit(mongo_def,"UPCASE") .eqs. "LEPVGR_LEPBURP" .or. - f$edit(mongo_def,"UPCASE") .eqs. "LEPVGR_LEPHPW124" .or. - f$edit(mongo_def,"UPCASE") .eqs. "LEPVGR_LEPHPS101" .or. - f$edit(mongo_def,"UPCASE") .eqs. "LEPVGR_LEPHP166" $ then $ que = "QUE=" + mongo_def + "/FORM=DENSE" $ else $ que = "QUE=SYS$PRINT" $ endif $ ASK ANS "Plot summary data (Y/N)?" $ IF ANS .NES. "Y" .AND. ANS .NES. "y" THEN GOTO HOUR $ OPEN/WRITE FOR005 FOR005.DAT $! write sys$output "Printing log file to queue: ",que $!$ WRITE FOR005 "$ PRINT/",QUE," ",LOGFILE $! WRITE FOR005 "$ PRINT/QUE=SYS$PRINT ",LOGFILE ! SBK 01/05/99 $ WRITE FOR005 "$ RUN VOYAGER:[VOYAGER.EXECUTABLE]SUMMPLOTS.EXE" $ WRITE FOR005 "VOYAGER:[VOYAGER.DATA.SUMMARY]",SUMMOUT $ CLOSE FOR005 $ APPEND FOR005.DAT SYS$LOGIN:EDRBATCH.COM $ DELETE FOR005.DAT; $! $! CREATE HOUR AVERAGES $! $ HOUR: $ WO "" $ ASK ANS "Make ASCII hour averages (Y/N)?" $ IF ANS .NES. "Y" .AND. ANS .NES. "y" THEN GOTO HOUR2 $ WO "" $ WO "Summary values > 3 nT will be excluded from averaging SBK 08/03/94" $ INFILE = "VOYAGER:[VOYAGER.DATA.SUMMARY]" + SUMMOUT $ HOUROUT1 = "ASCII" $ HOUROUT2 = "VOYAGER:[VOYAGER.DATA.PARKER]" + "P" + SUMMOUT $ OPEN/WRITE FOR005 FOR005.DAT $ WRITE FOR005 "$ RUN VOYAGER:[VOYAGER.EXECUTABLE]SUMMHOURS.EXE" $ WRITE FOR005 INFILE $ WRITE FOR005 HOUROUT1 $ WRITE FOR005 HOUROUT2 $ CLOSE FOR005 $ APPEND FOR005.DAT SYS$LOGIN:EDRBATCH.COM $ DELETE/NOCONFIRM FOR005.DAT;* $ WO "" $ WO "ASCII hour averages file is ",HOUROUT2 $ GOTO ROLL $ HOUR2: $ WO "" $ ASK ANS "Make binary hour averages (Y/N)?" $ IF ANS .NES. "Y" .AND. ANS .NES. "y" THEN GOTO ROLL $ WO "" $ WO "Summary values > 3 nT will be excluded from averaging SBK 08/03/94" $ INFILE = "VOYAGER:[VOYAGER.DATA.SUMMARY]" + SUMMOUT $ HOUROUT1 = "BINARY" $ HOUROUT2 = "VOYAGER:[VOYAGER.DATA.HOUR]" + "H" + SUMMOUT $ OPEN/WRITE FOR005 FOR005.DAT $ WRITE FOR005 "$ RUN VOYAGER:[VOYAGER.EXECUTABLE]SUMMHOURS.EXE" $ WRITE FOR005 INFILE $ WRITE FOR005 HOUROUT1 $ WRITE FOR005 HOUROUT2 $! $! ASSIGN FULL FILE PRIVILEGES TO GROUP MEMBERS SBK 06/09/2004 $! $ WRITE FOR005 "$ SET ACL/ACL=(ID=[RESEARCH,Z1SBK],ACCESS=READ+WRITE+EXECUTE+DELETE) " + HOUROUT2 $ WRITE FOR005 "$ SET ACL/ACL=(ID=[RESEARCH,XRTPM],ACCESS=READ+WRITE+EXECUTE+DELETE) " + HOUROUT2 $ WRITE FOR005 "$ SET ACL/ACL=(ID=[RESEARCH,MAG],ACCESS=READ+WRITE+EXECUTE+DELETE) " + HOUROUT2 $ WRITE FOR005 "$ SET FILE/PROT=(W:R) " + HOUROUT2 $ CLOSE FOR005 $ APPEND FOR005.DAT SYS$LOGIN:EDRBATCH.COM $ DELETE/NOCONFIRM FOR005.DAT;* $ WO "" $ WO "BINARY hour averages file is ",HOUROUT2 $! $! CREATE 48 SECOND ASCII ROLL DATA $! $ ROLL: $ WO "" $ ASK ANS "Make 48 second ASCII data set(Y/N)?" $ IF ANS .NES. "Y" .AND. ANS .NES. "y" THEN GOTO BATCH $ INFILE = "VOYAGER:[VOYAGER.DATA.SUMMARY]" + SUMMOUT $ ROLLOUT = "VOYAGER:[VOYAGER.DATA.ROLL]" + "Z" + SUMMOUT $ OPEN/WRITE FOR005 FOR005.DAT $ WRITE FOR005 "$ RUN VOYAGER:[VOYAGER.EXECUTABLE]SUMMCON.EXE" $ WRITE FOR005 INFILE $ WRITE FOR005 ROLLOUT $ CLOSE FOR005 $ APPEND FOR005.DAT SYS$LOGIN:EDRBATCH.COM $ DELETE FOR005.DAT; $ WO "" $ WO "48 second ASCII data file is ",ROLLOUT $! $! SUBMIT BATCH PROCESSING JOB $! $ BATCH: $ OPEN/WRITE FOR005 FOR005.DAT $ WRITE FOR005 "$ WAIT 00:00:05" $!WRITE FOR005 "$ SHOW QUEUE FAST" $! $! ASSIGN FULL FILE PRIVILEGES TO GROUP MEMBERS SBK 05/25/2004 $! $! WRITE FOR005 "$ SET ACL/ACL=(ID=[RESEARCH,Z1SBK],ACCESS=READ+WRITE+EXECUTE+DELETE) " + OUTFILE $! WRITE FOR005 "$ SET ACL/ACL=(ID=[RESEARCH,XRTPM],ACCESS=READ+WRITE+EXECUTE+DELETE) " + OUTFILE $! WRITE FOR005 "$ SET ACL/ACL=(ID=[RESEARCH,RBORDA],ACCESS=READ+WRITE+EXECUTE+DELETE) " + OUTFILE $ WRITE FOR005 "$ EXIT" $ CLOSE FOR005 $ APPEND FOR005.DAT SYS$LOGIN:EDRBATCH.COM $ DELETE FOR005.DAT; $ WO "" $ WO "SUBMITTING EDR PROCESSING JOB..." $ WO "" $ SUBMIT /NOPRINT /NOTIFY /LOG=SYS$LOGIN /QUE=VOYPROD SYS$LOGIN:EDRBATCH.COM $ WO "" $ EXIT $! $ ERRMSG: $ WO "" $ WO "***RUNTIME ERROR ENCOUNTERED***" $ WO "" $! $ END: $ SET NOON $ IF F$SEARCH("FOR005.DAT") .NES. "" $ THEN $ CLOSE FOR005 $ DELETE/NOCONFIRM FOR005.DAT;* $ ENDIF $ EXIT