Population dynamics#
The following parameters determine characteristics related to population dynamics, such as age distribution, births, deaths, and gender. The values set here generally interact closely with values in the demographics file.
Note
Parameters are case-sensitive. For Boolean parameters, set to 1 for true or 0 for false. Minimum, maximum, or default values of “NA” indicate that those values are not applicable for that parameter.
EMOD does not use true defaults; that is, if the dependency relationships indicate that a parameter is required, you must supply a value for it. However, many of the tools used to work with EMOD will use the default values provided below.
JSON format does not permit comments, but you can add “dummy” parameters to add contextual information to your files. Any keys that are not EMOD parameter names will be ignored by the model.
Parameter |
Data type |
Minimum |
Maximum |
Default |
Description |
Example |
---|---|---|---|---|---|---|
Age_Initialization_Distribution_Type |
enum |
NA |
NA |
DISTRIBUTION_OFF |
The method for initializing the age distribution in the simulated population. Possible values are:
|
{
"Age_Initialization_Distribution_Type": "DISTRIBUTION_SIMPLE"
}
|
Birth_Rate_Boxcar_Forcing_Amplitude |
float |
0 |
3.40E+38 |
0 |
Fractional increase in birth rate during high birth season when Birth_Rate_Time_Dependence is set to ANNUAL_BOXCAR_FUNCTION. |
{
"Enable_Vital_Dynamics": 1,
"Enable_Birth": 1,
"Birth_Rate_Time_Dependence": "ANNUAL_BOXCAR_FUNCTION",
"Birth_Rate_Boxcar_Forcing_Amplitude": 0.1
}
|
Birth_Rate_Boxcar_Forcing_End_Time |
float |
0 |
365 |
0 |
Day of the year when the high birth rate season ends when Birth_Rate_Time_Dependence is set to ANNUAL_BOXCAR_FUNCTION. |
{
"Enable_Vital_Dynamics": 1,
"Enable_Birth": 1,
"Birth_Rate_Time_Dependence": "ANNUAL_BOXCAR_FUNCTION",
"Birth_Rate_Boxcar_Forcing_End_Time": 220
}
|
Birth_Rate_Boxcar_Forcing_Start_Time |
float |
0 |
365 |
0 |
Day of the year when the high birth rate season begins when Birth_Rate_Time_Dependence is set to ANNUAL_BOXCAR_FUNCTION. |
{
"Enable_Vital_Dynamics": 1,
"Enable_Birth": 1,
"Birth_Rate_Time_Dependence": "ANNUAL_BOXCAR_FUNCTION",
"Birth_Rate_Boxcar_Forcing_Start_Time": 130
}
|
Birth_Rate_Dependence |
enum |
NA |
NA |
FIXED_BIRTH_RATE |
The method used to modify the value set in BirthRate in the demographics file (see NodeAttributes parameters). Possible values are:
|
{
"Enable_Vital_Dynamics": 1,
"Enable_Birth": 1,
"Birth_Rate_Dependence": "POPULATION_DEP_RATE"
}
|
Birth_Rate_Sinusoidal_Forcing_Amplitude |
float |
0 |
1 |
0 |
The amplitude of sinusoidal variations in birth rate when Birth_Rate_Time_Dependence is set to SINUSOIDAL_FUNCTION_OF_TIME. |
{
"Enable_Vital_Dynamics": 1,
"Enable_Birth": 1,
"Birth_Rate_Time_Dependence": "SINUSOIDAL_FUNCTION_OF_TIME",
"Birth_Rate_Sinusoidal_Forcing_Amplitude": 0.1
}
|
Birth_Rate_Sinusoidal_Forcing_Phase |
float |
0 |
365 |
0 |
The phase of sinusoidal variations in birth rate. Birth_Rate_Time_Dependence must be set to SINUSOIDAL_FUNCTION_OF_TIME. |
{
"Birth_Rate_Sinusoidal_Forcing_Phase": 20
}
|
Birth_Rate_Time_Dependence |
enum |
NA |
NA |
NONE |
A scale factor for BirthRate that allows it to be altered by time or season. Enable_Birth must be set to true (1). Possible values are:
|
{
"Enable_Vital_Dynamics": 1,
"Enable_Birth": 1,
"Birth_Rate_Time_Dependence": "ANNUAL_BOXCAR_FUNCTION"
}
|
Death_Rate_Dependence |
enum |
NA |
NA |
NOT_INITIALIZED |
Determines how likely individuals are to die from natural, non-disease causes. Enable_Natural_Mortality must be set to 1. Possible values are:
Properties, rates, and bin sizes can be set for non-disease mortality for each gender in the demographics file (see Complex distributions parameters). |
{
"Death_Rate_Dependence": "NONDISEASE_MORTALITY_BY_AGE_AND_GENDER"
}
|
Default_Geography_Initial_Node_Population |
integer |
0 |
1000000 |
1000 |
When using the built-in demographics for default geography, the initial number of individuals in each node. Note that the built-in demographics feature does not represent a real geographical location and is mostly used for testing. Enable_Demographics_Builtin must be set to true (1). |
{
"Enable_Demographics_Builtin": 1,
"Default_Geography_Initial_Node_Population": 1000,
"Default_Geography_Torus_Size": 3
}
|
Demographics_Filenames |
array of strings |
NA |
NA |
[] |
An array of the paths to demographics files containing information on the identity and demographics of the region to simulate. The files must be in .json format. Note that this parameter is only required when Enable_Demographics_Builtin is set to 0. |
{
"Demographics_Filenames": [
"Namawala_single_node_demographics.json",
"Namawala_demographics_overlay.json"
]
}
|
Enable_Aging |
boolean |
0 |
1 |
1 |
Controls whether or not individuals in a population age during the simulation. Enable_Vital_Dynamics must be set to true (1). |
{
"Enable_Vital_Dynamics": 1,
"Enable_Aging": 1
}
|
Enable_Birth |
boolean |
0 |
1 |
1 |
Controls whether or not individuals will be added to the simulation by birth. Enable_Vital_Dynamics must be set to true (1). If you want new individuals to have the same intervention coverage as existing individuals, you must add a BirthTriggeredIV to the campaign file. |
{
"Enable_Vital_Dynamics": 1,
"Enable_Birth": 1
}
|
Enable_Demographics_Birth |
boolean |
0 |
1 |
0 |
Controls whether or not newborns have disease risk drawn from a distribution; uniform disease risk if false. Enable_Birth, Enable_Demographics_Risk, and Enable_Vital_Dynamics must be set to true (1). |
{
"Enable_Birth": 1,
"Enable_Demographics_Birth": 1,
"Enable_Vital_Dynamics": 1
}
|
Enable_Demographics_Builtin |
boolean |
0 |
1 |
0 |
Controls whether or not built-in demographics for default geography will be used. Note that the built-in demographics feature does not represent a real geographical location and is mostly used for testing. Set to true (1) to define the initial population and number of nodes using Default_Geography_Initial_Node_Population and Default_Geography_Torus_Size. Set to false (0) to use demographics input files defined in Demographics_Filenames. |
{
"Enable_Demographics_Builtin": 1,
"Default_Geography_Initial_Node_Population": 1000,
"Default_Geography_Torus_Size": 3
}
|
Enable_Demographics_Gender |
boolean |
0 |
1 |
1 |
Controls whether or not gender ratios are drawn from a Gaussian distribution or a 50/50 draw. When set to 1 (true), the ratio of males to females is drawn from a Gaussian distribution with a mean of 0.5 and a standard deviation of 0.01. When set to 0 (false), the gender ratio is based on a 50/50 draw. |
{
"Enable_Demographics_Gender": 1
}
|
Enable_Demographics_Other |
boolean |
0 |
1 |
0 |
Controls whether or not other demographic factors are included in the simulation, such as the fraction of individuals above poverty, urban/rural characteristics, heterogeneous initial immunity, or risk. These factors are set in the demographics file. |
{
"Enable_Demographics_Other": 1
}
|
Enable_Vital_Dynamics |
boolean |
0 |
1 |
1 |
Controls whether or not births and deaths occur in the simulation. Births and deaths must be individually enabled and set. |
{
"Enable_Vital_Dynamics": 1,
"Enable_Birth": 1,
"Death_Rate_Dependence": "NOT_INITIALIZED",
"Base_Mortality": 0.002
}
|
Minimum_Adult_Age_Years |
float |
0 |
3.40E+38 |
15 |
The age, in years, after which an individual is considered an adult. Individual_Sampling_Type must be set to ADAPTED_SAMPLING_BY_AGE_GROUP. |
{
"Minimum_Adult_Age_Years": 17
}
|
Population_Density_Infectivity_Correction |
enum |
NA |
NA |
CONSTANT_INFECTIVITY |
Correction to alter infectivity by population density set in the Population_Density_C50 parameter. Measured in people per square kilometer. Possible values are:
Note Sparsely populated areas have a lower infectivity, while densely populated areas have a higher infectivity, which rises to saturate at the Base_Infectivity value. |
{
"Population_Density_Infectivity_Correction": "SATURATING_FUNCTION_OF_DENSITY"
}
|
Population_Scale_Type |
enum |
NA |
NA |
USE_INPUT_FILE |
The method to use for scaling the initial population specified in the demographics input file. Possible values are:
|
{
"Population_Scale_Type": "FIXED_SCALING"
}
|
Report_HIV_ByAgeAndGender_Add_Transmitters |
boolean |
0 |
1 |
0 |
When set to 1, the Transmitters column is included in the output report. For a given row, this value indicates how many individuals that have transmitted the disease meet the specifications of that row. |
{
"Report_HIV_ByAgeAndGender_Add_Transmitters": 1
}
|
Report_HIV_ByAgeAndGender_Collect_Age_Bins_Data |
array of floats |
-3.40282e+38 |
3.40282e+38 |
[] |
A list of bins used to stratify the report by age. Each value defines the minimum value (inclusive) of that bin, while the next value defines the maximum value (exclusive) of the bin. The values cannot be equal and must be listed in ascending order. Leave the array empty to not stratify the report by age. The maximum number of age bins is 100. |
{
"Report_HIV_ByAgeAndGender_Collect_Age_Bins_Data": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
39,
40,
41,
42,
43,
44,
45,
46,
47,
48,
49,
50,
51,
52,
53,
54,
55,
56,
57,
58,
59,
60,
61,
62,
63,
64,
65,
66,
67,
68,
69,
70,
71,
72,
73,
74,
75,
76,
77,
78,
79,
80,
81,
82,
83,
84,
85,
86,
87,
88,
89,
90,
91,
92,
93,
94,
95,
96,
97,
98,
99
]
}
|
Report_HIV_ByAgeAndGender_Collect_Gender_Data |
boolean |
0 |
1 |
0 |
When set to 1, the output report will be stratified by gender. |
{
"Report_HIV_ByAgeAndGender_Collect_Gender_Data": 1
}
|
x_Base_Population |
float |
0 |
3.40E+38 |
1 |
Scale factor for InitialPopulation in the demographics file (see NodeAttributes parameters). If Population_Scale_Type is set to FIXED_SCALING, the initial simulation population is uniformly scaled over the entire area to adjust for historical or future population density. |
{
"x_Base_Population": 0.0001
}
|
x_Birth |
float |
0 |
3.40E+38 |
1 |
Scale factor for birth rate, as provided by the demographics file (see NodeAttributes parameters). Enable_Birth must be set to 1. |
{
"x_Birth": 1
}
|