Drive the Cant: One Cross-Slope Solving an Equation With No Answer
Drive a live railway-cant section: equilibrium cant, deficiency and the 180 mm ceiling — then bridge the mechanic to every curved-fall surface in your office.
Open assets/action/cant.html and you get one thing: a 2D railway section, a train sitting on it, and a coffee cup on the tray table. Drag the speed slider up and the cup’s liquid tilts away from level. Drag applied cant to match, and for one exact value the surface goes flat again — the plumb line hangs straight, the flanges touch nothing. That value is equilibrium cant, and the whole toy exists to show you that you are almost never allowed to have it.
Here is the rule the sketch is built on. Cant is the height difference between the two rails on a curve. The balanced value is E = G·v²/(g·R), where G is the 1500 mm spacing between the rail-head contact points on 1435 mm standard gauge — the gauge plus the ~65 mm the contact circles sit outboard. For standard gauge it collapses to the yard formula every permanent-way engineer carries in their head, straight off the Wikipedia Cant (road and rail) page: E ≈ 11.8·V²/R, V in km/h, R in metres, E in mm. Punch in a 1400 m curve at 160 km/h and it asks for 216 mm.
You cannot have 216 mm. Europe caps applied cant near 180 mm, and only where freight is banned; US track classes stop at 7 inches (178 mm). So the curve gets maybe 150 mm and everything on it runs unbalanced. Faster than the cant suits is cant deficiency — you lean outward, the outer rail eats the thrust; roughly 153 mm of deficiency is 1.0 m/s² in the seat. Slower is cant excess — you lean in, the inner rail wears. One curve, one cant, an express and a freight made unhappy in opposite directions. Press Balance it and watch the cant snap to equilibrium and slam straight into the 180 mm ceiling. That collision is the design problem, and it never resolves.
Now break it. Set gauge to metre (1000 mm), radius to 300 m, speed to 120, and crank rail inclination to flat. The felt acceleration readout goes ugly and the cup nearly spills — because you’ve stripped out the coned-wheel geometry that keeps the tread square. Note what the sketch magnifies one rail head ×7 to make visible: rail inclination (1:20 to 1:40, tipping each rail inward by barely a degree) is a different job from cant (tipping the whole track). Same word in loose speech, two orders of magnitude apart. Toggle the tilting-body switch and confirm the trap everyone falls into: tilt changes what the passenger feels, never the deficiency itself — that’s a property of track and speed alone.
←TODAY: A 1400 m curve at 160 km/h wants 216 mm of cant and the rulebook hands it 180. →3012: Every surface a body moves across still asks whether the resultant lands inside its support. Fulcrum: The equilibrium is real physics; the ceiling is a policy — and the gap between them is where design actually happens.
Atelier: This is where the toy becomes a building. Cant is a cross-fall problem, and your office has them everywhere — a ramp with a cross-slope, a stadium bowl, a curved parking deck, a drained plaza. Each asks the two questions the sketch answers live: what slope puts the resultant inside my support, and how fast may that slope change before the surface reads as a twist? That second limit — the cant gradient, held around 1:400 to 1:600, and the rate-of-change cap near 55 mm/s — is the exact instinct behind a warped-slab tolerance. It’s the same equilibrium logic PAZ’s Thrust Network Analysis panels teach: fit the resultant inside the section and the thing is safe (lower-bound, à la Block Research Group’s work at ETH). Your Monday move: take your next curved-fall detail, and instead of drawing the finished grade, build a 5-line browser slider that sweeps the cross-fall and prints the point where the plane starts twisting past your tolerance. Break your own surface before the bogie or the pane of glass does it for you.
Hack: Compute the lean the rulebook leaves in your seat. The curve asks one cant, the 180 mm ceiling grants another, and the gap is what your body complains about — roughly 153 mm of deficiency per 1.0 m/s². Feel it at your own line’s speeds.
const equilibriumCant = (V, R) => 11.8 * V * V / R; // mm, standard gauge
const felt = (applied, V, R) => (equilibriumCant(V, R) - applied) / 153;
equilibriumCant(160, 1400); // → 216 mm the curve asks for
felt(180, 160, 1400); // → 0.24 m/s² still leaning out at the ceiling
Change one number and the whole compromise re-renders — which is the only honest way to teach a system that has no solution, only a chosen point of unhappiness. If you build a learning toy this year, leave the rules this exposed: a simulation you cannot break is a slideshow with a score. Fork the sketch, add a freight train to the same curve, and watch the second cup spill the other way.
PAZ Kaffi · multidisciplinary editorial, led by PAZ Academy