Comma Separated Value (CSV) Files
BlueSky's csv formatted standard fire and emissions files.
CSV, or comma separated value, files are simple ASCII formatted files that can be read in by many programs. Many database, data-processing, and analysis tools support CSV files, including Microsoft Excel, OpenOffice.org Calc, Gnumeric, and many more. The CSV file format is standardized by RFC 4180.
BlueSky and CSV
BlueSky uses CSV as the simplest standard for importing and exporting small sets of data. These include:
- Fire Information data
- Fuel Loading data
- Total Consumption data
- Time Rate of Consumption data
- Speciated Emissions data
- Vertical Plume Profile data
BlueSky Native File Format
The BlueSky "native" file format for BSF3 is actually three CSV files. These should be named, respectively, fire_events.csv, fire_locations.csv, and fire_hourly.csv (or, on output, fire_emissions.csv). Of these, only fire_locations.csv is mandatory; the other files can be assumed to contain null records if they are not present. Also, while these file names are preferred, it is possible to use other names; in particular, in the case when only one file is present.
The following table lists the field names for each of the three files. Some of the fields are required to be present (Required); others are derived from data during the course of the run (Derived); still others may be present in some input files, but must be derived from other data if they are not provided (Optional/Derived). Finally, some fields are completely Optional, and some are not used by BlueSky but are passed through to output files unchanged (Metadata).
The same file format is used by the BlueSky Framework for input of fire information and for output of its results. Obviously, it is expected that the input files will be mostly empty, and the output files mostly full. It should be possible to use an output from an existing run to re-run through BlueSky; in this case, the modules should detect that the outputs have already been filled in and do nothing (or almost nothing), and the end result should be an equivalent output file.
If an input file contains a column with the same name as a derived output column (e.g. total_heat), the input value is renamed to something non-conflicting (e.g. metadata_total_heat) and passed through as metadata.
| File |
Column | Type | Description |
|---|---|---|---|
| fire_events.csv | id | Required Input | Unique identifier for this fire event |
| event_name | Required Input | Event Name | |
| total_area | Derived | Sum of locations' area | |
| total_heat | Derived | Sum of locations' heat | |
| total_pm25 | Derived | Sum of locations' PM2.5 | |
| total_pm10 | Derived | Sum of locations' PM10 | |
| total_pm | Derived | Sum of locations' PM | |
| total_co | Derived | Sum of locations' CO | |
| total_co2 | Derived | Sum of locations' CO2 | |
| total_ch4 | Derived | Sum of locations' CH4 | |
| total_nmhc | Derived | Sum of locations' NMHC | |
| total_nox | Derived | Sum of locations' NOx | |
| total_nh3 | Derived | Sum of locations' NH3 | |
| total_so2 | Derived | Sum of locations' SO2 | |
| Metadata | Other event metadata (pass-through) | ||
| fire_locations.csv | id | Required Input | Unique identifier for this fire location (any format) |
| event_id | Optional | Event ID to look up in fire_events.csv | |
| latitude | Required Input | Location of this fire (latitude in decimal degrees) | |
| longitude | Required Input | Location of this fire (longitude in decimal degrees) | |
| elevation | Optional | Elevation at fire (meters) | |
| slope | Optional | Slope at fire location | |
| state | Optional/Derived | Location information | |
| county | Optional | Location information | |
| country | Optional/Derived | Location information | |
| date_time | Required Input | Time fire occurred (ignition time or local midnight) | |
| duration | Optional/Derived | Ignition duration | |
| snow_month | Optional | Month of last snow (rarely provided) | |
| rain_days | Optional | Days since last rain (rarely provided) | |
| wind | Optional/Derived | Wind (mph) at fire (rarely provided) | |
| type | Optional/Derived | Type of this fire: WF=wildfire, RX=prescribed, etc. | |
| area | Required Input | Area of this fire in acres | |
| fuel_1hr | Optional/Derived | 1-hour fuel loading (tons/acre) | |
| fuel_10hr | Optional/Derived | 10-hour fuel loading (tons/acre) | |
| fuel_100hr | Optional/Derived | 100-hour fuel loading (tons/acre) | |
| fuel_1khr | Optional/Derived | 1,000-hour fuel loading (tons/acre) | |
| fuel_10khr | Optional/Derived | 10,000-hour fuel loading (tons/acre) | |
| fuel_gt10khr | Optional/Derived | >10,000-hour fuel loading (tons/acre) | |
| shrub | Optional/Derived | Shrub fuel loading (tons/acre) | |
| grass | Optional/Derived | Grass fuel loading (tons/acre) | |
| rot | Optional/Derived | Rotten fuel loading (tons/acre) | |
| duff | Optional/Derived | Duff depth (inches) | |
| litter | Optional/Derived | Litter fuel loading (tons/acre) | |
| moisture_1hr | Optional/Derived | Moisture (%) of 1-hr fuel |
|
| moisture_10hr | Optional/Derived | Moisture (%) of 10-hr fuel |
|
| moisture_100hr | Optional/Derived | Moisture (%) of 100-hr fuel |
|
| moisture_1khr | Optional/Derived | Moisture (%) of 1000-hr fuel | |
| moisture_live | Optional/Derived | Moisture (%) of live fuel |
|
| moisture_duff | Optional/Derived | Moisture (%) of duff fuel |
|
| consumption_flaming | Optional/Derived | Consumption in the flaming phase (tons/acre) | |
| consumption_smoldering | Optional/Derived | Consumption in the smoldering phase (tons/acre) | |
| consumption_residual | Optional/Derived | Consumption in the residual phase (tons/acre) | |
| consumption_duff | Optional/Derived | Consumption of the duff layer (tons/acre) | |
| heat | Optional/Derived | Total heat, or sum of hourly heat released (BTU) | |
| pm25 | Optional/Derived | Total PM2.5, or sum of hourly PM2.5 (tons) | |
| pm10 | Optional/Derived | Total PM10, or sum of hourly PM10 (tons) | |
| pm | Optional/Derived | Total PM, or sum of hourly PM (tons) | |
| co | Optional/Derived | Total CO, or sum of hourly CO (tons) | |
| co2 | Optional/Derived | Total CO2, or sum of hourly CO2 (tons) | |
| ch4 | Optional/Derived | Total CH4, or sum of hourly CH4 (tons) | |
| nmhc | Optional/Derived | Total NMHC, or sum of hourly NMHC (tons) | |
| nox | Optional/Derived | Total NOx, or sum of hourly NOx (tons) | |
| nh3 | Optional/Derived | Total NH3, or sum of hourly NH3 (tons) | |
| so2 | Optional/Derived | Total SO2, or sum of hourly SO2 (tons) | |
| Metadata | Location metadata (pass-through) | ||
| fire_hourly.csv | fire_id | Required | Location ID to look up in fire_locations.csv |
| hour | Required | Hour of data (counted from start date_time) | |
| area_fract | Required | Area fraction for the given hour (total sums to 1) | |
| flame_profile | Required | Flaming fraction of hourly consumption profile | |
| smolder_profile | Required | Smoldering fraction of hourly consumption profile | |
| residual_profile | Required | Residual fraction of hourly consumption profile | |
| heat_emitted | Derived | Total emission this hour of heat (BTU) | |
| pm25_emitted | Derived | Total emission this hour of PM2.5 (tons) | |
| pm10_emitted | Derived | Total emission this hour of PM10 (tons) | |
| pm_emitted | Derived | Total emission this hour of PM (tons) | |
| co_emitted | Derived | Total emission this hour of CO (tons) | |
| co2_emitted | Derived | Total emission this hour of CO2 (tons) | |
| ch4_emitted | Derived | Total emission this hour of CH4 (tons) | |
| nmhc_emitted | Derived | Total emission this hour of NMHC (tons) | |
| nox_emitted | Derived | Total emission this hour of NOx (tons) | |
| nh3_emitted | Derived | Total emission this hour of NH3 (tons) | |
| so2_emitted | Derived | Total emission this hour of SO2 (tons) | |
| pm25_flame | Derived | Flaming emission this hour of PM2.5 (tons) | |
| pm10_flame | Derived | Flaming emission this hour of PM10 (tons) | |
| pm_flame | Derived | Flaming emission this hour of PM (tons) | |
| co_flame | Derived | Flaming emission this hour of CO (tons) | |
| co2_flame | Derived | Flaming emission this hour of CO2 (tons) | |
| ch4_flame | Derived | Flaming emission this hour of CH4 (tons) | |
| nmhc_flame | Derived | Flaming emission this hour of NMHC (tons) | |
| nox_flame | Derived | Flaming emission this hour of NOx (tons) | |
| nh3_flame | Derived | Flaming emission this hour of NH3 (tons) | |
| so2_flame | Derived | Flaming emission this hour of SO2 (tons) | |
| pm25_smold | Derived | Smoldering emission this hour of PM2.5 (tons) | |
| pm10_smold | Derived | Smoldering emission this hour of PM10 (tons) | |
| pm_smold | Derived | Smoldering emission this hour of PM (tons) | |
| co_smold | Derived | Smoldering emission this hour of CO (tons) | |
| co2_smold | Derived | Smoldering emission this hour of CO2 (tons) | |
| ch4_smold | Derived | Smoldering emission this hour of CH4 (tons) | |
| nmhc_smold | Derived | Smoldering emission this hour of NMHC (tons) | |
| nox_smold | Derived | Smoldering emission this hour of NOx (tons) | |
| nh3_smold | Derived | Smoldering emission this hour of NH3 (tons) | |
| so2_smold | Derived | Smoldering emission this hour of SO2 (tons) | |
| pm25_resid | Derived | Residual emission this hour of PM2.5 (tons) | |
| pm10_resid | Derived | Residual emission this hour of PM10 (tons) | |
| pm_resid | Derived | Residual emission this hour of PM (tons) | |
| co_resid | Derived | Residual emission this hour of CO (tons) | |
| co2_resid | Derived | Residual emission this hour of CO2 (tons) | |
| ch4_resid | Derived | Residual emission this hour of CH4 (tons) | |
| nmhc_resid | Derived | Residual emission this hour of NMHC (tons) | |
| nox_resid | Derived | Residual emission this hour of NOx (tons) | |
| nh3_resid | Derived | Residual emission this hour of NH3 (tons) | |
| so2_resid | Derived | Residual emission this hour of SO2 (tons) |



