Composants

Controller

class atmoswing_vigicrues.Controller(cli_options)[source]

Bases: object

Classe principale pour la gestion des prévisions AtmoSwing pour le réseau Vigicrues.

Parameters:

cli_options (retour de la fonction parse_args() de la classe) – argparse.ArgumentParser Options passées en lignes de commandes à la fonction main()

options

Options de la prévision combinant les arguments passés lors de l’utilisation en lignes de commandes et les options du fichier de configuration.

Type:

instance de la classe Options

time_increment

Incrément de temps en heures pour l’émission de la prévision (par défaut 6 heures).

Type:

int

date

Date de la prévision.

Type:

datetime.datetime

existing_files

Liste des fichiers de prévision d’AtmoSwing Forecaster déjà existants pour l’échéance en cours.

Type:

list

pre_actions

Liste des actions préalables à la prévision.

Type:

list

post_actions

Liste des actions postérieures à la prévision.

Type:

list

disseminations

Liste des actions de dissémination.

Type:

list

run(date=None) int[source]

Exécution du flux de la prévision et du postprocessing.

Parameters:

date (datetime.datetime) – La date de la prévision (par défaut, la date actuelle est utilisée).

Returns:

Le code de retour (0 en cas de succès)

Return type:

int

Pre-actions

Inheritance diagram of PreAction, TransferSftpIn, DownloadGfsData, TransformGfsData, TransformEcmwfData

Classe de base des pré-actions

class atmoswing_vigicrues.PreAction[source]

Bases: object

Classe de base pour les opérations nécessaires avant l’exécution des prévisions.

run(date) bool[source]

Exécution de la pre-action.

Parameters:

date (datetime.datetime) – Date de la prévision.

Returns:

Vrai (True) en cas de succès, faux (False) autrement.

Return type:

bool

Transfert SFTP

class atmoswing_vigicrues.TransferSftpIn(name, options)[source]

Bases: PreAction

Récupération des prévisions des modèles météo par SFTP.

Parameters:
  • name (str) – Le nom de l’action

  • options (dict) –

    Un dictionnaire contenant les options de l’action. Les champs possibles sont:

    • local_dirstr

      Répertoire cible pour l’enregistrement des fichiers.

    • prefixstr

      Prefix des fichiers à importer.

    • variableslist (optionnel)

      Liste des variables météorologiques à importer.

    • hostnamestr

      Adresse du serveur distant.

    • portint

      Port du serveur distant.

    • usernamestr

      Utilisateur ayant un accès au serveur.

    • passwordstr

      Mot de passe de l’utilisateur sur le serveur.

    • proxy_hoststr

      Adresse du proxy, si nécessaire.

    • proxy_portint

      Port du proxy si nécessaire (par défaut: 1080).

    • remote_dirstr

      Chemin sur le serveur distant où se trouvent les fichiers.

    • attempts_max_hoursint

      Décalage temporel autorisé pour rechercher d’anciens fichiers

    • attempts_step_hoursint

      Pas de temps auquel décrémenter la date pour rechercher d’anciens fichiers

type_name

Le nom du type de l’action

Type:

str

name

Le nom de l’action

Type:

str

local_dir

Répertoire cible pour l’enregistrement des fichiers.

Type:

str

prefix

Prefix des fichiers à importer.

Type:

str

hostname

Adresse du serveur distant.

Type:

str

port

Port du serveur distant.

Type:

int

username

Utilisateur ayant un accès au serveur.

Type:

str

password

Mot de passe de l’utilisateur sur le serveur.

Type:

str

remote_dir

Chemin sur le serveur distant où se trouvent les fichiers.

Type:

str

variables

Liste des variables météorologiques à importer.

Type:

list

proxy_host

Adresse du proxy, si nécessaire.

Type:

str

proxy_port

Port du proxy si nécessaire (par défaut: 1080).

Type:

int

run(date) bool[source]

Exécution de la récupération par SFTP.

Parameters:

date (datetime.datetime) – Date de la prévision.

Returns:

Vrai (True) en cas de succès, faux (False) autrement.

Return type:

bool

Téléchargement GFS

class atmoswing_vigicrues.DownloadGfsData(name, options)[source]

Bases: PreAction

Téléchargement des prévisions émises par GFS.

Parameters:
  • name (str) – Le nom de l’action

  • options (dict) –

    Un dictionnaire contenant les options de l’action. Les champs possibles sont:

    • output_dirstr

      Répertoire cible pour l’enregistrement des fichiers.

    • lead_time_maxint

      Échéance maximale de la prévision en heures. Valeur par défaut : 168

    • variableslist

      Variables à télécharger. Valeur par défaut: [‘hgt’]

    • levelslist

      Niveaux de pression à télécharger. Valeur par défaut: [300, 400, 500, 600, 700, 850, 925, 1000]

    • domainlist

      Domaine à télécharger (coordonnées géographiques). Valeur par défaut: [-20, 30, 25, 65]

    • resolutionfloat

      Résolution spatiale des données. Options: 0.25, 0.50, 1 Valeur par défaut : 0.25

    • proxy_hoststr

      L’adresse du proxy (si nécessaire). Format : proxy_ip:proxy_port

    • proxy_userstr

      L’utilisateur et le mot de passe pour le proxy. Format : username:password

    • attempts_max_hoursint

      Décalage temporel autorisé pour rechercher d’anciens fichiers

    • attempts_step_hoursint

      Pas de temps auquel décrémenter la date pour rechercher d’anciens fichiers lorsque le fichier n’est pas trouvé

    • time_incrementint

      Pas de temps auquel décrémenter la date pour rechercher d’anciens fichiers afin de compléter les fichiers précédents de la journée Valeur par défaut : 6

    • time_step_backint

      Nombre de pas de temps autorisé pour rechercher d’anciens fichiers Valeur par défaut : 4

type_name

Le nom du type de l’action

Type:

str

name

Le nom de l’action

Type:

str

output_dir

Répertoire cible pour l’enregistrement des fichiers.

Type:

str

lead_time_max

Échéance maximale de la prévision en heures.

Type:

int

variables

Variables à télécharger.

Type:

list

levels

Niveaux de pression à télécharger.

Type:

list

domain

Domaine à télécharger (coordonnées géographiques).

Type:

list

resolution

Résolution spatiale des données.

Type:

float

proxies

Les informations de connexion au proxy.

Type:

list

time_increment

Pas de temps auquel décrémenter la date pour rechercher d’anciens fichiers

Type:

int

time_step_back

Nombre de pas de temps autorisé pour rechercher d’anciens fichiers

Type:

int

download(date) bool[source]

Télécharge les prévisions de GFS pour une date d’émission de la prévision.

Parameters:

date (datetime.datetime) – Date d’émission de la prévision.

Returns:

Vrai (True) en cas de succès, faux (False) autrement.

Return type:

bool

run(date) bool[source]

Exécute l’action.

Parameters:

date (datetime.datetime) – Date d’émission de la prévision.

Returns:

Vrai (True) en cas de succès, faux (False) autrement.

Return type:

bool

Transformation données GFS

class atmoswing_vigicrues.TransformGfsData(name, options)[source]

Bases: PreAction

Transforme les prévisions émises par GFS en fichier netcdf.

Parameters:
  • name (str) – Le nom de l’action

  • options (dict) –

    Un dictionnaire contenant les options de l’action. Les champs possibles sont:

    • output_dirstr

      Chemin cible pour l’enregistrement des fichiers.

    • date_formatstr

      Format pour l’écriture des dates cibles. Défaut: “%d-%m-%Y”

    • variableslist

      Les variables météorologiques à convertir.

type_name

Le nom du type de l’action.

Type:

str

name

Le nom de l’action.

Type:

str

input_dir

Le chemin vers le répertoire contenant les fichiers à traiter.

Type:

str

output_dir

Le chemin vers le répertoire où seront enregistrés les fichiers.

Type:

str

variables

Les variables météorologiques à convertir.

Type:

list

run(date) bool[source]

Exécute l’action.

Parameters:

date (datetime.datetime) – Date d’émission de la prévision.

Returns:

Vrai (True) en cas de succès, faux (False) autrement.

Return type:

bool

transform(date) bool[source]

Transforme les prévisions de GFS pour une date d’émission de la prévision.

Parameters:

date (datetime.datetime) – Date d’émission de la prévision.

Returns:

Vrai (True) en cas de succès, faux (False) autrement.

Return type:

bool

Transformation données CEP

class atmoswing_vigicrues.TransformEcmwfData(name, options)[source]

Bases: PreAction

Transforme les prévisions émises par le CEP en fichier netcdf.

Parameters:
  • name (str) – Le nom de l’action

  • options (dict) –

    Un dictionnaire contenant les options de l’action. Les champs possibles sont:

    • output_dirstr

      Chemin cible pour l’enregistrement des fichiers.

    • date_formatstr

      Format pour l’écriture des dates cibles. Défaut: “%d-%m-%Y”

    • variableslist

      Les variables météorologiques à convertir.

type_name

Le nom du type de l’action.

Type:

str

name

Le nom de l’action.

Type:

str

input_dir

Le chemin vers le répertoire contenant les fichiers à traiter.

Type:

str

output_dir

Le chemin vers le répertoire où seront enregistrés les fichiers.

Type:

str

variables

Les variables météorologiques à convertir.

Type:

list

run(date) bool[source]

Exécute l’action.

Parameters:

date (datetime.datetime) – Date d’émission de la prévision.

Returns:

Vrai (True) en cas de succès, faux (False) autrement.

Return type:

bool

transform(date) bool[source]

Transforme les prévisions de l’ECMWF pour une date d’émission de la prévision.

Parameters:

date (datetime.datetime) – Date d’émission de la prévision.

Returns:

Vrai (True) en cas de succès, faux (False) autrement.

Return type:

bool

Post-actions

Inheritance diagram of PostAction, ExportBdApBp, ExportPrv

Classe de base des post-actions

class atmoswing_vigicrues.PostAction[source]

Bases: object

Classe de base pour les opérations de traitement des résultats d’AtmoSwing.

_file_paths

Chemins des fichiers de prévision émis par AtmoSwing.

Type:

list

_metadata

Méta-données issues de la prévision.

Type:

dict

feed(file_paths, metadata)[source]

Transmission des données issues de la prévision

Parameters:
  • file_paths (list) – Chemins des fichiers de prévision émis par AtmoSwing.

  • metadata (dict) – Méta-données issues de la prévision.

run() bool[source]

Exécution du traitement.

Returns:

Vrai (True) en cas de succès, faux (False) autrement.

Return type:

bool

Export BdApBp

class atmoswing_vigicrues.ExportBdApBp(name, options)[source]

Bases: PostAction

Export des prévisions au format Json de la BdApBp.

Parameters:
  • name (str) – Le nom de l’action

  • options (dict) –

    Un dictionnaire contenant les options de l’action. Les champs possibles sont:

    • output_dirstr

      Chemin cible pour l’enregistrement des fichiers.

    • number_analogsint

      Nombre d’analogues maximal à conserver (valeurs les plus élevées). -1 pour toutes les analogues.

    • only_relevant_stationsbool

      Exporter uniquement les stations pour lesquelles la méthode a été calibrée.

    • use_indentationbool

      Ajouter une indentation aux fichiers produits.

type_name

Le nom du type de post-action.

Type:

str

name

Le nom de l’action.

Type:

str

status

Le statut de l’action.

Type:

int

message

Un éventuel message d’erreur de l’action.

Type:

str

output_dir

Chemin cible pour l’enregistrement des fichiers.

Type:

str

number_analogs

Nombre d’analogues maximal à conserver (valeurs les plus élevées). -1 pour toutes les analogues.

Type:

int

only_relevant_stations

Exporter uniquement les stations pour lesquelles la méthode a été calibrée.

Type:

bool

use_indentation

Ajouter une indentation aux fichiers produits.

Type:

bool

run() bool[source]

Exécution de la post-action.

Erreurs possibles:

  • 100 : Absence du fichier netcdf.

  • 110 : Fichier netcdf corrompu.

  • 200 : Erreur lors du traitement fichier netcdf.

Returns:

Vrai (True) en cas de succès, faux (False) autrement.

Return type:

bool

Export PRV

class atmoswing_vigicrues.ExportPrv(name, options)[source]

Bases: PostAction

Export des prévisions au format PRV du logiciel Scores.

Parameters:
  • name (str) – Le nom de l’action

  • options (dict) –

    Un dictionnaire contenant les options de l’action. Les champs possibles sont:

    • output_dirstr

      Chemin cible pour l’enregistrement des fichiers.

    • date_formatstr

      Format pour l’écriture des dates cibles. Défaut: “%d-%m-%Y”

    • frequencieslist

      Les fréquences à extraire. Par défaut : [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 0.95]

    • combine_stations_in_one_filebool

      Combinaison des différentes stations (entités) dans un seul fichier.

type_name

Le nom du type de l’action.

Type:

str

name

Le nom de l’action.

Type:

str

output_dir

Chemin cible pour l’enregistrement des fichiers.

Type:

str

date_format

Format pour l’écriture des dates cibles. Défaut: “%d-%m-%Y”

Type:

str

frequencies

Les fréquences à extraire. Par défaut : [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 0.95]

Type:

list

combine_stations_in_one_file

Combinaison des différentes stations (entités) dans un seul fichier.

Type:

bool

run() bool[source]

Exécution de la post-action.

Returns:

Vrai (True) en cas de succès, faux (False) autrement.

Return type:

bool

Dissemination

Inheritance diagram of Dissemination, TransferSftpOut, TransferFtpOut

Classe de base des disséminations

class atmoswing_vigicrues.Dissemination[source]

Bases: object

Classe de base pour les opérations de diffusion des résultats d’AtmoSwing.

_file_paths

Chemins des fichiers à diffuser.

Type:

list

feed(file_paths)[source]

Transmission des fichiers à diffuser

Parameters:

file_paths (list) – Chemins des fichiers à diffuser.

run(date) bool[source]

Exécution de la diffusion.

Parameters:

date (datetime.datetime) – Date de la prévision.

Returns:

Vrai (True) en cas de succès, faux (False) autrement.

Return type:

bool

Transfert SFTP

class atmoswing_vigicrues.TransferSftpOut(name, options)[source]

Bases: Dissemination

Transfer des résultats par SFTP.

Parameters:
  • name (str) – Le nom de l’action

  • options (dict) –

    Un dictionnaire contenant les options de l’action. Les champs possibles sont:

    • local_dirstr

      Répertoire local contenant les fichiers à exporter.

    • extensionstr

      Extension des fichiers à exporter.

    • hostnamestr

      Adresse du serveur pour la diffusion des résultats.

    • portint

      Port du serveur distant.

    • usernamestr

      Utilisateur ayant un accès au serveur.

    • passwordstr

      Mot de passe de l’utilisateur sur le serveur.

    • proxy_hoststr

      Adresse du proxy, si nécessaire.

    • proxy_portint

      Port du proxy si nécessaire (par défaut: 1080).

    • remote_dirstr

      Chemin sur le serveur distant où enregistrer les fichiers.

type_name

Le nom du type de l’action.

Type:

str

name

Le nom de l’action.

Type:

str

local_dir

Répertoire local contenant les fichiers à exporter.

Type:

str

extension

Extension des fichiers à exporter.

Type:

str

hostname

Adresse du serveur pour la diffusion des résultats.

Type:

str

port

Port du serveur distant.

Type:

int

username

Utilisateur ayant un accès au serveur.

Type:

str

password

Mot de passe de l’utilisateur sur le serveur.

Type:

str

proxy_host

Adresse du proxy, si nécessaire.

Type:

str

proxy_port

Port du proxy si nécessaire (par défaut: 1080).

Type:

int

remote_dir

Chemin sur le serveur distant où enregistrer les fichiers.

Type:

str

run(date) bool[source]

Exécution de la diffusion par SFTP.

Parameters:

date (datetime.datetime) – Date de la prévision.

Returns:

Vrai (True) en cas de succès, faux (False) autrement.

Return type:

bool

Transfert FTP

class atmoswing_vigicrues.TransferFtpOut(name, options)[source]

Bases: Dissemination

Transfer des résultats par FTP.

Parameters:
  • name (str) – Le nom de l’action

  • options (dict) –

    Un dictionnaire contenant les options de l’action. Les champs possibles sont:

    • local_dirstr

      Répertoire local contenant les fichiers à exporter.

    • extensionstr

      Extension des fichiers à exporter.

    • hostnamestr

      Adresse du serveur pour la diffusion des résultats.

    • portint

      Port du serveur distant.

    • usernamestr

      Utilisateur ayant un accès au serveur.

    • passwordstr

      Mot de passe de l’utilisateur sur le serveur.

    • proxy_hoststr

      Adresse du proxy, si nécessaire.

    • proxy_portint

      Port du proxy si nécessaire (par défaut: 1080).

    • remote_dirstr

      Chemin sur le serveur distant où enregistrer les fichiers.

type_name

Le nom du type de l’action.

Type:

str

name

Le nom de l’action.

Type:

str

local_dir

Répertoire local contenant les fichiers à exporter.

Type:

str

extension

Extension des fichiers à exporter.

Type:

str

hostname

Adresse du serveur pour la diffusion des résultats.

Type:

str

port

Port du serveur distant.

Type:

int

username

Utilisateur ayant un accès au serveur.

Type:

str

password

Mot de passe de l’utilisateur sur le serveur.

Type:

str

proxy_host

Adresse du proxy, si nécessaire.

Type:

str

proxy_port

Port du proxy si nécessaire (par défaut: 1080).

Type:

int

remote_dir

Chemin sur le serveur distant où enregistrer les fichiers.

Type:

str

run(date) bool[source]

Exécution de la diffusion par FTP.

Parameters:

date (datetime.datetime) – Date de la prévision.

Returns:

Vrai (True) en cas de succès, faux (False) autrement.

Return type:

bool