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.

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 does not permit comments, but you can add “dummy” parameters to add contextual information to your files.

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.

{
    "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

6

The expiration period to use for all bednets 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:

NOT_INITIALIZED

No distribution set.

CONSTANT_DISTRIBUTION

Use the same value for each individual. Set Expiration_Period_Constant.

UNIFORM_DISTRIBUTION

Use a uniform distribution with a given minimum and maximum. Set Expiration_Period_Max and Expiration_Period_Min.

GAUSSIAN_DISTRIBUTION

The distribution is Gaussian (or normal). Set Expiration_Period_Gaussian_Mean and Expiration_Period_Gaussian_Std_Dev.

EXPONENTIAL_DISTRIBUTION

The distribution is exponential with a given mean. Set Expiration_Period_Exponential.

WEIBULL_DISTRIBUTION

Use a Weibull distribution with a given shape and scale. Set Expiration_Period_Kappa and Expiration_Period_Lambda.

LOG_NORMAL_DISTRIBUTION

Use a log-normal distribution with a given mean and width. Set Expiration_Period_Log_Normal_Mean and Expiration_Period_Log_Normal_Width.

POISSON_DISTRIBUTION

Use a Poisson distribution with a given mean. Set Expiration_Period_Poisson_Mean.

DUAL_CONSTANT_DISTRIBUTION

Use a distribution where some individuals are set to a value of zero and the rest to a given value. Set Expiration_Period_Proportion_0 and Peak_2_Value. This distribution does not use the parameters set for CONSTANT_DISTRIBUTION.

DUAL_EXPONENTIAL_DISTRIBUTION

Use two exponential distributions with given means. Set Expiration_Period_Mean_1, Expiration_Period_Mean_2, and Expiration_Period_Proportion_1. This distribution does not use the parameters set for EXPONENTIAL_DISTRIBUTION.

{
    "Duration_Before_Leaving_Distribution": "LOG_NORMAL_DISTRIBUTION",
    "Duration_Before_Leaving_Log_Normal_Mean": 9,
    "Duration_Before_Leaving_Log_Normal_Width": 2
}

Expiration_Period_Exponential

float

0

3.40282E+38

6

The mean of the expiration period 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

6

The mean of the expiration period 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 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 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 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

3.40282E+38

6

The mean of the expiration period 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

3.40282E+38

1

The width of the expiration period 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 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.

{
    "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.

{
    "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

0

The minimum expiration period 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 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

6

The mean of the expiration period 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
}

Intervention_Name

string

NA

NA

NA

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

NA

An optional IndividualProperty key:value pair that will be assigned when the intervention is distributed. 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"
}

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": "CampaignEvent",
      "Start_Day": 1,
      "Nodeset_Config": {
        "class": "NodeSetAll"
      },
      "Event_Coordinator_Config": {
        "class": "StandardInterventionDistributionEventCoordinator",
        "Target_Demographic": "Everyone",
        "Demographic_Coverage": 1.0,
        "Number_Repetitions": 1,
        "Timesteps_Between_Repetitions": 0,
        "Intervention_Config": {
          "class": "UsageDependentBednet",
          "Cost_To_Consumer": 5,
          "Usage_Config_List": [
            {
              "class": "WaningEffectConstant",
              "Initial_Effect": 1.0
            }
          ],
          "Blocking_Config": {
            "class": "WaningEffectConstant",
            "Initial_Effect": 1.0
          },
          "Killing_Config": {
            "class": "WaningEffectConstant",
            "Initial_Effect": 0.5
          },
          "Received_Event": "Bednet_Got_New_One",
          "Using_Event": "Bednet_Using",
          "Discard_Event": "Bednet_Discarded",
          "Expiration_Distribution_Type": "CONSTANT_DISTRIBUTION",
          "Expiration_Period": 50
        }
      }
    }
  ],
  "Use_Defaults": 1
}