Doppler-broadening preprocessor routine

From Serpent Wiki
Jump to: navigation, search


Traditionally, the effect of thermal motion on reaction rates has been taken into account by generating temperature-dependent, effective cross section libraries using dedicated processing codes such as NJOY [1], and using these cross sections in reactor physical calculations. This approach works well as long as there is no need to model the temperatures accurately or if the temperature of a system is very common, for instance room temperature. However, when modelling reactor conditions, the temperatures often need to be modeled at a high accuracy and, in addition, the temperatures are strongly case-dependent. Because of this, the cross section libraries often need to be tailored for each calculation case separately.

To simplify the calculation chain, a Doppler-broadening preprocessor routine was implemented in Serpent 2 (and Serpent 1). The routine is able to increase the temperature of a free-atom cross section below the energy region of unresolved resonances. The Doppler-broadening is performed analytically based on the Solbrig's kernel, and the broadening is relatively fast.



Sets the temperature of the material, to be used in both Doppler-broadening preprococessor and free gas treatment of elastic scattering.

NAME  : is the material name
DENS  : density of the material, positive value for atomic density and negative value for mass density
T  : temperature of the material in K
NUCi  : name (ZA + library identifier) of nuclide i
FRACi  : fraction of nuclide i, positive value for atomic fraction and negative value for mass fraction


The effect of thermal motion on reaction rates can be described by using so called effective cross sections in the transport calculation. The effective cross section must reproduce the true reaction rates, which can be calculated as an integral over the thermal motion of a target. The condition of constant reaction rates can be written as

 v \sigma_{\mathrm{eff}}(v,T,A) = \int |\mathbf{v'}| \sigma(|\mathbf{v'}|) P(\mathbf{V_{\mathrm{t}}},T, A) d\mathbf{v'}  \Leftrightarrow

 \sigma_{\mathrm{eff}}(v,T,A) = \frac{1}{v} \int |\mathbf{v'}| \sigma(|\mathbf{v'}|) P(\mathbf{\mathbf{V_{\mathrm{t}}}},T, A) d\mathbf{v'},

where v is the velocity of the neutron, \sigma_{eff} is the effective cross section, \mathbf{v'} is the relative velocity of the neutron to the target and P(\mathbf{\mathbf{V_{\mathrm{t}}}},T, A) is the probability density function of the target motion \mathbf{\mathbf{V_{\mathrm{t}}}}, which depends on temperature T and the atomic weight ratio of nuclide A.

If the target motion is assumed to obey the Maxwell-Boltzmann distribution, the equation can be developed into a widely-used Doppler-broadening formula, a.k.a. Solbrig's kernel [2]

 \sigma_{\mathrm{eff}}(v,T,A) = \frac{\gamma}{v^2 \sqrt{\pi}} \int_{0}^{\infty} v'^2 \sigma(v') (e^{-\gamma^2(v-v')^2} - e^{-\gamma^2(v+v')^2}) dv'

 \gamma(T,A_{n}) = \sqrt{\frac{A M}{2 k_{\mathrm{B}}T}}

in which the angular dependencies have been removed via integration over all angles. In these equations, M is the neutron mass and k_{\mathrm{B}} is the Boltzmann constant. The integral in the Doppler-broadening equation can be calculated analytically if the cross section is piece-wise linear, which is the case with ACE data. It should be emphasized that the integration methodology differs from the most widely used SIGMA1 Doppler-broadening algorithm[3].

More information on the integration methodology and different assumptions can be found in Reference [4]


  • The preprocessor does NOT adjust the temperature of thermal scattering data. For moderator materials, the temperature of thermal scattering data must be changed separately by either
    • changing the library defined in the therm card or
    • interpolating the thermal scattering data to the new temperature using the therm card
  • The preprocessor does NOT adjust the temperature of the unresolved region probability tables. When modeling fast systems, the temperature dependence of reaction rates can be modeled (accurately) only by using ACE libraries corresponding to the exact temperature of each material. These ACE libraries can be processed using NJOY.
  • The preprocessor does NOT adjust the energy grid of the cross section in the temperature adjustment process. Consequently, the resulting energy grid is suboptimal such that
    • the resulting cross section requires slightly more memory than what a cross section processed with NJOY would require at the same temperature and
    • the reconstruction tolerance of the resulting cross section is unknown. Experience has shown that the errors remain small, at least if the nearest library temperature is used as the basis for broadening. Regardless, some differences may be seen in very detailed comparisons.
  • The preprocessor does NOT apply Doppler-broadening correctly to the KERMA coefficients used in energy deposition modes 2/3 and neutron heating detector response (MT=-4). The temperature dependence of KERMA coefficients can be accounted for (accurately) only by using ACE libraries corresponding to the exact temperature of each material. These ACE libraries can be processed using NJOY.


  1. ^ R. E. MacFarlane and D. W. Muir, H. "NJOY99.0 Code System for Producing Pointwise and Multigroup Neutron and Photon Cross Sections from {ENDF/B} Data", Los Alamos National Laboratory, PSR-480, (2000)
  2. ^ A. W. Solbrig, Jr. "Doppler Effect in Neutron Absorption Resonances.", Am. J. Phys., 29, 257-261, (1960).
  3. ^ Cullen, D.E., "Program SIGMA1 (version 79-1): Doppler broaden evaluated cross sections in the evaluated nuclear data file/version B (ENDF/B) format", Lawrence Livermore National Laboratory, UCRL-50400, (1979).
  4. ^ Viitanen, T. "Implementing a Doppler-preprocessor of cross section libraries in reactor physics code Serpent.", M.Sc. Thesis, Helsinki University of Technology, (2009).