Skip to content

ReportNodeEventRecorder

The node event recorder report (ReportNodeEventRecorder.csv) provides information on the node's population and health status at the time of a node-level event. Node-level events are broadcast by interventions such as BroadcastNodeEvent and node-level intervention distributions.

Additionally, it is possible to break down the population data by specific node properties and individual properties, using the configuration parameters described below.

For recording individual-level events, see ReportEventRecorder. For coordinator-level events, see ReportCoordinatorEventRecorder.

Configuration

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

Parameter Data type Min Max Default Description
Report_Node_Event_Recorder boolean 0 1 0 Set to 1 to enable the ReportNodeEventRecorder.csv output report.
Report_Node_Event_Recorder_Events array of strings NA NA [] The list of node events to include or exclude in the ReportNodeEventRecorder.csv output report, based on how Report_Node_Event_Recorder_Ignore_Events_In_List is set. Events are sourced from Custom_Node_Events or built-in node events. If the list is empty and Report_Node_Event_Recorder_Ignore_Events_In_List is set to 0, no events will be recorded.
Report_Node_Event_Recorder_Ignore_Events_In_List boolean 0 1 0 If set to false (0), only the node events listed in the Report_Node_Event_Recorder_Events array will be included in the ReportNodeEventRecorder.csv output report. If set to true (1), only the node events listed in the array will be excluded, and all other node events will be included. To return all node events from the simulation, set this value to 1 and leave the Report_Node_Event_Recorder_Events array empty.
Report_Node_Event_Recorder_Node_Properties array of strings NA NA [] An array of optional node property keys, as defined in NodeProperties in the demographics file, to be added as additional columns to the ReportNodeEventRecorder.csv output report. See Individual and node properties for details on setting node properties.
Report_Node_Event_Recorder_Stats_By_IPs array of strings NA NA [] An array of optional individual property (IP) keys, as defined in IndividualProperties in the demographics file, to be added to the ReportNodeEventRecorder.csv output report. For each IP key listed, two additional columns per IP key-value pair are added: one for the number of qualifying individuals with that value and one for the number of infected individuals with that value. See Individual and node properties for details on setting individual properties.
{
    "Report_Node_Event_Recorder": 1,
    "Report_Node_Event_Recorder_Events": ["SpaceSpraying", "Larvicides"],
    "Report_Node_Event_Recorder_Ignore_Events_In_List": 0,
    "Report_Node_Event_Recorder_Node_Properties": [],
    "Report_Node_Event_Recorder_Stats_By_IPs": []
}

Output file data

The report (ReportNodeEventRecorder.csv) contains one row per node event. The columns are described below.

Base columns

These columns are always present.

Data channel Data type Description
Time float The simulation time (in days) when the node event occurred.
NodeID integer The identification number of the node where the event occurred.
NodeEventName string The name of the node event being logged. If Report_Node_Event_Recorder_Ignore_Events_In_List is set to 0, only events listed in Report_Node_Event_Recorder_Events appear.
NumIndividuals integer The total number of individuals in the node at the time of the event.
NumInfected integer The number of infected individuals in the node at the time of the event.

Node property columns

If Report_Node_Event_Recorder_Node_Properties is configured with one or more node property key names, an additional column is added for each key listed. Each column shows the node's current value for that property at the time of the event.

Individual property (IP) breakdown columns

If Report_Node_Event_Recorder_Stats_By_IPs is configured with one or more individual property (IP) key names, additional column pairs are appended for each key-value combination defined in the demographics file. For example, if Risk has values HIGH and LOW, the following columns are added:

Data channel Data type Description
Risk:HIGH:NumIndividuals integer The number of individuals in the node whose Risk property is HIGH.
Risk:HIGH:NumInfected integer The number of infected individuals in the node whose Risk property is HIGH.
Risk:LOW:NumIndividuals integer The number of individuals in the node whose Risk property is LOW.
Risk:LOW:NumInfected integer The number of infected individuals in the node whose Risk property is LOW.

The column naming convention is <Key>:<Value>:NumIndividuals and <Key>:<Value>:NumInfected for each IP key-value pair.

Example

The following is an example of a ReportNodeEventRecorder.csv report from a malaria simulation that uses node-level vector control interventions:

Time NodeID NodeEventName NumIndividuals NumInfected
116 1 SpaceSpraying 993 852
121 1 IndoorSpaceSpraying 993 854
126 1 MultiInsecticideSpaceSpraying 990 847
131 1 Larvicides 988 843
136 1 ScaleLarvalHabitat 986 840
141 1 OutdoorRestKill 983 836
146 1 SugarTrap 980 832
151 1 SpatialRepellent 978 829