The derivation produces a formula with exactly two free numbers in it, and everything the rest of the chapter measures is one of those two, at one value of L/E.
🎯 Why this matters
A degeneracy does not shrink with statistics. Two values of θ₂₃ predict the same curve at every L/E, so running longer buys nothing at all — only a different observable can separate them, which is why the ambiguity has survived every improvement in precision since 1998.§10.1 asserted that neutrinos change flavour and gave you the numbers. This section derives the formula, from the Schrödinger equation, in about a page and a half.
If you worked through §8.1 you have already done this once. The kaon calculation and this one are the same calculation: two states of definite mass, one initial state that is a superposition of them, and a relative phase that grows with time. Everything below is that, with three cosmetic differences the book is careful to list.
| neutral mesons (ch. 8) | neutrinos (here) | |
|---|---|---|
| how many eigenstates | two | three |
| what mixes | a particle with its own antiparticle | three different flavours |
| do they decay | yes, and at very different rates | no |
The third one is the merciful one. In ch. 8 every probability carried a factor and the kaon’s two eigenstates had lifetimes differing by 571, which is why you never see a full kaon oscillation. Neutrinos do not decay at all, so the survival and appearance probabilities sum to exactly 1 forever.
Reducing three flavours to two
Doing the full three-flavour problem is unnecessary, and §10.1 already said why: the two oscillation frequencies differ by a factor 33, so an experiment tuned to one is blind to the other. Drop — a couple of per cent — and the “atmospheric” oscillation involves only , and the two mass states , .
Bettini p. 440. A plane rotation — the two-family case of (10.2), and the exact analogue of the Cabibbo rotation of (7.79).
Every symbol, one at a time
Hover or tap a symbol above — it lights up in the equation and its meaning, units and type appear here.
💡 What this really says — there is no physics in the matrix — the physics is the angle being large
This is a 2×2 rotation matrix and nothing more. The mass basis and the flavour basis are two orthonormal frames in the same plane, turned relative to each other by . There is no physics in the matrix; the physics is in the angle being large.
Compare the quark case at the same scale, below. The Cabibbo rotation is 13°, so is almost and the mixing is a correction. At 48° the two frames are nearly maximally misaligned, and "" and "" have almost nothing to do with each other.
Bettini Fig. 10.3. Grey axes = the mass basis, coloured = the flavour basis. The dashed 45° line is added: it is the maximum possible misalignment, and the neutrino rotation sits almost on it while the quark one barely leaves the axis. That one picture is why neutrino oscillation is a large effect and quark mixing is a small correction.
At exactly 45° the rotation becomes the symmetric combination:
Bettini p. 441, the maximal-mixing case θ₂₃ = 45°. Identical in form to the K⁰ system's Eq. (8.13) with CP violation neglected.
Every symbol, one at a time
Hover or tap a symbol above — it lights up in the equation and its meaning, units and type appear here.
💡 What this really says — you have already solved this once, as the kaon
Look at the shape and then look at §8.1. The kaon’s and is the same equation. The physics is unrelated — one mixes a particle with its antiparticle, the other mixes two flavours — but the linear algebra is identical, and so therefore is every formula that follows from it.
Whether is exactly 45° is an open and interesting question. If it is, something is enforcing it, and nobody knows what. Present data say in , which is consistent with 45° and also with several degrees away from it.
The energies differ, and that is the whole mechanism
Bettini p. 441. The ultra-relativistic expansion, for a beam of common momentum p; E is the average of the two energies.
Every symbol, one at a time
Hover or tap a symbol above — it lights up in the equation and its meaning, units and type appear here.
💡 What this really says — the mass shows up only as m²/2E, and that is the beat generator
A high-energy particle carries almost all its energy as momentum. The mass only shows up in the tiny correction — and because the two components share but not , they run at slightly different frequencies. That is the beat generator.
In DSP terms: you have launched a two-tone signal down a channel whose group delay depends on the tone. The tones start in phase; the phase difference accumulates linearly with distance; and what you detect is the interference of the two.
🔢 Worked example — the split is absurdly small and it still works
Take a 1 GeV neutrino with meV. Its energy differs from a massless particle of the same momentum by .
How big is the splitting, and how big is the phase?
import numpy as np
hbarc = 1.9732698e-7 # eV m
dm2 = 2455e-6 # eV^2, the atmospheric splitting
# phase = dm^2 L / 4E, restored to SI: divide by hbar c, with L in km and E in GeV
k = 1e3 / (4 * hbarc * 1e9)
print(f"dm2 L / 4E -> {k:.4f} x dm2[eV^2] L[km] / E[GeV]")
print(f"the book rounds this to 1.27\n")
E, m3 = 1.0e9, 0.050 # eV: a 1 GeV neutrino, m3 = 50 meV
print(f"energy split of the two components: m^2/2E = {m3**2/(2*E):.3e} eV")
print(f" ... which is {m3**2/(2*E)/E:.2e} of the beam energy")
L = 1000.0 # km
print(f"and yet over {L:.0f} km the phase is {1.27*dm2*L/(E/1e9):.3f} rad")
print(f"first maximum (phase = pi/2) at L/E = {np.pi/2/(1.27*dm2):.0f} km/GeV") dm2 L / 4E -> 1.2669 x dm2[eV^2] L[km] / E[GeV] the book rounds this to 1.27 energy split of the two components: m^2/2E = 1.250e-12 eV ... which is 1.25e-21 of the beam energy and yet over 1000 km the phase is 3.118 rad first maximum (phase = pi/2) at L/E = 504 km/GeV
One part in , and after 1000 km the two components are 3.1 radians apart — essentially in antiphase. Nothing else in physics leverages a difference this small into a 100 % effect. The reason is that a phase is , and is enormous compared with : the interferometer is a thousand kilometres long.
That is also the sense in which an oscillation experiment is the most sensitive mass measurement ever built — and the sense in which it measures nothing at all about the absolute scale, since only the difference enters.
Four lines of algebra
The book compresses the derivation into half a page. Here it is one move at a time.
🪜 From the Schrödinger equation to the mixing-angle formula
Step 1 of 5 — Evolve the mass states(10.13)
Why you may do this: The mass states are the stationary states, so this is just the Schrödinger equation in the basis where it is easiest to write. Nothing has been assumed about mixing yet.
Bettini pp. 441–442, Eqs. (10.13)–(10.17). Nothing here is specific to neutrinos — it is the generic two-state problem.
Bettini p. 441. The Hamiltonian in the flavour basis — the same operator as (10.14), written in the basis a detector works in.
Every symbol, one at a time
Hover or tap a symbol above — it lights up in the equation and its meaning, units and type appear here.
💡 What this really says — half the Hamiltonian is a global phase; the other half is a coupling
Split the Hamiltonian in two and only one half matters. The identity part shifts both flavours together — a global phase, invisible. What is left is off-diagonal, and an off-diagonal Hamiltonian is exactly a coupling: it converts into and back.
This is the two-level system you have met as a qubit under a transverse drive, as two coupled resonators, and as a directional coupler in a waveguide. Same matrix, same Rabi-like solution, same answer.
Bettini p. 442. True for any symmetric 2×2 Hamiltonian, and the tool §10.3 will use to explain the Sun.
Every symbol, one at a time
Hover or tap a symbol above — it lights up in the equation and its meaning, units and type appear here.
💡 What this really says — mixing is a competition between coupling and detuning
Mixing is a competition between coupling and detuning. Strong coupling relative to detuning gives a large angle; weak coupling relative to detuning gives a small one; equal footing () gives , i.e. — maximal mixing, whatever the coupling is.
Bettini writes “this will be useful in the following” and moves on. Hold on to it: it is the entire content of the MSW effect three sections from now. Matter adds a term to the denominator only, so pushing the density until the denominator crosses zero turns any small angle into a maximal one.
The answer
Evolving each mass component with its own phase and projecting onto gives the amplitude directly. Squaring it:
Bettini p. 442. The whole of two-flavour oscillation, in one line: an amplitude times a phase.
Every symbol, one at a time
Hover or tap a symbol above — it lights up in the equation and its meaning, units and type appear here.
💡 What this really says — a depth and a frequency, and no experiment can trade one for the other
Two numbers, doing two different jobs, and no experiment can trade one for the other. sets how much of the beam can ever convert; sets how quickly it does. Measuring an oscillation means measuring a depth and a frequency, and every experiment in §10.2b is designed to get at one or the other.
The amplitude is bounded by 1 and reaches it only at exactly 45°. Nothing can make a beam convert more than completely, which sounds obvious and is the reason being near-maximal was such a surprise: the atmospheric deficit went almost all the way to zero.
🔢 Worked example — check every step of the derivation numerically
Rotating (10.14) should reproduce (10.16); (10.17) should give the angle back; and the amplitude calculation should reproduce (10.18). All three, on real numbers:
Verify (10.15)→(10.18) against the book
import numpy as np
th = np.deg2rad(48.0) # theta_23
c, s = np.cos(th), np.sin(th)
U = np.array([[c, s], [-s, c]]) # (10.10)
E = 1.0e9 # eV
m2, m3 = 0.0500, 0.0700 # eV
# p and the mean m^2/2E are multiples of the identity: they cancel in every
# probability, so drop them and keep only the part that does the work.
H = np.diag([m2**2, m3**2]) / (2*E) - np.eye(2)*(m2**2 + m3**2)/(4*E)
Hp = U @ H @ U.T # (10.15), H' = U H U-dagger
dm2 = m3**2 - m2**2
book = dm2/(4*E) * np.array([[-np.cos(2*th), np.sin(2*th)],
[ np.sin(2*th), np.cos(2*th)]]) # (10.16)
print("max |U H U^T - (10.16)| =", f"{np.abs(Hp - book).max():.2e} eV")
print("tan 2theta from (10.17) =", f"{2*Hp[0,1]/(Hp[1,1]-Hp[0,0]):.6f}",
" vs tan(96 deg) =", f"{np.tan(2*th):.6f}")
t = 4.0e12 # eV^-1 of proper time
amp = (U.T @ np.diag(np.exp(-1j*np.diag(H)*t)) @ U)[1, 0]
print("P(nu_mu -> nu_tau) from the amplitudes =", f"{abs(amp)**2:.9f}")
print("P from (10.18), sin^2(2th) sin^2(dm^2t/4E) =",
f"{np.sin(2*th)**2 * np.sin(dm2*t/(4*E))**2:.9f}") max |U H U^T - (10.16)| = 2.02e-28 eV tan 2theta from (10.17) = -9.514364 vs tan(96 deg) = -9.514364 P(nu_mu -> nu_tau) from the amplitudes = 0.451265424 P from (10.18), sin^2(2th) sin^2(dm^2t/4E) = 0.451265424
Note the trick in line 9. Dropping the identity part of is not a simplification for tidiness — carried at full size, eV swamps the eV difference that does the work, and double precision loses it entirely. The physics that says the common term is unobservable is the same statement that makes the calculation numerically possible.
Rewriting for an experiment
is the proper time in the neutrino’s frame, which nobody can measure. What an experiment controls is the baseline baseline the source-to-detector flight length L. In vacuum the oscillation probability depends only on L/E, so designing an experiment is choosing L/E; the first maximum of the atmospheric oscillation sits at L/E = 504 km/GeV. defined in §10.2a — open in glossary and the energy .
Bettini p. 442 — the appearance probability, in the units every experiment quotes: E in GeV, L in km, Δm² in eV².
Every symbol, one at a time
Hover or tap a symbol above — it lights up in the equation and its meaning, units and type appear here.
💡 What this really says — everything an experiment controls collapses into L/E
Everything an experiment can control collapses into the single variable . That is why §10.1’s census had an column and why it is the only column that matters: two experiments at the same measure the same thing, however different their hardware.
Setting the phase to gives the first maximum at km/GeV for the atmospheric . Reactor experiments reach it with 3 MeV over 1.5 km, accelerators with 0.6 GeV over 295 km. Same number, two completely different machines.
Bettini p. 442 — the survival probability, which is what a disappearance experiment measures.
Every symbol, one at a time
Hover or tap a symbol above — it lights up in the equation and its meaning, units and type appear here.
💡 What this really says — appearance and disappearance are one measurement seen from two sides
Appearance and disappearance are the same measurement seen from two sides, and the second is far easier: you need only count the flavour you started with. That is why the discovery was a disappearance and the confirmation took another fourteen years and an emulsion detector to catch the arriving.
It also has a consequence that will matter in §10.5: because disappearance is appearance and CPT forces that to be even in , no disappearance experiment, however precise, can ever measure CP violation.
⚠️ Where the 1.27 comes from, and why it is not a physical constant
The phase in (10.18) is in natural units. Restoring and and converting to practical units:
Quote in metres and in MeV and the same constant is 1.2669 as well, by a coincidence of the powers of ten that reactor physicists rely on daily. Quote anything else and it is a different number.
One more trap in the same equation. Bettini writes the left-hand side as in both (10.19) and (10.20) even though the argument is now and not at all. It is only notation, but it is the sort of notation that makes a reader think a step has been skipped.
Two-flavour oscillation — Eqs. (10.19) and (10.20)
- survival — still ν_μ
- appearance — now ν_τ
atmospheric ν_μ ↔ ν_τ. The oscillation Super-Kamiokande found in 1998. Nearly maximal mixing, so the survival probability really does dive almost to zero — which is why a deficit this large was visible in a detector that was built to look for proton decay.
Survival and appearance always sum to 1 — unlike the meson case there is nothing to decay into, so mixing only moves probability between flavours. Push the spread slider and watch the wiggles die into the dashed mean: past a few maxima a real beam measures a constant deficit, and the frequency information is gone.
Why a real beam sees a step, not a wiggle
No source is monochromatic. Atmospheric neutrinos span three decades in energy; a reactor spectrum is a broad hump; even a tuned accelerator beam has a spread of a few per cent. Each energy in the beam oscillates at its own rate, and what a detector counts is their sum.
Bettini Fig. 10.4 redrawn as phasors, because that is the picture an engineer already owns. Two components rotate at almost the same rate; their sum is a carrier at the mean frequency inside a slow envelope at the difference frequency. The probability of still finding a ν_μ goes as the square of that envelope. A beam with a spread of energies is a spread of beat frequencies, and they dephase.
The consequence is Fig. 10.6, and it is best seen by dragging the spread slider above. At short every energy in the beam is still in phase and the oscillation is sharp. Further out, the fast components have run ahead of the slow ones and the curves average to a constant
because over many periods.
💡 What this really says — past a few maxima you stop measuring a frequency and start measuring a level
Past a few maxima an experiment stops measuring a frequency and starts measuring a level. That is not a failure — it is a different measurement: the plateau depends only on , so the washed-out region measures the mixing angle cleanly with no dependence on at all.
This is why §10.2b’s Super-Kamiokande plot has both features at once. Neutrinos from overhead have small and show no deficit; neutrinos from below have huge and sit at the plateau; and the position of the transition between them is what measures . One detector, two measurements, from geometry alone.
The mechanical analogue, made exact
Bettini offers two coupled pendulums as an analogy. It is better than an analogy: it is the same mathematics, and the correspondence is line for line.
Bettini Fig. 10.5(a)–(c) and (f). Panels (d) and (e) of the book — one pendulum swinging, then the other — are a time evolution, so they belong in the widget below rather than in a still picture.
The dictionary is exact:
| pendulums | neutrinos |
|---|---|
| the two normal modes | the mass states |
| their eigenfrequencies | the masses (via ) |
| the spring constant | the off-diagonal |
| difference in pendulum length | the detuning |
| “pendulum is swinging” | the flavour state |
| energy in pendulum | the probability |
| beat frequency |
⚙️ Engineer’s bridge — this is mode coupling, and you already have it
Two identical resonators, weakly coupled, split into a symmetric and an antisymmetric mode at and . Excite one resonator alone — which is a superposition of both modes — and energy sloshes across at the difference frequency. You have seen this as coupled LC tanks, as a directional coupler, as two pendulums on a shared beam, and as avoided crossing in any eigenvalue problem with a perturbation.
Where it holds: completely, for the two-state case. The transfer fraction is in both, the beat frequency is the eigenvalue splitting in both, and detuning suppresses transfer in both.
Where it breaks: two places, and both matter later. First, energy in a coupled oscillator is a continuous quantity you could measure on one pendulum; is the probability of a yes/no outcome on a single particle, and the sloshing is only visible in an ensemble. Second, a passive coupler has fixed detuning, while §10.3 changes the detuning while the wave is propagating — the analogue is a tapered coupler, and it does something a fixed one cannot.
Two-flavour oscillation — Eqs. (10.19) and (10.20)
- pendulum ν_μ — started here
- pendulum ν_τ — started at rest
- envelope ± sin 2θ
atmospheric ν_μ ↔ ν_τ. Drag θ down from 48° and watch the ν_τ envelope shrink as sin²2θ while ν_μ stops coming to rest. That is Fig. 10.5(f), and it is the same curve as the oscillation depth on the other tab.
The beat period is held fixed here so that only the transfer depth changes with θ, which is Fig. 10.5(f)’s point. At θ = 45° the pendulums are identical, ν_μ comes fully to rest and all the energy reaches ν_τ. Detune them and the first one never stops: the fraction that crosses is sin²2θ — the same number as the oscillation depth.
🔢 Worked example — Question 10.1, and a factor of √2
The book asks you to solve the coupled-pendulum equations with , and both at rest. Writing the normal modes as and projecting the initial condition onto them gives, for a general mixing angle,
in units of . At the first collapses to , which is the book’s expression with in place of the printed — see the erratum below.
Solve Question 10.1 and read off the transfer
import numpy as np
a = 1.0 # Question 10.1: x_mu(0) = a, x_tau(0) = 0
w2, w3 = 1.00, np.sqrt(2)
t = np.linspace(0, 2*2*np.pi/(w3 - w2), 200001)
print(f"real displacement at t = 0, with the prefactor a/2: x_mu = "
f"{a*(np.cos(np.pi/4)**2 + np.sin(np.pi/4)**2):.4f}")
print(f" with the printed a/sqrt(2): x_mu = {2*a/np.sqrt(2):.4f}\n")
for deg in (45.0, 30.0, 10.0):
r = np.deg2rad(deg); c, s = np.cos(r), np.sin(r)
# the same normal-mode sum written with complex amplitudes
amu = c*c*np.exp(-1j*w2*t) + s*s*np.exp(-1j*w3*t)
ata = s*c*(np.exp(-1j*w3*t) - np.exp(-1j*w2*t))
book = np.sin(2*r)**2 * np.sin((w3 - w2)*t/2)**2 # the form of (10.18)
print(f"theta = {deg:4.1f} deg:"
f" max energy in tau = {(abs(ata)**2).max():.4f} = sin^2(2th) = {np.sin(2*r)**2:.4f}"
f" min energy in mu = {(abs(amu)**2).min():.4f} = cos^2(2th) = {np.cos(2*r)**2:.4f}")
print(f"{'':17s}max |E_tau(t) - (10.18)| = {np.abs(abs(ata)**2 - book).max():.2e}"
f" E_mu + E_tau = {(abs(amu)**2 + abs(ata)**2).max():.6f} at every t") real displacement at t = 0, with the prefactor a/2: x_mu = 1.0000
with the printed a/sqrt(2): x_mu = 1.4142
theta = 45.0 deg: max energy in tau = 1.0000 = sin^2(2th) = 1.0000 min energy in mu = 0.0000 = cos^2(2th) = 0.0000
max |E_tau(t) - (10.18)| = 2.11e-15 E_mu + E_tau = 1.000000 at every t
theta = 30.0 deg: max energy in tau = 0.7500 = sin^2(2th) = 0.7500 min energy in mu = 0.2500 = cos^2(2th) = 0.2500
max |E_tau(t) - (10.18)| = 1.72e-15 E_mu + E_tau = 1.000000 at every t
theta = 10.0 deg: max energy in tau = 0.1170 = sin^2(2th) = 0.1170 min energy in mu = 0.8830 = cos^2(2th) = 0.8830
max |E_tau(t) - (10.18)| = 2.78e-16 E_mu + E_tau = 1.000000 at every t The middle column is the point. The energy in the second pendulum obeys (10.18) exactly — not approximately, not in some limit, but to at every instant, for every angle. The analogy is not a teaching device; the two problems are the same problem.
And the last column is the book’s Fig. 10.5(f) statement made quantitative: the first pendulum keeps of its energy at the deepest point, so at it barely notices the second one is there.
Erratum — the pendulum solution on p. 444 is off by √2, twice
The book gives the motion of the first pendulum as
Two problems, and they are independent.
- The prefactor. Question 10.1 on the same page sets . The printed first line gives . The correct prefactor is , which the snippet above confirms.
- The step between the two lines. , and the factor 2 has been dropped — the second line as printed is exactly half of the first.
Restore both and the answer is clean: , which starts at , has the carrier at the mean frequency and the envelope at the beat frequency, and squares to give (10.18). It is worth flagging because the reader is being asked to derive this, so they will land on the discrepancy.
Two angles, one measurement
💡 What this really says — the octant ambiguity
Both (10.19) and (10.20) depend on only through , and . So and give identical curves, at every , forever. Toggle the overlay in the widget above and the dashed line lands exactly on the solid one.
This is the octant ambiguity octant ambiguity vacuum oscillation depends on sin²2θ₂₃, which is symmetric about 45°, so it cannot say whether θ₂₃ lies above or below maximal mixing. Two physically different worlds, one measurement. defined in §10.2a — open in glossary , and it is not a precision problem — it is a degeneracy. The measured means or , and those are physically different worlds: in the first, contains more than ; in the second, the reverse.
Breaking it needs something that is not a vacuum two-flavour oscillation — matter effects, or the -driven appearance channel where enters as rather than . That is one of the several reasons §10.5’s experiments exist.
Notice too that maximal mixing maximal mixing a mixing angle of 45°, where the two flavour states are equal superpositions of the two mass states and the oscillation runs the full excursion from 1 to 0. θ₂₃ is close to it and nobody knows whether that is a coincidence. defined in §10.2a — open in glossary is the one angle with no ambiguity: 45° is its own reflection. If turns out to be exactly maximal, the degeneracy evaporates — and the reason for it becomes the question.
🔑 If you remember only three things
-
The only physics input is that the masses differ. Everything else is a change of basis, which is why the answer carries a difference of squares and no mass at all.
-
What cancels decides what is measurable. The common part of the Hamiltonian shifts both flavours together and drops out of every probability, taking the absolute mass scale with it.
-
Two coupled pendulums are not an illustration here. They solve the same equations to machine precision, so any intuition you hold about detuned oscillators transfers without correction.
Where this goes next
You now have the formula, the two constants in it, and the two ways a real beam degrades it: energy spread washes the wiggle into a plateau, and the octant folds two angles onto one curve.
§10.2b spends it. Three flavours turn out to add almost nothing — because , the nine probabilities collapse into a handful of amplitudes times the same — and then the experiments arrive: the Super-Kamiokande zenith-angle deficit that started it in 1998, the accelerator beams that confirmed it, the reactor experiments that caught in 2012, and OPERA finally photographing the that the disappeared had turned into.
✅ Check yourself — two-flavour oscillation
0/6 answered · 0 correct
1.In (10.16) the Hamiltonian splits into an identity part and a traceless part. Why can the identity part be thrown away, and what is the cost?
2.Bettini writes that (10.17), tan2θ = 2H₁₂/(H₂₂ − H₁₁), "will be useful in the following". Useful for what?
3.Push the energy-spread slider in the widget from 0 to 30 % on the atmospheric preset. What happens, and what does an experiment gain?
4.The widget's pendulum tab shows that the energy reaching the second pendulum peaks at sin²2θ. Which statements about that analogy are correct? (Select all that apply.)
5.Two experiments both quote a measurement at L/E = 504 km/GeV: a reactor at 1.5 km with 3 MeV antineutrinos, and an accelerator at 295 km with 0.6 GeV neutrinos. What does that shared number mean?
6.Why does the octant ambiguity exist, and what would resolve it?