Why an Hourglass Keeps Time (and a Water Clock Can’t)
Here is a small miracle you own: an hourglass runs down at a steady, even rate from the first grain to the last, no matter how full the top bulb is. That is exactly why it can measure time. Try the same trick with water and it fails — a draining bottle gushes when it’s full and dribbles when it’s low. Sand doesn’t care how much is stacked above the hole. We put 3,337 grains through a digital hourglass in Ansys Rocky to watch why.
1 · The counterintuitive part
Intuition says a fuller bulb should push sand out faster — more weight over the hole. It doesn’t. The reason is the Janssen effect: in a bed of grains, friction against the side walls carries most of the weight down into the walls, not down onto the orifice. The pressure at the hole saturates — it stops growing once the bed is more than about one throat-width deep. So the outflow sees a nearly constant pressure regardless of the head above it, and the discharge rate holds steady until the funnel is almost empty. Water has no such friction network; its pressure is pure head (ρgh), so it drains fast-then-slow.
2 · What the simulation measured
We counted the grains that had fallen past the neck at every frame and plotted the running total. If the rate is constant, that curve is a straight line.
That flat rate is the whole ball game. It’s also captured by a 60-year-old empirical law that hopper engineers still use every day — Beverloo’s equation, which says the mass flow through an orifice of diameter D goes as W ∝ √g (D − kd)2.5, with grain size d and no dependence on fill height at all. Height simply isn’t in the formula, and our straight line is why.
3 · Why an engineer runs this
The same DEM solve is how you design anything that stores or meters a granular material: a grain silo that must not arch and jam, a pharmaceutical hopper dosing powder into capsules, an ore chute, a 3D-printer’s powder bed, a cereal box’s pour spout. The two failure modes — rat-holing (a channel drills straight through and the rest goes stale) and arching (grains bridge over the outlet and flow stops) — both live or die on the orifice-to-grain-size ratio and the wall friction this model resolves grain-by-grain. Get the neck too small relative to the grains (below ~6×) and the hourglass jams instead of keeping time.
A pile of sand carries its own weight sideways into the walls, so the hole at the bottom never feels the difference between a full bulb and a nearly empty one. Constant pressure, constant flow, honest time — the reason your egg timer works, drawn one contacting grain at a time.
Discrete-element granular flow in Ansys Rocky 2026 R1 (GPU).
4 · Honest caveats
- The grains are smooth spheres (6 mm) — the shape we chose to keep this demo quick to run; real sand is angular, which raises the internal friction and the repose angle. Spheres flow a little more freely, but the constant-rate physics and the Janssen saturation are the same.
- We ran a coarse-grained hourglass (a few thousand large grains). Fine table-salt grains behave identically per Beverloo — there are just millions of them, which is a GPU-hours question, not a physics one. This study shows the mechanism, not a specific product’s throughput.
- Discharge scaling with orifice size (the D2.5 law) is stated from the literature here, not swept — we verified the headline claim, the height-independent constant rate (R² = 0.999).
- DEM contact stiffness/friction are representative values; a production study would calibrate them to a measured angle of repose and discharge coefficient.
Does the hopper you’re designing meter its powder at a steady rate — or will it arch, rat-hole, and stall the line? Ansys Rocky 2026 R1 resolving 3,337 contacting grains on the GPU, held to a hard check — a discharge line dead straight at 4,090 grains/s, linear to R² = 0.999, exactly the height-independent rate Beverloo’s equation demands — is how simulation reads a silo, chute, or dosing outlet grain by grain before a jam on the production floor reads it for you. That's innovation through insight.



