next up previous contents
Next: Loop over the reactions Up: What mcfgen does for Previous: The setup   Contents

Initial processing for each target

For each target the code starts with checks for consistency. It then calls the following subroutines.

The first object of this subroutine is to read the identity and basic properties of the target. But the primary purpose is to read the array nhead, containing a list of reactions, data identification, and pointers to the data for this target in the `library' file. See Section 3.2.3 for a full description of the contents of this structure.

This subroutine merely reads the data for a given target from the `library' file and writes it to a scratch file, `endata'.

Here, we get the list of reactions to be processed for this target. We also identify the types of data given for these reactions. This information is transferred to local data structures as described in Section 4.1. The routine rct also calls parts to get the effective Q-value for each reaction, based on the difference in masses.

From a table get the target mass in atomic mass units.

From a table get the halflife of the target.

Eliminate from the list of reactions those which are not of interest for this run. Also write to the `mcf.asc' output file the target indentification and list of reactions.

In main:
If this is the first target, write the boundaries of the energy groups to be used in the Monte Carlo computations. The code also writes the target temperatures, but there is only one temperature because Doppler broadening is done outside of mcfgen.

This subroutine sets the kinematics types for the reactions. For the codes see Section 2.5. This routine also sets the number of equal-probability bins for the distributions of angles and energies of secondary particles.

Make the list of secondary particles and residual nucleus for each of the reactions for this target. Note that this routine makes substitutions for unstable residual nuclei, and messages are written to the `output' file when this is done. In particular, for a neutron incident on 9Be ( $ \tt ZA$ = 4009), the following substitutions are made.

9Be (n, p$ \gamma$9Li substitute 7Li for 9Li.

9Be (n, d$ \gamma$8Li substitute 7Li for 8Li.

9Be (n,$ \alpha$$ \gamma$6He substitute 4He for 6He.

9Be (n,$ \gamma$10Be substitute 9Be for 10Be.

next up previous contents
Next: Loop over the reactions Up: What mcfgen does for Previous: The setup   Contents