CALL SEQUENCES... mkmask1 MASKIN OUT1 OUT2 INPUT OUTPUT mkmask2 MSKIN1 MSKIN2 MSKOUT OUTPUT mkmask3 MSKIN1 MSKIN2 MSKOUT OUTPUT AUTHOR - B.Dugas, MARS 21/1989. LAST REVISION: $Header: Remplacer-GETARG-IARGC-par-GET_COMMAND_ARGUMENT-COMMAND_ARGUMENT_COUNT @ 2018-01-30 15:25:36 -0500 (dugas) $ DESCRIPTION OF THE DIFFERENT PROGRAMS... 1) MKMASK1 IS A COMPLETELY (I.E. INCOMPATIBLE) NEW VERSION OF THE OLD XTRAC2 PROGRAM. IT DOES NOT ACTUALLY EXTRACT RECORDS OUT OF AN AUXILIARY DATASET (AS BEFORE) BUT RATHER BUILDS ONE OR TWO NEW MASKING RECORDS FROM THE ORIGINAL ONE. INPUT INFORMATION (FROM UNIT 5) STILL HAS THE SAME MEANING AND FORMAT. INPUT PARAMETER SET (DEFAULT VALUES IN PARENTHESIS) ... NUMBER (=0) = LENGTH OF PARTIAL SERIES. IF EQUAL TO ZERO, YOU TAKE ALL POINTS AS IN PROGRAM XTRAC. IN THIS CASE, OFF AND ALIGN ARE IGNORED. ALIGNMENT (ALIGN=1) = 1 ON THE START OF THE EVENTS, 2 ON THE MIDDLE OF THEM, 3 ON THEIR END. OFFSET (OFF=0) = STARTING DISTANCE FROM ALIGNMENT POINT. IT CAN BE ANY POSITIVE OR NEGATIVE INTEGER. IF THE COMBINATION OF PARAMETERS IS SUCH AS TO PRODUCE A SUBSET OF THE ORIGINAL MASK (I.E. EVERY NON-ZERO VALUE OF OUT1 CORRES- PONDS TO NON-ZERO VALUES OF MASKIN) A SECOND OUTPUT MASK (OUT2) IS PRODUCED. THIS NEW MASK WILL HAVE LENGTH EQUAL TO THE NUMBER OF NON-ZERO VALUES FOUND IN MASKIN. IT WILL BE NULL WHEN OUT1 AND MASKIN ARE NOT IN AGREEMENT, ONE OTHERWISE. SEVERAL SETS OF MASK RECORDS CAN BE BUILT BY SIMPLY INCLUDING AS MANY INPUT CARDS AS REQUIRED. READ( 5,5000 ) NUMBER,ALIGN,OFF 5000 FORMAT(10X,3I5) EXAMPLE OF INPUT CARD... MKMASK1 7 2 0 0123456789012345678901234567890123456789012345678901234567890 1 2 3 4 5 6 7 2) MKMASK2 MERGES TWO SERIES OF MASKING RECORDS INTO A NEW SINGLE SET. THE NEW SET OF MASKS IS DEFINED IN THE FOLLOWING WAY... A) THE I-TH SET OF RECORDS OF MSKOUT HAS LENGHT EQUAL TO THE NUMBER OF NON-ZERO POINTS OF THE I-TH MSKIN1. B) THERE ARE M RECORDS IN MSKIN1, N RECORDS IN MSKIN2 AND MN RECORDS IN MSKOUT. C) IF THE J-TH MSKIN1 AND AND I-TH MSKIN2 HAVE CORRESPONDING NON-ZERO POINTS, THE (I,J)-TH MSKOUT WILL HAVE ONES FOR THESE POINTS AND ZERO OTHERWISE. 3) MKMASK3 MERGES TWO SERIES OF MASKING RECORDS INTO A NEW SINGLE SET. IT PERFORMS AS A FUNCTIONAL INVERSE TO THE MKMASK2 PROGRAM. THE NEW MASKS ARE DEFINED IN THE FOLLOWING WAY... A) THE RECORDS OF MSKOUT HAVE LENGHT EQUAL TO THE NUMBER OF POINTS IN THE FIRST RECORD OF MSKIN1. ONLY THAT RECORD IS IN FACT CONSIDERED. B) THERE ARE THE SAME NUMBER OF RECORDS IN MSKOUT AS IN FILE MASKIN2. C) THE NUMBER OF POINTS IN ALL RECORDS OF MSKIN2 HAS TO BE EQUAL TO THE NUMBER OF NON-ZERO VALUES IN MSKIN1. THAT IS WERE THE CONNECTION TO XTRAC OCCURS. EXIT CONDITIONS FOR MKMASK1... 0 NO PROBLEMS 1 PROBLEM READING FILE MASKIN 2 OFFSET GREATER THAN RECORD LENGTH 3 PREMATURE EOF ON INPUT EXIT CONDITIONS FOR MKMASK2/MKMASK3... 0 NO PROBLEMS 1 UNABLE TO READ MSKIN1 2 UNABLE TO READ MSKIN2 3 GRIDS NOT THE SAME SIZE IN MSKIN1 AND MSKIN2