Utilisation

Le Forecaster permet de calculer une méthode d’analogues basée sur les dernières sorties PNT (NWP) disponibles ou pour une date donnée. Le calcul de la prévision en temps réel peut être effectué par un ordinateur standard sans ressources spécifiques. La prévision peut être exécutée à la demande par le biais d’une interface utilisateur graphique (GUI) ou peut être automatisée par l’utilisation d’une interface en ligne de commande (CLI). Ces deux aspects sont expliqués ci-après.

Par défaut, le Forecaster traite la dernière prévision disponible. Cependant, il peut également calculer une prévision pour un jour donné dans le passé, à condition que les sorties PNT (NWP) soient disponibles localement ou à distance, ou il peut être exécuté pour traiter les x derniers jours. Ces options peuvent également être exécutées une fois par jour par un gestionnaire de tâches pour combler d’éventuelles lacunes dans les jours précédents. Si les prévisions sont déjà présentes, aucune ressource informatique n’est utilisée.

Un fichier batch peut être fourni à l’interface graphique (GUI) ou en ligne de commande (CLI). Il contient les chemins des données et d’exportation ainsi que les méthodes d’analogues à appliquer (définies dans les fichiers de paramètres xml). Des tâches automatiques peuvent ainsi exécuter successivement le Forecaster avec différentes options, par exemple pour différentes régions. Les résultats peuvent être optionellement sauvegardés dans différents répertoires.

Exigences

Le Forecaster a besoin :

Sorties

Le Forecaster produit des fichiers NetCDF compressés contenant :

  • Les valeurs du prédicand pour les différentes échéances d’exécution

  • Les dates analogues

  • Les valeurs des critères d’analogie

  • Les dates cibles (échéances)

  • Le nombre d’analogues pour les différentes échéances

  • Quelques valeurs de référence (par exemple, les précipitations pour différentes périodes de retour)

  • Quelques métadonnées de la station (ID, nom, coordonnées, altitude)

  • Quelques informations sur les prédicteurs utilisés ainsi que sur les fenêtres spatiales

Il existe un fichier par variante de la méthode des analogues contenant les données de toutes les stations de la base de données.

Certains exports peuvent également être générés (par exemple, des fichiers synthétiques xml ou csv) pour faciliter l’intégration de données synthétiques sur une plateforme web, par exemple.

Les fichiers sont enregistrés dans une structure de répertoire basée sur la date (par exemple, 2019/04/23). Le Viewer suit les mêmes règles pour rechercher automatiquement les nouvelles prévisions. Le répertoire de sortie peut être synchronisé à l’aide d’un client de partage de fichiers pour distribuer les prévisions.

Interface utilisateur graphique

Cet outil permet d’effectuer les actions suivantes :

  • Traiter la dernière prévision ou pour une date donnée

  • Définir la liste des méthodes à exécuter automatiquement (également en mode ligne de commande)

../_images/frame-forecaster.png

La barre d’outils permet d’effectuer les actions suivantes :

  • icon_run Lancer la prévision pour la date et l’heure choisies.

  • icon_stop Arrêter les calculs en cours.

  • icon_preferences Définir les préférences.

Pour effectuer une prévision, il faut :

  1. Choisir la date dans le calendrier et l’heure en dessous. Au démarrage du logiciel, la date et l’heure sont réglées sur les valeurs actuelles. L’icône icon_update permet de mettre à jour les valeurs actuelles.

  2. Lancez le calcul de la prévision en cliquant sur l’icône icon_run_s dans la barre d’outils.

Les méthodes d’analogues traitées sont celles listées dans la moitié inférieure de l’interface. Les méthodes peuvent différer en termes de structure ou de paramètres, par exemple pour être adaptées à une sous-région. Les méthodes sont exécutées l’une après l’autre. Une icône icon_bullet_yellow signifie que le modèle est en cours de calculs, icon_bullet_green que les calculs ont été effectués avec succès et icon_bullet_red que la prévision a échoué pour cette méthode.

Définir la liste des méthodes

La liste des méthodes d’analogues peut être complétée, ou des méthodes peuvent être supprimées. Une méthode est ici un paramétrage spécifique d’une méthode d’analogue optimale pour une échéance ou une région. Elle est représentée dans l’interface graphique par le choix d’un fichier de paramètres. Une entrée peut être supprimée à l’aide de l’icône icon_close, et de nouvelles entrées peuvent être ajoutées à l’aide de l’icône icon_plus située sous la liste.

Les entrées peuvent être modifiées en cliquant sur l’icône icon_edit. Une boîte de dialogue apparaît pour définir le nom du fichier de paramètres (uniquement le nom, pas le chemin d’accès complet). Le fichier de paramètres doit être situé dans le répertoire défini dans les préférences. Il s’agit d’un fichier XML qui peut être édité avec un éditeur de texte. La structure du fichier est décrite dans la section fichier de paramètres. Si le fichier n’est pas trouvé, l’icône icon_warning est affichée. L’icône icon_info permet d’afficher la description du fichier de paramètres dans une info-bulle. L’icône icon_details permet d’afficher le contenu du fichier de paramètres dans une nouvelle fenêtre (le contenu ne peut pas être édité).

Avertissement

Lorsque la liste des méthodes a été modifiée et qu’elle doit être utilisée par défaut, il est nécessaire de la sauvegarder (menu “Fichier / Enregistrer le fichier batch”) ; sinon, la liste sera réinitialisée au redémarrage du logiciel.

Interface en ligne de commande

Le Forecaster dispose également d’une interface en ligne de commande, qui permet d’automatiser les prévisions sur un serveur. Une tâche planifiée peut alors être ajoutée sur un serveur (ex : Task Scheduler sous Windows ou tâche Cron sous Linux). Les options sont les suivantes :

-h, --help

Afficher l’aide des options en ligne de commande

-c, --config

Configurer le Forecaster

-v, --version

Afficher la version du logiciel

-f, --batch-file=<file>

Fichier batch à utiliser pour la prévision (chemin complet)

-n, --forecast-now

Exécuter la prévision pour les dernières données disponibles

-p, --forecast-past=<nb_days>

Exécuter les prévisions pour le nombre donné de jours passés

-d, --forecast-date=<YYYYMMDDHH>

Exécuter les prévisions pour une date donnée

-l, --log-level=<n>

Définir le niveau du journal (0 : minimum, 1 : erreurs, 2 : avertissements (par défaut), 3 : verbeux)

--proxy=<host[:port]>

Utiliser le proxy sur le port donné

--proxy-user=<user[:password]>

Utilisateur et mot de passe du proxy

Image Docker

Une image Docker est disponible sur DockerHub : https://hub.docker.com/r/atmoswing/forecaster

Obtenez-le avec : docker pull atmoswing/forecaster

Le conteneur docker pour AtmoSwing Forecaster utilise les mêmes options que l’interface en ligne de commande (à l’exception de l’option --config). Cependant, différents répertoires doivent être montés dans le conteneur docker pour permettre à AtmoSwing d’accéder aux données et de sauvegarder les résultats.

La manière recommandée d’utiliser le conteneur docker est de créer un fichier docker-compose. Un exemple est fourni ci-dessous :

version: "3"
services:
atmoswing_forecaster:
   container_name: forecaster
   image: "atmoswing/forecaster:latest"
   working_dir: /app/home
   user: "1000:1000"
   volumes:
      - /home/atmoswing/:/app/mount/
      - /home/atmoswing/scratch/home:/app/home/
      - /home/atmoswing/scratch/tmp:/tmp/
   command: -f /app/mount/params/batch-file.xml -n
   environment:
      HOME: /app/home
      ECCODES_DEFINITION_PATH: /usr/share/eccodes/definitions
   network_mode: bridge

Ensuite, le fichier batch doit contenir les répertoires montés dans le conteneur docker. Si vous avez modifié les répertoires cibles ci-dessus, vous devez également les adapter ci-dessous. Le fichier batch doit ressembler à ça :

<?xml version="1.0" encoding="UTF-8"?>
   <atmoswing version="1.0" target="forecaster">
   <forecasts_output_directory>/app/mount/forecasts</forecasts_output_directory>
   <exports_output_directory>/app/mount/forecasts</exports_output_directory>
   <parameters_files_directory>/app/mount/params</parameters_files_directory>
   <predictors_archive_directory>/app/mount/predictors/archive/NR1</predictors_archive_directory>
   <predictors_realtime_directory>/app/mount/predictors/realtime/GFS</predictors_realtime_directory>
   <predictand_db_directory>/app/mount/predictands</predictand_db_directory>
   <export_synthetic_xml>0</export_synthetic_xml>
   <forecasts>
      <filename>2Z_Alpes_du_Nord_24h.xml</filename>
      <filename>2Z-2MI_Alpes_du_Nord_24h.xml</filename>
      <filename>2Z_Alpes_du_Nord_6h.xml</filename>
      <filename>2Z-2MI_Alpes_du_Nord_6h.xml</filename>
   </forecasts>
</atmoswing>