The Nuclear Data Group at Lawrence Livermore National Laboratory maintains libraries of data for the reactions of various incident particles on a wide selection of target nuclei. Cross sections and available energy are always given, but in addition there may be angular distributions, energy distributions, and multiplicity of secondary particles. For use in all-particle Monte Carlo codes, this data is available as Cray binary files, `mcf1', ..., `mcf7', one file for each incident particle: neutron, proton, deuteron, triton, 3He, alpha, and photon.
The purpose of this document is to explain the form and content of these files. The `mcfx' file preparation begins with the NDS-2000 evaluated data, specifically, ENDL data for incident neutrons, ECPL for incident charged particles, and EPDL for incident photons. The steps involved in making the data files for mcapm have been put into a script, but in summary they are as follows. For incident neutrons or charged particles one first runs endlret to concatenate into a single ASCII file the evaluated ENDL or ECPL data for all of the targets. One then runs the code create to produce an equivalent binary file called `library'. The code mcfgen then reads the `library' file and processes it, to produce an ASCII file `mcf.asc'. This latter file serves as input to the code mcfbin, which writes a corresponding binary file `mcf.bin'. The formats of the `library', `mcf.asc', and `mcf.bin' files are given later in this document.
This process chain is more compicated than it needs to be, and the only reason for having a binary `library' file is historical. Computer memory used to be very restricted, so all of the data files were stored only in the form of a binary `library' file.
Because we have had occasion to rework the making of the photon data file `mcf7', that process is now simpler than what is used for the other incident particles. For photons we start with a Perl script epdlmcf.pl, which extracts the required evaluated EPDL data and concatenates it into an ASCII file `epdl.asc'. For photons the code mcfgen simply reads the data from `epdl.asc' and processes it to produce an input file for mcfbin.
This document is organized as follows. This first chapter gives a summary of what mcfgen does, including a description of the processing the code does for each type of data. The second chapter is a reference, providing lists of the meanings of the various identifiers used. Chapter 3 gives descriptions of the contents and formats of the input and output files. The final chapter is for the benefit of the programmer, and it provides details about the data structures and numerical algorithms used to modify probability distributions.