Fichier de paramètres

Les fichiers de paramètres sont des éléments essentiels d’AtmoSwing car ils définissent la structure de la méthode des analogues à utiliser. C’est là que l’on définit les jeux de données, les variables prédictives, le nombre de niveaux d’analogie, les fenêtres spatiales, etc. Certains éléments varient entre le Forecaster, l’Optimizer, et le Downscaler, et donc le module cible doit être spécifié dans la balise racine (ex : <atmoswing version="1.0" target="optimizer">).

La structure de base commune est illustrée ci-dessous pour la méthode 2Z-2MI (premier niveau d’analogie sur la hauteur géopotentielle et deuxième sur l’indice d’humidité) et expliquée plus loin.

<?xml version="1.0" encoding="UTF-8"?>
<atmoswing version="1.0" target="optimizer">
  <description>
    <method_id>2Z-2MI</method_id>
    <method_id_display>Classic humidity</method_id_display>
    <specific_tag>CH</specific_tag>
    <specific_tag_display>all stations</specific_tag_display>
    <description>Classic analogy on the atmospheric circulation and the moisture</description>
  </description>
  <time_properties>
    <archive_period>
      <start>01.01.1981</start>
      <end>31.12.2010</end>
    </archive_period>
    <time_step>24</time_step>
    <time_array_target>
      <time_array>simple</time_array>
    </time_array_target>
    <time_array_analogs>
      <time_array>days_interval</time_array>
      <interval_days>60</interval_days>
      <exclude_days>30</exclude_days>
    </time_array_analogs>
  </time_properties>
  <analog_dates>
    <analogs_number>75</analogs_number>
    <predictor>
      <preload>1</preload>
      <dataset_id>ECMWF_ERA_interim</dataset_id>
      <data_id>press/hgt</data_id>
      <level>1000</level>
      <time>12</time>
      <spatial_window>
        <x_min>-2.25</x_min>
        <x_points_nb>22</x_points_nb>
        <x_step>0.75</x_step>
        <y_min>40.5</y_min>
        <y_points_nb>11</y_points_nb>
        <y_step>0.75</y_step>
      </spatial_window>
      <criteria>S1</criteria>
      <weight>0.5</weight>
    </predictor>
    <predictor>
      <preload>1</preload>
      <dataset_id>ECMWF_ERA_interim</dataset_id>
      <data_id>press/hgt</data_id>
      <level>500</level>
      <time>24</time>
      <spatial_window>
        <x_min>-2.25</x_min>
        <x_points_nb>22</x_points_nb>
        <x_step>0.75</x_step>
        <y_min>40.5</y_min>
        <y_points_nb>11</y_points_nb>
        <y_step>0.75</y_step>
      </spatial_window>
      <criteria>S1</criteria>
      <weight>0.5</weight>
    </predictor>
  </analog_dates>
  <analog_dates>
    <analogs_number>25</analogs_number>
    <predictor>
      <preload>1</preload>
      <preprocessing>
        <preprocessing_method>HumidityIndex</preprocessing_method>
        <preprocessing_data>
          <dataset_id>ECMWF_ERA_interim</dataset_id>
          <data_id>press/rh</data_id>
          <level>850</level>
          <time>12</time>
        </preprocessing_data>
        <preprocessing_data>
          <dataset_id>ECMWF_ERA_interim</dataset_id>
          <data_id>surf/tcw</data_id>
          <level>0</level>
          <time>12</time>
        </preprocessing_data>
      </preprocessing>
      <spatial_window>
        <x_min>6</x_min>
        <x_points_nb>1</x_points_nb>
        <x_step>0.75</x_step>
        <y_min>45.75</y_min>
        <y_points_nb>1</y_points_nb>
        <y_step>0.75</y_step>
      </spatial_window>
      <criteria>RMSE</criteria>
      <weight>0.5</weight>
    </predictor>
    <predictor>
      <preload>1</preload>
      <preprocessing>
        <preprocessing_method>HumidityIndex</preprocessing_method>
        <preprocessing_data>
          <dataset_id>ECMWF_ERA_interim</dataset_id>
          <data_id>press/rh</data_id>
          <level>850</level>
          <time>24</time>
        </preprocessing_data>
        <preprocessing_data>
          <dataset_id>ECMWF_ERA_interim</dataset_id>
          <data_id>surf/tcw</data_id>
          <level>0</level>
          <time>24</time>
        </preprocessing_data>
      </preprocessing>
      <spatial_window>
        <x_min>6</x_min>
        <x_points_nb>1</x_points_nb>
        <x_step>0.75</x_step>
        <y_min>45.75</y_min>
        <y_points_nb>1</y_points_nb>
        <y_step>0.75</y_step>
      </spatial_window>
      <criteria>RMSE</criteria>
      <weight>0.5</weight>
    </predictor>
  </analog_dates>
  <analog_values>
    <predictand>
      <station_id>1,2,3,4,5</station_id>
    </predictand>
  </analog_values>
</atmoswing>

Contenu “description”

Le contenu de <description> est principalement pertinent pour le Forecaster, où les résultats sont agrégés par méthodes pour différentes régions.

  • <method_id> : Un identifiant donné à la méthode (ex : 2Z)

  • <method_id_display> : Le nom de la méthode (ex : Classic circulation)

  • <specific_tag> : Une étiquette permettant d’identifier les paramètres spécifiques. Il s’agit généralement du nom de la région pour laquelle la méthode a été calibrée.

  • <specific_tag_display> : Un texte plus descriptif pour le <specific_tag> fourni ci-dessus.

  • <description> : Une description supplémentaire possible.

Exemple :

<description>
  <method_id>2Z-2MI</method_id>
  <method_id_display>Classic humidity</method_id_display>
  <specific_tag>CH</specific_tag>
  <specific_tag_display>all stations</specific_tag_display>
  <description>Classic analogy on the atmospheric circulation and the moisture</description>
</description>

Contenu “time_properties”

Le contenu de <time_properties> définit la période de l’archivage et d’autres propriétés temporelles.

Élément “archive_period”

Le contenu de <archive_period> définit la période de l’archive pour laquelle les situations analogues seront extraites. Deux options sont possibles :

En fournissant les dates exactes :

  • <start> : Début de la période de l’archive (ex : 01.01.1981)

  • <end> : Fin de la période de l’archive (ex : 31.12.2010)

Il est également possible de ne fournir que les années :

  • <start_year> : Début de la période de l’archive (ex : 1962)

  • <end_year> : Fin de la période de l’archive (ex : 2008)

Élément “time_step”

Le <time_step> est le pas de temps en heures du prédictant (ex : 24), et donc de la méthode.

Élément « time_array_target »

Le contenu de <time_array_target> définit les propriétés temporelles de la cible.

  • <time_array> : Type de sélection temporelle.

Le type peut être l’un des suivants :

  • simple : sélection temporelle complète standard

  • DJF : Hiver (déc.-fév.)

  • MAM : Printemps (mars-mai)

  • JJA : Été (juin-août)

  • SON : Automne (sept-nov)

  • predictand_thresholds : Sélection des jours sur la base d’un seuil du prédictant (ex : jours avec plus de x mm de précipitations)

  • Month_to_Month : Sélection flexible d’une période d’un mois à l’autre (ex : April_to_July, January_to_September, September_to_March)

Dans le cas d’une sélection basée sur un seuil du prédictant (predictand_thresholds), les éléments suivants doivent être spécifiés :

  • <predictand_serie_name> : sélection des données brutes (data_raw) ou normalisées (data_normalized)

  • <predictand_min_threshold> : Valeur minimale du seuil

  • <predictand_max_threshold> : Valeur maximale du seuil

Élément “time_array_analogs”

Le contenu de <time_array_analogs> définit les propriétés temporelles de la sélection des analogues. Il est généralement défini comme un intervalle de +-60 jours autour de la date cible (quatre mois centrés autour de la date cible). En calibration, 30 jours autour de la date cible sont exclus pour la même année que la date cible.

  • <time_array> : Type de sélection temporelle.

  • <interval_days> : Nombre de jours à sélectionner autour de la date cible pour chaque année lors de l’utilisation de days_interval. Habituellement : 60

  • <exclude_days> : Nombre de jours à exclure autour de la date cible pour la même année (pour la phase de calibration). Il doit être fourni quel que soit le type de sélection temporelle. En général : 30

Le type peut être l’un des suivants :

  • days_interval : la sélection standard de +-x jours autour de la date cible.

  • simple : sélection temporelle complète

  • DJF : Hiver (déc.-fév.)

  • MAM : Printemps (mars-mai)

  • JJA : Été (juin-août)

  • SON : Automne (sept-nov)

  • Month_to_Month : Sélection flexible d’une période d’un mois à l’autre (ex : April_to_July, January_to_September, September_to_March)

Cependant, lorsque l’on sélectionne une saison ou une période spécifique pour le type de selection temporelle des analogues, la même option doit être sélectionnée pour l’élément “time_array_target”.

Exemple :

<time_properties>
  <archive_period>
    <start>01.01.1981</start>
    <end>31.12.2010</end>
  </archive_period>
  <time_step>24</time_step>
  <time_array_target>
    <time_array>simple</time_array>
  </time_array_target>
  <time_array_analogs>
    <time_array>days_interval</time_array>
    <interval_days>60</interval_days>
    <exclude_days>30</exclude_days>
  </time_array_analogs>
</time_properties>

Autre exemple d’utilisation d’une période spécifique :

<time_array_target>
  <time_array>April_to_September</time_array>
</time_array_target>
<time_array_analogs>
  <time_array>April_to_September</time_array>
  <exclude_days>30</exclude_days>
</time_array_analogs>

Contenu “analog_dates”

Le contenu de <analog_dates> définit l’analogie pour un niveau d’analogie donné. Plusieurs niveaux d’analogie peuvent être définis successivement en ajoutant des blocs <analog_dates> lles uns après les autres. Chaque nouveau niveau (bloc) sera alors sous-échantillonné à partir du niveau précédent.

<analog_dates>
  ...
</analog_dates>
<analog_dates>
  ...
</analog_dates>

Élément “analogs_number”

La balise <analogs_number> définit le nombre d’analogues à sélectionner pour le niveau d’analogie donné.

Élément “predictor”

L’élément <predictor> fournit des informations sur le prédicteur, la fenêtre spatiale et les critères à utiliser. Plusieurs prédicteurs peuvent être utilisés ensemble dans un niveau d’analogie et sont spécifiés en ajoutant des blocs <predictor> les uns après les autres.

Exemple :

<predictor>
  <preload>1</preload>
  <dataset_id>ECMWF_ERA_interim</dataset_id>
  <data_id>press/hgt</data_id>
  <level>1000</level>
  <time>12</time>
  <spatial_window>
    <x_min>-2.25</x_min>
    <x_points_nb>22</x_points_nb>
    <x_step>0.75</x_step>
    <y_min>40.5</y_min>
    <y_points_nb>11</y_points_nb>
    <y_step>0.75</y_step>
  </spatial_window>
  <criteria>S1</criteria>
  <weight>0.5</weight>
</predictor>
<predictor>
  <preload>1</preload>
  <dataset_id>ECMWF_ERA_interim</dataset_id>
  <data_id>press/hgt</data_id>
  <level>500</level>
  <time>24</time>
  <spatial_window>
    <x_min>-2.25</x_min>
    <x_points_nb>22</x_points_nb>
    <x_step>0.75</x_step>
    <y_min>40.5</y_min>
    <y_points_nb>11</y_points_nb>
    <y_step>0.75</y_step>
  </spatial_window>
  <criteria>S1</criteria>
  <weight>0.5</weight>
</predictor>

L’élément <predictor> doit définir :

  • <preload> : Définit si les données doivent être chargées en mémoire ou non (0/1 ; optionnel)

  • <dataset_id> : Définit le jeu de données à utiliser (voir la liste des réanalyses)

  • <data_id> : Définit la variable à utiliser (voir la liste des variables)

  • <level> : Sélection du niveau du prédicteur (ex : 500 pour 500 hPa ou 0 pour la surface)

  • <time> : Sélection de l’instant du prédicteur (ex : 12 pour 12h UTC)

  • <members> : Nombre de membres à sélectionner (facultatif ; uniquement pour les ensembles de données)

  • <criteria> : Critères à utiliser (ex : S1 ; voir la liste des critères)

  • <weight> : Poids à donner au prédicteur lors le la moyenne des différentes valeurs de critères des différents prédicteurs d’un niveau d’analogie (ex : 0.6). Facultatif : s’il n’est pas fourni, le même poids est donné à tous les prédicteurs.

  • <spatial_window> : La fenêtre spatiale sur laquelle la variable prédictive est comparée au moyen du critère. La fenêtre est définie par ses coordonnées X (<x_min>) et Y (<y_min>) minimales, le nombre de points dans la direction des valeurs plus élevées (<x_points_nb> et <y_points_nb>) et la résolution souhaitée (<x_step> et <y_step>).

Lors de l’utilisation d’un prédicteur élaboré, les données doivent passer par une routine de prétraitement. Dans ce cas, la structure est un peu différente et peut ressembler à ceci (plusieurs prédicteurs peuvent également être définis les uns après les autres) :

<predictor>
  <preload>1</preload>
  <preprocessing>
    <preprocessing_method>HumidityIndex</preprocessing_method>
    <preprocessing_data>
      <dataset_id>ECMWF_ERA_interim</dataset_id>
      <data_id>press/rh</data_id>
      <level>850</level>
      <time>24</time>
    </preprocessing_data>
    <preprocessing_data>
      <dataset_id>ECMWF_ERA_interim</dataset_id>
      <data_id>surf/tcw</data_id>
      <level>0</level>
      <time>24</time>
    </preprocessing_data>
  </preprocessing>
  <spatial_window>
    <x_min>6</x_min>
    <x_points_nb>1</x_points_nb>
    <x_step>0.75</x_step>
    <y_min>45.75</y_min>
    <y_points_nb>1</y_points_nb>
    <y_step>0.75</y_step>
  </spatial_window>
  <criteria>RMSE</criteria>
  <weight>0.5</weight>
</predictor>

Dans ce cas, il y a un nouveau bloc <preprocessing> contenant :

  • <preprocessing_method> : La méthode de preprocessing à utiliser.

  • <preprocessing_data> : Les données prédicteurs à prétraiter définies par <dataset_id>, <data_id>, <level>, et <time>.

  • Les autres paramètres <spatial_window>, <criteria> et <weight> sont communs aux prédicteurs prétraités.

Contenu “analog_values”

Élément “predictand”

Spécification de la série temporelle du prédictant cible :

Exemple :

<analog_values>
  <predictand>
    <station_id>1,2,3,4,5</station_id>
  </predictand>
</analog_values>