import tempfile
from pathlib import Path
from emodpy_malaria.weather import generate_weather
# ---| Demande de fichiers météo |---
# Demande de séries temporelles météorologiques, pour les nœuds listés dans un fichier .csv ('exemple_site.csv' ici)
= generate_weather(platform="Calculon",
wr ="./inputs/exemple_site.csv",
site_file=2019001, #YYYYddd
start_date=2019365, #YYYYddd
end_date="nodes",
node_column="./inputs/example_weather/",
local_dir="Gridded world grump2.5arcmin",
id_reference=True)
forceprint("\n".join(wr.files))
Obtenir le climat
Demander des fichiers météorologiques à l’API climat
Créer des fichiers climatiques
Une fois que nous avons généré un fichier démographique décrivant les nœuds d’une simulation, nous pouvons demander et télécharger des fichiers météorologiques à l’aide de l’API idmtools pour COMPS SSMT. La façon la plus simple de procéder est de fournir à votre script un fichier csv contenant les éléments de base de la demande de site, y compris le nom du site, la latitude, la longitude et l’ID du nœud, comme dans le fichier “example_site.csv” ici :
name | lat | lon | nodes |
---|---|---|---|
exemple_site | 1.00 | 1.00 | 1 |
Ce csv est passé comme site_file
à la fonction generate_weather()
de emodpy-malaria
avec node_column
qui fournit le nom de notre colonne d’ID de noeud dans le csv et local_dir
qui spécifie le répertoire de sortie. A partir de là, nous pouvons aussi spécifier des choses comme : - platform
: où l’élément de travail de la demande sera exécuté (Calculon s’il est associé à IDM) - start_date
et end_date
: identifient la période de temps pour laquelle nous sommes intéressés par la demande de données météorologiques. - id_reference
: spécifie l’attribut IDReference pour les métadonnées météorologiques - force
: drapeau assurant qu’une nouvelle requête est soumise même si les fichiers existent dans le local_dir
Après avoir effectué ces étapes, des fichiers climatiques pour la température de l’air, les précipitations et l’humidité relative devraient se trouver dans votre dossier d’entrées. Pour les référencer lors de l’exécution d’une simulation, mettez à jour les paramètres de configuration afin de refléter le nom et l’emplacement de vos fichiers climatiques :
def set_param_fn(config):
import emodpy_malaria.malaria_config as conf
= conf.set_team_defaults(config, manifest)
config
#Add climate files
= os.path.join('climate','example_air_temperature_daily.bin')
config.parameters.Air_Temperature_Filename = os.path.join('climate','example_air_temperature_daily.bin')
config.parameters.Land_Temperature_Filename = os.path.join('climate','example_rainfall_daily.bin')
config.parameters.Rainfall_Filename = os.path.join('climate', 'example_relative_humidity_daily.bin')
config.parameters.Relative_Humidity_Filename return config
D’autres instructions de démarrage sont disponibles dans le dépôt emodpy-malaria, y compris des informations sur la conversion des fichiers météorologiques en fichiers csv pour modification (comme l’augmentation de la température), puis à nouveau en fichiers météorologiques.