The boat's own motion is subtracted from the true wind, vectorially, to get the apparent wind the sail actually feels: W_apparent = W_true − V_boat. As the boat speeds up, the apparent wind swings forward and can shrink even on a run.
The sail is modelled as a simplified flat-plate airfoil. Its angle of attack is α = AWA − boom angle, and the lift/drag coefficients follow the classic cross-flow approximation:
Cl(α) = Cl_max · sin(2α)
Cd(α) = Cd0 + k · (1 − cos(2α))
Lift acts perpendicular to the apparent wind, drag acts parallel to it; both are projected onto the boat's forward and lateral axes to get thrust and heeling force. Forward acceleration is m·dv/dt = Thrust − k1·v − k2·v² − k_wave·H²·v (linear + quadratic hull resistance, plus wave-added resistance scaling with wave height squared), integrated with 4th-order Runge–Kutta. The dashed line on the speed chart is the equilibrium speed found by bisecting dv/dt(v)=0 for the current settings — the boat's speed visibly converges to it.
- Too little boom angle (over-trimmed for the wind angle) → sail luffs, α≈0, almost no drive.
- Too much boom angle (under-trimmed) → α near 90°, the sail acts like a drag sock instead of a wing.
- Below ~20–30° true wind angle the sail can't generate forward drive at all — the "no-go zone" every real sailboat has.