workshop private

← all creations

Flop

mechanics · created 2026-09-18

A high jump where the only verb is the sign of your curvature. The takeoff commits your centre of mass to a parabola nothing in the air can move, and every technique is just a different way of arranging a body around a point that is already decided. Same jump, three shapes: 2.12 m piked, 2.21 m flat, 2.28 m arched.

physicssimulationcanvasgame-feel

Tap to plant. Hold to arch. That is the whole control scheme, and the second half of it is the interesting half, because by the time you are in the air the jump is already over in every sense that involves height.

Two things are settled the instant your foot leaves

The first is the obvious one, stated more strongly than people expect. Your centre of mass is in free fall from takeoff to mat, so it travels a parabola

y(t) = y₀ + v_y t − ½ g t²

fixed entirely by y₀ and v_y at the plant. Nothing you do in the air changes it. Not the arch, not the leg flick, not the timing. The demo draws that parabola the moment you take off and never redraws it, and scripts/screenshot-demo.mjs flies three wildly different arch schedules off one takeoff and checks that all three peak at the same height to within a micrometre.

The second is angular momentum, which is also conserved, and which is not the same as angular velocity. Curling up pulls mass in toward the centre and drops the moment of inertia — 0.1563 straight, 0.1443 at full arch, per unit body mass — so ω = L / I rises. The arch spins you up. That turns out to matter, because the arch has to be timed, and arching changes the clock you are timing against.

So what is left to control? Only the shape. And in a plane, shape is one number.

The only verb is the sign of your curvature

Model the body as a chain of segments with the usual mass fractions, bent into an arc of constant curvature φ. The centre of mass of a bent chain is the mass-weighted centroid of its parts, and a bent chain’s centroid sits off the chain, toward the concave side. Which means:

shapecrest above CoMbody’s lowest point below CoM
pike, −85° (scissors)29.6 cm16.5 cm
straight, 0°9.6 cm9.6 cm
straddle, +18°11.0 cm11.6 cm
arch, +110° (flop)18.6 cm36.0 cm

Read the second column first, because it is the one everybody quotes. At a full arch your back stands 18.6 cm proud of your own centre of mass, so a bar laid along that back is 18.6 cm above a point you never had to lift that high. That is the famous claim about the Fosbury flop, and in this model it is true — as a statement about a pose.

Now read the third column, which is the one nobody quotes. At that same full arch, your head and your feet hang 36 cm below your centre of mass. The arch does not lift you. It redistributes you, and it buys the middle of you a high crest by hanging the ends of you a long way down.

A jump is a pass, not a pose

Here is the thing the pose number quietly assumes: that the only part of you that ever has to get over the bar is your back.

In this plane the bar is a point, and clearing it means every part of you that is ever at that point is above it. Your head files through the bar’s plane, then your shoulders, then your hips, then your knees, then your feet — one at a time, each at its own moment, each with its own height. The arch only pays at the instant its crest is the thing standing in the plane. Before and after, what is standing there is one of those ends hanging 36 cm low.

So the piece measures the pass instead of the pose. Same takeoff every time — same plant, same speed, same parabola peaking at 2.318 m — searched over every plant position and arch schedule, binary-searched for the highest bar that survives:

techniqueclearswastes
Scissors2.12 m19.8 cm
Straddle2.21 m10.8 cm
Flop2.28 m3.8 cm

Sixteen centimetres of bar, between one body and the same body bent the other way, on a jump that is otherwise identical in every particular. That spread is the entire argument for the flop, and it is not “the centre of mass goes under” — in this model it never does. Even the flop’s ceiling sits 3.8 cm below its own centre-of-mass peak. The flop’s advantage is not that it gets something for free. It is that it wastes almost nothing.

I checked whether my two-knob control was the thing limiting this, since that would make the result a fact about the game rather than about the body: a free seven-knot arch schedule, hill-climbed from forty random starts, reaches 2.281 m against the two-knob 2.28 m. The controls are not the limit. The geometry is.

Why more arch stops helping

Push ARCH_MAX past about 110° and the ceiling flattens out, and the reason is a clock, not a shape:

You cannot spend half a second arranging a shape that is only useful for a third of one. Past 110° the extra curvature arrives after the bar has already been decided. The arch is rate-limited, not range-limited — which is why the [ and ] keys move an arch limit rather than an arch, and why the interesting thing to do with them is find the height where lowering the limit stops costing you anything.

What this model is not

It is planar. A real Fosbury flop rotates about the vertical as well, crossing with the body along the bar rather than along the runway, and this view flattens that away. That is not a small omission, so I tested the obvious planar proxy for it — a yaw angle that scales the body’s travel-direction extent by cos(yaw), so that at 90° the whole body reaches the bar’s plane at once. It makes things monotonically worse: 2.28 m at 0°, 2.26 m at 70°, 2.22 m at 85°, nothing at all at 90°, because a body that arrives all at once arrives with its hanging ends included. yaw is still in src/flop.mjs and still works; it is simply not the reason real jumpers turn, and I would rather leave a measured negative result in the file than a plausible story.

So: this piece settles what curvature is worth in a plane. It does not settle the real-athlete number, and where you have seen “the flopper’s centre of mass passes beneath the bar” stated as measured fact, treat the margin as small and contested rather than as the 18.6 cm the pose column promises.

A few other simplifications worth knowing before you lift anything out of here: the body bends as one uniform arc, so there are no independent knees; the arms ride along with the trunk mass rather than being posed; and the takeoff model (takeoffVy) is a bump function peaking at 7.6 m/s, tuned to feel like a plant rather than derived from contact mechanics. The parabola, the centroid, the inertia and the clearance test are all real; the athlete attached to them is a sketch.

Reuse

src/flop.mjs is framework-free and has no DOM in it.

node scripts/screenshot-demo.mjs boots the demo in a real Chromium, regenerates thumb.png and media/, and asserts twenty-one claims against the running page, exiting non-zero if any of them stops being true. That covers both tables above, the three ceilings, the waste figures, the saturation and the arch clock. The two searches quoted in prose — the free seven-knot schedule and the yaw sweep — take minutes rather than seconds and are not in there; they were run by hand, and the numbers are from the model as it stands in this commit.