
pywws.Process
*************

Génére des sommaires horaires, quotidiens et mensuels à partir des
données brutes de la station météo

   usage: python RunModule.py Process [options] data_dir
   options are:
    -h or --help     display this help
    -v or --verbose  increase number of informative messages
   data_dir is the root directory of the weather data

Ce module prend les données brutes de la station météo (typiquement
échantillonnées tous les cinq ou dix minutes) et génère des sommaires
horaires, quotidiens et mensuels, ce qui est utile pour créer des
tableaux et des graphes.

Avant de calculer les résumés de données, les données brutes sont
"calibrées" en utilisant une fonction programmable par l'utilisateur.
Voir *pywws.calib* pour plus de détails.

Les données horaire sont dérivées de tous les enregistrements lus en
une heure, par exemple 18:00:00-18:59:59, et tien compte de l'indice
du dernier relevé terminée à cette heure.

Les données quotidiennes résument la météo sur une période de 24
heures se terminant généralement à 2100 ou 0900 heures, heure locale
(non heure d'été), bien que minuit est une autre convention populaire.
Il est également indexé par le dernier enregistrement complet de la
période. Le jour et la nuit, tels qu'utilisés dans le calcul des
températures maximales et minimales, sont supposées commencer à 0900
et 2100 heure locale, soit 1000 et 2200 lorsque l'heure d'été est en
vigueur, quel que soit le jour météorologique.

Pour régler le jour météorologique à votre préférence, ou celle
utilisée par votre station météorologique locale officielle, modifier
la ligne  "day end hour" dans votre fichier "weather.ini", puis
exécutez Reprocess.py pour régénérer les résumés.

Les données récapitulatives mensuelles sont calculées à partir des
données sommaires quotidiennes. Si la journée météorologique ne
s'arrête pas à minuit, alors chaque mois peut commencer et se terminer
jusqu'à 12 heures avant ou après minuit.

La moyenne des données de vitesse du vent durant la dernière heure (ou
jour) et la vitesse maximale des rafales pendant l'heure (ou jour) est
enregistrée. La direction prédominante du vent est calculée en
utilisant l'arithmétique vectorielle.

La pluie est convertie à partir des données brutes "totale depuis la
dernière réinitialisation" chiffré à un total plus utile durant la
dernière heure, un jour ou mois.

-[ Fonctions ]-

+------------+--------------------------------------------------------------------------------------------+
| "Process"( | Génére les résumés de données brutes de la station météo.                                  |
+------------+--------------------------------------------------------------------------------------------+
| "calibrate | Calibre les données brutes, en utilisant une fonction fournie par l'utilisateur.           |
+------------+--------------------------------------------------------------------------------------------+
| "generate_ | Génére les résumés horaire à partir des données calibrées.                                 |
+------------+--------------------------------------------------------------------------------------------+
| "generate_ | Génére les résumés quotidiens à partir des données calibrées et horaires.                  |
+------------+--------------------------------------------------------------------------------------------+
| "generate_ | Génère les résumés mensuels à partir des données quotidiennes.                             |
+------------+--------------------------------------------------------------------------------------------+

-[ Classes ]-

+------------+--------------------------------------------------------------------------------------------+
| "Average"( | Calcule la moyenne des multiples valeurs de données.                                       |
+------------+--------------------------------------------------------------------------------------------+
| "Maximum"( | Calcule la valeur maximale ainsi que l'heure et la date des multiples valeurs de données.  |
+------------+--------------------------------------------------------------------------------------------+
| "Minimum"( | Calcule la valeur minimale ainsi que l'heure et la date des multiples valeurs de données.  |
+------------+--------------------------------------------------------------------------------------------+
| "HourAcc"( | 'Accumule' les données météorologiques brutes pour produire le récapitulatif horaire.      |
+------------+--------------------------------------------------------------------------------------------+
| "DayAcc"(d | 'Accumule' les données météorologiques pour produire le résumé quotidien.                  |
+------------+--------------------------------------------------------------------------------------------+
| "MonthAcc" | 'Accumule' les données météorologiques quotidiennes pour produire le sommaire mensuel.     |
+------------+--------------------------------------------------------------------------------------------+

class class pywws.Process.Average

   Calcule la moyenne des multiples valeurs de données.

   add(value)

   result()

class class pywws.Process.Minimum

   Calcule la valeur minimale ainsi que l'heure et la date des
   multiples valeurs de données.

   add(value, time)

   result()

class class pywws.Process.Maximum

   Calcule la valeur maximale ainsi que l'heure et la date des
   multiples valeurs de données.

   add(value, time)

   result()

class class pywws.Process.HourAcc(last_rain)

   'Accumule' les données météorologiques brutes pour produire le
   récapitulatif horaire.

   Calcule la vitesse moyenne du vent et les rafales de vent
   maximales, trouve la direction des vents dominants et calcule les
   précipitations totales.

   reset()

   add_raw(data)

   result()

class class pywws.Process.DayAcc(daytime)

   'Accumule' les données météorologiques pour produire le résumé
   quotidien.

   Calcule la vitesse moyenne du vent, la rafale maximale et les
   températures maximum de jour et minimum de nuit, trouve la
   direction du vent dominant et calcule les précipitations totales.

   Le jour est supposé être entre 0900-2100 et la nuit entre
   2100-0900, heure locale (1000-2200 et 2200-1000 au cours des heures
   d'été), quelle que soit le réglage de "day end hour".

   reset()

   add_raw(data)

   add_hourly(data)

   result()

class class pywws.Process.MonthAcc(rain_day_threshold)

   'Accumule' les données météorologiques quotidiennes pour produire
   le sommaire mensuel.

   Calcule la température maximum le jour et le minimum la nuit.

   reset()

   add_daily(data)

   result()

pywws.Process.calibrate_data(logger, params, raw_data, calib_data)

   Calibre les données brutes, en utilisant une fonction fournie par
   l'utilisateur.

pywws.Process.generate_hourly(logger, calib_data, hourly_data, process_from)

   Génére les résumés horaire à partir des données calibrées.

pywws.Process.generate_daily(logger, day_end_hour, daytime, calib_data, hourly_data, daily_data, process_from)

   Génére les résumés quotidiens à partir des données calibrées et
   horaires.

pywws.Process.generate_monthly(logger, rain_day_threshold, day_end_hour, time_offset, daily_data, monthly_data, process_from)

   Génère les résumés mensuels à partir des données quotidiennes.

pywws.Process.Process(params, raw_data, calib_data, hourly_data, daily_data, monthly_data)

   Génére les résumés de données brutes de la station météo.

   La fin de la journée météorologique (généralement 2100 ou 0900
   heure locale) se trouve dans le fichier de configuration
   "weather.ini". La valeur par défaut est 2100 (2200 au cours de
   l'heure d'été), selon la convention historique pour les lectures de
   la station météo.

pywws.Process.main(argv=None)
