Screw propeller. The blades are sections of a screw-thread, and their revolution in the water has the same effect as the working of a screw in a nut, producing motion in the direction of the axis and so propelling the vessel.
Only the input is driven; every other part of this model moves by physics (MuJoCo), and its ratios are measured. Run it live, change its parameters, or switch the friction off to see the output stop.
Modelled as
From the side, gravity on. Brown's two blades on a boss, each a piece of a screw-thread of 14 cm pitch from 1.3 to 7 cm out, on the shaft of a vessel (3 kg, on a slide along the shaft; the rest of the hull's resistance a damping of 12 N s/m). The engine turns the shaft at 90 rpm (the only input). The water is still water all round as MuJoCo's fluid medium (density 1000, viscosity 0.001; openspec add-air-wind, extended for still water): each of the 48 pieces of blade feels it by the ellipsoid model (pressure drag and lift on its slanted face), and the vessel's hull feels its drag. This is the ambient-pressure term the particle solver lacked: the blades never run dry. Fixed piles stand in the water to show the way made.
Measured
The vessel gets up to about 4.2 cm/s ahead (the screw would go 21 cm/s in a nut: 80% slip against this hull), going about 37 cm in the clip; reversed it backs, and with no medium it does not move (tests/test_screw_488.py). The motion gate passes; one WARN: the vessel and piles run out of frame (by design).
Notes
Grade B. The water is not drawn (Brown draws none), so the thrust shows only in the vessel's way past the piles. Each blade is 24 faceted pieces, not a smooth surface. The water's push on the blades is MuJoCo's per-piece ellipsoid model, not a solved flow (no wake or slipstream).