Das Cockpit nimmt die Vorhersagen von bis zu 16 Wettermodellen, die Windguru für Brouwersdam und Mirns bereitstellt, vergleicht sie laufend mit der echten Messstation am Spot, korrigiert ihre typischen Fehler, mischt sie nach ihrer nachgewiesenen Treffsicherheit und leitet daraus ab, wann du wo fahren kannst — mit einer Wahrscheinlichkeit, die rückblickend überprüft wird.
Was siehst du wo?
Kurzfassung (ganz oben)
Die Antwort über beide Spots: was heute oder morgen geht — sonst die nächste Chance in den nächsten Tagen bzw. wo es am meisten weht. Fenster weiter als 5 Tage voraus stehen nur als Ausblick darunter: dort rechnen meist nur noch die groben globalen Modelle.
Übersicht
Je Spot eine kurze Karte: Wind jetzt (gemessen, sonst Prognose), die gemessene Wassertemperatur und — falls es welche gibt — die Fahrfenster der nächsten 5 Tage. Darunter ein Kachel-Raster für beide Spots bis zum übernächsten Wochenende, mit Legende. Tippen auf einen Spot, ein Fenster oder eine Stunde im Raster öffnet die Detailansicht (Zurück führt zur Übersicht). Die Einheit (kn oder m/s) stellst du unten im Fuß um; sie bleibt auf dem Gerät gemerkt.
Kachel-Raster
Spalten = Tageslicht-Stunden im 3-h-Takt, eine Zeitachse für beide Spots. Je Spot: Wind und Böen — Farbe erst ab 10 kn, volle Farbe ab 13 kn (fahrbar), darunter nur die Zahl; so springen die fahrbaren Stunden ins Auge. Richt. = Windrichtung, ab 10 kn markiert (rot hinterlegt = ablandig/ungeeignet, schraffiert = bedingt). % = Wahrscheinlichkeit für mindestens 13 kn (je sicherer, desto kräftiger). Regen in mm/h erscheint nur, wenn es regnet (⚡ = Verdacht auf Schauerböen). °C = Luft. Grüner Strich über der Stunde = fahrbar. Blasse Tage = nur noch grobe globale Modelle, entsprechend unsicher. ↗ / ↘ in der Namenszeile am Tagesende = Tageswind seit gestern gestiegen / gefallen.
Fahrfenster
z. B. „Do. 24.9. 8–16 Uhr · 14–19 kn · NNW · Ø 61 %“: Zeitraum, schwächste–stärkste Stunde, mittlere Richtung („!“ = nur bedingt geeignet) und die durchschnittliche stündliche Wahrscheinlichkeit (kleiner Balken). Dass es über das ganze Fenster hält, ist etwas weniger wahrscheinlich. Prozente sind bewusst nicht farbig — die Farben gehören der Windstärke.
Spot-Ansicht
Oben der Wind jetzt — gemessen an der Station (sonst die Prognose) —, Richtung und Luft. Darunter eine Zeile, wie weit die Prognose zuletzt neben der Messung lag: um so viel sind die nächsten Stunden angepasst. Die Tagesleiste zeigt je Tag den Tageswind als Kachel und das beste Fahrfenster; Tippen öffnet den Tag.
Verlauf
Durchgezogene Linie (dunkel, im dunklen Thema hell) = Konsens-Prognose, lila gestrichelt = Böen, pink = gemessen (geglättet; blass dahinter die einzelnen 10-min-Werte), grau gestrichelt = die Prognose von vor 24 h (so siehst du, wie gut sie zuletzt lag), gepunktet = nach der aktuellen Messung korrigierte nächste Stunden, grüne Fläche = Fahrfenster, türkis gestrichelte Linie = Mindestwind. Die dezenten waagerechten Farbbänder im Hintergrund entsprechen den Kachelfarben (knapp / fahrbar / gut / kräftig / zu viel) — das gilt für alle Wind-Grafiken. Darunter ein Streifen mit der Windrichtung (Pfeile) und der Wahrscheinlichkeit je Stunde (je dunkler, desto sicherer; grün = Fahrfenster). Aufklappbar: wie sich die Vorhersage über die letzten Datenstände verändert hat.
Tag
Stundenverlauf, Fenster und Tabelle (2-h-Raster) für einen Tag im Tageslicht.
Analyse
Alle Einzelmodelle roh und korrigiert, und für jede Stunde die komplette Rechnung („Wie entsteht der Wert?“: Rohwert, Korrektur und Anteil jedes Modells — und welche Modelle warum fehlen). Dazu, was das Lernen je Modell, Vorlauf und Windrichtung herausgefunden hat, welches Modell hier richtig liegt, welche Rechenvariante gewinnt, ob die Prozente stimmen und wie genau der Konsens rückblickend war — also die aktuellen Zahlen zu allem, was ab „Rechenweg“ beschrieben ist.
Farben & Schwellen
Referenz ist ein Twintip-Fahrer mit 80 kg (größter Schirm ~14 m²):
zu wenig
0–9 kn
knapp
10–12 kn
fahrbar
13–17 kn
gut
18–26 kn
kräftig
27–34 kn
zu viel
35–42 kn
gefährlich
ab 43 kn
Windrichtungen je Spot
Brouwersdam
gut: SW–NW (214°–326°)
bedingt: NW–SW (326°–214°)
ungeeignet: alles andere
NW: am Damm onshore — besser am Ende der Promenade (Ouddorp)
S/O: Grevelingenmeer-Seite oder Hafenbereich nutzen
N/NO: ungeprüft — vor Ort einschätzen
Mirns
gut: SO–NW (124°–304°)
bedingt: NO–SO (56°–124°), NW–NW (304°–326°)
ungeeignet: alles andere
O: ablandig, oft wenig Wasser am Ufer
NW: Übergang zum Nord-Sektor — vorsichtig
Nord: ablandig & unbeständig — fatal für den Einstieg
Rechenweg im Überblick
Die Grundidee: Jedes Wettermodell irrt sich an einem bestimmten Spot auf seine eigene, oft wiederkehrende Art. Wer lange genug mitschreibt, was ein Modell vorhergesagt hat und was die Station dann gemessen hat, kann diese Fehler lernen, herausrechnen und den Modellen, die hier gut liegen, mehr Gewicht geben. Das ist im Kleinen, was Wetterdienste „MOS“ (Model Output Statistics) nennen.
Drei getrennte Teile arbeiten zusammen:
Erfassungs-Job (alle 30 min, rund um die Uhr): holt Modellläufe, Messungen und Wassertemperatur und speichert sie. Er ist der einzige, der Rohdaten schreibt.
Lern-Job (stündlich): vergleicht frühere Prognosen mit den Messungen, lernt daraus die Korrekturen, Gewichte, die Kalibrierung der Prozente und das Abklingen der Kurzfrist-Korrektur und prüft alles ehrlich rückblickend.
Diese Seite: liest den neuesten Datenstand und die gelernten Parameter und wendet sie bei jedem Aufruf an. Sie lernt und schreibt nichts — ist sie offline, lernt die Datenbasis trotzdem weiter.
1 · Daten sammeln
Alle 30 Minuten entsteht ein Datenstand je Spot: die jeweils neuesten Läufe aller Modelle, die Windguru dort anbietet — hochauflösende Küstenmodelle wie HARMONIE, AROME oder ICON-D2 (1–3 km, reichen etwa 2–3 Tage) und globale wie ECMWF oder GFS (9–15 km, bis 15–16 Tage). Jede Modell-Reihe wird dabei nur einmal gespeichert, auch wenn sie in vielen Datenständen vorkommt. Dazu die Messstationen am Spot (Natural High liefert 10-Minuten-Mittel und wird bei jedem Abruf für die letzten Stunden nachgeholt, Mirns NKV nur mit dem jeweils aktuellen Wert) und die gemessene Wassertemperatur von Rijkswaterstaat.
Weil alle alten Datenstände aufbewahrt werden, lässt sich später für jeden beliebigen Zeitpunkt nachvollziehen, was die Modelle damals vorhergesagt haben — die Grundlage für alles Weitere. Nach drei Wochen wird verdichtet: Es bleibt ein Datenstand je 6 Stunden.
2 · Aus Fehlern lernen
Für jede gemessene Stunde und jeden Modelllauf, der diese Stunde vorher vorhergesagt hat, entsteht eine Fehler-Stichprobe:
Fehler = Prognose − Messung (Stundenmittel der Station)
Zu jeder Stichprobe merkt sich der Lern-Job die Umstände: Welches Modell, wie weit im Voraus (die Vorlauf-Stufe: 0–24 h, 24–48 h, 48–72 h, > 72 h), aus welcher Richtung, wie stark, und wie warm Wasser und Luft waren. Damit das Lernen nicht an Zufällen hängt, gelten ein paar Regeln:
Jeder Lauf zählt einmal. Windguru liefert denselben Modelllauf oft über mehrere Datenstände hinweg. Je Modell wird höchstens ein Lauf pro 6 h berücksichtigt.
Jüngeres zählt mehr. Gewicht einer Stichprobe = 0,5Alter / 14 Tage — nach 14 Tagen zählt sie halb, nach 28 ein Viertel. Gelernt wird aus den letzten 90 Tagen, bis 10 Tage Vorlauf.
Nachbarstunden sind nicht unabhängig. Liegt ein Modell um 14 Uhr daneben, dann meist auch um 15 Uhr. Darum zählen 3 Stunden nur wie eine unabhängige Beobachtung — das bremst übereifriges Lernen aus wenigen Wetterlagen.
3 · Korrektur je Modell
Je Spot, Modell und Vorlauf-Stufe wird der erwartete Fehler als lineares Modell geschätzt:
β₀ + sRichtung: fester Versatz, je Himmelsrichtung-Viertel (N/O/S/W) verschieden — z. B. „bei Westwind 2 kn zu viel“, weil das Modell die Abschattung durch den Damm nicht kennt.
β₁: windstärkeabhängiger Fehler — manche Modelle übertreiben bei Flaute und unterschätzen Starkwind.
β₂: Schichtung. Ist das Wasser wärmer als die Luft, wird die Luft durchmischt und an der Küste kommt mehr vom Höhenwind an; ist es kälter, liegt der Wind wie auf einer Glasplatte.
Der korrigierte Wert ist dann Prognose − erwarteter Fehler, höchstens um ±6 kn verschoben und nie unter 0. Die Böen verschieben sich um denselben Betrag.
Vorsicht bei wenig Daten („Shrinkage“)
Geschätzt wird per Ridge-Regression: Jeder Term startet bei „keine Korrektur“ und muss sich erst gegen eine Strafe durchsetzen. Anschaulich braucht der Gesamtversatz etwa 4 effektive Stunden Evidenz, ein Richtungs-Versatz 12, die Windstärke- und Temperatur-Terme deutlich mehr. Mit wenigen Daten bleibt die Korrektur also klein — sie wächst erst, wenn der Fehler wiederholt und eindeutig auftritt.
Welche Terme tatsächlich benutzt werden, ist nicht festgelegt — das entscheiden die Daten (Schritt 6). Zur Wahl stehen:
Roh · gleiche Gewichte: keine Korrektur — die Modellwerte, wie Windguru sie liefert, alle Modelle gleich gewichtet.
Roh · Güte-Gewichte: keine Korrektur — die Modellwerte, wie Windguru sie liefert, gewichtet nach Güte.
Bias-Korrektur · gleiche Gewichte: fester Versatz je Modell, getrennt nach Windrichtung (N/O/S/W), alle Modelle gleich gewichtet.
Bias-Korrektur · Güte-Gewichte: fester Versatz je Modell, getrennt nach Windrichtung (N/O/S/W), gewichtet nach Güte.
Linear-Korrektur · Güte-Gewichte: wie zuvor, zusätzlich windstärkeabhängig (z. B. „bei Flaute zu viel, bei Sturm zu wenig“), gewichtet nach Güte.
Linear + Wasser−Luft-Temp. · Güte-Gewichte: wie zuvor, zusätzlich abhängig von Wasser- minus Lufttemperatur, gewichtet nach Güte.
4 · Gewichtung
Nach der Korrektur bleibt je Modell ein Restfehler σ (typische Abweichung in kn). Modelle mit kleinem Restfehler zählen mehr:
Gewicht = 1 / σ²
Ein Modell mit σ = 2 kn zählt also viermal so viel wie eines mit σ = 4 kn. Weil die Güte mit dem Vorlauf sinkt, wird σ je Vorlauf-Stufe getrennt bestimmt.
Das Gewicht gilt je Stunde. Ein Kurzfrist-Modell wie HARMONIE zählt morgen genauso viel wie ein globales — übermorgen Abend ist seine Reichweite zu Ende, dann verteilt sich das Gewicht auf die übrigen. Über 16 Tage gerechnet sähe es deshalb unwichtig aus; die Analyse zeigt darum immer den Anteil im gewählten Zeitraum bzw. in der gewählten Stunde.
Ohne Historie: feiner = besser
Solange ein Modell kaum Stichproben hat, gilt ein Startwert aus seiner Auflösung: erwarteter Fehler z. B. 3 kn bei 2 km, 3,8 kn bei 9 km, 4,3 kn bei 13 km (σ ist das 1,25-Fache und wächst mit jeder Vorlauf-Stufe um 12 %). Der gemessene Restfehler wird mit diesem Startwert verrechnet, als wären es 8 zusätzliche Stunden:
Beispiel ohne Daten: ein 2-km-Modell hat für 0–24 h σ = 3,8 kn, ein 13-km-Modell 5,4 kn — das feine Modell zählt damit rund 2,1-mal so viel.
5 · Konsens
Je Stunde, bis 16 Tage voraus, das gewichtete Mittel aller korrigierten Modelle, die diese Stunde abdecken (zwischen den Modell-Zeitschritten wird linear interpoliert):
Die Windrichtung wird als Vektor gemittelt (damit 350° und 10° nicht 180° ergeben). Temperatur, Regen und Wolken werden genauso gewichtet gemittelt — jeweils nur über die Modelle, die den Wert liefern. Aus der Streuung der Modelle um den Konsens entstehen Min/Max und die Standardabweichung.
Ein Mittel glättet Spitzen — sehen zwei Modelle die Front um 11 bzw. 15 Uhr, zeigt der Konsens einen flachen Buckel. Darum nennt die Tagesansicht zusätzlich die Modell-Spitze: erst jedes Modell für sich (Ø seiner 3 stärksten Tageslicht-Stunden), dann der Median darüber, gewichtet mit den Stundengewichten des Modells an diesem Tag.
6 · Ehrliche Rückschau
Die wichtigste Regel: Eine Prognose wird nur mit dem geprüft, was damals schon bekannt war. Wer mit denselben Daten lernt und prüft, bekommt schöne, aber falsche Zahlen. Deshalb spielt der Lern-Job die Vergangenheit nach:
Er wählt bis zu 200 frühere Datenstände aus (frühestens 3 Tage nach Beginn der Aufzeichnung, damit schon etwas gelernt werden konnte).
Für jeden lernt er die Korrekturen nur aus Messungen, die zu diesem Zeitpunkt vorlagen.
Dann rechnet er den Konsens jeder Variante so, wie er damals ausgesehen hätte, und vergleicht ihn 6, 12, 24, 48 h später mit der Messung.
Daraus entstehen die Kennzahlen unter Analyse → Genauigkeit: mittlerer Fehler (MAE), systematische Abweichung (Bias) und die Trefferquote (höchstens 3 kn daneben). Berichtet wird dabei immer die Variante (und der Streuungsfaktor), die zu diesem Zeitpunkt gewählt gewesen wäre — nicht die, die sich am Ende als beste herausstellt. Sonst würde dieselbe Rückschau erst die Variante aussuchen und sie dann mit genau den Fällen loben, nach denen sie ausgesucht wurde.
Welche Variante gilt?
Gewählt wird die einfachste Variante, die im Mittel über alle Vorläufe höchstens 0,05 kn schlechter ist als die beste. Eine aufwendigere Korrektur muss sich also klar lohnen. Das passiert erst ab 120 Vergleichen bei 24 h Vorlauf — vorher gilt „Bias-Korrektur · Güte-Gewichte“.
7 · Wahrscheinlichkeit
Statt nur zu zählen, wie viele Modelle über 13 kn liegen, bringt jedes Modell seinen typischen Restfehler σ als Glockenkurve um seinen korrigierten Wert mit. Die Prozentzahl ist der gewichtete Anteil aller Kurven oberhalb der Schwelle (in der Statistik „Ensemble-Dressing“):
Beispiel: Ein Modell sagt korrigiert 14,5 kn bei σ = 2 kn: (13 − 14,5) / 2 = −0,75 → 77 % seiner Kurve liegen über 13 kn. Ein zweites mit 11 kn und σ = 3 kn trägt 25 % bei. Bei gleichem Gewicht ergibt das 51 %.
Stimmen die Prozente?
Die Rückschau prüft auch das: Von allen Stunden mit „60–80 %“ sollten rund 70 % tatsächlich fahrbar gewesen sein. Sind die Kurven zu schmal oder zu breit, wird σ insgesamt mit einem Faktor aus 0,8 / 1 / 1,25 / 1,5 skaliert — gewählt nach dem Brier-Score, dem mittleren quadratischen Fehler der Prozente. Das geschieht erst ab 400 Vergleichen.
8 · Kurzfrist-Korrektur
Für die nächsten Stunden ist die Station selbst die beste Information. Weicht die Messung gerade von der Prognose ab, wird die Abweichung in die nächsten Stunden übertragen:
Korrektur nach k Stunden = (Messung − Prognose jetzt) × Nachlauf(k)
„Messung jetzt“ = Mittel der letzten Stunde der Station, nur wenn höchstens 90 min alt.
Der Nachlauf ist gelernt: Wie viel einer Abweichung war in der Vergangenheit k Stunden später noch da? Mit wenig Daten gilt ein Standard-Abklingen e−k/3 (halbiert sich nach ~2 h). Nach 8 Stunden ist Schluss.
Dreht der Wind laut Prognose um mehr als 60°, endet die Korrektur sofort — nach einer Front oder einsetzender Seebrise sagt die alte Abweichung nichts mehr.
+0 h
+1 h
+2 h
+3 h
+4 h
+5 h
+6 h
+7 h
+8 h
Standard-Abklingen — die gelernten Werte stehen unter Analyse → Genauigkeit
9 · Fahrfenster & Kennzahlen
Fahrbare Stunde
Eine Stunde gilt als fahrbar, wenn alles zusammenkommt:
Tageslicht (ab ½ h vor Sonnenaufgang bis ½ h vor Sonnenuntergang)
Richtung nicht ungeeignet (s. Windrichtungen je Spot)
mindestens 50 % Wahrscheinlichkeit für 13 kn, inkl. Kurzfrist-Korrektur
unter 35 kn
kein Schauerböen-Verdacht: ≥ 1,5 mm/h Regen und sehr böig (Böe ≥ 12 kn über dem Mittel oder ≥ 1,6 × Mittelwind). Echte Gewitterdaten liefert Windguru nicht.
Fahrfenster
Mindestens 2 zusammenhängende fahrbare Stunden am selben Tag. Als „bestes Fenster“ gilt das mit der größten sicheren Fahrzeit (Stunden × mittlere Wahrscheinlichkeit).
Tageswind
Durchschnitt der 3 stärksten Tageslicht-Stunden — eine kurze Spitze allein zählt nicht.
Trend
Derselbe Tageswind, berechnet aus früheren Datenständen (vor 6 h, 1, 3 und 7 Tagen). Unter 2 kn Unterschied gilt er als stabil.
Nur globale Modelle
Ab etwa Tag 3 fallen die hochauflösenden Küstenmodelle weg; danach rechnen nur noch ECMWF, GFS & Co. mit ~9–15 km Maschenweite — Tendenz ja, Details nein. Solche Tage erscheinen blass.
Grenzen
Die Korrektur ist nur so gut wie die Historie. In den ersten Wochen sind Unterschiede zwischen den Varianten oft noch Zufall — deshalb die Zurückhaltung bei wenig Daten.
Eine Station misst an einem Punkt. Böen, Abdeckung durch den Damm oder lokale Effekte am Wasser können abweichen — und gelernt wird, was diese Station misst.
Viele Modelle sind verwandt (z. B. die HARMONIE-Familie) und irren sich gemeinsam. Der Konsens ist deshalb weniger „unabhängige Meinungen“, als die Zahl 16 vermuten lässt.
Die Prozente sind Wahrscheinlichkeiten, keine Garantien.
Datenquellen & Code
Windguru — Modellvorhersagen (frei abrufbar; privates Dashboard, nicht affiliiert)
Messstationen: Natural High (Brouwersdam, via Windguru, 10-min-Verlauf), Mirns NKV (soarcast/NKV, nur aktueller Wert)
Der komplette Rechenweg ist offen: github.com/Goerkin/windapp. Gelernt wird in scripts/skill_job.py, angewendet in src/lib/calib.ts und src/lib/consensus.ts, die Kite-Logik steht in src/lib/kite.ts. Ein automatischer Test prüft, dass Lern- und Anzeigeseite Stunde für Stunde dasselbe rechnen.