Computational fluid dynamics · Pseudacris regilla

Does a Pacific treefrog fly faster forwards or backwards?

I built a 3D model of a tucked 40 mm Pacific treefrog and ran it through a RANS wind tunnel in OpenFOAM, snout first and rear first. This page reports the drag, the wakes, the surface pressures, and whether the frog would stay pointed the way it was thrown.

Surface pressure coefficient Cp
−1 suction0+1 stagnation
Drag to orbit · click, then scroll to zoom · particles run 250× slow-motion

The answer: backwards, by about 9%

Forwards Cd
–
snout first
Backwards Cd
–
% less drag
Forwards top speed
m/s
≈ km/h falling, 4 g frog
Backwards top speed
m/s
≈ km/h, % faster

A tucked Pacific treefrog has % less drag flying rear first, so it would go about % faster backwards.

The folded legs make the back of the frog its widest, bluntest part, and the head narrows to a short snout. Rear first, that's the shape of a teardrop: blunt end leading, tapered end trailing. Snout first, the frog drags a flat, wide back end through the air, and that's what costs it.

That's for a frog that holds its attitude. It wouldn't for long: the stability runs show a tucked frog is unstable either way round and would start tumbling within a metre or two.

The frog

No public CT scan of P. regilla was at hand, so the frog is parametric. It's a smooth blend of ellipsoids and capsules in the tucked, water-conserving resting posture: limbs folded tight against the body. The parts are a trunk, a wedge-shaped head narrowing to a short rounded snout, protruding eyes, thighs folded forward to the knee, shanks folded back to the heel, feet tucked beneath, and forelimbs under the chin. The surface is closed and watertight (81,920 triangles) and scaled to a 40 mm snout–vent length, a typical adult.

Four views of the parametric tucked treefrog: top, side, front and three-quarter
The parametric tucked treefrog. The folded legs make the rear half the widest part of the body, and that turns out to matter.
QuantityValueNote
Length (snout–vent)40.0 mmtypical adult
Width × height23.5 × 12.5 mmacross the folded knees
Volume5.25 cm³≈ 5.5 g at tissue density (real adults: 3–5 g)
Frontal area A cm²identical in both orientations
Moment referencevolume centroiduniform-density centre of mass

Method

The frog sits in a virtual wind tunnel: 6 body lengths of air ahead, 12 behind and 4 to each side, so blockage is 0.2%. Air arrives at 10 m/s, a fast jump or the first metre of a fall. With a 40 mm body that gives a Reynolds number of . In this subcritical regime drag is dominated by where the flow separates and how big the wake is.

Drag

Both orientations share the same frontal area, so their drag coefficients compare directly. Rear first is % lower. In both directions about four-fifths of the drag is pressure drag, from how the air separates and the size of the wake. The rest is skin friction.

Skin friction is actually slightly higher backwards ( vs ), because the air stays attached over more of the body. That penalty is about a tenth the size of the pressure-drag saving: forwards against backwards.

Drag coefficient by orientation
Solid: pressure (form) drag · pale: skin friction. Referenced to the shared frontal area.
How the drag settled
Cd against solver iteration; values are averaged over the shaded window
ForwardsBackwards

The flow

The view from above shows it most clearly. Snout first, the frog ends in a flat back face formed by the folded heels. The air can't turn that corner, so it separates and leaves a recirculation zone (red outline) as wide as the frog. The wake behind it stays about 20 mm wide for several body lengths.

Rear first, the flat heel face meets the air head-on. A blunt nose costs little when its edges are rounded, and the air accelerates around them (the near-white bands). It then follows the taper of the head and closes in behind the snout. The wake is a thin line.

Top-view velocity slices for both orientations. Forwards shows a wide recirculating wake behind the flat rear; backwards shows the wake closing to a narrow line behind the snout.
Top view, mid-height slice. Colour is air speed relative to the free stream (dark = slow). Red outlines mark air flowing backwards (recirculation). Grey lines are in-plane streamlines. Air flows left → right at 10 m/s.

From the side, the frog is flat-bellied and domed, so it also acts as a weak wing. Snout first it deflects its wake downward and gets a little lift (Cz = ). Rear first the wake kicks upward and the frog is pushed slightly down (Cz = ). Both forces are a quarter to a third the size of the drag.

Side-view velocity slices on the frog's centreline for both orientations
Side view, centreline slice. Same colours as above. The asymmetric wakes show the small vertical forces.

Where the drag comes from

Colouring the skin by pressure shows where the push comes from. Red is air piling up against the frog (stagnation); blue is suction where air speeds past.

Frog surface coloured by pressure coefficient for both orientations, in top, side and three-quarter views
Surface pressure coefficient Cp. Air arrives from the left in the top and side views. Use the 3D viewer at the top of the page to orbit either one.

Integrating that pressure over the front and back halves of the body shows that rear-first wins at both ends:

Where the pressure drag comes from
Surface-pressure integral over the leading and trailing halves of the body (cross-checks OpenFOAM's total within 1%)
ForwardsBackwards

Would it stay pointed that way?

Speed only matters if the frog keeps pointing the way it was launched. To test that, each orientation was tilted 5° nose-up (pitch) and 5° sideways (yaw). The question is whether the change in aerodynamic moment about the centre of mass pushes the leading end back into the wind, or further away.

Neither direction is stable. In all four cases a small tilt makes the frog tilt further. Snout first or rear first, a tucked frog would start to tumble almost as soon as it left the branch.

The reason is where the extra force acts. Tilt the frog and the air pushes on it sideways, and in every case that push is centred 6–12 mm ahead of the centre of mass. A push ahead of the balance point levers the leading end further off course. It's the same reason a dart needs its flights at the back and a rocket needs fins: a smooth body with nothing sticking out behind its centre of mass turns broadside to the flow. A tucked frog has no fins.

Static stability: moment change per degree of disturbance
From the 0° and 5° runs; moments about the centre of mass. Positive = turns the leading end back into the wind.
ForwardsBackwards
Where the disturbance force acts
Neutral points along the body, leading end on the left. Stable only if the marker sits to the right of (behind) the centre of mass.

The two orientations are unstable in different ways. Snout first is the less unstable of the two in pitch: its neutral point sits 6 mm ahead of the centre of mass, against 12 mm rear first. Rear first is the less unstable in yaw (8 vs 10 mm). To make either direction stable, the centre of mass would have to move that far toward the leading end, a sixth to over a quarter of the body length.

The real centre of mass probably sits a little behind the volume centroid used here, with air-filled lungs up front and heavy thigh muscle at the back. That nudges things slightly in favour of rear first and against snout first, but nowhere near 10 mm.

How fast does it tip over?

The tilt grows exponentially. Using the frog's moment of inertia (from the mesh, at 4 g), the time for a wobble to grow by a factor of e is:

CaseNeutral point vs CG% of lengthe-fold @ 10 m/se-fold @ terminalDistance for 10× growth
Forwards · pitch6.3 mm ahead16%38 ms13 ms0.9 m
Forwards · yaw10.2 mm ahead25%65 ms23 ms1.5 m
Backwards · pitch11.6 mm ahead29%31 ms10 ms0.7 m
Backwards · yaw7.8 mm ahead19%72 ms23 ms1.6 m

At terminal speed, a 1° wobble becomes 10° within one or two metres of travel. A real tucked frog wouldn't hold either attitude long enough to reach its top speed that way. It would tumble, and a tumbling frog spends much of its time broadside, with more frontal area and more drag than either clean orientation.

What would stabilise it is something behind the centre of mass to act as flights. A leaping frog trailing its extended hind legs is exactly that, which is a good reason to think a jumping frog flies snout first. That posture isn't simulated here.

The drop test

Feed the CFD drag coefficients into Newton's second law and drop two 4 g frogs from a 40 m branch, one snout-down and one rear-down. Each is made to hold its attitude, which a real frog wouldn't, and the falls use v(t) = vt·tanh(g t / vt).

This assumes Cd holds as the frog speeds up past the 10 m/s it was simulated at. That's reasonable in this Reynolds-number range, where the coefficient changes only slowly. Real frogs that fall spread their limbs, which roughly triples their frontal area and cuts terminal velocity to under 10 m/s.

Caveats

Reproduce it

Everything is in the repository: the geometry generator, the case generator, the Docker run scripts, the force histories and the post-processing. With Docker and Python 3:

python frog_geometry.py              # frog STL + properties
python make_cases.py --mesh-only     # mesh dictionaries for both orientations
./docker_of.sh ./run_mesh.sh cfd/mesh_forward
./docker_of.sh ./run_mesh.sh cfd/mesh_backward
python make_cases.py fwd_a0 bwd_a0
./docker_of.sh ./run_solve.sh cfd/fwd_a0 cfd/bwd_a0
./prepare_restart.sh                 # 5° pitch/yaw cases from the 0° solutions
./docker_of.sh ./run_restart.sh cfd/fwd_p5 cfd/bwd_p5 cfd/fwd_y5 cfd/bwd_y5
python post_dicts.py fwd_a0 bwd_a0
./docker_of.sh 'for c in fwd_a0 bwd_a0; do postProcess -case cfd/$c -dict system/postSample -latestTime; done'
python analyze.py fwd_a0 bwd_a0
python drag_split.py && python stability.py
python make_figures.py && python export_web.py

On an Apple M1 (8 MPI ranks in Docker) each 0° case takes about 45 minutes.