1. Pourquoi un score de stabilité ?
Quand on demande "quel temps va-t-il faire demain ?" à une application météo classique, la réponse est toujours la même : les valeurs du dernier run du dernier modèle calculé. Cette approche a une limite fondamentale — elle ne dit rien de la fiabilité de cette prévision.
Deux prévisions identiques peuvent avoir des niveaux de confiance très différents. Considérons deux scénarios pour demain à 14h :
Dans les deux cas, une application classique afficherait "15 nœuds". Solano vous montrerait 9/10 pour le premier scénario et 3/10 pour le second. C'est le cœur de la méthode Solano : mesurer la cohérence temporelle des prévisions, et non seulement leur valeur ponctuelle.
2. Les runs météo : qu'est-ce que c'est ?
Un modèle numérique de prévision atmosphérique est un programme qui résout les équations de la dynamique des fluides sur une grille tridimensionnelle de l'atmosphère mondiale. Il est initialisé à partir d'un "état initial" — une photographie de l'atmosphère à un instant précis, construite à partir de milliers d'observations : stations météo de surface, radiosondages, satellites, bouées marines, mesures d'avions en vol...
Cette initialisation se fait plusieurs fois par jour, à des heures conventionnelles exprimées en temps universel : 00Z, 06Z, 12Z, 18Z (respectivement 1h, 7h, 13h et 19h en heure française d'hiver). Chaque exécution du modèle à partir d'un état initial est appelée un run.
Quelques exemples de fréquence de publication :
- ARPEGE (Météo-France, Europe) — 4 runs par jour (00Z, 06Z, 12Z, 18Z)
- AROME HD (Météo-France, haute résolution 1,5 km) — jusqu'à 8 runs par jour
- ECMWF IFS HRES (Centre européen) — 2 runs par jour (00Z et 12Z)
- GFS (NOAA, États-Unis) — 4 runs par jour
À chaque run, le modèle "repart de zéro" avec un état initial légèrement différent (les observations les plus récentes y ont été intégrées), et peut produire des prévisions légèrement — ou parfois très — différentes pour une même date cible. Ce sont ces différences entre runs successifs que Solano mesure et quantifie.
3. Les modèles analysés par Solano
Solano s'appuie sur la Single Runs API d'Open-Meteo, qui donne accès aux archives historiques de chaque run des grands centres de prévision mondiaux. Huit modèles atmosphériques sont actuellement analysés :
| Modèle | Centre | Couverture | Horizon | Fréquence |
|---|---|---|---|---|
| ARPEGE | Météo-France | Europe | 5 j | 4×/j |
| AROME HD | Météo-France | France (1,5 km) | 3 j | 8×/j |
| ECMWF IFS HRES | ECMWF | Mondial | 15 j | 2×/j |
| GFS | NOAA (États-Unis) | Mondial | 16 j | 4×/j |
| ICON | DWD (Allemagne) | Mondial/Europe | 7 j | 4×/j |
| UKMO | Met Office (Royaume-Uni) | Mondial | 7 j | 2×/j |
| ICON-2I | ARPAE (Italie) | Méditerranée (2 km) | 3 j | 4×/j |
| GEM | Environnement Canada | Mondial | 10 j | 2×/j |
Pour les conditions en mer, Solano analyse également 5 modèles de vagues et courants : ARPEGE-Wave et WAM (Météo-France et ECMWF), GFS-Wave (NCEP), EWAM et le modèle de Courants Météo-France. Les modèles marins ne contribuent pas au score de stabilité atmosphérique — ils sont affichés séparément pour les points en mer.
Chaque modèle couvre des zones géographiques différentes. Lorsqu'un point GPS se trouve hors de la zone de couverture d'un modèle (par exemple, AROME HD en dehors de la France), ce modèle est automatiquement exclu de l'analyse pour ce point.
4. Le "film des runs" : voir les prévisions évoluer
Pour un point GPS et une date cible données, Solano reconstruit l'ensemble des prévisions émises par chaque modèle pour cette date : depuis le run J-5 jusqu'au run le plus récent. Si la date cible est dans 3 jours, des dizaines de runs ont déjà prévu les conditions de ce jour — depuis différentes distances temporelles.
Ce n'est pas pareil de voir une prévision à 3 jours d'échéance (le modèle tourne aujourd'hui et prédit pour après-demain) et à 1 jour d'échéance (le modèle prédit pour demain avec des données d'initialisation plus récentes et plus précises). En général, plus on est proche du jour cible, plus la prévision est précise — mais pas toujours, et c'est précisément ce que mesure Solano.
Le graphique spaghetti de Solano superpose toutes ces courbes sur un même graphique : chaque ligne représente un run différent, colorée selon son âge. L'interprétation est immédiate :
- Courbes serrées — les runs successifs s'accordent → score de stabilité élevé → haute confiance dans la prévision.
- Courbes dispersées — les runs divergent → score de stabilité bas → situation instable, prévision incertaine.
- Courbes qui convergent — les anciens runs divergeaient mais les récents s'accordent → la situation se stabilise progressivement.
Cette visualisation permet de distinguer une incertitude structurelle (la situation météo est intrinsèquement difficile à prévoir) d'une incertitude transitoire (les modèles avaient du mal à 5 jours mais s'accordent maintenant à 2 jours).
5. Le calcul du score — formule et pondération
Le calcul du score de stabilité suit un algorithme en quatre étapes, appliqué indépendamment pour chaque modèle et chaque date cible.
Étape 1 — Comparaison heure par heure
Pour chaque run passé et chaque heure de la date cible, Solano calcule l'écart entre la valeur prévue par le run le plus récent et la valeur prévue par le run historique :
Pour la direction du vent, l'écart n'est pas calculé comme une différence arithmétique mais en utilisant l'arc angulaire court (la différence angulaire minimale entre deux caps, toujours comprise entre 0° et 180°). Cela évite de considérer que 355° et 5° sont très différents, alors qu'ils ne le sont que de 10°.
Étape 2 — Moyenne sur toutes les heures
L'écart moyen sur l'ensemble des heures de la journée est calculé pour chaque run passé, donnant une mesure de la divergence globale de ce run par rapport au run actuel.
Étape 3 — Conversion en score 0–10 par variable
Chaque écart moyen est converti en score 0–10 grâce à un seuil de sensibilité propre à chaque variable. Un écart nul donne un score de 10 (parfaite cohérence) ; un écart égal ou supérieur au seuil donne un score de 0. La conversion est linéaire entre ces deux bornes.
| Variable | Seuil de sensibilité | Poids par défaut |
|---|---|---|
| 💨 Rafales de vent | ±6 nœuds | 30 % |
| 🌬️ Vent moyen | ±4 nœuds | 20 % |
| 🌧️ Précipitations | ±1 mm/h | 20 % |
| 🧭 Direction du vent | ±45° | 10 % |
| 👁️ Visibilité | ±7 000 m | 10 % |
| 🌡️ Température | ±3 °C | 5 % |
| ☁️ Couverture nuageuse | ±20 % | 5 % |
Étape 4 — Agrégation pondérée
Les scores de toutes les variables sont combinés en une moyenne pondérée. Les poids par défaut reflètent l'importance relative de chaque variable pour les activités marines et outdoor (les rafales sont le critère de sécurité le plus critique, suivies du vent moyen et des précipitations). Ces poids sont entièrement personnalisables dans les préférences de l'application.
Lorsqu'un modèle ne dispose pas d'une variable donnée (par exemple, AROME HD ne couvre pas la visibilité marine), le poids de cette variable est automatiquement redistribué sur les autres variables disponibles, afin que le score reste comparable entre modèles.
6. La décroissance temporelle
Tous les runs passés ne sont pas équivalents dans le calcul du score. Un run émis il y a 5 jours était basé sur des données d'observation bien moins récentes qu'un run émis hier — il est donc moins pertinent pour évaluer la cohérence de la prévision actuelle.
Solano applique une pondération exponentielle décroissante à chaque run selon son âge :
Avec une demi-vie de 2,5 jours, un run d'hier pèse environ 67 % d'un run d'aujourd'hui. Un run vieux de 4 jours ne représente plus que ~20 % du poids d'un run actuel. Un run vieux de 7 jours contribue à moins de 6 %.
Cette décroissance reflète l'intuition météorologique : ce qui était prévu il y a une semaine est moins indicatif de la stabilité actuelle que ce qui était prévu hier ou avant-hier. Un modèle qui "change d'avis" au dernier moment est moins inquiétant qu'un modèle qui oscille depuis plusieurs jours.
7. La vérification ERA5 — prévision vs réalité
Le score de stabilité mesure la cohérence interne des prévisions — il ne dit pas si les prévisions étaient justes. Pour compléter cet indicateur, Solano intègre une comparaison directe entre les prévisions historiques et les observations de référence via ERA5T.
ERA5 est la réanalyse atmosphérique de l'ECMWF (Centre européen pour les prévisions météorologiques à moyen terme) : une reconstruction cohérente et homogène de l'état de l'atmosphère heure par heure depuis 1940, basée sur toutes les observations disponibles et passées dans un modèle d'assimilation de données de pointe. ERA5T est la version "temps réel" de cette réanalyse, disponible avec environ 1 à 2 jours de délai.
L'onglet 📡 Vérif. du panneau Spaghetti affiche, pour n'importe quel jour des 15 derniers jours disponibles :
- La ligne ERA5T (observations de référence) — tracée en pointillé noir
- Toutes les courbes de runs correspondantes — ce que chaque modèle avait prévu pour ce jour-là, à différentes échéances
Cette visualisation permet de répondre à une question concrète : le modèle qui avait prédit 20 nœuds pour avant-hier avait-il raison ? ERA5T avait-il enregistré 18 nœuds (bonne prévision) ou 8 nœuds (forte surestimation) ?
Seules les variables atmosphériques disponibles dans ERA5 récent sont affichées : vent, rafales, direction, température, précipitations, couverture nuageuse, pression. Les données marines (vagues, courants) ne sont pas couvertes par ERA5 récent.
8. La fiabilité récente — MAE par échéance
En automatisant la comparaison prévision/ERA5T sur les 15 derniers jours et toutes les échéances, Solano calcule pour chaque modèle une mesure de précision réelle locale : le MAE (Mean Absolute Error — erreur absolue moyenne).
Le MAE est calculé séparément :
- Pour chaque modèle atmosphérique
- Pour chaque variable (vent, rafales, direction, pluie, température, nuages, pression)
- Pour chaque échéance de J-1 (prévision à 1 jour) à J-15 (prévision à 15 jours)
Ce profil de MAE par échéance révèle le comportement réel de chaque modèle sur votre point géographique précis. Un modèle peut être excellent à J-2 mais médiocre à J-7 ; un autre peut maintenir une précision remarquable jusqu'à J-5. Ces informations aident à pondérer intuitivement les prévisions selon leur échéance.
| Variable | Bon (<) | Acceptable | Faible (>) |
|---|---|---|---|
| Vent moyen | 3 nds | 3–6 nds | 6 nds |
| Rafales | 4 nds | 4–8 nds | 8 nds |
| Direction du vent | 20° | 20–40° | 40° |
| Pression MSL | 1,5 hPa | 1,5–3 hPa | 3 hPa |
| Température | 1,5 °C | 1,5–3 °C | 3 °C |
Les MAE sont affichés dans l'application sous forme de badges colorés vert/orange/rouge dans les fiches modèles, et sous forme de graphique temporel J-15 → J-1 dans la vue Spaghetti. Ce graphique montre la courbe de dégradation de la précision avec l'échéance, caractéristique de chaque modèle sur votre point.
9. Limites de la méthode
La méthode Solano présente plusieurs limitations importantes à connaître pour interpréter correctement les scores :
- Stabilité ≠ justesse. Un score de 9/10 signifie que les modèles sont cohérents entre eux — pas qu'ils ont raison. Une situation atmosphérique peut être systématiquement mal simulée par l'ensemble des modèles (biais commun). Le score MAE ERA5 est l'indicateur complémentaire pour évaluer la justesse historique.
- Sens à partir de J+1. La comparaison inter-runs n'est pertinente qu'à partir du lendemain, quand plusieurs runs ont déjà prévu le même jour. À très courte échéance (quelques heures), tous les runs convergent naturellement — le score serait artificiellement élevé.
- Délai de publication des runs. Chaque modèle publie ses runs avec un délai variable (de 1h30 pour AROME à 4h pour UKMO). Solano utilise les timestamps réels de publication Open-Meteo, non les heures théoriques.
- Pas de données marines dans ERA5 récent. La vérification ERA5 ne couvre que les variables atmosphériques. Pour les vagues et courants, il n'existe pas encore d'équivalent ERA5 récent dans l'API Open-Meteo.
- Open-Meteo comme intermédiaire. Les données transitent par l'API Open-Meteo, qui impose ses propres délais de mise à jour et horizons de disponibilité par modèle.