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:
All formalisms route through a single dispatch pipeline —
cross_sections_on_grid precomputes per-range invariants once, then
evaluate_precomputed_range evaluates the correct formalism at each
energy. cross_sections_at_energy is a one-call convenience
wrapper around the same pipeline. There is exactly one entry point
and one evaluator per formalism:
| ENDF LRF | Formalism | Evaluator |
|---|---|---|
| 1 | SLBW | slbw::slbw_evaluate_with_cached_jgroups |
| 2 | MLBW | slbw::mlbw_evaluate_with_cached_jgroups |
| 3 | Reich-Moore | reich_moore_spin_group_precomputed (+ 2ch/3ch) |
| 7 | R-Matrix Limited | rmatrix_limited::cross_sections_for_rml_range |
| URR | Hauser-Feshbach average | urr::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.fSetr: R-matrix constructionrml/mrml09.fYinvrs: level matrix inversionrml/mrml11.fSetxqx: X-matrix, Sectio: cross-sectionsrml/mrml03.fBetset: ENDF widths → reduced width amplitudes- SAMMY manual Section II.B.1 (Reich-Moore approximation)
Structs§
- Cross
Sections - 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.