Campaign parameters

The parameters described in this reference section can be added to the JavaScript Object Notation (JSON) formatted campaign file to determine the interventions that are used to control the spread of disease and where, when, how, and to whom the interventions are distributed. Additionally, the campaign file specifies the details of the outbreak of the disease itself.

In the configuration file, you must set the Enable_Interventions parameter to 1 and set the Campaign_Filename parameter to the name of the campaign file for the interventions to take place. The campaign file must be in the same directory as the configuration file.

The campaign file is hierarchically organized into logical groups of parameters that can have arbitrary levels of nesting. It contains an Events array of campaign events, each of which contains a JSON object describing the event coordinator, which in turn contains a nested JSON object describing the intervention. At the same level as the Events array is the boolean Use_Defaults to indicate whether or not to use the default values for required parameters that are not included in the file. It is common to include JSON keys for campaign name, event name, or intervention name; these are informational only and not used by EMOD. For more information on how to set up the elements in a campaign file, see Create a campaign file.

The skeletal JSON example below illustrates the basic file structure (this does not include all required parameters for each object). Note that the nested JSON elements have been organized to best illustrate their hierarchy, but that many files in the Regression directory of the EMOD GitHub repository list the parameters and nested objects differently.

{
    "Campaign_Name": "Campaign example",
    "Use_Defaults": 1,
    "Events": [{
        "Event_Name": "The first event",
        "class": "CampaignEvent",
        "Event_Coordinator_Config": {
            "class": "StandardInterventionDistributionEventCoordinator",
            "Intervention_Config": {
                "Intervention_Name": "The vaccine",
                "class": "SimpleVaccine"
            }
        }
    }, {
        "Event_Name": "The second event",
        "class": "CampaignEvent",
        "Event_Coordinator_Config": {
            "class": "StandardInterventionDistributionEventCoordinator",
            "Intervention_Config": {
                "Intervention_Name": "The disease outbreak",
                "class": "OutbreakIndividual"
            }
        }
    }]
}

Warning

The event containing the outbreak “intervention” must be the last one listed in the campaign file or none of the disease control interventions will take place.

The topics below contain only parameters available when using the malaria simulation type.

Note

Parameters are case-sensitive. For Boolean parameters, set to 1 for true or 0 for false. JSON does not permit comments, but you can add “dummy” parameters to add contextual information to your files.