MultiInsecticideUsageDependentBednet#

The MultiInsecticideUsageDependentBednet intervention class is an individual-level intervention that is similar to the UsageDependentBednet class but allows the addition of multiple insecticides.

The effectiveness of the intervention is combined using the following equation:

Total efficacy = 1.0 – (1.0 – efficacy_1) * (1.0 – efficacy_2) * … * (1.0 – efficacy_n)

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

Object in the Insecticides array, 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 bednet, 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_Individual_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:

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). Values are resampled to ensure >= 0. 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_Mu and Expiration_Period_Log_Normal_Sigma.

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_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

Object in the Insecticides array, the name of the insecticide defined in 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"
}

Insecticides

array of json objects

None

None

[]

An array of objects defining the blocking and killing efficacy of each insecticide.

{
  "Insecticides": [
    {
      "Insecticide_Name": "pyrethroid",
      "Killing_Config": {
        "Box_Duration": 300,
        "Initial_Effect": 1,
        "class": "WaningEffectBox"
      },
      "Repelling_Config": {
        "Box_Duration": 300,
        "Initial_Effect": 0.25,
        "class": "WaningEffectBox"
      },
      "Blocking_Config": {
        "Box_Duration": 300,
        "Decay_Time_Constant": 700,
        "Initial_Effect": 0.7,
        "class": "WaningEffectBoxExponential"
      }
    },
    {
      "Insecticide_Name": "carbamate",
      "Killing_Config": {
        "Box_Duration": 300,
        "Initial_Effect": 1,
        "class": "WaningEffectBox"
      },
      "Repelling_Config": {
        "Box_Duration": 300,
        "Initial_Effect": 0.25,
        "class": "WaningEffectBox"
      },
      "Blocking_Config": {
        "Box_Duration": 300,
        "Decay_Time_Constant": 700,
        "Initial_Effect": 0.7,
        "class": "WaningEffectBoxExponential"
      }
    }
  ]
}

Intervention_Name

string

NA

NA

MultiInsecticideUsageDependentBednet

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": "MultiInsecticideUsageDependentBednetUsageDependentBednet",
    "Intervention_Name": "IRS bednet that wears over time"
  }
}

Killing_Config

json object

NA

NA

NA

Object in the Insecticides array, 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"
  }
}

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, 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"
}

Repelling_Config

json object

NA

NA

NA

Object in the Insecticides array, 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

“”

This parameter broadcasts each time step in which a bednet is used. 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"
}
{
    "Events": [{
            "class": "MultiInsecticideUsageDependentBednet",
            "Cost_To_Consumer": 5,
            "Insecticides": [{
                    "Insecticide_Name": "pyrethroid",
                    "Repelling_Config": {
                        "Box_Duration": 300,
                        "Initial_Effect": 0.25,
                        "class": "WaningEffectBox"
                    },
                    "Killing_Config": {
                        "Box_Duration": 300,
                        "Initial_Effect": 1.0,
                        "class": "WaningEffectBox"
                    }
                },
                {
                    "Insecticide_Name": "carbamate",
                    "Repelling_Config": {
                        "Box_Duration": 300,
                        "Initial_Effect": 0.25,
                        "class": "WaningEffectBox"
                    },
                    "Killing_Config": {
                        "Box_Duration": 300,
                        "Initial_Effect": 1.0,
                        "class": "WaningEffectBox"
                    }
                }
            ],
            "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
}