aidoesscience
aidoesscience › KdV soliton train
Validating · validations

Soliton train · KdV inverse scattering

What happens to an arbitrary pulse under the KdV equation — does it just disperse into noise, or does its eventual fate already encode a specific set of solitons at t=0?

▶ Launch the interactive simulation

How the lab tests it

Integrate the KdV equation u_t + 6u·u_x + u_xxx = 0 (the same Zabusky–Kruskal leapfrog as the soliton world) starting from a reflectionless pulse u(x,0)=N(N+1)λ²·sech²(λx) — here N=3, λ=0.4. Let it evolve until the humps separate, then measure each emergent soliton's height and spatial order, comparing to the inverse-scattering prediction a_n=2(nλ)².

What it checks

inverse scattering (Gardner–Greene–Kruskal–Miura, 1967): the pulse sorts itself into EXACTLY N solitons — no leftover dispersive ripple for the reflectionless pulse — with quantized heights a_n = 2(nλ)², the bound-state spectrum of the Schrödinger operator whose potential is the initial pulse. The N=3 bump (height 1.92) splits into three solitons of heights 2.88 / 1.28 / 0.32 — a clean 9 : 4 : 1 (the squares 3² : 2² : 1²) — rank-ordered with the tallest in front (taller = faster, c = 2a). The soliton content is fixed at t=0; evolution merely unpacks it.

This is one world in the PHS lab — 91 interactive simulations, each posing a question and measuring the answer. See the catalogued findings.