11.6. Notes on Some of the Modules
Some modules in AMPX are shared with SCALE. Detailed description for these modules can be found in Sect. 10.4. The shared modules are as follows: AJAX, AIM, CADILLAC, COGNAC, LAVA, ICE, PALEALE, MALOCS and RADE.
The functionality of some of the key modules used to generate MG and CE libraries are described below.
11.6.1. POLIDENT
The module POLIDENT is used to generate point-wise cross section data at 0 K. A more detailed description of the module can be found in the separate POLIDENT manual [ampx-DG00]. The most complicated procedure performed by POLIDENT is the mesh generation in the resolved resonance range, where the cross section data can vary rapidly as a function of energy. Consequently, the cross section function can be extremely dependent on the energy grid. If certain energy values or grid points are omitted, the structure of the resonances may not be represented correctly during reconstruction from the resonance parameters. Historically, energy-mesh-generation schemes begin with a very coarse grid, and points are added to the coarse grid using the halving scheme described above. Based on experience, this halving scheme, coupled with a coarse initial energy grid, can lead to inadequate representation of the resonance structure, particularly near inflection points. In an effort to avoid potential problems associated with the halving scheme, POLIDENT uses an adaptive mesh scheme largely based on a very fine energy mesh that is subsequently collapsed to an auxiliary structure using a user-defined convergence tolerance. In the fine mesh generation, a significant amount of effort is devoted to ensure that the detailed resonance structure is represented faithfully. Due to the very large number of fine grid points, the steps are only performed for slices of the whole resolved resonance energy range. The procedure is outlined below:
1. Within a given slice, determine the level spacing \(<\mathrm{D}>\) and mean neutron-line width \(<\Gamma_{\mathrm{n}}>\), and calculate an initial step size of \(\Delta E=0.1 \sqrt{\frac{\left\langle\Gamma_n\right\rangle}{\langle D\rangle}}\). If there are no resonances in the slice, at least 10 steps are required over the interval, and the minimal initial step size is 0.01. A slice starts with a width of 10eV but is extended in 10eV increments until it contains at least one resonance. This allows for handling isotopes with resolved resonance ranges that extend to very high energies.
2. Calculate the absorption, capture, fission, scattering and total cross section on the initial grid determined in step 1 using the appropriate resonance formalism on the grid generated in step 1. This is the initial fine grid mesh.
3. Numerically calculate the first and second derivative on the fine grid for total, capture, and fission. On a new auxiliary grid, add maxima and minima, defined by a sign change in the first derivative and inflection points, and defined by a sign change in the second derivative. In addition, add resonance energies to the auxiliary grid.
4. Add points to the fine grid between the inflection and maxima points. The number of points, N, added between inflection point Ei and maxima Em is based on the following empirical criteria:
5. Using a halving scheme, add more points to the fine mesh until all cross section data can be interpolated linearly.
6. Collapse the fine grid to the user grid. The user grid starts with all the critical points on the auxiliary grid. Then add enough points from the fine grid so that all cross section values on the fine grid can be linearly interpolated from points on the user grid within a user-specified precision.
After the mesh is determined, the cross section is calculated for each mesh energy using the resonance formalism given by the evaluator.
In the unresolved resonance range, the resonance self-shielding must be handled on a statistical basis, and the resonance parameters are given as averaged values for a given energy range. Only the single-level Breit–Wigner formalism is currently allowed in ENDF.
Resonances fit into families divided according to the angular momentum (l-value) of the nucleus and the angular momentum of the resonance (j-state). The unresolved resonance data in an ENDF/B evaluation are statistical parameters derived from the resonances in each family that can be resolved. These resolved resonances statistically predict how the resonances are spaced in the particular family and also the characteristics of the resonances (e.g., the relative size of the fission or elastic scattering component of the resonance). POLIDENT uses a method developed by R. N. Hwang at ANL for calculating unresolved cross sections as a function of energy [ampx-Hwa87]. In the unresolved resonance region, the resonance parameters are provided for the SLBW formalism, and the resonance widths are distributed according to a chi-squared distribution with a specified number of degrees of freedom. Flux-weighted cross section values can be calculated over an evaluator-specified energy interval using the unresolved resonance parameters. In the averaging process, Hwang’s method makes use of the narrow resonance (NR) approximation, and the resulting expressions for the average cross section values can be expressed in terms of fluctuation integrals that are also defined in terms of the Doppler broadening \(\psi\) and \(\chi\) resonance line-shape functions. Despite the simplifications from the NR approximation, the resulting expressions are quite complicated and involve integration of the resonance widths over the evaluator-specified chi-square distributions. Hwang’s method makes use of special Gaussian-like quadratures that permit integration over the probability distributions and the ultimate calculation of averaged point cross sections as a function of energy. These averaged point value curves are very smooth functions in energy, and no attempt is made to actually determine the extreme variation in the cross sections that appear in the real cross sections.
11.6.2. TGEL
The module recalculates redundant cross section data from the partial cross
section values. Great care needs to be taken at discontinuities, which
frequently arise at the transition between resolved and unresolved resonance
range. A detailed description of the method used to add two point-wise data
vectors is given in the POLIDENT manual [ampx-DG00]. The functions used are in the
ampx90lib library and are general enough to add, subtract, divide, and multiply
point-wise data.
The redundant cross sections should be calculated before the data are used in transport calculations. Note that, in contrast to the NJOY RECONR module [ampx-MK10], POLIDENT does not reconstruct redundant cross sections. The module TGEL has to be run before AMPX-generated redundant point data can be compared to NJOY-generated point data.
11.6.3. Y12
The ENDF formatted data files contain scattering matrix information for many reactions. To keep the actual ENDF tape brief, a variety of formats is used. The module Y12 converts all formats into a unified kinematics format suitable for use in other AMPX modules. The module Y12 produces scattering matrices where the angular distribution is either given in Legendre moments, cosine moments, or tabulated form. The distribution of exit energy and angle is always given in the laboratory system. Data from Files 3, 4, 5, 6, 7, 12, 13, 14, 15, 23, and 27 are processed. In the case of thermal neutron scattering data (File 7) and incident gamma data (Files 23, 26, and 27) Y12 also generates point-wise 1D cross section data. For all other cases, point-wise 1D cross section data are generated in module POLIDENT.
11.6.3.1. Processing of ENDF Tapes
ENDF data are read into intermediate objects before further processing. This shields the processing methods from reading the ENDF formatted files. Each reaction with kinematic data is encapsulated in a KinematicReaction object, which stores reaction specific data such as incident and exit particle, temperature, and Q value, and a list of KinematicYield objects. KinematicYield objects encapsulate the kinematic data contained in one or more KinematicData object and yield information. The yield information contained in a YieldData object is a list of zero or more 1D cross section data that need to be summed and multiplied with the kinematic data to give the full desired kinematic data. Kinematic data can sometimes be separated into angular distribution and exit energy distribution, so the KinematicData object has a flag indicating whether the exit energy distribution, the angular distribution, or the full double differential distribution is given. If the kinematic data are already given in double differential form, either tabulated or as Legendre moment, they are stored as one or more KinematicBlock objects in the KinematicData object. In some cases the data are given in a form that needs further processing to convert it to double-differential form, and for these cases, special classes are given in the KinematicData object, as outlined below. Y12 first converts these special objects into double-differential format and stores them in a KinematicBlock object. All KinematicBlock data of the same type are then added together. This is done by creating an initial union grid of all incident energies on which each value of the distributions to be summed is interpolated and then added together. Additional points are added by using the halving scheme. If exit energy and angle distribution are given separately, they are combined into one KinematicBlock object. As a final step, the kinematic data are multiplied by the yield data.
Before returning, Y12 converts any data given in the center-of-mass system into the laboratory system and converts to Legendre, cosine, or tabulated depending on the user’s selection.
11.6.3.1.1. Energy Distributions
If angular and exit energy distribution are given separately, the energy distribution can often be given as a function. ENDF currently allows two evaporation spectra, as well as a Maxwellian Fission spectrum, a Watt spectrum, and a Madland–Nix Fission spectrum. A special class takes parameters for these functions as read from the ENDF formatted file. Y12 translates the functions into a KinematicBlock object. The appropriate grids for incident and exit energies are constructed via a halving scheme as described above.
11.6.3.1.2. Kalbach–Mann Formalism
If the angular distribution are given in the Kalbach–Mann formalism [ampx-KM81, IntroKal88], the distribution for a given incident and exit energy is given in terms of parameters r, a and f0. The parameter r is a pre-compound fraction given by the evaluator, and the parameter a is a simple parameterized function that depends mostly on the center-of-mass emission energy. The parameter f0 is the integral over the angular distribution. The parameter a is either given by the evaluator, or it can be calculated. The distribution is always given in the center-of-mass system. The initial Kalbach–Mann parameters are stored in a KinematicBlock object using the zero to second Legendre order to store f0, r and a. The advantage of using a KinematicBlock object is that existing interpolation routines can be used to interpolate values for f0, r and a at any desired incident and exit energy. Y12 converts the parameters to a double differential distribution in the center-of-mass system. The incident energy grid is the union grid of the incident energies given by the evaluator for the parameters and for the yield data. Additional energies are added close to the threshold energy.
11.6.3.1.3. N-Body Phase-space Distribution
For N-Body reactions, the phase space distribution is sometimes used in ENDF evaluations. A PhaseSpace object stores the parameters, APSX for the total mass of the NPSX number of particles treated by the distribution. Y12 then calculates double-differential cross section from these parameters and determines a suitable grid.
11.6.3.1.4. Coherent Elastic Thermal Neutron Scattering
For some crystal structures such as graphite, neutrons can scatter without loss of energy at the Bragg edges. For each incident energy, one or more discrete exit angles may exist. File 7 lists the angles and a value proportional to the structure factors as a function of incident energy for different temperatures. These data are encapsulated into a CoherentElastic object which is processed by Y12. The incident energy grid is determined by first generating the 1D cross section on a grid dense enough to interpolate linearly. The kinematic data are then generated on the same grid. The angles are marked as discrete.
11.6.3.1.5. Incoherent Elastic Thermal Neutron Scattering
Incoherent elastic scattering is described by the following formula:
where \(\sigma_b\) is the characteristic bound cross section and W\(^{\prime}\) is the Debye–Waller integral divided by the atomic mass, both of which are given by the evaluator. The two values are stored in an IncoherentElastic object for processing by Y12. Y12 first calculates the 1D cross section and determines a grid dense enough to linearly interpolate in the cross section data. The kinematic data are then generated on the same incident energy grid.
11.6.3.1.6. Incoherent Inelastic Thermal Neutron Scattering
The preponderance of ENDF/B thermal scattering data use this data form. For most materials, it is the only form needed, and data are given as a list of \(\mathrm{S}(\alpha, \beta)\) data, with \(\alpha=\left[E^{\prime}+E-2 \mu \sqrt{E E^{\prime}}\right] / A_0 k T\) as the momentum transfer and \(\beta=\left(E^{\prime}-E\right) / k T\) as the energy transfer. The variable T denotes temperature, k is Boltzman’s constant, and A0 is the mass of the principal scattering atom in the material. A \(\mathrm{S}(\alpha, \beta)\) object is created from the ENDF data for processing in Y12. In addition, the evaluator gives an upper incident energy \(E_{max}\) above which the of \(\mathrm{S}(\alpha, \beta)\) data are not to be used, and treatment switches to a short collision time approximation, where \(\mathrm{S}(\alpha, \beta)\) is given as:
and the double differential cross section is calculated as:
from the \(\mathrm{S}(\alpha, \beta)\) data, where \(\sigma_b^{\prime}\) and \(T_{e f f}\) are given in the ENDF evaluation. Y12 uses the \(\mathrm{S}(\alpha, \beta)\) given by the evaluator below \(E_{max}\), above which the short collision time approximation is used. For incident energies below \(E_{max}\) and exit energies and angles for which the \(\beta\) is outside the range given by the evaluator, the short collision time approximation is used. If \(\alpha\) is lower than the range given by the evaluator, the lowest value given by the evaluator is used. If \(\alpha\) is higher than the range given by the evaluator, the short collision time approximation is used. For large negative values of \(\beta\), the formulas for the cross section become numerically unstable due to the exponent. Therefore, for \(\beta < -1200\), the double differential cross section value is set to zero. For a given incident energy, the lower range of the exit energy is set to \({10}^{-9}eV\), and the upper exit energy is set so that the integral over the exit angle is zero. For the exit energies and angles, the halving scheme is used in conjunction with a starting grid. The lower and upper exit energies are then eliminated if the relative difference in the integral of exit energy and angle does not change more than a user specified precision. For the incident energies, first a grid is generated in which energy points are spaced by \(E_{i+1}=E_i \frac{\ln (10)}{20}\) in the desired energy range. Then a sufficient number of points is added to interpolate linearly in the 1D cross section calculated as the integral over exit energy and angle. Finally, the incident energy grid is thinned so that cross section can be linearly interpolated and the exit energy range can be determined by unit-based interpolation.
For nuclides that do not have evaluator-provided \(\mathrm{S}(\alpha, \beta)\) data, the free gas approximation is used. In the case of CE transport calculations, the transport codes generate the free gas data during transport. For the MG calculations, the free gas data are provided on the library. Y12 uses the same procedure for calculating the free gas kinematic data using the expression
to calculate a value for \(\mathrm{S}(\alpha, \beta)\).
11.6.3.1.7. Incoherent Scattering for Incident Gammas
The cross section for incoherent scattering of incident gammas is given by
where \(S\left(q\right)\) is the incoherent scattering cross section listed in the ENDF evaluation as a function of the momentum of the recoil electron (in inverse angstrom units):
where
\(\alpha=\frac{E}{m_0 c^2}, \alpha^{\prime}=\frac{E^{\prime}}{m_0 c^2},\)
\(m_0\) is the rest mass of the electron,
\(c\) is the speed of light,
and
(11.6.8)\[\frac{d \sigma_{K N}\left(E, E^{\prime}, \mu\right)}{d \mu}=\frac{3 \sigma_{T H}}{16}\left(\frac{E^{\prime}}{E}\right)^2\left(\frac{E}{E^{\prime}}+\frac{E^{\prime}}{E}+\mu^2-1\right) d \Omega\]is the Klein–Nishina equation [ampx-KN29], where the solid angle can be converted to the cosine via:
(11.6.9)\[d \Omega \to 2\pi \sin \theta d \theta=-2\pi d(\cos \theta)=-2\pi d \mu ,\]
and \(\sigma_{T H}=0.66524485\) is the classical Thompson cross section for the electron. This formula can be directly used if generating data in tabulated form for use in CE libraries, as the first integral is over the cosine. Therefore, if tabulated data are requested, Y12 calculates the double differential cross section from Eq. (11.6.6). However, if calculating cosine moments or Legendre orders, the first integral is over exit energy. Therefore, a Jacobian must be applied to convert to an integral over exit energy. If the photon energy is expressed in electron rest mass units (i.e., \(e=E_\gamma / 0.5110034\)), where \(E_\gamma\) is given in units of MeV, then energy and momentum conservation leads to
from which the Jacobian is derived as
If the user desires cosine or Legendre moments, then this transformation is applied to Eq. (11.6.6) before the cross section data are converted to cosine moments.
The incident energy grid is determined by the energy grid used for the cross section data as given by the evaluator. The exit energy grid for a given incident energy is determined by first adding 100 equally spaced exit energies in the energetically allowed range. This grid is then refined by a halving scheme and finally thinned of exit energy points not needed to describe the distribution. Since there is only one angle per exit energy, no grid is necessary for the angular distribution.
11.6.3.1.8. Coherent Scattering for Incident Gammas
The cross section for incoherent scattering of incident gammas is given by
where:
\(q=\alpha[2(1-\mu)]^{1 / 2}\) is the recoil moment of the atom (in inverse angstroms),
\(m_0\) is the rest mass of the electron,
\(\text { c }\) is the speed of light, and
\(r_0=e^2 / m_0 c^2\) is the classical radius of the electron.
The remaining quantities are listed in the ENDF.
The incident energy grid is determined by the energy grid used for the cross section data as given by the evaluator. The angular distribution is determined by first adding 50 equal-angle cosines over the full range. This grid is then refined by a halving scheme and is finally thinned.
11.6.3.1.9. Pair Production for Incident Gammas
Since there are no kinematic data for pair production given in ENDF, an isotropic distribution is assumed with fixed exit energy of 511.0034 keV for all incident energies. The range of the incident energies is determined by the range of the cross section data given for pair production.
11.6.3.1.10. Photon Production for Incident Neutrons
Photon production kinematic data can be given in many of the formats discussed above. These kinematic data are processed as discussed above. In addition, photon multiplicity data can be given as either multiplicities or as transition probability arrays. In both cases it is assumed that the angular dependence and energy dependence are separable. The use of transition arrays is primarily of use in discrete level inelastic scattering. Here the situation is characterized by having a neutron interacting with a nucleus that can be excited to one of many excited quantum states. A nucleus in an excited state will decay to the ground state by emitting photons or other particles, and it can conceptually transfer to all of the energy levels below the initial excited level. When the nucleus transfers between levels, energy must be conserved. Therefore, particles are expelled from the nucleus whose energies must be the difference between the energies of the levels. If a transition array is used, the energy levels of the decay are explicitly given, and Y12 will reconstruct the decay all the way to the ground state. If multiplicity data are given, Y12 assumes that the evaluator already provided the decay to the ground state.
Photon production data in ENDF can be given in units of cross section (absolute) or relative to the incident neutron cross section. Like ENDF, Y12 normally assumes that the kinematic data are given relative to the cross section. Since Y12 does not have access to the cross section data itself, it cannot change the kinematic data from absolute to relative. In order to be consistent with the existing AMPX code base, Y12 uses a modified reaction number to indicate that the kinematic data are given in units of cross section.
11.6.4. JERGENS
The JERGENS module is used to generate the flux used to collapse point-wise data to MG format. A variety of predefined functions are available; see JERGENS input instructions for more details. JERGENS cannot construct a flux based on existing data, like the total cross section of a given material. If an arbitrary function based on existing point-wise data is desired, a combination of ZEST and FUNCCAL is likely needed.
11.6.5. PURM and PURM_UP
Because of the statistical nature of the unresolved resonance parameters, probability tables can be used to provide cross section probability distribution functions for energy ranges at specific temperatures. The module PURM in AMPX uses an approach described in detail in Dunn 2002 [ampx-DL04] which is different from the ladder approach used in NJOY. PURM generates pairs of resonance or levels surrounding the energy of reference given in the ENDF evaluated data files. For each (\(\mathrm{l}\),J) value, pairs of resonances are sampled from the Wigner distribution with the level density given for this pair in ENDF. Once the distribution of energy levels is sampled, the resonance width is sampled from a Chi-square distribution for each resonance. The number of degrees of freedom is given in ENDF. PURM uses the \(\Delta_3\) statistic test developed by Dyson and Mehta [ampx-DM63, IntroLL95] to determine the appropriate number of pairs of resonances. Once all the parameters are sampled, the single-level Breit–Wigner formalism is used to calculate the total, fission, capture, and elastic cross section data at all desired temperatures. The process is repeated a sufficient number of times to generate statistical information of the cross section data. Since cross section data cannot be negative, and since an elastic cross section of zero causes the transport codes to abort, PURM rejects any sample that generates negative cross sections or zero elastic cross section values. PURM generates probability tables for each desired energy and temperatures. The cross section boundaries in the table are chosen so that the probability is equiprobable in the total cross section.
As in the resolved range, the ENDF format allows the evaluator to give cross section data in point-wise format in File 3 that are to be combined with the cross section calculated from the unresolved resonance parameters. However, due to the statistical nature, two different formats are allowed, as distinguished by a value of zero or one for a flag called LSSF. If LSSF is zero, the cross section of File 3 is to be added to File 2 to form the total cross section data. If LSSF is one, File 2 unresolved resonance parameters are to be used to compute a slowly varying self-shielding factor that may be applied to the rapidly varying File 3 values. In either case, two different energy grids may be used for File 2 and File 3 data. Since the generation of a probability table for a given energy is a computationally intensive step, PURM only generates probability tables at the energies of reference used for the unresolved resonance data in File 2. However, since the probability tables are generated on equiprobable bins, probability tables at other desired energies can easily be interpolated. A second module PURM_UP is used to generate the probability tables on the union grid of File 2 and 3 data. In PURM_UP, the point-wise cross section from File 3 is retrieved and Doppler broadened to the desired temperatures. If LSSF is one, the probability tables generated in module PURM are interpolated on the union grid and multiplied by the Doppler-broadened File 3 cross section value. If LSSF is zero, the probability tables without the File 3 contribution are interpolated on the union grid, and the Doppler-broadened File 3 cross section data are added. Since the File 3 data do not contain any statistical variations, the above operations will not change any distributions described by the probability tables except for a constant factor or a constant value.
11.6.6. PRUDE
The module PRUDE is used to calculate the temperature and background-dependent cross section data in the unresolved resonance range based on methods developed by R. N. Hwang at ANL [ampx-Hwa87] as outlined in Sect. 11.2.2.3.2. As in the case of PURM, the cross section data given in File 2 are either added or multiplied with the temperature- and background-dependent cross section data.
11.6.7. X10
The module X10 is used to generate the group-wise 1D data and scattering matrices. The module does not read ENDF/B data files; instead, it takes the following three data types:
a file containing the point-wise 1D data at all desired temperatures,
a file containing a smooth weighting function, and
a kinematics file generated by Y12 that contains the data in cosine moment form.
X10 does not include physics. The physics associated with a particular type of scattering are all contained in the kinematics file produced by Y12. Therefore, X10 can use the same integration routines whether neutron matrices, gamma matrices, or gamma production matrices are produced. The integration routines used are described in Sect. 11.5.2. In addition to the 1D cross section data and kinematic data given in the ENDF evaluation, X10 generates several specific reactions for use in the transport codes.
For fissionable materials, X10 will produce several specialized scattering matrices as listed in Sect. 11.7.3.2.
11.6.8. FABULOUS
The module FABULOUS computes data needed for resonance self-shielding of MG cross sections with the Bondarenko method [ampx-Wil11]. The Bondarenko method represents self-shielded cross sections in terms of temperature and a background cross section parameter \(\sigma_0\) which indicates the degree of self-shielding:
where \(\sigma_{x, g}^{(j)}\left(\sigma_0, T\right)\) is the self-shielded MG cross section in group g for reaction type x and nuclide j, corresponding to background cross section \(\sigma_0\) and temperature T. The Doppler broadened CE cross section data \(\sigma_x^{(j)}(E, T)\) appearing in Eq. (11.6.13) is processed as described in previous sections, and the weighting function \(\varphi\left(E, \sigma_0, T\right)\) approximates the fine-structure flux spectrum for a mixture containing resonance nuclide j at varying dilutions as defined by the value of \(\sigma_0\) Bondarenko shielding factors, also known as f-factors, are computed from the expression
where the denominator corresponds to an arbitrary reference cross section evaluated with a specified reference flux energy spectrum and temperature. Often the reference spectrum is characteristic of a fission source in a moderating medium containing an infinitely dilute concentration of the resonance material. However, rather than a generic infinitely dilute spectrum, it may be advantageous to use a more tailored reference spectrum for some applications.
To use the library Bondarenko data to obtain shielded cross sections for transport calculations, the value of \(\sigma_0\) is computed for the system (e.g., lattice) of interest, and the corresponding factor \(\mathrm{f}\left(\sigma_0, \mathrm{~T}\right)\) is interpolated from tabulated values on the library. The shielded cross section is obtained by multiplying the shielding factor by the reference (i.e., infinitely dilute) cross section.
The salient feature of the Bondarenko method is that the flux weighting spectrum is parameterized by a function that depends only on the background cross section and temperature, which allows Eq. (11.6.13) and Eq. (11.6.14) to be evaluated for a specified set of background cross sections and temperatures that span the range of self-shielding conditions. For example, the background cross sections used to produce the 238U f factors for ENDF/B-VII libraries in the SCALE system are
Group-dependent f-factors vs. background cross sections and temperature, as well as the reference cross section values, are included for each nuclide in the AMPX master library.
AMPX provides three methods to parameterize the flux for processing Bondarenko data: (1) analytical approximation, (2) numerical solution of the slowing-down equation for an infinite homogeneous medium, and (3) numerical solution for a heterogeneous unit cell in an infinite lattice. It is usually desirable to use the analytical representation for the unresolved resonance range and higher energies, while the numerical solutions are usually more accurate for the resolved resonance and thermal ranges. Numerical solutions obtained with the homogeneous model are adequate for most resonance nuclides, but the heterogeneous model may produce more accurate results for important nuclides in the fuel region of a reactor lattice. Only the analytical method is provided in the AMPX distribution. The full AMPX/SCALE distribution, along with the SCALE data directory, is needed for the remaining two methods.
The AMPX module FABULOUS computes Bondarenko factors with an analytical expression for flux based on the narrow resonance (NR) and intermediate resonance (IR) approximations:
In this case Eq. (11.6.13) reduces to
It can be seen that the limit for \(\sigma_{x, g}^{(j)}\left(\sigma_0 \rightarrow \infty, T_{r e f}\right)\) is the value of the reference cross section weighted with \(\varphi_{r e f}\).
The integrals in Eq. (11.6.17) are solved using the Runge–Kutta method with adaptive step size [ampx-PVTF92].
As outlined above, there are two methods available in AMPX to calculate the cross section data in the unresolved resonance range. If the module PRUDE is used to generate temperature and background cross section dependent cross section, Eq. (11.6.17) is used. However, in the unresolved resonance range, values for \(\sigma_x^{(j)}\left(E,T\right)\) is substituted by \(\sigma_x^{(j,urr)}\left(E,T,\sigma_o\right)\) as calculated by PRUDE.
If the probability table is used, \(\sigma_{x,p}^{(j)}\left(E,T\right)\) is the cross section for the band p of the probability table for reaction x and nuclide j. The probability for a given band is given by \(P_p\). In this case, FABULOUS calculates \(\sigma_{x,g}^{(j)}\left(\sigma_0,T\right)\) as
If the unresolved resonance range starts or ends within a group, the numerator and denominator each will have two terms, one containing the sum over the probability table bands, and one using the integral with the point-wise cross section data.
The AMPX module IRFfactor obtains a parameterized CE flux spectrum using numerical solutions computed with the CENTRM/PMC deterministic transport modules in SCALE [ampx-ORN11]. These SCALE modules CENTRM and PMC have application program interfaces (APIs) which are called directly from IRFfactor. The PMC module evaluates Eq. (11.6.13) using a weight function calculated by CENTRM, a deterministic transport solver that uses CE data. CENTRM determines a problem-specific energy mesh based on cross section variations for materials in the problem, resulting in an energy grid of ~60,000–100,000 points for the flux calculation. Either homogeneous or simple heterogeneous models can be used.
The point-wise flux (PW) for the homogeneous model is computed from the slowing-down equation for an infinite-medium mixture containing resonance nuclide j mixed with hydrogen:
where
and \(N^{(H)}, N^{(j)}\) are number densities of hydrogen and nuclide j, respectively.
Note that the solution to Eq. (11.6.19) is parameterized in terms of \(\sigma_0\) and T as required by the Bondarenko method. IRFfactor uses CENTRM to numerically solve Eq. (11.6.19) for a given resonance material, with the specified sets of temperatures and background cross sections. The ratio \(N^{(H)} / N^{(j)}\) in the CENTRM homogeneous medium calculation is adjusted to give the desired background cross section using Eq. (11.6.20). IRFfactor executes the PMC module to compute self-shielded MG cross sections by evaluating Eq. (11.6.13) with the calculated CE flux at the corresponding \(\left(\sigma_0, \mathrm{~T}\right)\). The module PMC also updates the elastic scattering matrix, and the self-shielded removal cross section data are the diagonal elements of the elastic scattering matrix for Legendre order zero. The shielded cross sections are converted into f-factors for the library.
IRFfactor can also be used to compute heterogeneous shielding factors for resonance nuclide j contained in a uniform lattice consisting of cylindrical fuel pins, surrounded by cladding, and contained in a moderating material. In this case, CENTRM calculates the space-dependent flux in a unit cell using either the discrete ordinates method for a 1D Wigner–Seitz model or the method of characteristics for 2D unit cell model (i.e., cylindrical fuel pin in a rectangular moderator region). Although CENTRM can treat an arbitrary mixture of resonance absorbers, IRFfactor by default neglects resonance interference effects and represents the total cross sections by the potential scattering for all nuclides other than j. This approximation allows Bondarenko data for each resonance material to be processed independently. For self-shielding with the heterogeneous model, the following transport equation is solved to obtain the CE angular flux spectrum for a given heterogeneous cell configuration:
The zone-averaged scalar flux \(\varphi^{(\mathrm{Z})}(\mathrm{E})\), which is obtained by integrating the CE angular flux over all directions, is used as the weighting function to compute shielded MG cross sections. Cell parameters such as fuel radius, pin pitch, moderator void fraction, and material concentrations (i.e., \(N^{(j)}\) and \(N^{(m)}\) are varied to obtain a range of heterogeneous self-shielding conditions for solving Eq. (11.6.21). The self-shielded cross sections are assigned to the background cross section for the corresponding heterogeneous cell configuration. Two options are provided to define the background cross section of the heterogeneous cell: (1) the embedded self-shielding method (ESSM) described in [ampx-WK12], and (2) conventional equivalence theory.
The ESSM calculates the background XS in group g for resonance nuclide j in zone Z from the expression [ampx-WK12]:
In Eq. (11.6.22), the variable \(\sigma_{\mathrm{a}, \mathrm{g}}^{(\mathrm{j})}\) is the self-shielded group cross section weighted with the CE flux in zone Z, and \(\varphi_{\mathrm{g}}^{(\mathrm{Z})}\) is the MG flux for zone Z, which is calculated by solving the following one-group slowing-down equation for the same heterogeneous cell:
where \(\lambda^{(m)}\) is the IR parameter discussed in the next section.
The above one-group fixed source transport equation is solved independently for each group using CENTRM. In order to obtain shielded cross sections with ESSM for a reactor lattice mixture, a similar fixed source is solved (perhaps in 2D or 3D geometry); Eq. (11.6.22) is evaluated to obtain the background cross section, and then the shielded cross section is interpolated from the tabulated values on the library. The ESSM approach is used in the POLARIS [ampx-JWE+14] and MPACT [ampx-KCJ+13] lattice physics codes.
The other option for defining the background cross section of a heterogeneous cell is the conventional method based on the IR approximation and equivalence theory [ampx-StammlerA83], as implemented in the BONAMI module of SCALE:
where \(\lambda^{(\mathrm{m})}\) is the IR parameter (discussed below) for nuclide m, and \(\sum_{e s c}\) is the “escape” cross section. In IRFFactor the escape cross section for the heterogeneous cell is computed from the expression
where c = Dancoff factor for the fuel, \(\bar{\ell}\) = average chord length in the fuel zone, and A = Bell correction factor. The techniques used to evaluate these parameters are discussed in the BONAMI section of SCALE. In addition to BONAMI, several other codes employ Eq. (11.6.24) for Bondarenko self-shielding calculations, although the expressions for the Dancoff and Bell factors may differ somewhat.
After all cell calculations are completed, shielded cross sections corresponding to the desired set of \(\sigma_0\) values on the library are obtained by interpolation from the shielded data computed for the various cell background cross sections and then are converted to f-factors.
The modules FABULOUS and IRFFACTOR can also calculate the f-factors for the removal cross section, which is a measure of elastic scattering staying in the group. The removal cross section is defined as
where the definitions are as given in Eq. (11.6.27), and \(E_g\) is the lower group boundary. Outside the thermal range, elastic scattering does not scatter to exit energies larger than the incident energy; therefore, the inner integral can be extended to the upper energy bound. This makes the removal cross section in the infinite diluted limit the same as the diagonal elements of the scattering matrix for the elastic cross section at Legendre order zero.
Using the narrow resonance flux defined in Eq. (11.6.14) and Eq. (11.6.13), the narrow resonance removal cross section can be calculated as a function of temperature and background value:
As before, two options are available to calculate the cross section data for the elastic or total cross section in the unresolved resonance range. The first option is to use \(\sigma_x^{(j,urr)}\left(E,T,\sigma_o\right)\) as calculated by PRUDE, and the second is to use the probability table data, in which case Eq. (11.6.27) in the unresolved resonance range becomes
The f-factors for the removal cross section are calculated as a ratio between Eq. (11.6.27) and the diagonal elements of the scattering matrix for the elastic cross section at Legendre order zero. In the case of IRFACTOR, the module PMC updates the elastic scattering matrix, and the removal cross section as a function of background cross section and temperature is retrieved as the diagonal element of the updated elastic scattering matrix.
11.6.9. LAMBDA
The AMPX module LAMBDA computes group-dependent values for the \(\lambda\) factors used in the IR approximation, which is widely used in Bondarenko self-shielding codes. The \(\lambda\) parameters also are used in the AMPX IRFfactor module to determine background cross sections for the heterogeneous cells used in computing the shielding factors, as shown in see Eq. (11.6.23) and Eq. (11.6.24).
The IR approximation represents the moderating properties of a scatterer nuclide by the parameter \(\lambda\), which varies over the range of 0.0 to 1.0. The lower limit value of \(\lambda\) = 0.0 corresponds to a wide resonance (WR) scatterer, and the upper limit of \(\lambda\) = 1.0 corresponds to a narrow resonance (NR) scatterer. A neutron loses a negligible amount in a collision with a WR nuclide compared to the resonance energy widths of a specified reference absorber material usually chosen to be 238U. Conversely, the resonance energy widths of the reference absorber are negligibly small compared to the neutron energy lost in a collision with an NR scatterer. Only an infinite mass nuclide strictly satisfies the requirements for a WR scatterer, while hydrogen closely approximates an ideal NR scatterer in the epithermal energy range. The scattering properties of all other materials are intermediate between these two limits, and they correspond to fractional values of \(\lambda\). Since the amount of energy lost per collision—as well as resonance widths of the reference absorber—depends on the neutron energy, the IR parameters in general are functions of energy group.
The AMPX module LAMBDA uses the hydrogen-equivalent method [ampx-StammlerA83] to determine IR parameters for a specified scatterer nuclide and reference absorber, assumed here to be 238U. First, a reference set of self-shielded cross sections is computed for several infinite media mixtures of 238U and hydrogen, in which the hydrogen-to-238U ratio is varied to span the range from minimal to infinite dilution. The flux spectra used to weight the shielded 238U cross sections are calculated with the CENTRM transport code which uses point-wise cross sections 238U and hydrogen. Next, some of the hydrogen atoms in the media are replaced by a corresponding number of atoms of a given scatterer nuclide j. The CENTRM calculations are performed again for the media, which now consists of 238U, hydrogen, and scatterer j. For this application, the CENTRM calculations are performed using only the potential cross section for j. The shielded cross section for the mixture will be different than the original mixture containing only hydrogen because the slowing-down properties of j are different. However instead of one-to-one replacement, the number of j atoms can modified to obtain the same shielded cross section as obtained with hydrogen. This is called the hydrogen equivalent number density of j, and from this value, the corresponding lambda value for nuclide j can be found. In practice, the hydrogen-equivalent value is obtained by matching the self-shielded cross section with the corresponding value for the pure hydrogen moderated case. The process is repeated for each nuclide and energy group to obtain group-dependent lambdas. This procedure is completely automated in the module.
11.6.10. SIMONIZE
The module SIMONIZE is used to combine partial master libraries generated by X10 and FABULOUS into a cohesive AMPX MG master library for a given evaluation. The module combines the data into one AMPX MG master library after recalculating and renormalizing the data as follows:
1. 1-D cross section values below a user-specified value are set to 0. This includes negative cross section values.
2. For thermal moderators like 1H in H2O, the elastic cross section (MT=2) is set to the 1D collapse of the thermal scattering matrices in the thermal range. The first thermal group defines the extent of the thermal range.
3. If the evaluation uses the free-gas approximation for the thermal scattering matrices, the thermal scattering matrices are renormalized such that when collapsed they result in the elastic cross section as calculated from the ENDF information.
4. The elastic scattering matrix (MT=2) is set to zero in the thermal range, where the first thermal group again defines the thermal range. The assumption is that the free gas scattering matrix should be used in this range.
5. An AMPX master library should only contain up-scatter in the thermal range. Thus, scattering matrices are corrected to not contain any up-scatter terms outside the thermal range. Any up-scatter terms are added to the closest diagonal matrix element.
6. All redundant 1D cross section values are recalculated from the partial cross section values.
7. If the library contains gamma production information, the module checks whether all production matrices are given relative to the cross section. If not, the relevant scattering matrices are renormalized to be relative to the cross section.
8. If a scattering matrix has a (Pl, \(\mathrm{l}\) > 0) term that is non-zero and the P0 term is zero, then the (Pl, \(\mathrm{l}\) > 0) is also set to zero.
11.6.11. JAMAICAN
The modules generating kinematics data generate the double differential point-wise data. The CE transport codes require the data in the form of marginal probabilities with respect to angle, and conditional probability with respect to exit energy. The module JAMAICAN performs the conversion from double differential point-wise to marginal, and conditional probabilities and can also eliminate redundant points from the distribution and processes discrete gamma lines if processing gamma production data.
In the case of elastic or discrete inelastic reactions (MT=2, 51-90) for incident neutrons, the module uses the same number of angles and exit energies as given in the double differential point-wise data. The necessary integrations are performed using standard AMPX integration routines, and the distribution is normalized to one. In some cases (for example 1H, which has a mass ratio with respect to the incident neutron of less than 1.0), elastic or discrete inelastic reactions can scatter to the same lab angle for different exit energies. In these cases, the marginal probability for the angle lists the same angle twice with different cumulative probabilities. The integration routine used in JAMAICAN steps through the point-wise distribution, inverting integration boundaries where necessary, instead of using driver routines, thus ensuring correct integration in the double-valued region.
In some cases, like coherent elastic scattering for thermal moderators, the double-differential distribution can be discrete in angle. Scattering only occurs in specific directions determined by Bragg edges in the crystal structure. JAMAICAN produces a special distribution for the marginal angle probabilities: for each discrete angle, two angles are added to the distribution: one at the Bragg angle with the correct probability, and the other offset with a probability of zero. This causes the CE transport codes to pick only the discrete angles.
In all other cases, the angle distribution is assumed to be continuous. In most cases, equiprobable angle bins are used for the marginal angle distribution, where the number of desired bins is given by the user. A union grid of all angles for a given incident energy and all exit energies is first created, and the bin boundaries are determined from the cumulative probability distribution on that grid. Unless not requested by the user, an attempt is made to thin the union angle grid while preserving all values of the double differential distribution. If the union grid can be thinned to use a number of angles smaller than the requested number of equiprobable angles, this smaller number is used, and the angle distribution is tagged as not equiprobable. Subsequently, the conditional energy distribution for each selected angle is determined by interpolation from the full double differential function. Unless not requested by the user, an attempt is made to thin the conditional energy distribution if the conditional probability can be determined by linear interpolation.
11.6.12. PLATINUM
The module PLATINUM is used to create a cohesive CE library for a given evaluation from all the partial parts generated by other modules. However, in contrast to SIMONIZE, which performs a similar task for AMPX MG master libraries, the redundant cross section data are not recalculated, and the elastic cross section is not changed in the thermal range for thermal moderators. These tasks should be performed by other modules before passing the data to PLATINUM. The module unionizes the 1D cross section data as needed and calculates the collision probabilities. Depending on the availability of cross section data, the following collision probabilities, which are typically needed by Monte Carlo transport codes, are calculated:
MT |
Definition |
|---|---|
2006 |
\(\frac{\sigma_{\text {total }}-\sigma_{\text {absorption }}}{\sigma_{\text {total }}}\) |
2018 |
\(\frac{\sigma_{\text {nubar }} \times \sigma_{\text {fission }}}{\sigma_{\text {total }}}\) |
2016 |
\(\frac{\sigma_{n 2 n}}{\sigma_{\text {total }}}\) |
2017 |
\(\frac{\sigma_{n 3 n}}{\sigma_{\text {total }}}\) |
11.6.13. PUFF-IV
The module PUFF-IV is used to generate covariance matrices with respect to the group-averaged cross section data. A detailed description is available in a separate PUFF-IV manual [ampx-WALD08].
ENDF contains covariance information for the point-wise data in Files 31 and 33. Covariance information for resonance parameters in the resolved and unresolved range is given in File 32. Covariance information for exit energy probability distributions is given in File 35, and data on exit angle are in File 34.
A covariance matrix is given with respect to two parameters:
where
where \(\langle x\rangle\) is the expected value of parameter x and \(\delta x\) is the deviation of the expected value from the true value. The standard deviation or uncertainty of the parameter x is then defined as
In addition, the correlation between two parameters is defined as
All the above equations refer to absolute quantities. However, in the libraries produced by PUFF-IV, relative quantities are used in which the covariance and the standard deviation are divided by the expected values.
Assuming that a derived quantity \(f\left(x_1,x_2,x_3,\ldots,x_n\right)\) is to be calculated and covariance information for the parameters is available, then the standard deviation for f will be
and the covariance matrix for two different values of the function f would be
The above formulas are derived via the definition of the covariance in the case of a linear function with respect to the individual parameters. The desired function, which is not likely to be linear in the parameters, is converted to a linear function by using a first order Taylor expansion. Higher order effects are neglected in the processing of the covariance information and the propagation of uncertainties. For continuous function, the sums above are substituted by integrals.
11.6.13.1. Point-Wise Covariance for Cross Section Data
In Files 31 and 33, covariance matrices for cross section data with respect to the incident energy are given. Some covariance matrices are given directly, and some are given as derived matrices. If given as direct covariance matrices, the covariance matrix is given on a fairly broad bin structure for the incident energy. For a given bin, the covariance value is assumed to be constant. Covariance matrices are given for incident energy, material, and reaction. ENDF contains partial covariance matrices:
where \(\text { react }_1\) describes one material and reaction, and \(\text { react }_2\) describes another material and reaction. Since the matrices are partial covariance matrices, they do not need to be symmetric, and the bin structures for the two incident energies can differ. PUFF-IV processes these point-wise covariance matrices into covariance matrices with respect to group-averaged cross section values, which are defined by Eq. (11.5.11). Define
Note that
where \(\left[E_1^1, E_1^2\right]\) is the energy range for group I. Then the group-averaged covariance matrix becomes
The covariance matrix \(\left\langle\delta \sigma^{\text {react }_1}\left(E_1\right), \delta \sigma^{\text {react }_2}\left(E_2\right)\right\rangle\) is a point-wise matrix. However, it is given as a constant over evaluator defined incident energy bins. For ease of calculation, a super grid is generated which contains the user-defined group structure and every evaluator-defined bin boundary for all explicitly given matrices. Since the evaluator-supplied covariance is point-wise, the value is the same in any subgroup of an evaluator defined group. Also, since all energy boundaries are included, partial group values will not occur. Equally, \(x_I^{\text {react }_1}\) and \(\phi_I\) be divided into these subgroups. The covariance matrix then becomes
where \(E_1^s\) denotes the energy groups on the super grid. If the point-wise cross section covariance is given as a relative covariance, the equation on the super-grid becomes:
\(\begin{aligned} &\frac{1}{\phi_I^s \phi_J^s} \int_{E_1 \in I^s} d E_1 \int_{E_2 \in J^s} d E_2 \varphi\left(E_1\right) \varphi\left(E_2\right) \sigma^{\text {react }_1} \sigma^{\text {react }_2} \operatorname{COV}\left(\sigma^{\text {react }_1}\left(E_1\right), \sigma^{\text {react }_2}\left(E_2\right)\right)= \\ &\sum_{E_1^S \in I} \sum_{E_2^S \in J} \operatorname{COV}\left(\sigma^{\text {react }_1}\left(E_1^S\right), \sigma^{\text {react }_2}\left(E_2^S\right)\right) x_I^{\text {react }_1} x_J^{\text {react }_2} . \\ & \end{aligned}\)
To collapse back to the user-defined group structure, it is noted that
Therefore, the covariance matrix between two broad groups is
In addition to direct covariance matrices with respect to point-wise cross section data, ENDF includes derived matrices. For the first case, the evaluator simply defines that a given cross section is defined as the sum over several other reactions. Not only does this define the covariance matrix for the given reaction, the reaction is now also correlated with all the partial reactions that make up the defined reaction. PUFF_IV automatically adds these extra cross correlation matrices. Another option open to the evaluator is to define the cross section as being given as a ratio with respect to the cross section of another material and reaction. The ratio is assumed to have no uncertainty, and a covariance matrix for the dependent cross section can therefore easily be calculated.
All the choices open to the evaluator—i.e. explicit or derived covariance matrices—can be used over defined energy ranges. If a matrix is given for a partial energy range, all matrix elements are set outside the range to zero. The final matrix can then simply be formed by adding the various partial energy range matrices together. This relies on the fact that ENDF in these cases does not give a correlation between the matrices for the partial energy ranges.
The group-averaged cross section on the super grid that is needed to calculate the group-averaged covariance matrices is calculated from the point-wise cross section and flux data. PUFF_IV also has the capability to use cross section data from an MG library. In this case, the cross section data for any subgroup of a user-defined MG group is simply assumed to be identical to the cross section of the large group. This ensures that the latter collapse from fine group to broad group results on the original MG cross section value. The flux is treated similarly if given on user-defined groups.
11.6.13.2. Resolved Resonance Covariance Matrix
In the resolved range, the covariance matrices are given for all resonance parameters. In order to propagate the covariance information to the point-wise cross section, partial derivatives of the cross section with respect to a given resonance parameter are needed. PUFF_IV uses SAMRML, a part of SAMMY [ampx-Lar08], to calculate these derivatives. The SAMRML library, which is part of SAMMY, uses analytical formulas to calculate the derivatives for the full R-matrix Reich–Moore formalism. If the resonance parameters in ENDF are given for single- or multi-level Breit–Wigner formalism, they are converted to the full R-matrix Reich-Moore formalism prior to derivatives being calculated. The covariance matrix with respect to the point-wise cross section thus becomes
where the sum is over all resonance parameters \(P_n\). The formula for the point-wise covariance matrix with respect to the cross section can be inserted into Eq. (11.6.38) to yield
If the user defines
then the formula becomes
The integral in Eq. (11.6.44) is solved using a fourth-order Runge–Kutta method with adaptive step size [ampx-PVTF92]. Since the number of resonance parameters can be large, solving Eq. (11.6.45) can take a long time. Therefore, PUFF_IV can be compiled with the BLAS library [ampx-DDCHD90], which has functions for the type of matrix operation needed in Eq. (11.6.45) to speed up the process considerably.
11.6.13.3. Unresolved Resonance Covariance Matrix
The covariance data given in File 32 for the unresolved range are independent of energy in the range they are given. This is the case, even if the unresolved resonance parameters given in File 2 are energy dependent. Therefore, the resonance parameters given in File 32 are used to calculate the covariance matrix with respect to the cross section instead of the parameters used to calculate the point-wise cross section data for the library. The parameters for the unresolved resonance range are given as an average value and a distribution function for those values, which is a \(\chi^2\) distribution with an evaluator-defined number of degrees of freedom. The formula for the average cross section at a temperature of 0 K involves a statistical integral, which is calculated using a quadrature integration as outlined in Steen 1969 [ampx-SBG69] using the weights and abscissa given in Henryson 1976 [ampx-HTS76]. Since all resonance parameters are independent of energy, the derivative of the statistical integral becomes straightforward, and the derived integrant is integrated using the same quadrature weights and abscissa as the original integral. After taking the point-wise derivative, the formulas for calculating the covariance matrix with respect to the group averaged cross section data are identical to the ones used in the resolved resonance range.
11.6.13.4. Exit Energy Covariance Matrix
The ENDF evaluations can contain covariance matrices for the exit energy. The covariance matrices are independent of incident energy in a given range of incident energies. Covariance matrices may be given for several ranges of incident energies, but correlation between these ranges are not supported in the ENDF formatted files. For a given incident energy range, a covariance matrix with respect to the exit energy is given. The covariance matrix elements are given on an exit energy bin structure. The value given is the covariance matrix on the bin probability and not on the bin-averaged probability function. This is equivalent to the group-averaged covariance on an evaluator defined group structure. Therefore, if the group-averaged one-dimensional \(\chi\) is defined as
and
then the covariance matrix given is
on an evaluator-defined group structure, which needs to be converted to the user-defined group structure. Since \(\chi\) is normalized to 1, combining two groups into one group simply implies adding the values for the two groups. Therefore, the same applies for the covariance:
If splitting a larger group into several groups, chi scales with the bin width, i.e.,
and the covariance elements scale similarly with the bin width.