Module reich_moore

Module reich_moore 

Source
Expand description

Multi-formalism cross-section dispatcher.

cross_sections_at_energy is the primary entry point for computing energy-dependent cross-sections from ENDF resonance data. It iterates over all resonance ranges in the data and dispatches each to the appropriate formalism-specific calculator:

ENDF LRFFormalismImplemented as
1SLBWslbw::slbw_cross_sections_for_range
2MLBWslbw::mlbw_cross_sections_for_range (true MLBW with resonance interference)
3Reich-Moorereich_moore_spin_group (this module)
7R-Matrix Limitedrmatrix_limited::cross_sections_for_rml_range
URRHauser-Feshbach averageurr::urr_cross_sections

§Reich-Moore Approximation

In the full R-matrix, all channels (neutron, capture, fission) appear explicitly. The Reich-Moore approximation eliminates the capture channel from the channel space, absorbing its effect into an imaginary part of the energy denominator. This makes the level matrix smaller while remaining highly accurate.

For non-fissile isotopes (like U-238 below threshold), each spin group has only ONE explicit channel (neutron elastic), making the R-matrix a scalar — and the calculation is very efficient.

§SAMMY Reference

  • rml/mrml07.f Setr: R-matrix construction
  • rml/mrml09.f Yinvrs: level matrix inversion
  • rml/mrml11.f Setxqx: X-matrix, Sectio: cross-sections
  • rml/mrml03.f Betset: ENDF widths → reduced width amplitudes
  • SAMMY manual Section 2.1 (R-matrix theory)

Structs§

CrossSections
Cross-section results at a single energy point.

Functions§

cross_sections_at_energy
Compute cross-sections at a single energy.
cross_sections_on_grid
Compute cross-sections over a grid of energies.