import emodpy_malaria.demographics.MalariaDemographics as Demographics
import emod_api.demographics.PreDefinedDistributions as Distributions
def build_demog():
"""
Cette fonction construit un fichier d'entrée démographique pour le DTK en utilisant emod_api.
"""
= Demographics.from_template_node(lat=1.00, lon=1.00, pop=1000, name="Example_Site_Name", forced_id=1, init_prev=0.1)
demog
# Ajouter des taux de natalité et de mortalité égaux
demog.SetEquilibriumVitalDynamics()
# Appeler et ajouter la distribution des âges
= Distributions.AgeDistribution_SSAfrica
age_distribution
demog.SetAgeDistribution(age_distribution)
return demog
Création de fichiers démographiques
Créer un fichier démographique
Le fichier démographique est un fichier d’entrée obligatoire pour EMOD qui spécifie les caractéristiques de la population dans une simulation. Il comprend des aspects tels que la taille de la population, les taux de natalité, les taux de mortalité non palustre, la structure d’âge, la prévalence initiale, etc. Une documentation complète sur le fichier démographique et ses paramètres/structure est disponible dans la documentation du modèle de paludisme.
Parties d’un fichier démographique
Un fichier démographique est un fichier JSON organisé en 4 sections principales :
- Métadonnées
- Propriétés des nœuds
- Défauts
- Paramètres appliqués à tous les nœuds de la simulation
- Nœuds : chaque nœud est un lieu simulé. La transmission au sein d’un nœud est bien mélangée et les nœuds sont reliés par la migration humaine et/ou vectorielle.
- Autorise les paramètres spécifiques aux nœuds
- Les paramètres spécifiés remplacent les valeurs par défaut.
# Structure du fichier démographique pour une simulation à 1 nœud
{"Metadata": {
"DateCreated": "dateTime",
"Tool": "scriptUsedToGenerate",
"Author": "author",
"IdReference": "Gridded world grump2.5arcmin",
"NodeCount": "1"
},"NodeProperties": [
{...}
],"Defaults": {
"NodeAttributes": {
..."BirthRateSource": "World Bank",
"CountryBirthRate": 31.047,
"World Bank Year": "2016",
...
},"IndividualAttributes": {...},
"IndividualProperties": {...}
},"Nodes": [{
"NodeID": 1,
"NodeAttributes": {
"BirthRate": 0.1190,
"InitialPopulation": 1400,
"Village": "Obom"
},"IndividualAttributes": {...},
"IndividualProperties": {...}
}] }
Simulations à un seul nœud
Le paquet emod-api contient la plupart des fonctionnalités principales pour créer un fichier démographique. Il est pris en charge par emodpy-malaria
pour ajouter des paramètres plus spécifiques au flux de travail de la malaria, importé comme Demographics
dans le morceau de code ci-dessous. Pour les simulations non spatiales à nœud unique, la commande from_template_node
est le plus souvent utilisée ; cependant, vous pouvez également choisir de lire des fichiers json pré-fabriqués pour ces types de simulations. Nous incluons cette commande dans notre générateur de données démographiques avec ses paramètres de base : - latitude - longitude - taille de la population - nom du site - ID du nœud forcé (si désiré) - valeur initiale de la prévalence (si désiré)
Avec ceci sauvegardé en tant qu’élément demog
, nous pouvons ajouter de la complexité supplémentaire si nécessaire. Cela peut inclure des choses comme l’établissement d’une dynamique vitale d’équilibre pour que les taux de natalité et de mortalité soient égaux, la production d’une taille de population relativement stable, ou une distribution d’âge pour notre population. Dans cet exemple, nous extrayons la distribution des âges de toute l’Afrique sub-saharienne à partir de emod-api
et nous l’appliquons ensuite à notre élément démographique. Vous pouvez également ajouter de la complexité par le biais de propriétés individuelles et d’autres paramètres spécifiques si vous le souhaitez.