2.16.2. MOVES Model Processing

2.16.2.1. MOVES Driver Script
2.16.2.2. MOVES Post-Processing Script

2.16.2.1. MOVES Driver Script

The inputs to the MOVES Driver Script (Runspec_generator.pl) include the temperature and humidity conditions output from Met4moves and two additional inputs, the RunControl and RepCounty files. The RunControl file contains pollutant selections and the file path location to the Met4moves output. The RepCounty file contains file path locations to user-created MOVES-formatted inputs for age distribution, fuel supply and formulation, inspection and maintenance programs, county level population and annual VMT for each reference county. Precise formats of the RunControl and RepCounty files can be found in the Section 8.9.2.17, “countyrep.in: Reference County File” and Section 8.9.2.16, “RUNCTL: Runcontrol File (control.in)”.

2.16.2.2. MOVES Post-Processing Script

A MOVES Driver Script to automates the MOVES run setups and prepare two kinds of batch files. When launched, the batch files instruct MOVES to:

  • import data into MySQL County Scale databases

  • run MOVES for each runspec file

The resulting RatePerDistance, RatePerVehicle, and RatePerProfile tables, after enhancement from the Post-processing script, contain all the conditions needed for regional modeling using SMOKE.

Once a MOVES batch run completes, MOVES populates the three output lookup tables with formats listed in Table 2.9, “MOVES Emission Rate Lookup Table (MOVES Format)”. A MOVES Post-Processing Script in Perl interacts with MySQL to modify the default formats shown in Table 2.9, “MOVES Emission Rate Lookup Table (MOVES Format)” into a format readable by SMOKE, shown in Table 2.10, “MOVES Emission Rate Lookup Table (SMOKE Format)”.

Table 2.9. MOVES Emission Rate Lookup Table (MOVES Format)

RatePerDistance (grams/mile) RatePerVehicle (grams/vehicle/hour) RatePerProfile (grams/vehicle/hour)
MOVESScenarioID MOVESScenarioID MOVESScenarioID
MOVESRunID MOVESRunID MOVESRunID
yearID yearID temperatureProfileID
monthID monthID yearID
dayID dayID dayID
hourID hourID hourID
linkID zoneID pollutantID
pollutantID pollutantID processID
processID processID sourceTypeID
sourceTypeID sourceTypeID SCC
SCC SCC fuelTypeID
fuelTypeID fuelTypeID modelYearID
modelYearID modelYearID Temperature
roadTypeID Temperature ratePerProfile
avgSpeedBinID ratePerVehicle  
Temperature    
relHumidity    
ratePerDistance    

The MOVES Post Processing Script converts the MOVES format Emission Rate Lookup Table to the SMOKE format Emission Rate Table by performing the following:

  • Parses the state-county FIPS code from linkID, zoneID and TemperatureProfileID and stores it as a unique field, countyID.

  • Converts the partially speciated exhaust particulate matter (PM) output by MOVES into the species needed for air quality modeling (PNO3, METAL, NH4, POC, PMFINE, PMC). The speciation equations were developed by EPA OTAG and OAQPS. The advantage of using this approach over the approach used for speciating total PM2.5 is that this approach allows the speciated emissions from MOVES; i.e., elemental carbon and particulate sulfate to be retained and only the remainder of the PM2.5 to rely on speciation profiles. The speciation equations are available in the SMOKE-TOOLS User Guide href="http://www.smoke-model.org/smoke_moves_tool/SMOKE-MOVES_Tool_Users_Guide.htm"

  • Removes fields that are uninformative to SMOKE, including the MOVES source type, fuel type and road type, hourID in RatePerDistance, TemperatureProfileID in RatePerProfile.

  • Reduces the output database table size by performing a cross-tab query on the pollutant emissions, listing each pollutant in a separate field rather than in a single column with a higher number of data records. The script also sorts the lookup tables by countyID, monthID and SCC for more efficient processing in SMOKE.

  • Write out to an ASCII file the three processed tables RatePerDistance_smoke, RatePerVehicle_smoke, and RatePerProfile_smoke.

Table 2.10. MOVES Emission Rate Lookup Table (SMOKE Format)

RatePerDistance_smoke (grams/mile) RatePerVehicle_smoke (grams/vehicle/hour) RatePerProfile_smoke (grams/vehicle/hour)
MOVESScenarioID MOVESScenarioID MOVESScenarioID
MOVESRunID MOVESRunID MOVESRunID
yearID yearID yearID
monthID monthID monthID
countyID dayID dayID
SCC hourID hourID
processName countyID countyID
avgSpeedBinIn SCC SCC
Temperature processName processName
relHumidity Temperature (for each grid cell) Temperature (24hr temporal profile)
CO CO THC
TOG NOX TOG
BENZENE PM10OC VOC
... ... ...