Lesson 15 of 15

Neutron Moderation

Neutron Moderation

Fission of U-235 releases fast neutrons with energies around 2 MeV. However, U-235 fissions most efficiently with thermal neutrons at around 0.025 eV (room temperature). A moderator slows neutrons down through elastic collisions.

Average Logarithmic Energy Decrement

Each collision reduces a neutron's energy. The average logarithmic energy loss per collision is:

ξ=1+(A1)22Aln ⁣(A1A+1)\xi = 1 + \frac{(A-1)^2}{2A} \ln\!\left(\frac{A-1}{A+1}\right)

For hydrogen (A=1A = 1): ξ=1\xi = 1 (special case, largest possible energy loss per collision).

ModeratorAAξ\xi
Hydrogen (1^1H)11.000
Deuterium (2^2H)20.725
Carbon (graphite)120.158

Number of Collisions to Thermalise

Starting from E0=2×106E_0 = 2 \times 10^6 eV (fast neutron), reaching Ef=0.025E_f = 0.025 eV (thermal):

n=ln(E0/Ef)ξn = \frac{\ln(E_0/E_f)}{\xi}

Hydrogen requires only ~18 collisions; graphite requires ~115.

Average Energy After One Collision

For a neutron of energy EE colliding with a nucleus of mass AA (in neutron mass units):

Eavg=EA2+1(A+1)2E_{\text{avg}} = E \cdot \frac{A^2 + 1}{(A + 1)^2}

Your Task

All constants must be defined inside each function. Use import math for math.log.

  • log_energy_decrement(A) — returns ξ\xi for mass number AA (return 1.0 for A=1A = 1)
  • collisions_to_thermalize(A, E0_eV=2e6, Ef_eV=0.025) — number of collisions needed
  • energy_after_collision(E, A) — average energy after one elastic collision
Python runtime loading...
Loading...
Click "Run" to execute your code.