Each turtle runs a real energy budget, not a scripted path. Metabolic rate scales with water temperature via a Q10 thermal coefficient (ectotherm physiology — reaction/metabolic rates roughly double to triple per 10 °C):
metabolicMult(T) = Q10^((T-20)/10), Q10 = 2.5
Ocean current is the Shadden double-gyre flow field (a standard test flow in ocean-transport research), which oscillates and advects everything in the domain:
f(x,t)=a(t)x²+b(t)x, a=ε·sin(ωt), b=1-2ε·sin(ωt)
u = -πA·sin(πf)·cos(πy)
v = πA·cos(πf)·sin(πy)·∂f/∂x
A turtle picks a desired ground velocity toward its target (food, or a rest drift). Because it must fight or ride the current to hit that ground velocity, its actual paddling effort is desiredVelocity − current — swimming against the gyre costs real energy, swimming with it costs almost none:
effort = desiredVel − current
dE/dt = -COT·|effort|² · metabolicMult(T)
Seagrass patches regrow by logistic growth dB/dt = r·B·(1-B) and are grazed down when a turtle lingers over them; energy below 25% forces a rest state (minimal paddling, drifting with the current) until it recovers past 55% — the classic forage/rest cycle of a central-place forager.