MalariaSurveyJSONAnalyzer

The malaria survey report (MalariaSurveyJSONAnalyzer.json) is a JSON-formatted report that provides detailed information on an individual for each event that occurs during the reporting interval. Multiple files can be created for each reporting interval.

Configuration

To generate this report, the following parameters must be configured in the custom_reports.json file:

Parameter Data Type Min Max Default Description
Filename_Suffix string NA NA (empty string) Augments the filename of the report. If multiple reports are being generated, this allows you to distinguish among the multiple reports.
Start_Day float 0 3.40282e+38 0 The day of the simulation to start collecting data.
End_Day float 0 3.40282e+38 3.40282e+38 The day of the simulation to stop collecting data. Empty list implies all nodes.
Node_IDs_Of_Interest array of integers 0 2.14748e+09 [] Data will be collected for the nodes in this list.
Min_Age_Years float 0 9.3228e+35 0 Minimum age in years of people to collect data on.
Max_Age_Years float 0 9.3228e+35 9.3228e+35 Maximum age in years of people to collect data on.
Must_Have_IP_Key_Value string NA NA (empty string) A Key:Value pair that the individual must have in order to be included. Empty string means to not include IPs in the selection criteria.
Must_Have_Intervention string NA NA (empty string) The name of the intervention that the person must have in order to be included. Empty string means to not include interventions in the selection criteria.
Event_Trigger_List list of strings NA NA NA The list of event triggers for the events included in the report.
Reporting_Interval integer 1 1000000 1000000 Defines the cadence of the report by specifying how many time steps to collect data before writing to the file. This will limit system memory usage and is advised when large output files are expected.
Max_Number_Reports integer 0 1000000 1 The maximum number of report output files that will be produced for a given campaign.
Pretty_Format boolean 0 1 0 True (1) sets pretty JSON formatting. The default, false (0), saves space.
IP_Key_To_Collect string NA NA (empty string) The name of the IndividualProperty Key whose value to collect; an empty string means collect values for all IPs.
{
    "Reports": [
        {
            "class": "MalariaSurveyJSONAnalyzer",
            "Filename_Suffix": "Node1",
            "Start_Day": 365,
            "End_Day": 465,
            "Node_IDs_Of_Interest": [ 1 ],
            "Min_Age_Years": 5,
            "Max_Age_Years": 10,
            "Must_Have_IP_Key_Value": "Accessibility:YES",
            "Must_Have_Intervention": "UsageDependentBednet"
            "Event_Trigger_List": [
                "EveryUpdate"
            ],
            "Reporting_Interval": 10,
            "Max_Number_Reports": 1,
            "Pretty_Format": 1,
            "IP_Key_To_Collect": "Risk"
        }
    ],
    "Use_Defaults": 1
}

Output file data

The report contains the following information:

Parameter Data type Description
ntsteps integer The number of days of the simulation for which data was collected. It equals the reporting interval unless the simulation ended before the reporting interval.
patient_array array of strings An array where there is an entry for each individual that experiences the specified event(s) during the reporting interval. If no events are listed, an exception is thrown. The data in a patient array contain two types of data: data that has one value for each timestep or day and data that is an array of data.

Patient_array channels

Parameter Data type Description
id string The individual ID of the person.
node_id string The External ID of the node that the person is currently in on the first event.
initial_age float The initial age of the person (in days) when the report started tracking them. This value will be non-zero for individuals created at initialization, but should be zero for the rest of the population.
local_birthday float The day that the individual was born/created, in relation to the start of the report.

Each of the following statistics is presented as an array, where each entry is the value of that field at the time of the event.

Parameter Description
strain_ids The antigen/clade ID and the genome ID of the individual’s current infection.
ip_data If an IP_Key_To_Collec’ was specified, this will be that value. If it was not specified, this will show the value for all of the IPs.
true_asexual_parasites The actual parasite density of the individual.
true_gametocytes The actual gametocyte density of the individual.
smeared_true_asexual_parasites The actual parasite density, smeared using NASBADensityWithUncertainty.
smeared_true_gametocytes The actual gametocyte density, smeared using NASBADensityWithUncertainty.
asexual_parasites The parasite density measured using the BLOOD_SMEAR_PARASITES diagnostic.
gametocytes The gametocyte density measured using the BLOOD_SMEAR_GAMETOCYTES diagnostic.
pcr_parasites The parasite density measured using the PCR_PARASITES diagnostic.
pcr_gametocytes The gametocyte density measured using the PCR_GAMETOCYTES diagnostic.
pfhrp2 The HRP2 measured using the PF_HRP2 diagnostic.
smeared_asexual_parasites Positive fields of view (pos_asexual_fields) with parasite density.
smeared_gametocytes Positive fields of view (pos_gametocyte_fields) with gametocyte density.
infectiousness Infectious of the individual at the time of the event.
infectiousness_smeared Binomial infectiousness smearing.
infectiousness_age_scaled Infectiousness adjusted for age dependent Surface Area Biting.
pos_asexual_fields The number of positive fields of view for parasite smears.
pos_gametocyte_fields The number of positive fields of view for gametocyte smears.
temps The individual’s body temperature in Celsius if they have a fever, otherwise it is -1.

Example

The following is a sample of a MalariaSurveyJSONAnalyzer file.

{
    "ntsteps": 73,
    "patient_array": [{
            "id": 5,
            "node_id": 340461476,
            "initial_age": 2497.267822266,
            "local_birthday": -2466.267822266,
            "strain_ids": [
                [
                    0,
                    9947867
                ]
            ],
            "ip_data": [
                ""
            ],
            "true_asexual_parasites": [
                392.6246337891
            ],
            "true_gametocytes": [
                0
            ],
            "smeared_true_asexual_parasites": [
                48.01840209961
            ],
            "smeared_true_gametocytes": [
                0
            ],
            "asexual_parasites": [
                380
            ],
            "gametocytes": [
                0
            ],
            "pcr_parasites": [
                98.8094329834
            ],
            "pcr_gametocytes": [
                0
            ],
            "pfhrp2": [
                9.302060127258
            ],
            "smeared_asexual_parasites": [
                397.7009277344
            ],
            "smeared_gametocytes": [
                0
            ],
            "infectiousness": [
                0
            ],
            "infectiousness_smeared": [
                0
            ],
            "infectiousness_age_scaled": [
                0
            ],
            "pos_asexual_fields": [
                126
            ],
            "pos_gametocyte_fields": [
                0
            ],
            "temps": [
                38.01483154297
            ]
        },
        {
            "id": 11,
            "node_id": 340461476,
            "initial_age": 1387.354614258,
            "local_birthday": -1315.354614258,
            "strain_ids": [
                [
                    0,
                    505461
                ],
                [
                    0,
                    0
                ]
            ],
            "ip_data": [
                ""
            ],
            "true_asexual_parasites": [
                444.5673217773
            ],
            "true_gametocytes": [
                0
            ],
            "smeared_true_asexual_parasites": [
                1481.205932617
            ],
            "smeared_true_gametocytes": [
                0
            ],
            "asexual_parasites": [
                490
            ],
            "gametocytes": [
                0
            ],
            "pcr_parasites": [
                463.1502380371
            ],
            "pcr_gametocytes": [
                0
            ],
            "pfhrp2": [
                10.62057304382
            ],
            "smeared_asexual_parasites": [
                449.572052002
            ],
            "smeared_gametocytes": [
                0
            ],
            "infectiousness": [
                0
            ],
            "infectiousness_smeared": [
                0
            ],
            "infectiousness_age_scaled": [
                0
            ],
            "pos_asexual_fields": [
                135
            ],
            "pos_gametocyte_fields": [
                0
            ],
            "temps": [
                38.0454750061
            ]
        }
    ]
}