**ENDF Utility Codes Release 7.0**

**C. L. Dunford**

October 26, 2004

The present release of the ENDF utility codes, version 7.0, supersedes
all previous versions of the codes and this document supersedes all
previous documentation. The programs are written to process ENDF-6
formatted files including all formats approved up to and including the
November 2003 CSEWG meeting except for the Generalized R-Matrix
resonance region format and the generalized format for covariances (file
30) and the new "trial" formats for resonance parameters and their
covariances. The programs will also process ENDF-5 formatted files.

The distributed version of the programs, STANEF, CHECKR, FIZCON, PSYCHE,
and INTER have been updated for format changes and modified to conform
with the requirements of the Modlib Project of the NEA Working Party on
International Evaluation Cooperation. The GETMAT, LISTEF, and PLOTEF
programs are no longer supported. The SETMDC program used to convert
machine dependent code from one platform to another will no longer be
distributed since source code for each supported platform will be
available from the NNDC web site.

The original codes were designed for batch mode operation. Input records
consist of free format data fields with each field except the last
delimited by a comma. Each program can process more than one input file
(ENDF tape) per run with the user supplying the input file
specifications appropriate to his computer. Standard processing options
can be selected by specifying a completely blank option specification
record. The only interactive input required is the name of the batch
mode input file.

In addition to the batch mode version of each program, there are three
interactive versions, one for WINDOWS compiled using HP Visual Fortran,
one for OpenVMS and one for UNIX compiled using the Lahey Fortran-95
Compiler. These versions prompt the user for each piece of input data
instead of reading it from an input file. A "command line" input option
is available in all three versions. The input and output file
specifications may be entered on the command line separated by a percent
sign (%). An optional third parameter specifies whether or not to use
default values for the other run parameters. If defaults are not used,
then the remaining run parameters must be entered interactively.

Also available for Windows and Unix are versions of these five programs
that have a graphical interface. The WINDOWS versions have been created
with HP Visual Fortran and the UNIX versions with Lahey Winteracter.
This interface consists of a dialog box for supplying the input data.
The program output is displayed in a window. The programs, CHECKR,
FIZCON, PSYCHE and STANEF have an additional window for editing the
input file so that errors can be corrected and the program rerun.

All versions are based on a single Fortran-95 source code for each
program. A small computer program, SETMDC is used to convert the source
code from one platform version to another. The batch mode version is
indicated by "ANS" code, the interactive versions by "VMS", "WIN" and
"UNX"; the versions with a graphical interface with "DVF" and "LWI"
codes. The versions with a graphical interface require numerous
additional source files that depend on the WINDOWS or UNIX program
development environment. These source files will not be distributed
except on special request. WINDOWS and UNIX versions of the ENDF Utility
codes with a graphical interface will be distributed as executables.

**List of Codes in the ENDF 7.0 Utility Package**

> STANEF  Creates directory, adds tape label and converts numeric
> fields
>
> Converts to binary format
>
> CHECKR  Format checking program
>
> FIZCON  Procedures and simple physics checking program
>
> PSYCHE  More complicated physics checking program
>
> INTER  Calculates selected cross sections and integrals

This page intentionally blank

**STANEF**

STANEF is designed to perform bookkeeping operations on a data file
containing one or more material evaluations in ENDF format. These
operations include:

1.  Creation or modification of a \`\`tape ID\'\' record,

2.  Creation or update of the directory in MT=451,

3.  Create or modify special hollerith ID records in MT=451 (ENDF-6
    only),

4.  Resequencing,

5.  Conversion of integer and floating point fields to standard format,

6.  Creation of a binary (ENDF alternate format) file.

**Fortran Logical Units Used:**

> 5  Input
>
> 6  Output
>
> 20  Input data file, ENDF format
>
> 21  Output data file, ENDF format
>
> 22  Temporary storage

**Input Requirements:**

In batch mode operation, the user must supply the following control
information repeated for each input file to be processed.

RECORD 1  Input file specification

RECORD 2  Output file specification

RECORD 3  Tape label

FIELD 1  Tape label number (integer up to 4 digits)

\< 0 means tape has no label

= 0 means copy old label (default)

> \> 0 means the value is used as the tape label number

FIELD 2  Up to 66 character text for ENDF tape label

RECORD 4  Options selection (4 fields)

FIELD 1  Mode of output file (integer)

0 Character format output (default)

1 Binary format (fields 2 and 3 ignored)

FIELD 2  Update directory and special hollerith (character)

Y execute this option (default)

N do not execute this option

FIELD 3  Numeric field standardization (character)

Y execute this option (default)

N do not execute this option

FIELD 4  Numeric field standardization for 2/151(character)

Y execute this option (default)

N do not execute this option

If RECORD 4 is left entirely blank, then the "default" options are
executed. Those are character format output file, update MT=451 and
standardize numeric fields.

Multiple input files can be processed to produce multiple output files
by repeating the above input data sequence. The program execution is
terminated with a record containing the word DONE.

In interactive mode operation, the above data is supplied in response to
the appropriate query; in graphical mode, via a dialog box.

**Sample Batch-mode Input:**

[Record Type]{.underline}

> RAW.603 (1)
>
> INDEX.603 (2)
>
> 0 (3)
>
> 0,Y,N (4)
>
> RAW.610 (1)
>
> TAPE.610 (2)
>
> 610,ENDF/B-VI FISSION PRODUCT TAPE 2 (3)
>
> (blank record) (5) default
>
> DONE end of run

**Command Mode Operation:**

Under OpenVMS, the command, SRANEF :== \$STANEF.EXE must be defined. No
environment definitions are required for Windows or Linux. Some of the
input data may be given on the command line as follows:

STANEF *input_file%output_file%standard_options* \[Y or N\]

If no input data is given on the command line, the program operates in
the normal interactive mode. If no output file is given, the output file
specification is assumed to be the same as the input file. Any tape
label is copied unchanged. If non-standard options are selected, then
the program prompts for each option in the usual way.

**CHECKR**

CHECKR is a program for checking that an evaluated data file conforms to
the ENDF format. It can recognize the difference between ENDF-6 and
ENDF-5 formats and performs its tests accordingly. Integer control
fields are checked to see that ENDF/B procedural limits on those fields
are not violated. To the extent possible, fatal format errors are
trapped to prevent unwanted termination of the program. Any file that
passes through CHECKR without error messages fully conforms to the ENDF
format. CHECKR will now operate on a file, which has not been processed
with STANEF. This has been done to facilitate processing by eliminating
error messages in CHECKR, which would be automatically fixed by STANEF,
which requires that the input file be in legal ENDF format.

**Fortran Logical Units Used:**

> 5  Input

6  Output

> 20  Input data file, ENDF format
>
> 21  Message file for program checking results

**Input Requirements:**

In batch mode operation, the user must supply the following control
information repeated for each input file to be processed.

RECORD 1  Input file specification

RECORD 2  Message file specification

RECORD 3  Options selection (2 fields)

FIELD 1  Material number where processing starts (integer)

(If zero or blank, then checking begins with the first material)

FIELD 2  Material number where processing ends (integer)

(If zero or blank, then checking continues to end of the file)

If RECORD 3 is left entirely blank, then the entire input file is
processed.

Multiple input files can be processed to produce multiple output files
by repeating the above input data sequence. The program execution is
terminated with a record containing the word DONE.

In interactive mode operation, the above data is supplied in response to
the appropriate query; in graphical mode, via a dialog box.

**Sample Batch-mode Input:**

> [Record Type]{.underline}
>
> TAPE.603 (1)
>
> (blank record) (2) output to unit 6
>
> 5200,5642 (3)
>
> TAPE.610 (1)
>
> CHECKR.610 (2)
>
> (blank record) } (3) default
>
> DONE end of run

**Command Mode Operation:**

Under OpenVMS, the command, CHECKR :== \$CHECKR.EXE must be defined. No
environment definitions are required for Windows or Linux. Some of the
input data may be given on the command line as follows:

CHECKR *input_file%output_file%standard_options* \[Y or N\]

If no input data is given on the command line, the program operates in
the normal interactive mode. If non-standard options are selected, then
the program prompts for each option in the usual way.

**FIZCON**

FIZCON is a program for checking that an evaluated data file has valid
data and conforms to recommended procedures. It can recognize the
difference between ENDF-6 and ENDF-5 formats and performs its tests
accordingly. Some of the tests performed include

1.  Data arrays are in increasing energy order,

2.  Resonance parameter widths add up to the total,

3.  Q-values are reasonable and consistent,

4.  No required sections are missing and all cover the proper energy
    range,

5.  Secondary distributions are normalized to 1.0,

6.  Energy conservation in decay spectra.

Optional tests can be performed to check that redundant cross sections
such as the inelastic cross section has an energy grid which is the
union of all its components and the cross section values are the sum of
the component values at each energy (SUMUP test).Also optionally,
algorithms are used to check for possible incorrect entry of data values
(Deviant Point test). It is assumed the file being checked has passed
the CHECKR program without any errors being detected.

**Fortran Logical Units Used:**

> 5  Input
>
> 6  Output
>
> 20  Input data file, ENDF format
>
> 21  Message file for program checking results
>
> 22 & 23  Temporary paging files for large data arrays
>
> 24 & 25  Temporary files for the SUMUP tests

**Input Requirements:**

In batch mode operation, the user must supply the following control
information repeated for each input file to be processed.

RECORD 1  Input file specification

RECORD 2  Message file specification

> (if blank, messages go to standard output file on unit 6)

RECORD 3  Options selection (5 fields)

FIELD 1  Material number where processing starts (integer)

(If zero or blank, then checking begins with the first material)

FIELD 2  Material number where processing ends (integer)

(If zero or blank, then checking continues to end of the file)

FIELD 3  Deviant point test control (character)

Y Do the test

N Do not do the test (default)

FIELD 4  SUMUP test control (character)

Y Do the test

N Do not do the test (default)

FIELD 5  Fractional acceptable difference (real)

> The floating point number entered here represents the maximum
> fractional difference tolerated in an equality test such as a SUMUP
> test. The default value if none is entered is .001 (1/10 of a
> percent).

If RECORD 3 is left entirely blank, then the "default" options are
executed. Those are to process the entire input file, to omit the SUMUP
and Deviant Point tests and to assume an allowed fractional error of
.001.

Multiple input files can be processed to produce multiple output files
by repeating the above input data sequence. The program execution is
terminated with a record containing the word DONE.

In interactive mode operation, the above data is supplied in response to
the appropriate query; in graphical mode, via a dialog box.

**Sample Batch-mode Input:**

> [Record Type]{.underline}
>
> TAPE.603 (1)
>
> (blank record) (2) output to unit 6
>
> 5200,5642,N,Y,.002 (3)
>
> TAPE.610 (1)
>
> FIZCON.610 (2)
>
> (blank record) (3) default
>
> DONE end of run

**Command Mode Operation:**

Under OpenVMS, the command, FIZCON :== \$FIZCON.EXE must be defined. No
environment definitions are required for Windows or Linux. Some of the
input data may be given on the command line as follows:

FIZCON *input_file%output_file%standard_options* \[Y or N\]

If no input data is given on the command line, the program operates in
the normal interactive mode. If non-standard options are selected, then
the program prompts for each option in the usual way.

This page intentionally blank

**PSYCHE**

PSYCHE is a program for checking the physics content of an evaluated
data file. It can recognize the difference between ENDF-6 and ENDF-5
formats and performs its tests accordingly. The present version checks
for energy conservation for emitted particles, checks Wick\'s limit for
elastic scattering, analyzes resonance parameter statistics, calculates
thermal cross sections and resonance integrals, examines continuity
across resonance region boundaries and checks "Q" values against mass
tables. It is assumed the file being checked has passed the CHECKR
program without any errors being detected.

**Fortran Logical Units Used:**

> 5  Input
>
> 6  Output
>
> 20  Input data file, ENDF format
>
> 21  Message file for program checking results
>
> 22 - 25  Temporary files for energy conservation tests

**Input Requirements:**

In batch mode operation, the user must supply the following control
information repeated for each input file to be processed.

RECORD 1  Input file specification

RECORD 2  Message file specification

> (if blank, messages go to standard output file on unit 6)

RECORD 3  Options selection (2 fields)

FIELD 1  Material number where processing starts (integer)

(If zero or blank, then checking begins with the first material)

FIELD 2  Material number where processing ends (integer)

(If zero or blank, then checking continues to end of the file)

If RECORD 3 is left entirely blank, then the entire input file is
processed.

Multiple input files can be processed to produce multiple output files
by repeating the above input data sequence. The program execution is
terminated with a record containing the word DONE.

In interactive mode operation, the above data is supplied in response to
the appropriate query; in graphical mode, via a dialog box.

**Sample Batch-mode Input:**

> [Record Type]{.underline}
>
> TAPE.603 (1)
>
> (blank record) (2) output to unit 6
>
> 5200,5642, (3)
>
> TAPE.610 (1)
>
> PSYCHE.610 (2)
>
> (blank record) (3) default
>
> DONE end of run

**Command Mode Operation:**

Under OpenVMS, the command, PSYCHE :== \$PSYCHE.EXE must be defined. No
environment definitions are required for Windows or Linux. Some of the
input data may be given on the command line as follows:

PSYCHE *input_file%output_file%standard_options* \[Y or N\]

If no input data is given on the command line, the program operates in
the normal interactive mode. If non-standard options are selected, then
the program prompts for each option in the usual way.

**INTER**

INTER is a program for calculating thermal cross sections, g-factors,
resonance integrals, fission spectrum averaged cross sections and 14.0
MeV (or other energy) cross sections for major reactions in an ENDF-6 or
ENDF-5 format data file. To operate properly, the cross sections must be
given pointwise in File 3 and have been linearized. Therefore
evaluations containing resonance parameters must first be processed by a
code such as RECENT to produce a complete pointwise data file and
interpolation codes, which are not constant or linear-linear must be
processed by a code such as LINEAR.

**Fortran Logical Units Used:**

> 5  Input

6  Output

> 20  Input data file, ENDF format
>
> 21  Output file for program results

**Input Requirements:**

In batch mode operation, the user must supply the following control
information repeated for each input file to be processed.

RECORD 1  Input file specification

RECORD 2  Result file specification

> (if blank, output goes to standard output file on unit 6)

RECORD 3  Options selection (7 fields)

FIELD 1  Material number where processing starts (integer)

(If zero or blank, then checking begins with the first material)

FIELD 2  Material number where processing ends (integer)

(If zero or blank, then checking continues to end of the file)

FIELD 3  Thermal calculation control (character)

Y Calculate thermal cross sections and g-factors (default)

N Do not do the calculations

FIELD 4  Resonance integral calculation control (character)

Y Calculate resonance integrals (default)

N Do not do the calculations

FIELD 5  Fission spectrum calculation control (character)

Y Calculate fission spectrum averages (default)

N Do not do the calculation

FIELD 6  Single energy (real)

> The energy entered here in eV is used to calculate and list the cross
> sections at any single required energy. The default value is 14.0E+6
> eV.

FIELD 7  Fractional error (real)

> The floating point number entered here is the fractional error which
> will be tolerated when integrating between two points. The default
> value is .001.

If RECORD 3 is left entirely blank, then defaults for all values are
assumed which are to process all materials, calculate both thermal cross
sections and resonance integrals, calculate 14.0 MeV cross sections and
allow a fractional error of .001. Neither of the following two records
are required and the default parameters described below are assumed.

RECORD 4  Thermal calculation parameters (3 fields)

(If thermal calculation is not done, omit this record)

FIELD 1  Thermal energy (real)

> The energy entered here in eV is used to calculate and list the
> Maxwellian averaged cross sections and g-factors. The default value is
> 0.0253 eV.

FIELD 2  Lower limit for Maxwellian integral(eV) (real) . The default
is

1.0E-5 eV.

FIELD 3  Upper limit for Maxwellian integral(eV) (real) . The default
is

10.eV.

If RECORD 4 is left entirely blank, then defaults for all values are
assumed which are a thermal energy of 0.0253 eV and integration between
.01 mV and 10.0 eV.

RECORD 5  Resonance integral calculation parameters (2 fields)

(If resonance calculation is not done, omit this record)

FIELD 1  Lower limit for Resonance integral(eV) (real). The default is

0.5 eV.

FIELD 2  Upper limit for Resonance integral(eV) (real). The default is

100.0E+3 eV.

If RECORD 5 is left entirely blank, then defaults for all values are
assumed which are integration between 0.5 eV and 100.0 keV.

RECORD 6  Fission spectrum calculation parameters (3 fields)

(If fission spectrum calculation is not done, omit this record)

FIELD 1  Fission spectrum temperature(real)

> The temperature entered here is in eV and is used as the temperature
> in a Maxwellian distribution. The default value is 1.35E+6 eV.

FIELD 2  Lower limit for fission integral (eV) (real). The default is

1.0E+3 eV.

FIELD 3  Upper limit for fission integral (eV) (real). The default is

20.0E+6 eV.

If RECORD 6 is left entirely blank, then defaults for all values are
assumed, which are a temperature of 1.35E+6 eV and integration between
1.0 keV and 20.0 MeV.

Multiple input files can be processed to produce multiple output files
by repeating the above input data sequence. The program execution is
terminated with a record containing the word DONE.

In interactive mode operation, the above data is supplied in response to
the appropriate query; in graphical mode, via a dialog box.

**Sample Batch-mode Input:**

> [Record Type]{.underline}
>
> TAPE.639 (1)
>
> VTOCU.INT (2)
>
> 2300,2931,Y,Y,Y,14.+6,.001 (3)
>
> (blank record) (4) default
>
> 1.,100.+3 (5)
>
> 1.12E+6,1.E+3,20.E+6 (6)
>
> TAPE.610 (1)
>
> FISSPR.610 (2)
>
> (blank record) (3) default
>
> DONE end of run

**Command Mode Operation:**

Under OpenVMS, the command, INTER :== \$INTER.EXE must be defined. No
environment definitions are required for Windows or Linux. Some of the
input data may be given on the command line as follows:

INTER *input_file%output_file%standard_options* \[Y or N\]

If no input data is given on the command line, the program operates in
the normal interactive mode. If non-standard options are selected, then
the program prompts for each option in the usual way.

This page intentionally blank