UsageDependentBednet#
The UsageDependentBednet intervention class is similar to SimpleBednet, as it distributes insecticide-treated nets to individuals in the simulation. However, bednet ownership and bednet usage are distinct in this intervention. As in SimpleBednet, net ownership is configured through the demographic coverage, and the blocking and killing rates of mosquitoes are time-dependent. Use of bednets is age-dependent and can vary seasonally. Once a net has been distributed to someone, the net usage is determined by the product of the seasonal and age-dependent usage probabilities until the net-retention counter runs out, and the net is discarded.
While SimpleBednet usage is applied as a daily reduction in efficacy, UsageDependentBednet uses the usage efficacy to determine whether or not the person used the net that day. For example, if we look at bednet usage with 0 repelling but 100% blocking and killing effects and 50% usage, the person with the SimpleBednet will have a net that blocks and kills 50% each day and the person with the UsageDependentBednet will have half of their days with a perfectly blocking and killing net and half of their days with no net at all. Note that when a person migrates, they take their net with them.
At a glance:
Distributed to: Individuals
Serialized: Yes, if this has already been distributed to a person.
Uses insecticides: Yes. It can target sub-groups using genomes, especially if you want to target specific species.
Time-based expiration: Yes, an expiration timer that is independent from the waning effects can be configured.
Purge existing: Yes. If a new intervention is added to to the individual, the existing intervention of the same name is removed when the new one is added. Note that it’s possible to have multiple UsageDependentBednets interventions attached to a person if they have different Intervention_Name values.
Vector killing contributes to: Indoor Die Before/After Feeding
Vector effects: Repelling, blocking, and killing
Vector sexes affected: Females only
Vector life stage affected: Adult
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.
The table below describes all possible parameters with which this class can be configured. The JSON example that follows shows one potential configuration.
Parameter |
Data type |
Minimum |
Maximum |
Default |
Description |
Example |
---|---|---|---|---|---|---|
Blocking_Config |
json object |
NA |
NA |
NA |
Configures the rate of blocking for indoor mosquito feeds on individuals with an ITN. Specify how this effect decays over time using one of the Waning effect classes. |
{
"Blocking_Config": {
"Box_Duration": 3650,
"Initial_Effect": 0,
"class": "WaningEffectBox"
}
}
|
Cost_To_Consumer |
float |
0 |
999999 |
3.75 |
The unit cost per bednet (unamortized) |
{
"Cost_To_Consumer": 4.5
}
|
Discard_Event |
enum |
NA |
NA |
“” |
The event that is broadcast when an individual discards their bed net, either by replacing an existing net or due to the expiration timer. See Event list for possible values, or you can use a custom event (defined in the Custom_Individudual_Events list in the config file). |
{
"Received_Event": "Bednet_Got_New_One",
"Using_Event": "Bednet_Using",
"Discard_Event": "Bednet_Discarded",
"Expiration_Distribution_Type": "FIXED_DURATION",
"Expiration_Period": 50
}
|
Disqualifying_Properties |
array of strings |
NA |
NA |
[] |
A list of IndividualProperty key:value pairs that cause an intervention to be aborted (persistent interventions will stop being distributed to individuals with these values). See NodeProperties and IndividualProperties parameters for more information. Generally used to control the flow of health care access. For example, to prevent the same individual from accessing health care via two different routes at the same time. |
{
"Disqualifying_Properties": [
"InterventionStatus:LostForever"
]
}
|
Dont_Allow_Duplicates |
boolean |
0 |
1 |
0 |
If an individual’s container has an intervention, set to true (1) to prevent them from receiving another copy of the intervention. Supported by all intervention classes. |
{
"Dont_Allow_Duplicates": 0
}
|
Expiration_Period_Constant |
float |
0 |
3.40282E+38 |
-1 |
The expiration period to use for all bednets, in days, when Expiration_Period_Distribution is set to CONSTANT_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "CONSTANT_DISTRIBUTION",
"Expiration_Period_Constant": 8
}
|
Expiration_Period_Distribution |
enum |
NA |
NA |
NOT_INITIALIZED |
The distribution type to use for assigning the expiration period to a usage-dependent bednet. Each assigned value is a random draw from the distribution. Possible values are:
|
{
"Duration_Before_Leaving_Distribution": "LOG_NORMAL_DISTRIBUTION",
"Duration_Before_Leaving_Log_Normal_Mu": 9,
"Duration_Before_Leaving_Log_Normal_Sigma": 2
}
|
Expiration_Period_Exponential |
float |
0 |
3.40282E+38 |
-1 |
The mean of the expiration period, in days, when Expiration_Period_Distribution is set to EXPONENTIAL_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "EXPONENTIAL_DISTRIBUTION",
"Expiration_Period_Exponential": 4.25
}
|
Expiration_Period_Gaussian_Mean |
float |
0 |
3.40282E+38 |
-1 |
The mean of the expiration period, in days, when Expiration_Period_Distribution is set to GAUSSIAN_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "GAUSSIAN_DISTRIBUTION",
"Expiration_Period_Gaussian_Mean": 8,
"Expiration_Period_Gaussian_Std_Dev": 1.5
}
|
Expiration_Period_Gaussian_Std_Dev |
float |
1.17549E-38 |
3.40282E+38 |
-1 |
The standard deviation of the expiration period, in days, when Expiration_Period_Distribution is set to GAUSSIAN_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "GAUSSIAN_DISTRIBUTION",
"Expiration_Period_Gaussian_Mean": 8,
"Expiration_Period_Gaussian_Std_Dev": 1.5
}
|
Expiration_Period_Kappa |
float |
1.17549E-38 |
3.40282E+38 |
-1 |
The shape value for the expiration period, in days, when Expiration_Period_Distribution is set to WEIBULL_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "WEIBULL_DISTRIBUTION",
"Expiration_Period_Kappa": 0.9,
"Expiration_Period_Lambda": 1.5
}
|
Expiration_Period_Lambda |
float |
1.17549E-38 |
3.40282E+38 |
-1 |
The scale value for the expiration period, in days, when Expiration_Period_Distribution is set to WEIBULL_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "WEIBULL_DISTRIBUTION",
"Expiration_Period_Kappa": 0.9,
"Expiration_Period_Lambda": 1.5
}
|
Expiration_Period_Log_Normal_Mu |
float |
-3.40282e+38 |
1.70141e+38 |
3.40282E+38 |
The mean of the expiration period, in days, when Expiration_Period_Distribution is set to LOG_NORMAL_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "LOG_NORMAL_DISTRIBUTION",
"Expiration_Period_Log_Normal_Mu": 9,
"Expiration_Period_Log_Normal_Sigma": 2
}
|
Expiration_Period_Log_Normal_Sigma |
float |
-3.40282e+38 |
1.70141e+38 |
3.40282E+38 |
The width of the expiration period, in days, when Expiration_Period_Distribution is set to LOG_NORMAL_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "LOG_NORMAL_DISTRIBUTION",
"Expiration_Period_Log_Normal_Mu": 9,
"Expiration_Period_Log_Normal_Sigma": 2
}
|
Expiration_Period_Max |
float |
0 |
3.40282E+38 |
-1 |
The maximum expiration period, in days, when Expiration_Period_Distribution is set to UNIFORM_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "UNIFORM_DISTRIBUTION",
"Expiration_Period_Min": 2,
"Expiration_Period_Max": 7
}
|
Expiration_Period_Mean_1 |
float |
1.17549E-38 |
3.40282E+38 |
-1 |
The mean of the first exponential distribution, in days, when Expiration_Period_Distribution is set to DUAL_EXPONENTIAL_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "DUAL_EXPONENTIAL_DISTRIBUTION",
"Expiration_Period_Mean_1": 4,
"Expiration_Period_Mean_2": 12,
"Expiration_Period_Proportion_1": 0.2
}
|
Expiration_Period_Mean_2 |
float |
1.17549E-38 |
3.40282E+38 |
-1 |
The mean of the second exponential distribution, in days, when Expiration_Period_Distribution is set to DUAL_EXPONENTIAL_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "DUAL_EXPONENTIAL_DISTRIBUTION",
"Expiration_Period_Mean_1": 4,
"Expiration_Period_Mean_2": 12,
"Expiration_Period_Proportion_1": 0.2
}
|
Expiration_Period_Min |
float |
0 |
3.40282E+38 |
-1 |
The minimum expiration period, in days, when Expiration_Period_Distribution is set to UNIFORM_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "UNIFORM_DISTRIBUTION",
"Expiration_Period_Min": 2,
"Expiration_Period_Max": 7
}
|
Expiration_Period_Peak_2_Value |
float |
0 |
3.40282E+38 |
-1 |
The expiration period value to assign to the remaining bednets, in days, when Expiration_Period_Distribution is set to DUAL_CONSTANT_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "DUAL_CONSTANT_DISTRIBUTION",
"Expiration_Period_Proportion_0": 0.25,
"Expiration_Period_Peak_2_Value": 5
}
|
Expiration_Period_Poisson_Mean |
float |
0 |
3.40282E+38 |
-1 |
The mean of the expiration period, in days, when Expiration_Period is set to POISSON_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "POISSON_DISTRIBUTION",
"Expiration_Period_Poisson_Mean": 5
}
|
Expiration_Period_Proportion_0 |
float |
0 |
1 |
-1 |
The proportion of bednets to assign a value of zero days until expiration when Expiration_Period_Distribution is set to DUAL_CONSTANT_DISTRIBUTION. |
{
"Expiration_Period_Distribution": "DUAL_CONSTANT_DISTRIBUTION",
"Expiration_Period_Proportion_0": 0.25,
"Expiration_Period_Peak_2_Value": 5
}
|
Expiration_Period_Proportion_1 |
float |
0 |
1 |
-1 |
The proportion of bednets in the first exponential distribution. |
{
"Expiration_Period_Distribution": "DUAL_EXPONENTIAL_DISTRIBUTION",
"Expiration_Period_Mean_1": 4,
"Expiration_Period_Mean_2": 12,
"Expiration_Period_Proportion_1": 0.2
}
|
Insecticide_Name |
string |
NA |
NA |
UNINITIALIZED STRING |
The name of the insecticide defined in <config.Insecticides> for this intervention. If insecticides are being used, this must be defined as one of those values; if they are not being used this can be empty. It cannot have a value if you did not configure <config.Insecticides>. |
{
"Insecticide_Name": "carbamate"
}
|
Intervention_Name |
string |
NA |
NA |
UsageDependentBednet |
The optional name used to refer to this intervention as a means to differentiate it from others that use the same class. |
{
"Intervention_Config": {
"class": "UsageDependentBednet",
"Intervention_Name": "IRS bednet that wears over time"
}
}
|
Killing_Config |
json object |
NA |
NA |
NA |
The configuration of the rate at which mosquitoes die, conditional on a successfully blocked feed. Specify how this effect decays over time using one of the Waning effect classes. |
{
"Killing_Config": {
"Box_Duration": 3650,
"Initial_Effect": 0.53429,
"class": "WaningEffectBox"
}
}
|
New_Property_Value |
string |
NA |
NA |
“” |
An optional IndividualProperty key:value pair that will be assigned when the intervention is applied. See NodeProperties and IndividualProperties parameters for more information. Generally used to indicate the broad category of health care cascade to which an intervention belongs to prevent individuals from accessing care through multiple pathways. For example, if an individual must already be taking a particular medication to be prescribed a new one. |
{
"New_Property_Value": "InterventionStatus:None"
}
|
Received_Event |
enum |
NA |
NA |
“” |
This parameter broadcasts when a new net is received, either the first net or a replacement net. See Event list for possible values. |
{
"Received_Event": "Bednet_Got_New_One",
"Using_Event": "Bednet_Using",
"Discard_Event": "Bednet_Discarded"
}
|
Repelling_Config |
json object |
NA |
NA |
NA |
Defines a waning effect that determines the probability that a vector is repelled due to the intervention. Specify how this effect decays over time using one of the Waning effect classes. |
{
"Repelling_Config": {
"Box_Duration": 3650,
"Initial_Effect": 0,
"class": "WaningEffectBox"
}
}
|
Usage_Config_List |
array of json objects |
NA |
NA |
NA |
The list of WaningEffects whose effects are multiplied together to get the usage effect. Specify how this effect decays over time using one of the Waning effect classes. |
{
"Usage_Config_List": [
{
"class": "WaningEffectConstant",
"Initial_Effect": 1.0
}
]
}
|
Using_Event |
enum |
NA |
NA |
NA |
This parameter broadcasts each time step in which a bed net is used. See Event list for possible values. |
{
"Received_Event": "Bednet_Got_New_One",
"Using_Event": "Bednet_Using",
"Discard_Event": "Bednet_Discarded"
}
|
{
"Events": [{
"class": "UsageDependentBednet",
"Cost_To_Consumer": 5,
"Repelling_Config": {
"class": "WaningEffectConstant",
"Initial_Effect": 0.0
},
"Blocking_Config": {
"Initial_Effect": 1.0,
"class": "WaningEffectConstant"
},
"Killing_Config": {
"Initial_Effect": 0.5,
"class": "WaningEffectConstant"
},
"Usage_Config_List": [{
"Durability_Map": {
"Times": [0.0, 12.99, 13.0, 125.0],
"Values": [0.0, 0.00, 1.0, 1.0]
},
"Initial_Effect": 1.0,
"class": "WaningEffectMapLinearAge"
},
{
"Durability_Map": {
"Times": [0.0, 20.0, 21.0, 30.0, 31.0, 365.0],
"Values": [1.0, 1.0, 0.0, 0.0, 1.0, 1.0]
},
"Initial_Effect": 1.0,
"class": "WaningEffectMapLinearSeasonal"
}
],
"Received_Event": "Bednet_Got_New_One",
"Using_Event": "Bednet_Using",
"Discard_Event": "Bednet_Discarded",
"Expiration_Period_Distribution": "DUAL_EXPONENTIAL_DISTRIBUTION",
"Expiration_Period_Mean_1": 60,
"Expiration_Period_Mean_2": 50,
"Expiration_Period_Proportion_1": 1.0
}
],
"Use_Defaults": 1
}