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
            ]
        }
    ]
}