← Publications

WindMar v0.1.9 — Weather-routing stability validation

Independent cross-validation against a commercial weather-routing solution · five routes · May 2026

  Download the full study (PDF)

Method

WindMar is the weather-routing and ship-performance platform I develop as a deck officer. To gauge its reliability rather than its feature set, I confronted it with a commercial weather-routing solution on five routes spanning very different conditions. The inputs were rigorously identical on both sides — same waypoints, same departure time, same vessel (Panamax tanker, ballast) and same calm-water speed (13 kn).

The comparison deliberately excludes fuel: the two tools use different ship models, so any such comparison would be meaningless. It rests on three genuinely comparable quantities — the route geometry, the weather actually encountered (wind, wave, current), and the estimated time of arrival (ETA). Two WindMar engines are shown, isochrone and A* (Cython implementation); both optimise at constant RPM, pilot to pilot.

Headline agreement

Across the five routes, two entirely independent pipelines arrive at a very close reading of the sea-state. Mean differences:

~26 NM
route cross-track (mean)
0.3 m/s
wind Δ
0.2 m
wave height Δ
0.04 m/s
current Δ
~0.7 d
ETA Δ

The optimised routes follow the same corridors and ride the same currents; WindMar's two engines converge on the same track. The cyan and green lines are WindMar; magenta is the commercial optimised route; the dashed orange line is the shared initial (uploaded) route both tools start from.

Route by route

Cape Town → Walvis Bay · Agulhas current axis

Agulhas route comparison
RouteDistance (NM)ETA (days)
WindMar · isochrone28558.7
WindMar · Cython A*28698.6
Commercial · optimised30009.8
Initial route (RTZ)305510.8

Weather encountered (WindMar / commercial): wind 5.9 / 6.7 m/s · wave 2.5 / 2.7 m · current 0.46 / 0.59 m/s · cross-track 25 NM.

Ulsan → Singapore · NW Pacific + Malacca approach

Ulsan-Singapore route comparison
RouteDistance (NM)ETA (days)
WindMar · isochrone24868.0
WindMar · Cython A*24728.0
Commercial · optimised25578.4
Initial route (RTZ)25668.5

Weather encountered (WindMar / commercial): wind 4.8 / 4.7 m/s · wave 0.69 / 0.88 m · current 0.21 / 0.26 m/s · cross-track 40 NM.

Ningbo → Singapore · dense SE-Asia archipelago

Ningbo-Singapore route comparison
RouteDistance (NM)ETA (days)
WindMar · isochrone20506.7
WindMar · Cython A*21286.9
Commercial · optimised22707.5
Initial route (RTZ)23657.8

Weather encountered (WindMar / commercial): wind 5.4 / 5.3 m/s · wave 0.64 / 0.80 m · current 0.32 / 0.31 m/s · cross-track 34 NM.

Off-Liberia → ARA range · N Atlantic + Biscay/Channel

Off-Liberia-ARA route comparison
RouteDistance (NM)ETA (days)
WindMar · isochrone339110.9
WindMar · Cython A*336110.8
Commercial · optimised345711.6
Initial route (RTZ)361412.1

Weather encountered (WindMar / commercial): wind 5.9 / 5.7 m/s · wave 2.14 / 1.38 m · current 0.27 / 0.26 m/s · cross-track 15 NM. (The wave-height gap here, ~0.8 m, is the widest of the set — a Biscay/Channel sea-state difference.)

Limbe → Madre de Deus · S-Atlantic equatorial crossing

Limbe-Madre de Deus route comparison
RouteDistance (NM)ETA (days)
WindMar · isochrone30049.3
WindMar · Cython A*30209.4
Commercial · optimised30399.6
Initial route (RTZ)313010.1

Weather encountered (WindMar / commercial): wind 5.9 / 6.3 m/s · wave 1.84 / 1.90 m · current 0.35 / 0.33 m/s · cross-track 15 NM.

Reading the result

When an independent commercial system and a solo-built tool agree this closely on what a ship will encounter at sea — the same corridors, statistically similar conditions, comparable ETAs — it is a strong indication that the underlying physics and weather handling are sound. The small, consistent ETA offset (WindMar a little faster) reflects a difference in speed policy, not a disagreement on routing.

Scope & limits

This is a weather, geometry and ETA consistency check, not a proof of safety or optimality, and not a fuel comparison. The five routes encountered mild-to-moderate conditions and were not bounded by an operator wave/wind ceiling. WindMar's forecast horizon is reliable to about ten days; beyond that, weather is reconstructed and progressively approximate.
  Download the full study (PDF)