======================================================================= Dictin  
                                                                         Dictin  
      PROGRAM DICTIN (Renamed from DICTION to eliminate conflict with    Dictin  
                      UNIX diction command - 12/22/02)                   Dictin  
      ==============                                                     Dictin  
      VERSION 81-1 (SEPTEMBER 1981)                                      Dictin  
      VERSION 82-1 (JANUARY 1982)                                        Dictin  
      VERSION 83-1 (JANUARY 1983)  *KEEP ORIGINAL MOD. NUMBER            Dictin  
                                   *NEW, MORE COMPATIBLE I/O UNITS.      Dictin  
      VERSION 84-1 (SEPTEMBER 1984)*UPDATED TO HANDLE ENDF/B-VI FORMAT.  Dictin  
                                    (PROGRAM WILL NOW WORK ON ALL        Dictin  
                                     VERSIONS OF THE ENDF/B FORMAT).     Dictin  
      VERSION 85-1 (AUGUST 1985)   *FORTRAN-77/H VERSION                 Dictin  
      VERSION 86-1 (JANUARY 1986)  *MAT ORDER CHECK.                     Dictin  
                                   *IF NO HOLLERITH SECTION COPY MAT.    Dictin  
      VERSION 88-1 (JULY 1988)     *OPTION...INTERNALLY DEFINE ALL I/O   Dictin  
                                    FILE NAMES (SEE, SUBROUTINE FILEIO   Dictin  
                                    FOR DETAILS).                        Dictin  
                                   *IMPROVED BASED ON USER COMMENTS.     Dictin  
      VERSION 89-1 (JANUARY 1989)  *PSYCHOANALYZED BY PROGRAM FREUD TO   Dictin  
                                    INSURE PROGRAM WILL NOT DO ANYTHING  Dictin  
                                    CRAZY.                               Dictin  
                                   *IMPROVED BASED ON USER COMMENTS.     Dictin  
                                   *ADDED LIVERMORE CIVIC COMPILER       Dictin  
                                    CONVENTIONS.                         Dictin  
                                   *UPDATED TO USE NEW PROGRAM CONVERT   Dictin  
                                    KEYWORDS.                            Dictin  
      VERSION 92-1 (JANUARY 1992)  *UPDATED BASED ON USER COMMENTS.      Dictin  
                                   *UP TO 6000 SECTIONS PER TAPE.        Dictin  
                                   *CHANGED DEFAULT MOD NUMBER FOR NEW   Dictin  
                                    SECTIONS FROM 0 TO 1                 Dictin  
      VERSION 94-1 (JANUARY 1994)  *VARIABLE ENDF/B DATA FILENAMES       Dictin  
                                    TO ALLOW ACCESS TO FILE STRUCTURES   Dictin  
                                    (WARNING - INPUT PARAMETER FORMAT    Dictin  
                                    HAS BEEN CHANGED)                    Dictin  
                                   *CLOSE ALL FILES BEFORE TERMINATING   Dictin  
                                    (SEE, SUBROUTINE ENDIT)              Dictin  
                                   *ADDED FORTRAN SAVE OPTION            Dictin  
      VERSION 96-1 (JANUARY 1996) *COMPLETE RE-WRITE                     Dictin  
                                  *IMPROVED COMPUTER INDEPENDENCE        Dictin  
                                  *ALL DOUBLE PRECISION                  Dictin  
                                  *ON SCREEN OUTPUT                      Dictin  
                                  *UNIFORM TREATMENT OF ENDF/B I/O       Dictin  
                                  *IMPROVED OUTPUT PRECISION             Dictin  
      VERSION 99-1 (MARCH 1999)   *CORRECTED CHARACTER TO FLOATING       Dictin  
                                   POINT READ FOR MORE DIGITS            Dictin  
                                  *UPDATED TEST FOR ENDF/B FORMAT        Dictin  
                                   VERSION BASED ON RECENT FORMAT CHANGE Dictin  
                                  *GENERAL IMPROVEMENTS BASED ON         Dictin  
                                   USER FEEDBACK                         Dictin  
      VERS. 2000-1 (FEBRUARY 2000)*GENERAL IMPROVEMENTS BASED ON         Dictin  
                                   USER FEEDBACK                         Dictin  
      VERS. 2002-1 (MAY 2002)     *OPTIONAL INPUT PARAMETERS             Dictin  
                                  *RENAMED dictin TO ELIMINATE CONFLICT  Dictin  
                                   WITH UNIX diction COMMAND.            Dictin  
                                  *ADDED DOCUMENTATION LINE TO COMMENTS. Dictin  
      VERS. 2004-1 (JAN. 2004)    *GENERAL UPDATE BASED ON USER FEEDBACK Dictin  
                                  *UP TO 100,000 SECTIONS PER TAPE.      Dictin  
      VERS. 2007-1 (JAN. 2007)    *CHECKED AGAINST ALL ENDF/B-VII.       Dictin  
                                  *UP TO 500,000 SECTIONS PER TAPE.      Dictin  
      VERS. 2007-2 (DEC. 2007)    *72 CHARACTER FILE NAMES.              Dictin  
      VERS. 2010-1 (Apr. 2010)    *General update based on user feedback Dictin  
      VERS. 2012-1 (Aug. 2012)    *Added CODENAME                        Dictin  
                                  *32 and 64 bit Compatible              Dictin  
                                  *Added ERROR stops                     Dictin  
      VERS. 2015-1 (Jan. 2015)    *Corrected END = it was saying ERROR.  Dictin  
                                  *Replaced ALL 3 way IF Statements.     Dictin  
      VERS. 2015-2 (Mar. 2015)    *Corrected Seqence Numbers             Dictin  
                                   1) Restart at 1 for each MAT/MF/MT.   Dictin  
                                   2) 99999 on section end, MT=0         Dictin  
                                   3)     0 on MF = 0                    Dictin  
      VERS. 2017-1 (May  2017)    *Updated based on user feedback.       Dictin  
      VERS. 2018-1 (Jan. 2018)    *Added on-line otput for ALL ENDERROR  Dictin  
                                                                         Dictin  
      2015-2 Acknowledgment                                              Dictin  
      =====================                                              Dictin  
      I thank Jean-Christophe Sublet (UKAEA) for contributing MAC        Dictin  
      executables and Bojan Zefran (IJS, Slovenia) for contributing      Dictin  
      LINUX (32 or 64 bit) executables. And most of all I must thank     Dictin  
      Andrej Trkov (NDS, IAEA) for overseeing the entire PREPRO project  Dictin  
      at IAEA, Vienna. This was a truly International team who worked    Dictin  
      together to produce PREPRO 2015-2.                                 Dictin  
                                                                         Dictin  
      OWNED, MAINTAINED AND DISTRIBUTED BY                               Dictin  
      ------------------------------------                               Dictin  
      THE NUCLEAR DATA SECTION                                           Dictin  
      INTERNATIONAL ATOMIC ENERGY AGENCY                                 Dictin  
      P.O. BOX 100                                                       Dictin  
      A-1400, VIENNA, AUSTRIA                                            Dictin  
      EUROPE                                                             Dictin  
                                                                         Dictin  
      ORIGINALLY WRITTEN BY                                              Dictin  
      ------------------------------------                               Dictin  
      Dermott E. Cullen                                                  Dictin  
                                                                         Dictin  
      PRESENT CONTACT INFORMATION                                        Dictin  
      ---------------------------                                        Dictin  
      Dermott E. Cullen                                                  Dictin  
      1466 Hudson Way                                                    Dictin  
      Livermore, CA 94550                                                Dictin  
      U.S.A.                                                             Dictin  
      Telephone  925-443-1911                                            Dictin  
      E. Mail    RedCullen1@Comcast.net                                  Dictin  
      Website    RedCullen1.net/HOMEPAGE.NEW                             Dictin  
                                                                         Dictin  
      AUTHORS MESSAGE                                                    Dictin  
      ---------------                                                    Dictin  
      THE COMMENTS BELOW SHOULD BE CONSIDERED THE LATEST DOCUMENATION    Dictin  
      FOR THIS PROGRAM INCLUDING ALL RECENT IMPROVEMENTS. PLEASE READ    Dictin  
      ALL OF THESE COMMENTS BEFORE IMPLEMENTATION.                       Dictin  
                                                                         Dictin  
      AT THE PRESENT TIME WE ARE ATTEMPTING TO DEVELOP A SET OF COMPUTER Dictin  
      INDEPENDENT PROGRAMS THAT CAN EASILY BE IMPLEMENTED ON ANY ONE     Dictin  
      OF A WIDE VARIETY OF COMPUTERS. IN ORDER TO ASSIST IN THIS PROJECT Dictin  
      IT WOULD BE APPECIATED IF YOU WOULD NOTIFY THE AUTHOR OF ANY       Dictin  
      COMPILER DIAGNOSTICS, OPERATING PROBLEMS OR SUGGESTIONS ON HOW TO  Dictin  
      IMPROVE THIS PROGRAM. HOPEFULLY, IN THIS WAY FUTURE VERSIONS OF    Dictin  
      THIS PROGRAM WILL BE COMPLETELY COMPATIBLE FOR USE ON YOUR         Dictin  
      COMPUTER.                                                          Dictin  
                                                                         Dictin  
      PURPOSE                                                            Dictin  
      -------                                                            Dictin  
      THIS PROGRAM IS DESIGNED TO CREATE A REACTION INDEX FOR EACH       Dictin  
      MATERIAL ON AN ENDF/B FORMATTED TAPE AND TO INSERT THIS REACTION   Dictin  
      INDEX IN FILE 1, SECTION 451 OF EACH MATERIAL.                     Dictin  
                                                                         Dictin  
      IN THE DESCRIPTION THAT FOLLOWS FOR SIMPLICITY THE ENDF/B          Dictin  
      TERMINOLOGY---ENDF/B TAPE---WILL BE USED. IN FACT THE ACTUAL       Dictin  
      MEDIUM MAY BE TAPE, CARDS, DISK, OR ANY OTHER MEDIUM.              Dictin  
                                                                         Dictin  
      ENDF/B FORMAT                                                      Dictin  
      -------------                                                      Dictin  
      THIS PROGRAM ONLY USES THE ENDF/B BCD OR CARD IMAGE FORMAT (AS     Dictin  
      OPPOSED TO THE BINARY FORMAT) AND CAN HANDLE DATA IN ANY VERSION   Dictin  
      OF THE ENDF/B FORMAT (I.E., ENDF/B-I, II,III, IV, V OR VI FORMAT). Dictin  
                                                                         Dictin  
      THIS PROGRAM WILL AUTOMATICALLY DETERMINE WHICH VERSION OF THE     Dictin  
      ENDF/B FORMAT EACH MAT IS IN AND WILL THEN PROPERLY REPLACE THE    Dictin  
      REACTION INDEX FOR EACH MAT. DIFFERENT MATS ON THE SAME TAPE MAY   Dictin  
      EVEN BE IN DIFFERENT VERSIONS OF THE ENDF/B FORMAT.                Dictin  
                                                                         Dictin  
      IT IS ASSUMED THAT THE DATA IS CORRECTLY CODED IN THE ENDF/B       Dictin  
      FORMAT AND NO ERROR CHECKING IS PERFORMED. IN PARTICULAR IT IS     Dictin  
      ASSUMED THAT THE MAT, MF AND MT ON EACH LINE IS CORRECT. SEQUENCE  Dictin  
      NUMBERS (COLUMNS 76-80) NEED NOT BE PRESENT ON INPUT, BUT WILL BE  Dictin  
      CORRECTLY OUTPUT ON ALL LINES.                                     Dictin  
                                                                         Dictin  
      ENDF/B FORMAT VERSION                                              Dictin  
      ---------------------                                              Dictin  
      THE ENDF/B FORMAT CAN BE DETERMINED FROM THE SECOND LINE OF        Dictin  
      THE HOLLERITH SECTION (MF=1, MT=451).                              Dictin  
      ENDF/B-IV = N1 - LINE COUNT (POSITIVE)                             Dictin  
      ENDFB/-V  = N1 = N2 =0                                             Dictin  
      ENDF/B-VI = N1 =0, N2= VERSION NUMBER (6 OR MORE)                  Dictin  
                                                                         Dictin  
      SECTION SIZE                                                       Dictin  
      ------------                                                       Dictin  
      SINCE THIS PROGRAM ONLY READS THE DATA ONE LINE AT A TIME THERE    Dictin  
      IS NO LIMIT TO THE SIZE OF ANY GIVEN SECTION, E.G. THE TOTAL       Dictin  
      CROSS SECTION MAY BE DESCRIBED BY 200,000 DATA POINTS.             Dictin  
                                                                         Dictin  
      NUMBER OF SECTIONS PER TAPE                                        Dictin  
      ---------------------------                                        Dictin  
      IT IS ASSUMED THAT THE ENDF/B TAPE CONTAINS 100,000 OR FEWER       Dictin  
      SECTIONS = 100,000 OR FEWER MAT,MF,MT COMBINATIONS. IF THIS LIMIT  Dictin  
      IS EXCEEDED THIS PROGRAM WILL TERMINATE EXECUTION. IF NEED BE THIS Dictin  
      LIMIT CAN EASILY BE CHANGED BY CHANGING THE DIMENSION STATEMENT    Dictin  
      BELOW AND RE-DEFINING THE VARIABLE MAXTAB IN THE BELOW DATA        Dictin  
      STATEMENT. ALTERNATIVELY THE ENDF/B TAPE MAY BE DIVIDED INTO A     Dictin  
      NUMBER SMALLER TAPES EACH CONTAINING 100,000 OR FEWER SECTIONS.    Dictin  
      EACH ENDF/B TAPE CAN THEN RUN THROUGH THIS PROGRAM AND THE OUTPUT  Dictin  
      FOR EACH ENDF/B TAPE CAN THEN BE RE-COMBINED (I.E., MERGED BACK    Dictin  
      TOGETHER).                                                         Dictin  
                                                                         Dictin  
      HOLLERITH SECTION                                                  Dictin  
      -----------------                                                  Dictin  
      IF ANY MATERIAL DOES NOT INITIALLY CONATIN A SECTION MF=1, MT=451  Dictin  
      A WARNING MESSAGE WILL BE PRINTED AND THE MATERIAL WILL BE COPIED. Dictin  
                                                                         Dictin  
      IF ANY MATERIAL INITIALLY CONTAINS A SECTION MF=1, MT=451 A NEW    Dictin  
      REACTION INDEX WILL BE CREATED AND INSERTED. THE INITIAL SECTION   Dictin  
      MF=1, MT=451 MAY OR MAY NOT CONTAIN A REACTION INDEX.              Dictin  
                                                                         Dictin  
      IF THE MATERIAL INITIALLY CONTAINS A REACTION INDEX IT WILL BE     Dictin  
      USED TO DEFINE THE MOD NUMBER FOR CORRESPONDING SECTIONS IN THE    Dictin  
      NEW REACTION INDEX (I.E. IF A SECTION FROM THE ORIGINAL REACTION   Dictin  
      INDEX HAS THE SAME MF/MT NUMBERS AS A SECTION IN THE NEW REACTION  Dictin  
      INDEX THE MOD NUMBER FROM THE ORIGINAL REACTION INDEX WILL BE USED Dictin  
      IN THE NEW REACTION INDEX). OTHERWISE THE MOD NUMBER IN THE NEW    Dictin  
      REACTION INDEX WILL BE SET EQUAL TO ZERO.                          Dictin  
                                                                         Dictin  
      PROGRAM OPERATION                                                  Dictin  
      -----------------                                                  Dictin  
      THE ENTIRE ENDF/B TAPE IS FIRST READ AND A DICTIONARY ENTRY IS     Dictin  
      CREATED FOR EACH SECTION OF THE TAPE. THE ENDF/B TAPE IS THEN      Dictin  
      REWOUND AND READ A SECOND TIME. DURING THIS SECOND PASS THE        Dictin  
      DICTIONARY OF EACH MAT IS REPLACED. THIS VERSION OF DICTIN         Dictin  
      DOES NOT USE SCRATCH FILES AND IS MORE EFFICIENT THAN EARLIER      Dictin  
      VERSIONS OF DICTIN.                                                Dictin  
                                                                         Dictin  
      INPUT LINES                                                        Dictin  
      -----------                                                        Dictin  
        LINE   COLS.  DESCRIPTION                                        Dictin  
        ----   -----  ------------------------------                     Dictin  
           1   1-60   ENDF/B INPUT DATA FILENAME                         Dictin  
                      (STANDARD OPTION = ENDFB.IN)                       Dictin  
           2   1-60   ENDF/B OUTPUT DATA FILENAME                        Dictin  
                      (STANDARD OPTION = ENDFB.OUT)                      Dictin  
                                                                         Dictin  
      EXAMPLE INPUT NO. 1                                                Dictin  
      -------------------                                                Dictin  
      READ \ENDFB6\K300\ENDFB.IN AND WRITE \ENDFB\K300\ENDFB.OUT. THE    Dictin  
      FOLLOWING 2 INPUT LINES ARE REQUIRED,                              Dictin  
                                                                         Dictin  
  \ENDFB6\K300\ENDFB.IN                                                  Dictin  
  \ENDFB6\K300\ENDFB.OUT                                                 Dictin  
                                                                         Dictin  
      EXAMPLE INPUT NO. 2                                                Dictin  
      -------------------                                                Dictin  
      USE THE DEFAULT FILENAMES TO READ ENDFB.IN AND WRITE ENDFB.OUT.    Dictin  
      2 BLANK INPUT LINES ARE REQUIRED                                   Dictin  
                                                                         Dictin  
      INPUT FILES                                                        Dictin  
      -----------                                                        Dictin  
      UNIT  DESCRIPTION                                                  Dictin  
      ----  -----------                                                  Dictin  
         2  INPUT PARAMETERS (BCD - 80 CHARACTERS/RECORD)                Dictin  
        10  ORIGINAL TAPE OF ENDF/B DATA (BCD - 80 CHARACTERS/RECORD)    Dictin  
                                                                         Dictin  
      OUTPUT FILES                                                       Dictin  
      ------------                                                       Dictin  
      UNIT  DESCRIPTION                                                  Dictin  
      ----  -----------                                                  Dictin  
         3  OUTPUT REPORT (BCD - 120 CHARACTERS/RECORD)                  Dictin  
        11  FINAL TAPE OF ENDF/B DATA (BCD - 80 CHARACTERS/RECORD)       Dictin  
                                                                         Dictin  
      OPTIONAL STANDARD FILE NAMES (SEE SUBROUTINE FILIO1 AND FILIO2)    Dictin  
      ---------------------------------------------------------------    Dictin  
      UNIT  FILE NAME                                                    Dictin  
      ----  ----------                                                   Dictin  
        2   DICTIN.INP                                                   Dictin  
        3   DICTIN.LST                                                   Dictin  
       10   ENDFB.IN                                                     Dictin  
       11   ENDFB.OUT                                                    Dictin  
                                                                         Dictin  
 ======================================================================= Dictin