5. Creating Inputs to SMOKE Biogenic Processing

5.1 Generate BELD3 Data for Biogenic Eissions Processing

Biogenic Emissions Inventory System, Version 3 (BEIS3) uses BELD3 land cover data for computing biogenic emissions fluxes on a modeling grid. The BELD3 data set gives landuse cover fractions for 230 different types at a 1-km resolution for all of North America. The data are divided into 24 tiles in I/O API format, and each tile contains three files named These input files are I/O API files named b3_a.tile#n.nzero.ncf, b3_b.tile#n.nzero.ncf, and b3_tot.tile#n.nzero.ncf.

The program beld3smk.exe can be used to allocate BELD3 landuse data onto the modeling grid of interest which can then be used as input to the SMOKE program NORMBEIS3. The data provided with beld3smk includes one set of tiles of landuse data (tile 10) covering North America as shown below.

These files have been compacted by removing variables whose values are all zero for the domain covered by that particular tile. The output files from beld3smk will contain all variables including those that are all zero.

Picture of 24 BELD tiles over North America

When beld3smk.exe is run, it determines which of the 24 tiles intersect the modeling grid and then allocates the data in those tiles to the output grid. It merges the various tiles together to create one set of output files consisting of an "a", "b", and "tot" file.

The following environment variables control the behavior of beld3smk.

The script convert_beld.csh runs the beld3smk program for a small test domain. This script can easily be modified for any given modeling grid by changing the OUTPUT_GRID_NAME and the OUTPUT_FILE_PREFIX and ensuring that the desired grid is described in the GRIDDESC file.

5.2 Comparing I/O API Files

The diffioapi.exe program compares two I/O API files. The program first checks the two files' headers to ensure that they are consistent. These checks include map projection, grid description (grid origin, grid cell size, and number of rows and columns), layer structure, time structure (start time, time step, and duration), and variable names. After confirming that the headers match, diffioapi loops through all variables in the files and compares the values for each time step and layer. If the values differ by more than a user- specified tolerance, an error message is printed indicating the variable name, time step, layer, row, and column that differs. The following environment variables control the behavior of diffioapi:

To Section 6: Converting Map Projections of Shapefiles