User's Guide for the Emissions Modeling System for

Hazardous Air Pollutants (EMS-HAP) Version 2.0
EPA 454/B-02-001

August 2002

User's Guide for the Emissions Modeling System for Hazardous Air Pollutants (EMS-HAP)

Version 2.0

By:

Madeleine Strum

U.S. Environmental Protection Agency

Office of Air Quality Planning and Standards

Emissions, Monitoring and Analysis Division

Research Triangle Park, NC 

And, Under Contract to the U.S. Environmental Protection Agency, 

 Richard Mason, DynCorp Systems and Solutions LLC

Contract No. IAG47939482-01

Work Order No. 20.12

Diane Linderman, EC/R Incorporated

Contract No. 68D98006

Work Assignment No. 5-03

U.S. Environmental Protection Agency

Office of Air Quality Planning and Standards

Emissions, Monitoring and Analysis Division

Research Triangle Park, North Carolina
DISCLAIMER

The information in this document has been reviewed in accordance with the U.S. EPA

administrative review policies and approved for publication. Mention of trade names or

commercial products does not constitute endorsement or recommendation for their use.

The following trademarks appear in this document:

UNIX is a registered trademark of AT&T Bell Laboratories.

SAS® is a registered trademark of SAS Institute. 

SUN is a registered trademark of Sun Microsystems, Inc.
i

TABLE OF CONTENTS

CHAPTER 1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1

1.1 What is EMS-HAP? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1

1.2 Who are the users of EMS-HAP? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2

1.3 What are the main features of EMS-HAP? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3

1.4 How do I use this Guide? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7

1.5 Quick-start for ASPEN: instructions for using EMS-HAP to prepare a toxics emissions

inventory for the ASPEN model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8

1.6 Quick-start for ISCST3: instructions for using EMS-HAP to prepare a toxics emissions

inventory for the ISCST3 model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11

CHAPTER 2 AIRCRAFT EMISSIONS PROCESSING 

THE AIRCRAFT EMISSIONS PROCESSING PROGRAM (AirportProc) . . . . . . . . . . . . . . 2-1

2.1 What is the function of AirportProc? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2

2.1.1 Allocates county-level aircraft emissions to specific airports . . . . . . . . . . . . . . . 2-5

2.1.2 Prepares allocated emissions for the point source processing programs . . . . . . . 2-5

2.1.3 Assigns the additional variables needed to process aircraft emissions when 

processing data for ISCST3 only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7

2.1.4 Appends unallocated emissions back to the mobile source inventory . . . . . . . . . 2-7

2.2 How do I run AirportProc? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8

2.2.1 Prepare your mobile source inventory for input into AirportProc . . . . . . . . . . . . 2-8

2.2.2 Prepare your point source inventory for input into AirportProc . . . . . . . . . . . . . 2-9

2.2.3 Determine whether you need to modify the ancillary input files for AirportProc 2-11

2.2.4 Prepare your batch file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12

2.2.5 Execute AirportProc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-14

2.3 How do I know my run of AirportProc was successful? . . . . . . . . . . . . . . . . . . . . . . . 2-14

2.3.1 Check your SAS® log file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-14

2.3.2 Check your SAS® list file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15

2.3.3 Check other output files from AirportProc . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15

CHAPTER 3 POINT SOURCE PROCESSING 

THE DATA QUALITY ASSURANCE PROGRAM (PtDataProc) . . . . . . . . . . . . . . . . . . . . . 3-1

3.1 What is the function of PtDataProc? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2

3.1.1 Quality assures point source location data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5

3.1.2 Quality assures stack parameters- defaults if missing or out-of-range and for all

allocated aircraft emissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12

3.1.3 Removes inventory variables and records not necessary for further processing

(inventory windowing) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13

3.2 How do I run PtDataProc? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14

3.2.1 Prepare your point source inventory for input into PtDataProc . . . . . . . . . . . . . 3-14

3.2.2 Determine whether you need to modify the ancillary input files for PtDataProc 3-18

3.2.3 Prepare your batch file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-19
TABLE OF CONTENTS

(continued)

ii

3.2.4 Execute PtDataProc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-25

3.3 How do I know my run of PtDataProc was successful? . . . . . . . . . . . . . . . . . . . . . . . 3-25

3.3.1 Check your SAS® log file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-25

3.3.2 Check your SAS® list file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-25

3.3.3 Check other output files from PtDataProc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-26

CHAPTER 4 POINT SOURCE PROCESSING 

THE MODEL-SPECIFIC PROGRAM (PtModelProc) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1

4.1 What is the function of PtModelProc? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2

4.1.1 Selects pollutants, groups and/or partitions pollutants, and determines

 their characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3

4.1.2 Assigns urban/rural dispersion parameters when processing

 data for ASPEN only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4

4.1.3 Assigns vent type and building parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4

4.2 How do I run PtModelProc? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-6

4.2.1 Prepare your point source inventory for input into PtModelProc . . . . . . . . . . . . 4-6

4.2.2 Determine whether you need to modify the ancillary input files for PtModelProc4-9

4.2.3 Modify the HAP table input files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10

4.2.4 Prepare your batch file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-17

4.2.5 Execute PtModelProc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-18

4.3 How do I know my run of PtModelProc was successful? . . . . . . . . . . . . . . . . . . . . . 4-19

4.3.1 Check your SAS® log file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-19

4.3.2 Check your SAS® list file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-19

4.3.3 Check other output files from PtModelProc . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-20

CHAPTER 5 POINT SOURCE PROCESSING 

THE TEMPORAL ALLOCATION PROGRAM (PtTemporal) . . . . . . . . . . . . . . . . . . . . . . . . 5-1

5.1 What is the function of PtTemporal? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2

5.1.1 Assigns an hourly temporal profile to each emission record . . . . . . . . . . . . . . . . 5-5

5.1.2 Uses the hourly profiles to produce eight 3-hour emission rates for each record 5-6

5.1.3 Uses the hourly, day, and seasonal profiles to produce 288 emission rates when 

 processing data for ISCST3 only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6

5.2 How do I run PtTemporal? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8

5.2.1 Prepare your point source inventory for input into PtTemporal . . . . . . . . . . . . . 5-8

5.2.2 Determine whether you need to modify the ancillary input files for PtTemporal 5-12

5.2.3 Modify the temporal allocation factor file (taff_hourly) . . . . . . . . . . . . . . . . . . 5-13

5.2.4 Modify the cross reference files used to link inventory records to the temporal

allocation factor file (scc2ams, sic2ams, and mact2scc) . . . . . . . . . . . . . . . . . . . 5-13

5.2.5 Prepare your batch file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14

5.2.6 Execute PtTemporal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-15

5.3 How do I know my run of PtTemporal was successful? . . . . . . . . . . . . . . . . . . . . . . . 5-15
TABLE OF CONTENTS

(continued)

iii

5.3.1 Check your SAS® log file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-15

5.3.2 Check your SAS® list file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-15

5.3.3 Check other output files from PtTemporal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-16

CHAPTER 6 POINT SOURCE PROCESSING 

THE GROWTH AND CONTROL PROGRAM (PtGrowCntl) . . . . . . . . . . . . . . . . . . . . . . . . 6-1

6.1 What is the function of PtGrowCntl? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-2

6.1.1 Assigns and applies growth factors to project emissions due to growth . . . . . . . . 6-4

6.1.2 Assigns MACT-based emission reduction information . . . . . . . . . . . . . . . . . . . . 6-4

6.1.3 Assigns user-defined emission reduction information . . . . . . . . . . . . . . . . . . . . . 6-7

6.1.4 Combines MACT-based and user-defined emission reduction information and 

applies to project emissions due to an overall emission control scenario . . . . . . 6-10

6.2 How do I run PtGrowCntl? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-13

6.2.1 Prepare your point source inventory for input into PtGrowCntl . . . . . . . . . . . . 6-13

6.2.2 Determine whether you need to modify the ancillary input files for PtGrowCntl6-17

6.2.3 Modify the MACT-based and SIC-based growth factor input files

(gfegas_bymaxtXX_YY.txt and gfegas_bysicXX_YY.txt) . . . . . . . . . . . . . . . . 6-19

6.2.4 Modify the SCC to SIC cross-reference input file (ptscc2sic.txt) . . . . . . . . . . . 6-20

6.2.5 Modify the MACT-based emission reduction information files (MACT_gen.txt

and MACT_spec.txt) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-20

6.2.6 Develop the user-defined emission reduction information files (User_control.txt 

and popflg96.txt) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-21

6.2.7 Prepare your batch file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-21

6.2.8 Execute PtGrowCntl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-24

6.3 How do I know my run of PtGrowCntl was successful? . . . . . . . . . . . . . . . . . . . . . . . 6-24

6.3.1 Check your SAS® log file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-24

6.3.2 Check your SAS® list file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-25

6.3.3 Check other output files from PtGrowCntl . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-25

CHAPTER 7 POINT SOURCE PROCESSING 

THE FINAL FORMAT PROGRAM FOR ASPEN (PtFinal_ASPEN) . . . . . . . . . . . . . . . . . . 7-1

7.1 What is the function of PtFinal_ASPEN? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2

7.1.1 Assigns ASPEN source groups used in the ASPEN model output . . . . . . . . . . . 7-4

7.1.2 Converts temporally allocated emissions from tons/year to grams/second for each of

the eight 3-hour time periods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-5

7.1.3 Creates ASPEN input files, a column formatted text file and a SAS® file . . . . . . 7-5

7.2 How do I run PtFinal_ASPEN? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-7

7.2.1 Prepare your point source inventory for input into PtFinal_ASPEN . . . . . . . . . . 7-7

7.2.2 Determine whether you need to modify the ancillary input files for 

PtFinal_ASPEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-10
TABLE OF CONTENTS

(continued)

iv

7.2.3 Modify the ASPEN source group assignment files (mact_grp.txt, scc6_grp.txt, 

and sic_grp.txt) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-10

7.2.4 Prepare your batch file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-11

7.2.5 Execute PtFinal_ASPEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-13

7.3 How do I know my run of PtFinal_ASPEN was successful? . . . . . . . . . . . . . . . . . . . 7-13

7.3.1 Check your SAS® log file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-13

7.3.2 Check your SAS® list file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-14

7.3.3 Check other output files from PtFinal_ASPEN . . . . . . . . . . . . . . . . . . . . . . . . . 7-14

CHAPTER 8 POINT SOURCE PROCESSING 

THE FINAL FORMAT PROGRAM FOR ISCST3 (PtFinal_ISCST3) . . . . . . . . . . . . . . . . . . 8-1

8.1 What is the function of PtFinal_ISCST3? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2

8.1.1 Assigns source groups used in the ISCST3 model output . . . . . . . . . . . . . . . . . . 8-4

8.1.2 Assigns default release parameters in order to model fugitive sources and horizontal

stacks as ISCST3 volume sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-5

8.1.3 Assigns available particulate size and gas deposition data by pollutant or by

combination of SCC and pollutant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-6

8.1.4 Removes emission sources outside your modeling domain . . . . . . . . . . . . . . . . . 8-7

8.1.5 Assigns available emission source elevation data by modeling grid cell . . . . . . . 8-8

8.1.6 Assigns source identification codes needed for the ISCST3 SO pathway 

section files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-8

8.1.7 Converts temporally allocated emissions from tons/hour to the necessary units for

each source for each of the 288 emission rates . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-9

8.1.8 Adjusts UTM coordinates of emission sources rates . . . . . . . . . . . . . . . . . . . . . . 8-9

8.1.9 Creates SO pathway section of the ISCST3 run stream and include files . . . . . 8-10

8.2 How do I run PtFinal_ISCST3? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-12

8.2.1 Prepare your point source inventory for input into PtFinal_ISCST3 . . . . . . . . . 8-12

8.2.2 Determine whether you need to modify the ancillary input files for 

PtFinal_ISCST3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-15

8.2.3 Modify the source group assignment files (mact_grp.txt, scc6_grp.txt, and

sic_grp.txt) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-16

8.2.4 Develop the particle size distribution, gas deposition, and terrain elevation files

(defpart.txt, sccpart.txt, defgas.txt, and hstn-elev.txt) . . . . . . . . . . . . . . . . . . . . 8-16

8.2.5 Prepare your batch file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-17

8.2.6 Execute PtFinal_ISCST3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-20

8.3 How do I know my run of PtFinal_ISCST3 was successful? . . . . . . . . . . . . . . . . . . . 8-21

8.3.1 Check your SAS® log file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-21

8.3.2 Check your SAS® list file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-21

8.3.3 Check other output files from PtFinal_ISCST3 . . . . . . . . . . . . . . . . . . . . . . . . . 8-21
TABLE OF CONTENTS

(continued)

v

CHAPTER 9 NON-POINT SOURCE PROCESSING 

THE AREA SOURCE AMPROC PREPARATION PROGRAM (AreaPrep) . . . . . . . . . . . . . 9-1

9.1 What is the function of AreaPrep? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2

9.1.1 Assigns a spatial surrogate for each area source category for subsequent spatial 

allocation of county-level emissions to census tracts . . . . . . . . . . . . . . . . . . . . . 9-3

9.1.2 Assigns a code to each source category for matching to temporal profiles . . . . 9-5

9.1.3 Creates inventory variables required by AMProc . . . . . . . . . . . . . . . . . . . . . . . . 9-5

9.2 How do I run AreaPrep? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-5

9.2.1 Prepare your area source inventory for input into AreaPrep . . . . . . . . . . . . . . . . 9-5

9.2.2 Determine whether you need to modify the ancillary input files for AreaPrep . . 9-6

9.2.3 Modify the files that assign codes and spatial surrogates based on

 MACT, SIC, SCC, and AMS codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-7

9.2.4 Prepare your batch file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-8

9.2.5 Execute AreaPrep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-9

9.3 How do I know my run of AreaPrep was successful? . . . . . . . . . . . . . . . . . . . . . . . . . 9-10

9.3.1 Check your SAS® log file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-10

9.3.2 Check your SAS® list file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-10

9.3.3 Check other output files from AreaPrep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-11

CHAPTER 10 MOBILE SOURCE PROCESSING 

THE MOBILE SOURCE AMPROC PREPARATION PROGRAM (MobilePrep) . . . . . . . . 10-1

10.1 What is the function of MobilePrep? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-2

10.1.1 Splits the mobile source inventory into onroad and nonroad inventories . . . . 10-3

10.1.2 Creates inventory variables required by AMProc . . . . . . . . . . . . . . . . . . . . . . 10-3

10.2 How do I run MobilePrep? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-3

10.2.1 Prepare your mobile source inventory for input into MobilePrep . . . . . . . . . . 10-3

10.2.2 Determine whether you need to modify the ancillary input files for MobilePrep10-4

10.2.3 Prepare your batch file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-4

10.2.4 Execute MobilePrep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5

10.3 How do I know my run of MobilePrep was successful? . . . . . . . . . . . . . . . . . . . . . . 10-5

10.3.1 Check your SAS® log file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5

10.3.2 Check your SAS® list file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5

10.3.3 Check other output files from MobilePrep . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-6

CHAPTER 11 NON-POINT AND MOBILE SOURCE PROCESSING 

THE AREA AND MOBILE SOURCE PROCESSING PROGRAM (AMProc) . . . . . . . . . . 11-1

11.1 What is the function of AMProc? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-2

11.1.1 Selects pollutants, groups and/or partitions pollutants, and assigns

their characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-5

11.1.2 Spatially allocates county-level emissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-6
TABLE OF CONTENTS

(continued)

vi

11.1.3 Temporally allocates emissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-9

11.1.4 Assigns ASPEN-specific modeling parameters when

processing data for ASPEN only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-11

11.1.5 Assigns ASPEN source groups used in the ASPEN model output . . . . . . . . 11-12

11.1.6 Projects emissions to a future year . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-13

11.1.7 Converts temporally allocated emissions from tons/year to grams/second for 

each of the eight 3-hour periods when processing data for ASPEN only . . . 11-20

11.1.8 Creates ASPEN input files, column formatted text and SAS® files when

processing data for ASPEN only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-20

11.1.9 Creates SAS® file used as input to AMFinalFormat when processing 

data for ISCST3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-22

11.2 How do I run AMProc? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-22

11.2.1 Prepare your non-point and mobile source emission inventory files for 

input into AMProc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-22

11.2.2 Determine whether you need to modify the ancillary input files for AMProc 11-23

11.2.3 Modify the HAP table input file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-26

11.2.4 Modify the files that assign non-point and mobile source categories to source

groups (am_grp.txt and popflag96.txt) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-26

11.2.5 Modify the file that assigns spatial surrogates to mobile source

 categories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-27

11.2.6 Modify the temporal allocation factor file . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-27

11.2.7 Modify the growth factors and emission reduction information files . . . . . . 11-28

11.2.8 Prepare your batch file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-29

11.2.9 Execute AMProc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-33

11.3 How do I know my run of AMProc was successful? . . . . . . . . . . . . . . . . . . . . . . . 11-33

11.3.1 Check your SAS® log file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-33

11.3.2 Check your SAS® list file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-34

11.3.3 Check other output files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-36

CHAPTER 12 NON-POINT AND MOBILE SOURCE PROCESSING 

THE FINAL FORMAT PROGRAM FOR ASPEN (AMFinalFormat) . . . . . . . . . . . . . . . . . . 12-1

12.1 What is the function of AMFinalFormat? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-2

12.1.1 Assigns default release parameters to emission sources . . . . . . . . . . . . . . . . . . 12-4

12.1.2 Assigns available pollutant-specific particle size and gas deposition data . . . . 12-4

12.1.3 Assigns available emission source elevation data by modeling grid cell . . . . 12-5

12.1.4 Sums category-specific emissions to the emission source group level . . . . . . . 12-6

12.1.5 Converts each of the 288 temporally allocated emission rates and

baseline emissions to grams/sec-m2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-6

12.1.6 Removes emission sources that are outside of modeling domain . . . . . . . . . . 12-7
TABLE OF CONTENTS

(continued)

vii

12.1.7 Assigns source identification codes needed for the 

ISCST3 SO pathway section files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-7

12.1.8 Adjusts UTM coordinates of emission sources . . . . . . . . . . . . . . . . . . . . . . . . 12-7

12.1.9 Creates include files for the SO pathway section of the ISCST3 run stream . . 12-8

12.1.10 Creates text files containing source identification information for the 

source groups for inclusion in the SO pathway section of the

 ISCST3 run stream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-9

12.2 How do I run AMFinalFormat? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-9

12.2.1 Prepare your point source inventory for input into AMFinalFormat . . . . . . . . 12-9

12.2.2 Determine whether you need to modify the ancillary input files for 

AMFinalFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-11

12.2.3 Develop the particle size distribution, gas deposition, and terrain elevation files

(defpart.txt, defgas.txt, and hstn-elev.txt) . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-11

12.2.4 Prepare your batch file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-12

12.2.5 Execute AMFinalFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-14

12.3 How do I know my run of AMFinalFormat was successful? . . . . . . . . . . . . . . . . . 12-14

12.3.1 Check your SAS® log file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-14

12.3.2 Check your SAS® list file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-15

12.3.3 Check other output files from AMFinalFormat . . . . . . . . . . . . . . . . . . . . . . . 12-15

REFERENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . R-1

APPENDIX A EMS-HAP Ancillary File Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1

APPENDIX B EMS-HAP Sample Batch Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-1

APPENDIX C 1996 NTI Point Source Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-1

APPENDIX D Preparation of ASPEN-input Files for the 1996 Base Year Using EMS-HAP D-1

APPENDIX E Preparation of ISCST3-input Files for the 1996 Base Year Using EMS-HAP E-1
viii

LIST OF TABLES

Table 2-1. Variables Assigned to Point Source Aircraft Emissions . . . . . . . . . . . . . . . . . . . . . 2-6

Table 2-2. Additional Variables Required to Process Aircraft Emissions as ISCST3 Area

Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7

Table 2-3. Required Variables in AirportProc Input Mobile Source Inventory SAS® File . . . 2-8

Table 2-4. Variables Required in AirportProc Input Point Source Inventory SAS® File . . . . 2-10

Table 2-5. Additional Variables Required for AirportProc Input Point Source Inventory SAS®

file when Processing ISCST3 Area or Volume Sources . . . . . . . . . . . . . . . . . . . . . . . . . . 2-11

Table 2-6. Keywords in the AirportProc Batch File When Processing Data for Either ASPEN or

ISCST3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-13

Table 3-1. PtDataProc Functions for QA of Point Source Location Data . . . . . . . . . . . . . . . . 3-5

Table 3-2. Assignment of LLPROB Diagnostic Flag Variable . . . . . . . . . . . . . . . . . . . . . . . . . 3-7

Table 3-3. Resolutions in Discrepancy Between Alternate and Inventory FIPS (Processing for

ASPEN only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10

Table 3-4. Assignment of Diagnostic Flag Variables LFLAG and FIPFLAG (Processing for

ASPEN only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11

Table 3-5. Assignment of Stack Parameter Defaulting Diagnostic Flag Variables . . . . . . . . 3-13

Table 3-6. Variables Required for PtDataProc Input Point Source Inventory SAS® File . . . . 3-16

Table 3-7. Additional Variables for PtDataProc Input Point Source Inventory SAS® file when

Processing ISCST3 Area or Volume Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-17

Table 3-8. Required Ancillary Input Files for PtDataProc . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-18

Table 3-9. Keywords for Selecting PtDataProc Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-19

Table 3-10. Keywords in the PtDataProc Batch File When Processing Data for ASPEN . . . 3-21

Table 3-11. Keywords in the PtDataProc Batch File When Processing Data for ISCST3 . . . 3-24

Table 3-12. Additional QA Files Created by PtDataProc . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-26

Table 4-1. Assignment of Vent Type Variable for the ASPEN Model . . . . . . . . . . . . . . . . . . . 4-5

Table 4-2. Assignment of Default Building Height and Width for the ISCST3 Model . . . . . . 4-6

Table 4-3. Variables in the PtModelProc Input Point Source Inventory SAS® File When

Processing Data for ASPEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7

Table 4-4. Variables in the PtModelProc Input Point Source Inventory SAS® File When

Processing Data for ISCST3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-8

Table 4-5. Required Ancillary Input Files for PtModelProc . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10

Table 4-6. Structure of the HAP Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12

Table 4-7. Sample Entries in a HAP Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13

Table 4-8. Directions for Partitioning or Grouping of Inventory Species . . . . . . . . . . . . . . . . 4-14

Table 4-9. Using the FACTOR Variable to Adjust Emissions . . . . . . . . . . . . . . . . . . . . . . . . 4-16

Table 4-10. Keywords in the PtModelProc Batch File When Processing Data for ASPEN . . 4-17

Table 4-11. Keywords in the PtModelProc Batch File When Processing Data for ISCST3 . 4-18
LIST OF TABLES

(continued)

ix

Table 5-1. Variables in the PtTemporal Input Point Source Inventory SAS® File When

Processing Data for ASPEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-9

Table 5-2. Variables in the PtTemporal Input Point Source Inventory SAS® File When

Processing Data for ASPEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-10

Table 5-3. Required Ancillary Input Files for PtTemporal . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-12

Table 5-4. Keywords in the PtTemporal Batch File When Processing Data for Either ASPEN or

ISCST3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14

Table 6-1. Order of Precedence for MACT-based Emission Reduction Information . . . . . . . 6-7

Table 6-2. Specification of User-defined Emission Reduction Information and Order of

Precedence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9

Table 6-3. Assignment of Primary and Additional Reduction Variables . . . . . . . . . . . . . . . . 6-11

Table 6-4. Summary of Equations used to Apply Primary Emission Reduction Information 6-12

Table 6-5. Summary of Equations used to Apply Additional Emission Reduction Information . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-13

Table 6-6. Variables in the PtGrowCntl Input Point Source Inventory SAS® File When

Processing Data for ASPEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14

Table 6-7. Variables in the PtGrowCntl Input Point Source Inventory SAS® File When

Processing Data for ISCST3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16

Table 6-8. Required Ancillary Input Files for PtGrowCntl . . . . . . . . . . . . . . . . . . . . . . . . . . 6-18

Table 6-9. Regional Assigment of Growth Factors in the Growth Factor Files . . . . . . . . . . . 6-19

Table 6-10. Keywords for Selecting PtGrowCntl Functions . . . . . . . . . . . . . . . . . . . . . . . . . 6-22

Table 6-11. Keywords in the PtGrowCntl Batch File For Either ASPEN or ISCST3 . . . . . . 6-23

Table 7-1. Assignment of Source Groups for ASPEN model Using Source Type . . . . . . . . . . 7-4

Table 7-2. Variables in the PtFinal_ASPEN Input Point Source Inventory SAS® File . . . . . . 7-8

Table 7-3. Required Ancillary Input Files for PtFinal_ASPEN . . . . . . . . . . . . . . . . . . . . . . . 7-10

Table 7-4. Keywords for Selecting PtFinal_ASPEN Functions . . . . . . . . . . . . . . . . . . . . . . . 7-11

Table 7-5. Keywords in the PtFinal_ASPEN Batch File . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-12

Table 7-6. Variables Added to Input Inventory in Creating the PtFinal_ASPEN Output Point

Source Inventory SAS® File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-14

Table 7-7. PtFinal_ASPEN Output ASCII File Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-15

Table 8-1. Assignment of Source Groups for the ISCST3 model . . . . . . . . . . . . . . . . . . . . . . . 8-4

Table 8-2. Default ISCST3 Volume Source Release Parameters Assigned to Fugitive and

Horizontal Emission Release Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-6

Table 8-3. ISCST3 Deposition Algorithms and Required Information . . . . . . . . . . . . . . . . . . 8-6

Table 8-4. Modeling Grid Information Required by PtFinal_ISCST3 to Assign Grid Cell . . . 8-7

Table 8-5. ISCST3 SO Pathway Run Stream Include Files . . . . . . . . . . . . . . . . . . . . . . . . . . 8-11

Table 8-6. ISCST3 SO Pathway Include File Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-12

Table 8-7. Variables in the PtFinal_ISCST3 Input Point Source Inventory SAS® File . . . . . 8-13

Table 8-8. Required Ancillary Input Files for PtFinal_ISCST3 . . . . . . . . . . . . . . . . . . . . . . . 8-15

Table 8-9. Keywords for Selecting PtFinal_ISCST3 Functions . . . . . . . . . . . . . . . . . . . . . . . 8-18

Table 8-10. Keywords in the PtFinal_ISCST3 Batch File . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-19
LIST OF TABLES

(continued)

x

Table 8-11. Variables Added to Input Inventory in Creating the PtFinal_ISCST3 Output Point

Source Inventory SAS® File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-22

Table 9-1. Surrogates for Spatially Allocating Emissions for the ASPEN model . . . . . . . . . . 9-4

Table 9-2. Variables Required in the AreaPrep Input Area Source Inventory SAS® File . . . . 9-6

Table 9-3. Ancillary Input Files for AreaPrep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-7

Table 9-4. Keywords in AreaPrep Batch File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-9

Table 10-1. Variables Required in the MobilePrep Input Mobile Source Inventory SAS® File10-4

Table 10-2. Keywords in the MobilePrep Batch File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-4

Table 11-1. Specification of User-defined Emission Reduction Information and Order of

Precedence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-17

Table 11-2. Assignment of Primary and Additional Control Variables . . . . . . . . . . . . . . . . 11-18

Table 11-3. Equations Used to Apply Primary and Additional Emission Reduction 

Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-29

Table 11-4. Variables in the AMProc Input Non-point Source Inventory SAS® File . . . . . 11-22

Table 11-5. Variables in the AMProc Input Mobile Source Inventory SAS® File . . . . . . . . 11-23

Table 11-6. Ancillary Files for AMProc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-24

Table 11-7. Keywords in the AMProc Batch File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-30

Table 11-8. Format of AMProc ASCII Data File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-31

Table 11-9. AMProc Output File Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-37

Table 11-10. Format of AMProc ASCII Data File Created when Processing Data 

for ASPEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-38

Table 11-11. Variables Contained in AMProc Core SAS® Output File Created when Processing

Data for ASPEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-39

Table 11-12. Variables Contained in AMProc Extended SAS® Output File For ASPEN 

and Output SAS® Created when Processing Data for ISCST3 . . . . . . . . . . . . . . . . . . . . 11-40

Table 12-1. Default ISCST3 Area Source Release Parameters . . . . . . . . . . . . . . . . . . . . . . . 12-4

Table 12-2. ISCST3 Deposition Algorithms and Required Information . . . . . . . . . . . . . . . . 12-5

Table 12-3. ISCST3 SO Pathway Run Stream Include Files . . . . . . . . . . . . . . . . . . . . . . . . . 12-8

Table 12-4. ISCST3 Include File Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-8

Table 12-5. Text File Names Containing Emission Source Groupings . . . . . . . . . . . . . . . . . 12-9

Table 12-6. Variables in the AMFinalFormat Input Inventory SAS® File . . . . . . . . . . . . . . 12-10

Table 12-7. Required Ancillary Input Files for AMFinalFormat . . . . . . . . . . . . . . . . . . . . . 12-11

Table 12-8. Keywords for Selecting AMFinalFormat Functions . . . . . . . . . . . . . . . . . . . . . 12-12

Table 12-9. Keywords in the AMFinalFormat Batch File . . . . . . . . . . . . . . . . . . . . . . . . . . 12-13

Table 12-10. Variables in the AMFinalFormat Output SAS® File . . . . . . . . . . . . . . . . . . . 12-16
xi

LIST OF FIGURES

Figure 1-1. Overview of EMS-HAP Processing for ASPEN . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4

Figure 1-2. Overview of EMS-HAP Processing for ISCST3 . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6

Figure 2-1. Overview of Airport Emissions Processing for ASPEN and ISCST3 . . . . . . . . . . 2-1

Figure 2-2. AirportProc Flow Chart when Processing Data for ASPEN . . . . . . . . . . . . . . . . . 2-3

Figure 2-3. AirportProc Flow Chart when Processing Data for ISCST3 . . . . . . . . . . . . . . . . . 2-4

Figure 3-1. Overview of PtDataProc within EMS-HAP Point Source Processing . . . . . . . . . . 3-1

Figure 3-2. PtDataProc Flow Chart when Processing Data for ASPEN . . . . . . . . . . . . . . . . . . 3-3

Figure 3-3. PtDataProc Flow Chart when Processing Data for ISCST3 . . . . . . . . . . . . . . . . . . 3-4

Figure 4-1. Overview of PtModelProc within EMS-HAP Point Source Processing . . . . . . . . 4-1

Figure 4-2. PtModelProc Flow Charts when Processing Data for ASPEN and ISCST3 . . . . . 4-2

Figure 5-1. Overview of PtTemporal within EMS-HAP Point Source Processing . . . . . . . . . 5-1

Figure 5-2. PtTemporal Flow Chart when Processing Data for ASPEN . . . . . . . . . . . . . . . . . 5-3

Figure 5-3. PtTemporal Flow Chart when Processing Data for ISCST3 . . . . . . . . . . . . . . . . . 5-4

Figure 6-1.Overview of PtGrowCntl within EMS-HAP Point Source Processing . . . . . . . . . . 6-1

Figure 6-2. PtGrowCntl Flow Chart when Processing Data for ASPEN and ISCST3 . . . . . . . 6-3

Figure 7-1. Overview of PtFinal_ASPEN within EMS-HAP Point Source Processing . . . . . 7-1

Figure 7-2. PtFinal_ASPEN Flow Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-3

Figure 8-1. Overview of PtFinal_ISCST3 within EMS-HAP Point Source Processing . . . . . 8-1

Figure 8-2. PtFinal_ISCST3 Flow Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-3

Figure 9-1. Overview of AreaPrep within EMS-HAP Non-point Source Processing . . . . . . . 9-1

Figure 9-2. AreaPrep Flow Chart for Processing data for ASPEN or ISCST3 . . . . . . . . . . . . . 9-2

Figure 10-1. Overview of MobilePrep within EMS-HAP Mobile Source Processing . . . . . . 10-1

Figure 10-2. MobilePrep Flowchart for Processing Data for ASPEN or ISCST3 . . . . . . . . 10-2

Figure 11-1. Overview of AMProc within EMS-HAP for Non-point and Mobile Source

Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1

Figure 11-2. AMProc Flowchart when Processing Data for ASPEN . . . . . . . . . . . . . . . . . . . 11-3

Figure 11-3. AMProc Flowchart when Processing Data for ISCST3 . . . . . . . . . . . . . . . . . . . 11-4

Figure 11-4. The Spatial Allocation Process in AMProc . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-7

Figure 11-5. Non-point and Mobile Temporal Emissions Processing Flowchart when Processing

Data for ASPEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-10

Figure 11-6. Non-point and Mobile Temporal Emissions Processing Flowchart when Processing

Data for ISCST3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-10

Figure 11-7. Non-point and Mobile Source Growth and Control Projection . . . . . . . . . . . . 11-14

Figure 12-1. Overview of AMFinalFormat within EMS-HAP for Non-point and Mobile Source

Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1

Figure 12-2. AMFinalformat Flowchart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-3
xii

DEFINITION OF ACRONYMS

AIRS EPA’s Aerometric Information Retrieval System

AMS AIRS Area and Mobile System source category code for area and mobile sources

of emissions

ASPEN Assessment System for Population Exposure Nationwide 

CAS Chemical Abstract Service

EMS-HAP The Emission Modeling System for Hazardous Air Pollutants

EPA United States Environmental Protection Agency

ISCST3 Industrial Source Complex Short Term Model, Version 3

HAP Hazardous Air Pollutant, as defined by Section 112 of the Clean Air Act

MACT Maximum Available Control Technology standards for HAP, established under

Section 112 of the Clean Air Act

NTI EPA’s National Toxics Inventory

OAQPS EPA’s Office of Air Quality Planning and Standards

ORD EPA’s Office of Research and Development

OTAQ EPA’s Office of Transportation and Air Quality 

SAROAD Air pollution chemical species classification system used in EPA’s initial data

base for “Storage and Retrieval of Aerometric Data”

SIC Standard Industrial Classification code used for Federal economic statistics

SCC AIRS Source Classification Code used for point sources of emissions

SAF Spatial Allocation Factor

TAF Temporal Allocation Factor
1-1

CHAPTER 1

Introduction 

1.1 What is EMS-HAP?

The Emissions Modeling System for Hazardous Air Pollutants (EMS-HAP) Version 2.0 is a

series of computer programs that process emission inventory data for toxic air pollutants for

subsequent air quality modeling using either the Assessment System for Population Exposure

Nationwide (ASPEN) dispersion model1

 or the Industrial Source Complex Short Term Version 3

(ISCST3) dispersion model.2

 In addition, EMS-HAP allows you to project base-year emissions

to a future year for use in these air quality models. 

LEMS-HAP Version 2.0 replaces EMS-HAP Version 1.0, and this User’s Guide supercedes the

Version 1.0 User’s Guide (EPA-454/R-00-018). The key differences in Version 2 are the added

functionality to process emissions for the ISCST3 air quality model and added flexibility in

estimating future-year emissions.

To process data for the ASPEN model, EMS-HAP:

C checks inventory location data, converts to latitude/longitude coordinates and defaults

missing or out-of-range data where possible,

• checks inventory stack parameter data and defaults missing or out-of-range data,

C groups and/or partitions individual pollutant species (e.g., groups lead oxide, lead nitrate

into a lead group; partitions lead chromate into lead and chromium groups),

C facilitates the selection of pollutants and pollutant groups for modeling,

C spatially allocates county-level stationary and mobile source emissions to the census tract

level using spatial surrogates such as population,

C allocates county-level aircraft emissions to airport locations, 

C temporally allocates annual emission rates to annually averaged (i.e., same rate for every

day of the year) 3-hour emission rates,

C assigns reactivity and particulate size classes to the pollutants to allow ASPEN to

simulate decay and deposition, and,

C produces emission files formatted for direct input into the ASPEN model. 

To process data for the ISCST3 model, EMS-HAP:

C converts inventory locations to UTM coordinates and removes inventory records where

location data are missing,

• checks inventory stack parameter data and defaults missing or out-of-range data,

• identifies and processes point sources as one of three ISCST3 source types: (ISCST3

point, ISCST3 volume, and ISCST3 area),
1-2

C groups and/or partitions individual pollutant species (e.g., groups lead oxide, lead nitrate

into a lead group; partitions lead chromate into lead and chromium groups),

C facilitates the selection of pollutants and pollutant groups for modeling,

C spatially allocates county-level stationary and mobile source emissions to grid cells using

spatial surrogates such as population,

C allocates county-level aircraft emissions to airport locations and assigns dimensions and

release parameters in order to process the aircraft emissions as ISCST3 area sources,

C temporally allocates annual emissions to seasonal and day-type specific hourly emission

rates

• assigns particle size distribution, scavenging coefficients, gas deposition parameters, and

elevation data, and

C produces the Source (SO) pathway section of an ISCST3 run stream. 

For either the ASPEN or ISCST3 model, EMS-HAP projects base-year emissions to a future

year, accounting for growth and emission reductions resulting from emission reduction scenarios

such as the implementation of the Maximum Achievable Control Technology (MACT)

standards.

The U.S. Environmental Protection Agency’s Office of Air Quality Planning and Standards

(EPA/OAQPS), referred to hereafter as “we”, developed EMS-HAP to facilitate multiple runs of

ASPEN or ISCST3 and to analyze emission reduction scenarios. The EMS-HAP/ASPEN system

has been used to estimate annual average ambient air quality concentrations of multiple toxic

pollutants emitted from a large number of sources at a large scale (i.e., nationwide) as part of a

national scale air toxics assessment.3

 The EMS-HAP/ISCST3 system has been used to estimate

annual ambient air quality concentrations of toxic pollutants emitted from a large number of 

sources on an urban scale.4

Although we tailored this version of EMS-HAP to process the July 2001 version of the 1996

National Toxics Inventory (NTI), you can use it for any emission inventory following the

instructions in this guide. The 1996 NTI is the first comprehensive model-ready national

inventory of toxics, containing site-specific estimates of hazardous air pollutants (HAPs).5

1.2 Who are the users of EMS-HAP?

This user’s guide, and in particular Appendices D and E, are intended for members of the

engineering or scientific community who would like to understand the technical issues that arise

in the interface between a toxics emissions inventory with a multitude of emission sources and

the ASPEN and ISCST3 air quality dispersion models that estimate air quality concentrations.

Potential users of EMS-HAP are: 1) EPA engineers or scientists conducting a national scale

assessment for toxic air pollutants using the ASPEN model, 2) EPA/State/local engineers or

scientists conducting an urban scale assessment of toxic air pollutants using the ISCST3 model,

and 3) EPA/State/local engineers or scientists interested in projecting toxic emissions to future
1-3

years for planning purposes.

1.3 What are the main features of EMS-HAP?

EMS-HAP is written in the SAS® programming language and is designed to run on any UNIX®

workstation. EMS-HAP can process three types of emission data: (1) point source data where

emission sources are associated with specific geographic coordinates; (2) county-level “nonpoint” source data where stationary source emissions are reported at the county level; and (3)

mobile source data where emission sources are also reported at the county level. EMS-HAP

requires all emission inventory input data to be SAS® formatted.

Note we use the term “non-point inventory” to describe what was formerly referred to as the area

source inventory so as not to conflict with the regulatory term “area source” which we use to

describe a type of stationary source based on its size as defined in the Clean Air Act. Non-point

sources are stationary sources inventoried at the county-level. We are still, however, using the

term “area” in the name of the EMS-HAP programs for processing the non-point inventory. 

To process data for the ASPEN model, EMS-HAP consists of five point source programs, two

non-point source programs, two mobile source programs, and one aircraft emissions program:

Point Source Programs

1. PtDataProc – The Data Quality Assurance Program, Chapter 3

2. PtModelProc - The Model-Specific Program, Chapter 4

3. PtTemporal - The Temporal Allocation Program, Chapter 5

4. PtGrowCntl - The Growth and Control Program, Chapter 6

5. PtFinal_ASPEN - The Final Format Program for ASPEN, Chapter 7

Non-point Source Programs

1. AreaPrep - The Area Source AMProc Preparation Program, Chapter 9

2. AMProc - The Area and Mobile Source Processor, Chapter 11

Mobile Source Programs

1. MobilePrep - The Mobile Source AMProc Preparation Program, Chapter 10

2. AMProc - The Area and Mobile Source Processor, Chapter 11

Aircraft Program

1. AirportProc - The Aircraft Emissions Processing Program, Chapter 2

Note that AMProc is used for both non-point and mobile source emissions processing.

Figure 1-1 provides a general overview of EMS-HAP data processing for the ASPEN model. As

you can see, the program PtGrowCntl is optional, used only when you want to project the point

source inventory to a future year. 
1-4

Figure 1-1. Overview of EMS-HAP Processing for ASPEN

AirportProc

PtDataProc

PtModelProc

PtTemporal

PtGrowCntl

PtFinal_ASPEN

AreaPrep

AMProc

OR

Point Source Emissions 

File, including allocated 

aircraft emissions data, to be 

processed as Point Sources 

for ASPEN

Mobile Source Emissions File, 

excluding allocated aircraft 

emissions data

Non-point Source 

Emissions File

ASPEN Non-point 

(Area) Source 

Emissions Files

ASPEN Point Source 

Emissions Files

Point Source Emissions File Mobile Source Emissions File

Aircraft Emissions

Processing

Point Source Emissions 

File, including allocated 

aircraft emissions data, to be 

processed as Point Sources 

for ASPEN

MobilePrep

ASPEN Mobile 

Source Emissions 

Files

AMProc

Mobile Source Emissions File, 

excluding allocated aircraft 

emissions data

Mobile Source Emissions 

Processing

Point Source Emissions 

Processing

Non-point Source Emissions 

Processing
1-5

To process data for the ISCST3 model, EMS-HAP utilizes many of the same programs it uses for

ASPEN. These are five point source programs, three non-point source programs, three mobile

source programs and one aircraft emissions program:

Point Source Programs (Note that these programs also process ISCST3 area and volume sources

that are associated with specific geographic coordinates such as the allocated aircraft emission

records that are produced by AirportProc).

1. PtDataProc – The Data Quality Assurance Program, Chapter 3

2. PtModelProc - The Model-Specific Program, Chapter 4

3. PtTemporal - The Temporal Allocation Program, Chapter 5

4. PtGrowCntl - The Growth and Control Program, Chapter 6

5. PtFinal_ISCST3 - The Final Format Program for ISCST3, Chapter 8

Non-Point Source Programs

1. AreaPrep - The Area Source AMProc Preparation Program, Chapter 9

2. AMProc - The Area and Mobile Source Processor, Chapter 11

3. AMFinalFormat - The Area and Mobile Final Format Program for ISCST3, Chapter 12

Mobile Source Programs

1. MobilePrep - The Mobile Source AMProc Preparation Program, Chapter 10

2. AMProc - The Area and Mobile Source Processor, Chapter 11

3. AMFinalFormat - The Area and Mobile Final Format Program for ISCST3, Chapter 12

Aircraft Program

1. AirportProc - The Aircraft Emissions Processing Program, Chapter 2

Note that AMProc is used for both non-point and mobile source emissions processing.

Figure 1-2 provides a general overview of EMS-HAP data processing for the ISCST3 model. As

you can see, the program PtGrowCntl is optional, used only when you want to project the point

source inventory to a future year. 
1-6

Figure 1-2. Overview of EMS-HAP Processing for ISCST3

PtDataProc

PtModelProc

PtTemporal

PtFinal_ISCST3

MobilePrep

AreaPrep

AMProc

AMFinalFormat

OR PtGrowCntl

Point Source Emissions 

File, including allocated 

aircraft emissions data to be 

processed as ISCST3 area 

sources

Mobile Source 

Emissions File, 

excluding allocated 

aircraft emissions data

Non-point Source 

Emissions File

Include Files for the 

SO Pathway Section 

of the ISCST3 Run 

Stream for Gridded

Mobile Sources

Include Files for the 

SO Pathway Section 

of the ISCST3 Run 

Stream for Gridded

Non-point Sources

ISCST3 SO Pathway of 

Run Stream Section for 

ISCST3 Point, Volume, 

and Area Sources

AMProc

AMFinalFormat

AirportProc

Point Source Emissions 

File, including allocated 

aircraft emissions data to be 

processed as ISCST3 area 

sources

Mobile Source Emissions File, 

excluding allocated aircraft 

emissions data

Point Source Emissions File 

(including optional ISCST3 

area and volume sources) Mobile Source Emissions File

Aircraft Emissions

Processing

Mobile Source Emissions 

Processing

Point Source Emissions 

Processing Non-point Source Emissions 

Processing
1-7

In addition to the SAS® code for the different programs, EMS-HAP includes ancillary input files

in either SAS® or ASCII text format. An ancillary file is any data file you input to the program

other than your emission inventory. Generally, the SAS® ancillary files are those that you are not

expected to change when running EMS-HAP. For example, one SAS® ancillary file contains the

radius of each census tract. The spatial allocation factor files are also in SAS® format. Note that

you would need to change these every time you run a different domain (for an urban scale

assessment). You would likely need to use a geographic information system (which is not part of

EMS-HAP) to develop these files. The text ancillary files are those that you may choose to

change in order to tailor the emission processing to your specific needs. For example, the HAP

table file (ASCII text format) allows you to select the particular HAPs to model. You can model

all of the HAPs in your inventory or any subset of HAPs by modifying this file.

1.4 How do I use this guide?

This guide describes the programs that comprise EMS-HAP, and gives instructions on how to

use them to create ASPEN emission input files or the SO pathway section of an ISCST3 run

stream for base year or projected year inventories of your choice. See also Sections 1.5 and 1.6

for “quick start” instructions. This guide is not specific to any one input inventory. For example,

you are not limited to using the 1996 NTI to run EMS-HAP. You need only make sure your

input inventory meets the requirements described within each program. 

We present the programs in the order we choose to use them. Chapter 2 describes the

AirportProc program. Chapters 3 through 8 describe the point source processing programs. 

Chapters 9 through 12 describe the programs for non-point and mobile source processing. Each

chapter describes the function of the program, how to run the program, all required ancillary

input files and emission inventory data requirements, and how to evaluate the output to

determine if the data were processed successfully. In this guide, all ancillary SAS® data files and

SAS® programs are named without their extension.

Appendix A presents the file formats of the ancillary input files. Appendix B contains sample

batch files for running the EMS-HAP programs. Appendix C discusses preparation of the point

source component of the 1996 NTI for input into EMS-HAP. Appendix D presents the

methodologies used to prepare emission input files for the ASPEN model for a national scale air

toxics assessment. Appendix D also discusses how we developed the key ancillary input files,

such as the spatial allocation factor files, used for the assessment. Appendix E presents the

methodologies used to prepare the SO pathway section of the ISCST3 run stream used in a test

model run for the Houston domain. Appendix E also discusses how we developed the ancillary

input files unique for processing data for ISCST3, such as the temporal allocation factor file used

in the test model run. We provide, with EMS-HAP, the ancillary files we used to produce the

1996 ASPEN modeling inventory based on the July 2001 version of the 1996 NTI and the 1996

SO pathway section of the ISCST3 run stream for the Houston domain. 

Separate user’s guides are available for the ASPEN model1

 and the ISCST3 model2. Users

familiar with these models’ input requirements will have a better understanding of EMS-HAP.
1-8

**FOR ASPEN* STEP 0: SET UP DIRECTORIES

EMS-HAP programs provide a great deal of flexibility for you to have

numerous directories (input files, output files, ancillary SAS files, ancillary text

files, etc.). Here’s an optional directory structure for you to get started. 

Programs directory

Put all EMS-HAP programs and “include” programs (“include” programs are only

associated with PtDataProc) in this directory.

Ancillary files directory

Put all ancillary files for all programs in this directory. (Yes, it will be large!)

Mobile source processing directory* 

Put batch files for AirportProc, MobilePrep and AMProc here. 

Run AirportProc, MobilePrep and AMProc here. Put input file to AirportProc here.

Direct output files from AirportProc, MobilePrep here.

Mobile source outputs directory* 

Put all output files (including the ASPEN-ready files) from AMProc here.

Point source processing directory* 

Put all point source program batch files here. Run all point source programs here. 

Direct output files from all point source programs except PtFinal_ASPEN here.

Point source outputs directory*

Put all output files from PtFinal_ASPEN here.

Non-point source processing directory*

Put input file toAreaPrep and batch files for AreaPrep and AMProc here.

Run AreaPrep and AMProc here. 

Direct output from AreaPrep here. 

Non-point source outputs directory*

Put all output files (including the ASPEN-ready files) from AMProc here.

*Make two separate directories: one for directly emitted HAPs, and one for precursor 

emissions.

1.5 Quick-start for ASPEN: instructions for using EMS-HAP to prepare a toxics emissions

inventory for the ASPEN model 
1-9

***Conduct below processing separately for HAPs and precursors to HAPs***

**FOR ASPEN* STEP 2: PROCESS POINT SOURCE EMISSIONS 

-do this twice if you choose to process the point source aircraft emissions separately 

from the non-aircraft emissions -

Run PtdataProc

This program provides quality assurance and augmentation (if necessary) of point source

locations and stack parameters and reduces the inventory size by removing unessential

variables (Chapter 3)

1. Prepare point source inventory for input or use point source output inventory of

PtAirportProc. (Section 3.2.1)

2. Prepare ancillary files (Section 3.2.2 and Appendix A Figures 3 thru 13)

3. Prepare batch file (Section 3.2.3 and Appendix B Figure 3)

4. Execute batch file and check results (Sections 3.2.4 and 3.3)

Run PtModelProc

This program manages the list of pollutants, groups/partitions them, and prepares ASPEN

specific parameters. (Chapter 4)

1. Use output inventory of PtdataProc for input (Section 4.2.1)

2. Prepare ancillary files (Sections 4.2.2 - 4.2.3 and Appendix A Figures 10, 13-15 and

Tables 1-4)

3. Prepare batch file (Section 3.2.3 and Appendix B Figure 5)

4. Execute batch file and check results (Sections 4.2.5 and 4.3)

Run PtTemporal

This program temporally allocates annual emissions for use with ASPEN. (Chapter 5)

1. Use output inventory of PtASPENProc for input (Section 5.2.1)

2. Prepare ancillary files (Sections 5.2.2 - 5.2.4 and Appendix A Figures 16a, 17-19)

3. Prepare batch file (Section 5.2.5 and Appendix B Figure 7)

4. Execute batch file and check results (Sections 5.2.6 and 5.3)

Run PtGrowCntl *OPTIONAL*

This optional program will project the temporally allocated emissions to a future year.

(Chapter 6)

1. Use output inventory of PtTemporal for input (Section 6.2.1)

2. Prepare ancillary files (Sections 6.2.2 - 6.2.6 and Appendix A Figures 20-24)

3. Prepare batch file (Section 6.2.7 and Appendix B Figure 9)

4. Execute batch file and check results (Sections 6.2.8 and 6.3)

Run PtFinal_ASPEN

This program assigns source groups and creates the ASPEN input files and other output text

SAS files that contain the information in the ASPEN input files. (Chapter 7).

1. Use output inventory of PtTemporal or PtGrowCntl for input (Section 7.2.1)

2. Prepare ancillary files (Sections 7.2.2 - 7.2.3 and Appendix A Figures 25-28)

3. Prepare batch file (Section 7.2.4 and Appendix B Figure 11)

4. Execute batch file and check results (Sections 7.2.5 and 7.3)

**FOR ASPEN* STEP 1: PROCESS AIRCRAFT EMISSIONS 

Run AirportProc

This program creates point source aircraft emissions by allocating the county-level emissions to 

airport locations (Chapter 2)

1. Prepare mobile source inventory and (if concatenating point source emissions with 

allocated aircraft emissions) point source inventory (Section 2.2.1 and 2.2.2)

2. Prepare ancillary file (Section 2.2.3 and Appendix A Figure 1)

3. Prepare batch file (Section 2.2.4 and Appendix B Figure 1)

4. Execute batch file and check results (Sections 2.2.5 and 2.3)
1-10

*FOR ASPEN* STEP 3: PROCESS NON-POINT SOURCE EMISSIONS (these are the 

stationary source emissions that are inventoried at the county level)

Run AreaPrep

This program matches spatial surrogates to non-point source categories. (Chapter 9)

1. Prepare non-point emission inventory for input (Section 9.2.1)

2. Prepare ancillary files (Sections 9.2.2 - 9.2.3 and Appendix A Figures 16a, 17-18, 33-34)

3. Prepare batch file (Section 9.2.4 and Appendix B Figure 13)

4. Execute batch file and check results (Sections 9.2.5 and 9.3

AMProc

This program performs pollutant grouping/partioning, prepares ASPEN-specific modeling

parameters, spatially and temporally allocates emissions, performs projections (optional),

and prepares ASPEN input files and other SAS and text files containing information in the

ASPEN input files, and more detailed level information, if desired. (Chapter 11)

1. Prepare non-point emission inventory for input (Section 11.2.1)

2. Prepare ancillary files (Sections 11.2.2 - 11.2.7 and Appendix A Figures 14, 16a, 20, 22,

24, 28, 33, 35, 37)

3. Prepare batch file (Section 11.2.8 and Appendix B Figure 15)

4. Execute batch file and check results (Sections11.2.9 and 11.3)

FOR ASPEN* STEP 4: PROCESS MOBILE SOURCE EMISSIONS

Run MobilePrep

This program splits up the mobile inventory into onroad and nonroad inventories. 

Chapter 9)

1. Use output mobile inventory from AirportProc for input (Section 10.2.1)

2. Prepare batch file (Section 10.2.3 and Appendix B Figure 14)

3. Execute batch file and check results (Sections10.2.4 and 11.3)

Run AMProc - NOTE: You will likely need to run this separately for nonroad and onroad

inventories as discussed in 10.1.1 You will likely not run the projection option unless you

develop the necessary input files.

This program performs pollutant grouping/partioning, prepares ASPEN-specific modeling 

parameters, spatially and temporally allocates emissions, assigns source groups, performs 

projections (optional), and prepares ASPEN input files and other SAS and text files

containing information in the ASPEN input files, and more detailed level information, if

desired. (Chapter 11)

1. Use output onroad or nonroad or total mobile inventory from MobilePrep for input

(Section 11.2.1)

2. Prepare ancillary files (Sections 11.2.2 - 11.2.7 and Appendix A Figures 14, 

16a, 24,28,33, 35, 37)

3. Prepare batch file (Section 11.2.8 and Appendix B Figure 15)

4. Execute batch file and check results (Sections11.2.9 and 11.3)
1-11

**FOR ISCST3* STEP 0: SET UP DIRECTORIES

EMS-HAP programs provide a great deal of flexibility for you to have

numerous directories (input files, output files, ancillary SAS files, ancillary text

files, etc.). Here’s an optional directory structure for you to get started. 

Programs directory

Put all EMS-HAP programs and “include” programs (“include” programs are only

associated with PtDataProc) in this directory.

Ancillary files directory

Put all ancillary files for all programs in this directory. (Yes, it will be large!)

Mobile source processing directory 

Put batch files for AirportProc, MobilePrep, AMProc and AMFinalFormat here. 

Run AirportProc, MobilePrep, AMProc and AMFinalFormat here. 

Put input file to AirportProc here.

Direct output files from AirportProc, MobilePrep and AMProc here.

Mobile source outputs directory

Put all output files (including the ISCST3 output files) from AMFinalFormat here.

Point source processing directory

Put all point source program batch files here. Run all point source programs here. 

Direct output files from all point source programs except PtFinal_ISCST3 here.

Point source outputs directory

Put all output files from PtFinal_ISCST3 here.

Non-point source processing directory

Put input file toAreaPrep here. 

Put batch files for AreaPrep, AMProc and AMFinalFormat here.

Run AreaPrep, AMProc and AMFinalFormat here. 

Direct output files from AreaPrep and AMProc here.

Non-point source outputs directory

Put all output files (including the ASPEN-ready files) from AMFinalFormat here.

1.6 Quick-start for ISCST3: instructions for using EMS-HAP to prepare a toxics emissions

inventory for the ISCST3 model 
1-12

FOR ISCST3* STEP 1: PROCESS AIRCRAFT EMISSION SOURCES

AirportProc

This program creates point source aircraft emissions to be modeled as ISCST3-area sources

by allocating the county-level emissions to airport locations and appending the appropriate

dimensions and release parameters to these sources. (Chapter 2)

1. Prepare mobile source inventory and (if concatenating with allocated aircraft emissions) 

point source inventory (Section 2.2.1 and 2.2.2)

2. Prepare ancillary files (Section 2.2.3 and Appendix A Figures1and 2)

3. Prepare batch file ( Section 2.2.4 and Appendix B Figure 2)

4. Execute program and check results (Section 2.3)

FOR ISCST3* STEP 2: PROCESS POINT SOURCE EMISSIONS (do this twice if you choose 

to process the point source aircraft emissions separately from the non-aircraft 

emissions) 

PtdataProc

This program provides quality assurance of point source locations and stack parameters and

augmentation (if necessary) of stack parameters. It also reduces the inventory size by

removing unessential variables (Chapter 3)

1. Prepare point source inventory for input or use point source output inventory of

PtAirportProc. (Section 3.2.1)

2. Prepare ancillary files (Section 3.2.2 and Appendix A Figures 6-8 and 11-13)

3. Prepare batch file (Section 3.2.3 and Appendix B Figure 4

4. Execute batch file and check results (Sections 3.2.4 and 3.3)

PtModelProc

This program manages the list of pollutants, groups/partitions them, and prepares ISCST3

specific parameters. (Chapter 4)

1. Use output inventory of PtdataProc for input (Section 4.2.1)

2. Prepare ancillary files (Sections 4.2.2 - 4.2.3 and Appendix A Figures 10, 13-15 

and Tables 1-4)

3. Prepare batch file (Section 3.2.3 and Appendix B Figure 5)

4. Execute batch file and check results (Sections 4.2.5 and 4.3)

PtTemporal

This program temporally allocates annual emissions for use with ISCST3. (Chapter 5)

1. Use output inventory of PtASPENProc for input (Section 5.2.1)

2. Prepare ancillary files (Sections 5.2.2 - 5.2.4 and Appendix A Figures 16b, 17- 19)

3. Prepare batch file (Section 5.2.5 and Appendix B Figure 8)

4. Execute batch file and check results (Sections 5.2.6 and 5.3)

PtGrowCntl *OPTIONAL*

This optional program will project the temporally allocated emissions to a future year.

(Chapter 6)

1. Use output SAS inventory of PtTemporal for input (Section 6.2.1)

2. Prepare ancillary files (Sections 6.2.2 - 6.2.6 and Appendix A Figures 20-24)

3. Prepare batch file (Section 6.2.7 and Appendix B Figure 10)

4. Execute batch file and check results (Sections 6.2.8 and 6.3)

PtFinal_ISCST3

This program assigns source groups and creates the SO Pathway section of the ISCST3 run

stream and an output SAS files that contains the information in the SO Pathway section of

the run stream. (Chapter 8).

1. Use output SAS inventory of PtTemporal or PtGrowCntl for input (Section 8.2.1)

2. Prepare ancillary files (Sections 8.2.2 - 8.2.4 and Appendix A Figures 25-27 and 29-31)

3. Prepare batch file (Section 8.2.5 and Appendix B Figure 12)

4. Execute batch file and check results (Sections 8.2.6 and 8.3)
1-13

*FOR ISCST3* STEP 3: PROCESS NON-POINT SOURCE EMISSIONS (these are the 

stationary source emissions that are inventoried at the county level)

AreaPrep

This program matches spatial surrogates to non-point source categories. (Chapter 9)

1. Prepare non-point emission inventory for input (Section 9.2.1)

2. Prepare ancillary files (Sections 9.2.2 - 9.2.3 and Appendix A 

Figures 16b, 17-18, 33- 34)

3. Prepare batch file (Section 9.2.4 and Appendix B Figure 13)

4. Execute batch file and check results (Sections 9.2.5 and 9.3)

AMProc

This program performs pollutant grouping/partioning, prepares ISCST3-specific modeling

parameters, spatially and temporally allocates emissions, performs projections (optional),

and and assigns source groups. (Chapter 11)

1. Prepare non-point emission inventory for input (Section 11.2.1)

2. Prepare ancillary files (Sections 11.2.2 - 11.2.7 and Appendix A Figures 14,

16b, 20, 22, 24, 28, 33, 36-37)

3. Prepare batch file (Section 11.2.8 and Appendix B Figure 16)

4. Execute batch file and check results (Sections11.2.9 and 11.3)

AMFinalFormat - NOTE: You will need (after running this program) to create the SO

Pathway Section of the ISCST3 run stream by using the output files from this program in

conjunction with the SO Pathway Section created by PtFinal_ISCST3.

This program prepares ISCST3-specific parameters and creates include files text files for

use in creating the SO Pathway section of the ISCST3 run stream. (Chapter 12) 

1. Use output SAS non-point inventory from AMProc for input (Section 12.2.1)

2. Prepare ancillary files (Sections 12.2.2 - 12.2.3 and Appendix A Figures 29, 31- 32) 

3. Prepare batch file (Section 11.2.8 and Appendix B Figure 17)

4. Execute batch file and check results (Sections11.2.9 and 11.3)

FOR ISCST3* STEP 4: PROCESS MOBILE SOURCE EMISSIONS

MobilePrep

This program splits up the mobile inventory into onroad and nonroad inventories. 

(Chapter 9)

1. Use output SAS mobile inventory from AirportProc for input (Section 10.2.1)

2. Prepare batch file (Section 10.2.3 and Appendix B Figure 14)

3. Execute batch file and check results (Sections10.2.4 and 11.3)

AMProc - NOTE: You will likely need to run this separately for nonroad and

onroad inventories as discussed in 10.1.1 You will likely not run the projection option

unless you develop the necessary input files.

This program performs pollutant grouping/partioning, prepares ASPEN-specific modeling

parameters, spatially and temporally allocates emissions, performs projections (optional),

and assigns source groups. (Chapter 11)

1. Use output SAS onroad or nonroad or total mobile inventory from MobilePrep

for input (Section 11.2.1)

2. Prepare ancillary files (Sections 11.2.2 - 11.2.7 and Appendix A Figures 14, 

16b, 24, 28, 33, 36-37)

3. Prepare batch file (Section 11.2.8 and Appendix B Figure 16)

4. Execute batch file and check results (Sections11.2.9 and 11.3)

AMFinalFormat- NOTE: You will likely need to run this program separately for

nonroad and onroad inventories. You will also need (after running this program) to create

the SO Pathway Section of the ISCST3 run stream by using the output files from this

program in conjunction with the SO Pathway Section created by PtFinal_ISCST3.

This program prepares ISCST3-specific parameters and creates include files text files for

use in creating the SO Pathway section of the ISCST3 run stream. (Chapter 12)

1. Use output SAS onroad or nonroad or total mobile inventory from AMProc 

for input (Section 12.2.1)

2. Prepare ancillary files (Sections 12.2.2 - 12.2.3 and Appendix A Figures 29, 31 32) 

3. Prepare batch file (Section 11.2.8 and Appendix B Figure 17)

4. Execute batch file and check results (Sections11.2.9 and 11.3)
2-1

AirportProc

Point Source 

Emissions 

File, including 

allocated 

aircraft 

emissions data

Mobile Source 

Emissions File, 

excluding 

allocated 

aircraft 

emissions data

Point Source 

Emissions 

File

Mobile Source 

Emissions File

Flowchart for Processing Point 

Source Emissions with Allocated 

Aircraft Emissions

Flowchart for Processing 

Allocated Aircraft Emissions 

Separately from Other Point 

Source Emissions

AirportProc

Point Source 

Emissions File 

Consisting only 

of allocated 

aircraft 

emissions data

Mobile Source 

Emissions File, 

excluding 

allocated 

aircraft 

emissions data

Mobile Source 

Emissions File

OR

To Point Source 

Processing: 

starting with 

PtDataProc

To Mobile Source 

Processing: starting 

with MobilePrep

To Point Source 

Processing: 

starting with 

PtDataProc

To Mobile Source 

Processing: starting 

with MobilePrep

CHAPTER 2

Aircraft Emissions Processing 

The Aircraft Emissions Processing Program

(AirportProc)

The flowcharts below (Figure 2-1) show how AirportProc fits into EMS-HAP. AirportProc is

the first program you run in EMS-HAP, and the mobile source and point source inventories you

input to AirportProc are your initial inventories. As seen in the figure (right hand side) you can

run AirportProc for mobile sources only, without appending the point source inventory to the

allocated aircraft emissions. You use the point source output inventory from AirportProc as the

input to PtDataProc (Chapter 3) and the mobile source output inventory as the input to

MobilePrep (Chapter 10).

Figure 2-1. Overview of Aircraft Emissions Processing for ASPEN and ISCST3
2-2

2.1 What is the function of AirportProc?

The Aircraft Emissions Processing Program (AirportProc) provides you with a means to model

aircraft emissions as discrete point sources located at airports instead of spatially allocated

mobile sources. When processing data for the ISCST3 model, AirportProc prepares the aircraft

emissions as discretely located (i.e., not gridded) ISCST3 area sources with the airport-specific

release parameters you provide; if you don’t provide these, then AirportProc uses the defaults

you provide in the batch file (see Table 2-6 in Section 2.2.4). We built these capabilities into

EMS-HAP because airport location data was readily available, and we felt that modeling these

emissions at airport locations, as opposed to spatially allocating them to census tracts or grid

cells, would result in better ambient concentration estimates from either of the models. 

AirportProc performs the functions listed below: 

C Allocates county-level aircraft emissions to specific airports

C Prepares allocated emissions for the point source processing programs

C Assigns the additional variables needed to process aircraft emissions as ISCST3 area

sources when processing data for ISCST3 only

C Appends unallocated airport emissions back to the mobile source inventory

Figure 2-2 shows the flowchart of AirportProc when processing data for ASPEN, and Figure 2-3

shows the flowchart of AirportProc when processing data for ISCST3. The following sections

describe the above bullets.
2-3

Reads Keywords

Figure 2-2. AirportProc Flowchart when Processing Data for ASPEN

Appends unallocated aircraft emission 

records to mobile source inventory file 

or creates separate file (depending on 

program option)

Appends allocated aircraft emission 

records to point source inventory 

file or creates separate file 

(depending on program option)

Reads mobile source inventory and 

Mobile Source Emissions File extracts aircraft emission records

Unallocated 

Aircraft 

Emissions File

Creates variables required for 

processing aircraft emissions as 

ASPEN point sources

Allocated Aircraft Emissions 

File

Mobile Source Inventory File 

without Aircraft Emissions

Mobile Source 

Inventory File with 

Unallocated Aircraft 

Emissions

Point Source Inventory File 

(optional input)

Point Source Inventory File with 

Allocated Aircraft Emissions

OR

OR

Allocates county-level aircraft emissions 

to airport locations within county

Unallocated Aircraft 

Emissions Records

Allocated Aircraft 

Emissions Records

Batch File Containing 

Keywords e.g. File Names and 

Locations, Program Options
2-4

Batch File Containing Reads Keywords

Keywords e.g. File Names 

and Locations, Program 

Options

Figure 2-3. AirportProc Flowchart when Processing Data for ISCST3

Appends unallocated aircraft emission 

records to mobile source inventory file 

or creates separate file (depending on 

program option)

Appends allocated aircraft emission records to 

point source inventory file or creates separate 

file (depending on program option)

Reads mobile source inventory and 

Mobile Source Emissions File extracts aircraft emission records

Unallocated 

Aircraft 

Emissions File

Creates variables required for 

processing allocated aircraft 

emissions as ISCST3 area sources

Emissions File Containing Only 

Aircraft Emissions Treated as 

ISCST3 Area Sources

Mobile Source Inventory File 

without Aircraft Emissions

Mobile Source 

Inventory File with 

Unallocated Aircraft 

Emissions

Point Source Inventory 

File (optional input)

Point Source Inventory File with 

Allocated Aircraft Emissions 

Treated as ISCST3 Area Sources

OR

OR

Allocates county-level aircraft emissions 

to airport locations within county

Unallocated Aircraft 

Emissions Records

Allocated Aircraft 

Emissions Records

Aircraft ISCST3 

Area Source 

Release Parameter 

File
2-5

2.1.1 Allocates county-level aircraft emissions to specific airports

AirportProc first extracts aircraft emissions records from the mobile source inventory. 

AirportProc extracts only those records that have the first six digits of the Area/Mobile Source

(AMS) code equal to either 227500 (airports, commercial) or 227505 (general aviation). If your

inventory’s aircraft emissions have other AMS codes, you’ll need to modify those codes so that

their first six digits are either 227500 or 227505 before you run AirportProc. 

AirportProc then matches each aircraft emission record in the mobile source inventory to one or

more specific airports that are in the same county. To do this, AirportProc uses an ancillary

airport allocation SAS® file, (see Section 2.2.3), containing data on airport locations and

allocation factors. The name of the file supplied with EMS-HAP is apt_allc. AirportProc

matches aircraft emissions to airport locations only based on the county and not on the AMS

code. Any different aircraft AMS codes within the same county will thus be allocated to exactly

the same airports. 

We designed the allocation factors in apt_allc to allocate the aircraft emissions as follows:

C If a county has both commercial and noncommercial airports, then emissions are only

allocated to the commercial airports (even if the AMS code begins with 227505). This is

because commercial airports are assumed to have general aviation as well as commercial

activity.

C If multiple commercial airports are located in the county, then emissions are divided

among the commercial airports based on passenger data for 1996 (for more detail on the

data source, see Section D.4 in Appendix D). 

C If a county has multiple noncommercial airports, then emissions are divided equally

among them. 

2.1.2 Prepares allocated emissions for the point source processing programs

AirportProc creates the variables required by EMS-HAP to process the aircraft emission records

as point sources. In ASPEN, these will be modeled as point sources, and in ISCST3 as distinctly

located (as opposed to gridded) ISCST3 area sources. Table 2-1 shows the list of variables

AirportProc assigns along with the source of the data or the value assigned. AirportProc also

creates the MACTCODE, SIC, ZIP_CODE, UTM_Z, CNTL_EFF and the stack parameter

variables (described in Table 2-4) and sets their values to missing. EMS-HAP’s point source

processing programs require these variables to be present in the input inventory SAS® data set. 

The missing stack parameters for aircraft emissions will be defaulted by either SCC code, which,

for allocated aircraft emissions, is the AMS code, or by global defaults when you run the first

point source processing program, PtDataProc (Chapter 3). When processing aircraft emissions

for the ISCST3 model, stack parameters are assigned but not used; instead, because all aircraft

emissions are ISCST3 area sources (see Section 2.1.3), area source release parameters are used. 

EMS-HAP assigns stack parameters to aircraft emissions for the ASPEN model because ASPEN
2-6

requires stack parameters for all point source emission records. Note that when processing data

for ASPEN in PtModelProc (Chapter 4), aircraft emissions will be assigned a vent type of nonstacked, which tells the ASPEN model not to perform plume rise calculations for these

emissions.

Table 2-1. Variables Assigned to Point Source Aircraft Emissions

Variable

Name

Data Description 

(units or values are in parentheses) Source of Data or Value Assigned

EMIS pollutant emissions value (tons/year) based on mobile source inventory

EMIS variable and allocation factor

from airport allocation ancillary file

EMRELPID code identifying a unique combination of airport site

and airport AMS

concatenation of SITE_ID and mobile

source inventory AMS variable

EMRELPTY physical configuration code of release point ‘AP’

FIPS 5-digit FIPS code (state and county combined) concatenation of mobile source STATE

and COUNTY variables

POLLCODE unique pollutant code mobile source inventory CAS variable

SCC EPA source category code identifying the process mobile source inventory AMS variable

SITE_ID code identifying a unique airport site concatenation of ‘AP,’ FIPS variable,

and number assigned consecutively to

each airport within county

SRC_TYPE description of the emission source ‘nonroad’

X longitude (decimal degrees) airport allocation file LON variable

XY_TYPE type of coordinate system used (LAT/LON or UTM) ‘LATLON’

Y latitude (decimal degrees) airport allocation file LAT variable

After creating the necessary variables for allocated aircraft records, AirportProc then either

appends the records to the rest of the point source inventory or creates a separate file containing

the records. Having them in a separate file enables you to run aircraft point sources through the

point source programs separately from the non-aircraft point sources. Appending them with the

point source inventory will reduce the amount of programs you’ll need to run, since you’ll only

have to run the point source processing programs one time (for all point sources together). When

running for ISCST3, we recommend that you append these sources in order to reduce the number

of “include” files (see Chapter 8) created by PtFinal_ISCST3, and to avoid having to modify the

SO Pathway section of the ISCST3 run stream file to account for two point source runs. You

select the option to use by specifying a value for keyword ADD2PT in the batch file (see Table 2-

6 in Section 2.2.4). 
2-7

2.1.3 Assigns the additional variables needed to process aircraft emissions as ISCST3 area

sources when processing data for ISCST3 only

When processing data for the ISCST3 model, AirportProc prepares aircraft emissions as ISCST3

area sources as opposed to ISCST3 point sources (which are basically stacks). In EMS-HAP,

however, they are still considered as point sources because they are associated with specific

geographic coordinates. An ISCST3 area source is used to model a low level or ground level

emission release with no plume rise. The source is described as a rectangular area located by the

coordinates of the southwest corner and a rational angle relative to that vertex. To model these

sources as ISCST3 area sources, the ISCST3 model requires the additional variables listed in

Table 2-2. These parameters include ISCST3 area source dimensions and release parameter data. 

You provide the values of these variables, except for the ISCTYPE variable (AirportProc assigns

this variable to “iscarea”) in the ancillary file called ISC_airport_parameters.txt (see Section

2.2.3). If you do not provide airport-specific dimensions or release parameters, then they will be

assigned the default values you provide in the batch file (see Table 2-6 in Section 2.2.4).

Table 2-2. Additional Variables Required to Process Aircraft Emissions as 

ISCST3 Area Sources

Variable

Name

Data Description 

(units or values are in parentheses)

Source of Data or Value Assigned

AANGLE orientation angle of rectangle for ISCST3 area

sources (degrees from North)

ISC_airport_parameters.txt ancillary

file

AINPLUM initial vertical dimension of plume for ISCST3 area

source (meters)

ISC_airport_parameters.txt ancillary

file (We used 2 meters in the example

presented in Appendix E)

ARELHGT release height above ground for ISCST3 area sources

(meters)

ISC_airport_parameters.txt ancillary

file (We used 2 meters in the example

presented in Appendix E)

AXLEN length of X side of rectangle for ISCST3 area

sources (meters)

ISC_airport_parameters.txt ancillary

file

AYLEN length of Y side of rectangle for ISCST3 area

sources (meters)

ISC_airport_parameters.txt ancillary

file

ISCTYPE ISCST3 source type (iscpoint, iscvolume, or iscarea) iscarea

2.1.4 Appends unallocated emissions back to the mobile source inventory

If your inventory contains county-level aircraft emissions (i.e., AMS code equal to either 227500

or 227505) for a county that has no airports in the ancillary airport allocation file, you cannot 

model these emissions through the point source processing programs as sources with discrete

locations. AirportProc identifies these records and then either appends them back into the mobile
2-8

source inventory, or puts them in a separate file which is output by AirportProc in place of the

mobile source inventory. You select the option by specifying a value for keyword ADD2MB in

the batch file (see Table 2.6 in Section 2.2.4). AirportProc names the output mobile inventory by

keyword OUTMOBIL (see Table 2.6 in Section 2.2.4). Depending on the keyword ADD2MB,

this file contains either the mobile source inventory with unallocated aircraft emissions or the

unallocated aircraft emissions by themselves. If you choose AirportProc to output the

unallocated aircraft emissions by themselves (ADD2MB=0), you cannot use this output for

mobile source processing, because it is missing the rest of the mobile inventory, so you’ll

eventually need to rerun AirportProc with ADD2MB=1.

2.2 How do I run AirportProc?

2.2.1 Prepare your mobile source inventory for input into AirportProc

Your mobile source inventory must meet the following requirements:

C It must be in SAS® file format. 

C To complete all mobile source programs in EMS-HAP, your data must contain, at a

minimum, the variables listed in Table 2-3, with units and values as provided. 

AirportProc retains any additional variables present for all records except aircraft

emissions, i.e., AMS codes beginning with 227500 or 227505.

C All data records should be uniquely identifiable by using the combination of the state

FIPS code (STATE), county FIPS code (COUNTY), AMS code (AMS), and pollutant

code (CAS).

C It shouldn’t contain Alaska and Hawaii emission records unless you add Alaska and

Hawaii data to the appropriate ancillary files. 

Table 2-3. Required Variables in AirportProc Input Mobile Source Inventory SAS® File

Variable Name Data Description

(Required units or values are in parentheses)

Type*

AMS AMS 10-digit category code A10

CAS unique pollutant code A10

CAT_NAME mobile source emissions category name A50

COUNTY county 3-digit FIPS code A3

EMIS emissions (tons/year) N

POL_NAME pollutant name A50

STATE state 2-digit FIPS code A2

UNITS emission units (tons/year) A12

* Ax = character string of length x, N = numeric
2-9

2.2.2 Prepare your point source inventory for input into AirportProc

You need to prepare your point source inventory for input to AirportProc only if you choose to

append the allocated aircraft emissions to it (see keyword ADD2PT in Table 2-6 of Section

2.2.4); otherwise you can skip to Section 2.2.3. Appendix C describes how we prepared the

point source inventory input file from a modeling file containing the point source portion of the

July 2001 version of the 1996 NTI.

When processing data for ISCST3, please note the following:

• You have the option of including ISCST3 volume sources and ISCST3 area sources in your

point source inventory. An ISCST3 volume source is used to model emission releases from

various industrial sources, such as building roof monitors, multiple vents, and conveyor belts. 

An ISCST3 area source is used to model low level or ground level emission releases with no

plume rise, such as storage piles, slag dumps, lagoons, landfills, or airports. An ISCST3 area

source can also be used to model onroad mobile emissions by assigning the emissions to

rectangular road segments. 

• You can also include building parameters in your point source inventory.

See the last three bullets below on how to include these when processing for ISCST3. 

Your point source inventory must meet the following requirements:

C It must be in SAS® file format. 

C To complete all point source programs, your data must contain the variables in Table 2-4

with units and values as provided. Additional variables can be present, and will be

included in the output inventory of AirportProc.

C All data records must be uniquely identifiable by using the combination of the site ID

(SITE_ID), pollutant code (POLLCODE), and emission release point ID (EMRELPID). 

C All stack parameters within a group of records identified by the site ID (SITE_ID), and

emission release point ID (EMRELPID) must be the same.

C It shouldn’t contain Alaska and Hawaii emission records unless you add Alaska and

Hawaii data to the appropriate ancillary files. 

C When processing data for ISCST3, if you choose to model some of your sources as

ISCST3 volume sources (as discussed above), your inventory must include the ISCST3

source type variable ISCTYPE (which must be ‘iscvolume’), and release parameter

variables VOLHGT, SIGMAX, and SIGMAY as listed in Table 2-5. 

C When processing data for ISCST3, if you choose to model some of your sources as

ISCST3 area sources (as discussed earlier in this section), your inventory must include the

ISCST3 source type variable ISCTYPE (which must be ‘iscarea’), and release parameter

variables ARELHGT and AXLEN as listed in Table 2-5. Release parameter variables

AYLEN, AANGLE, and AINPLUM are optional. The locational coordinates in your

inventory should represent the center of the area source.
2-10

C When processing data for ISCST3, if you choose to include building parameters in your

point source inventory, then building height must be specified by a variable called BLDH,

and building width by BLDW, and they both must be expressed in meters.

Table 2-4. Variables Required in AirportProc Input Point Source Inventory SAS® File

Variable Name Data Description 

(Required units or values are in parentheses)

Type*

CNTL_EFF baseline control efficiency, expressed as a percentage N

EMIS pollutant emissions value (tons/year) N

EMRELPID code identifying a unique emission point within a site A50

EMRELPTY physical configuration code of release point

(01=fugitive; 02=vertical stack; 03=horizontal stack, 04=goose neck,

05=vertical with rain cap, 06=downward-facing vent)

A4

FIPS 5-digit FIPS code (state and county combined) A5

MACTCODE MACT code A7

POLLCODE unique pollutant code A10

SCC EPA source category code identifying the process A10

SIC Standard Industrial Classification (SIC) code for the site A4

SITE_ID code identifying a unique site A25

SRC_TYPE description of the emission source at the site (‘nonroad’ for aircraft emissions) 

If you choose to define source groups by this variable as explained in 7.1.1 or

8.1.1, or run PtGrowCntl (Chapter 6) then it must have the value of ‘major’ or

‘area’ for non-aircraft emissions.

A15

STACKDIA diameter of stack (meters) N

STACKHT height of stack (meters) N

STACKVEL velocity of exhaust gas stream (meters per second) N

STKTEMP temperature of exhaust gas stream (Kelvin) N

UTM_Z universal transverse mercator (UTM) zone N

X longitude (decimal degrees or degrees, minutes, seconds with no separating

characters) or UTM easting (meters or kilometers)

N

XY_TYPE type of coordinate system used (LAT/LON or UTM) A7

Y latitude (decimal degrees or degrees, minutes, seconds with no separating

characters) or UTM northing (meters or kilometers)

N

ZIP_CODE zip code of site A12

* Ax = character string of length x, N = numeric
2-11

Table 2-5. Additional Variables Required for AirportProc Input Point Source Inventory

SAS® File when Processing ISCST3 Area or Volume Sources

Required variables are in bold

Variable Name Data Description 

(Required units or values are in parentheses)

Type*

AANGLE orientation angle of rectangle for ISCST3 area sources (degrees from North) N

AINPLUM initial vertical dimension of plume for ISCST3 area source (meters) N

ARELHGT release height above ground for ISCST3 area sources (meters) N

AXLEN length of X side of rectangle for ISCST3 area sources (meters) N

AYLEN length of Y side of rectangle for ISCST3 area sources (meters) N

ISCTYPE ISCST3 source type (iscpoint, iscvolume, or iscarea) A9

SIGMAX initial lateral dimension of volume source (meters) N

SIGMAZ initial vertical dimension of volume source (meters) N

VOLHGT release height above ground for volume source (meters) N

* Ax = character string of length x, N = numeric 

2.2.3 Determine whether you need to modify the ancillary input files for AirportProc

An ancillary file is any data file you input to the program other than your emission inventory.

When processing data for ASPEN, AirportProc uses only one ancillary input file, which is named

by the keyword AIRALLC in the batch file (see Table 2-6 in the next section). This SAS® data

file contains information on each airport contained within a county, including its latitude and

longitude and an allocation factor. In the file supplied with EMS-HAP, which we named

apt_allc, the allocation factor for commercial airports is based on the relative activity (number of

passengers) of the airport within the county. For noncommercial airports, the allocation factor

equals 1 divided by the number of noncommercial airports in the county. You don’t need to

modify apt_allc unless you obtain additional information concerning airport locations or relative

airport activity or if you’d like to include Alaska airports which are not represented. Figure 1 of

Appendix A shows the format for this file, and Section D.4 (Appendix D) discusses how we

developed it.

When processing data for ISCST3, AirportProc uses two ancillary input files: apt_allc and

ISC_airport_parameters.txt. The file apt_allc is the same file used when processing data for

ASPEN and is discussed above. AirportProc uses ISC_airport_parameters.txt to assign airportspecific ISCST3 area source release parameters to the airport emissions. ISCST3 area sources

require the following area source release parameters: release height (ARELHGT), length of the

x-side of the area (AXLEN), length of the y-side of the area (AYLEN), orientation angle for the

rectangular area in degrees from North, (AANGLE), and initial vertical dimension of the area

source plume (AINPLUM). If you’ve not included the proper airports in the
2-12

ISC_airport_parameters.txt file, then AirportProc will assign them default (as opposed to airportspecific) parameters that you must include in the batch file (see Table 2-6). Figure 2 of

Appendix A shows the format for the ISC_airport_parameters.txt file, and Section E.4 (Appendix

E) discusses how we developed it for an example urban area.

2.2.4 Prepare your batch file

The batch file serves two purposes: (1) allows you to pass “keywords” such as file names and

locations, program options, and run identifiers to the program, and (2) sets up the execute

statement for the program. Sample batch files for AirportProc for ASPEN and ISCST3

emissions processing are shown in Figures 1 and 2, respectively, of Appendix B. The best way

to prepare your batch file is to use one of the samples we provide and modify it to fit your needs.

Specify your keywords

Table 2-6 describes the keywords required in the batch file. Use keywords to locate and name all

input and output files. Use the keyword ADD2PT to select whether to append the allocated

aircraft emissions records to the input point source file. Section 2.1.2 (last paragraph) discusses

the implications of your selection for ADD2PT. Use the keyword ADD2MB to select whether to

append the unallocated records to the output mobile source inventory file. Section 2.1.4 

discusses the implications of your selection for ADD2MB.
2-13

Table 2-6. Keywords in the AirportProc Batch File when Processing Data for Either

ASPEN or ISCST3

Keyword Description of Value

Inventory File Directories

POINT Point source inventory SAS® file directory

MOBILE Mobile source inventory SAS® file directory

Input Inventory Files

INPOINT Input point source inventory SAS® file name, prefix of filename only

INMOBIL Input mobile source inventory SAS® file name, prefix of filename only

Ancillary Files (Prefix of file name provided with EMS-HAP in parentheses)

REFDIR Ancillary file directory

AIRALLC Airport allocation SAS® file, prefix only (apt_allc)

ISCAREA* ISCST3 area source release parameter by airport assignment text file, prefix only

(ISC_airport_parameters)

Default ISCST3 area source release parameters for aircraft emissions

DEFXLEN* Default length of x side of airports (in the east-west direction if DEFANGLE is 0

degrees) in meters; applied to airports not in file ISCAREA

DEFYLEN* Default length of y side of airports (in the north-south direction if DEFANGLE is 0

degrees) in meters; applied to airports not in file ISCAREA

DEFANGLE* Default orientation angle of airports (in degrees from north, measured positive in the

clockwise direction), applied to airports not in file ISCAREA

DEFRELHT* Default release height above ground of airports in meters, applied to airports not in

file ISCAREA

DEFINPLM* Default initial vertical dimension of airports in meters, applied to airports not in file

ISCAREA

Program Options

MODEL ASPEN=process data for ASPEN model; ISC=process data for ISCST3 model

ADD2PT 1=append the allocated aircraft emissions records to the input point source inventory

file (filename will be the value of the keyword OUTPOINT)

0=create an output file containing only the allocated aircraft emissions (filename

will be the value of the keyword OUTPOINT)

ADD2MB 1=append the unallocated aircraft emissions records to the output mobile source

inventory file (filename will be the value of the keyword OUTMOBIL)

0=create an output file containing only the unallocated aircraft emissions (filename

will be the value of the keyword OUTMOBIL)

Output Inventory Files

OUTPOINT Output point source inventory SAS® file name, prefix only

OUTMOBIL Output mobile source inventory SAS® file name, prefix only

* used only when processing data for ISCST3
2-14

You must include all directory names, file names, and variable values even if they are related to a

function that you do not select to perform. For example, if you set ADD2PT to 0, you still need

to assign a value to the keyword POINT. The value provided in this circumstance does not need

to represent an actual file; it is merely a place holder for the keyword.

Prepare the execute statement

The last line in the batch file runs the AirportProc program. In the sample batch files provided in

Figures 1 and 2 of Appendix B, you will see a line preceding the run line that creates a copy of

the AirportProc code with a unique name. It is this version of the program that is then executed

in the last line. If you do this, the log and list files created by this run can be identified by this

unique name. If you don’t do this and run the program under a general name, every run of

AirportProc will create a log and list file that will replace any existing files of the same name.

You may find that you need to assign a special area on your hard disk to use as work space when

running AirportProc. In the sample batch file, a work directory is defined on the last line

following the execution of AirportProc. For example, the command 

‘sas AirportProc_032800.sas -work /data/work15/dyl/’ assigns a work directory called

“/data/work15/dyl”. The directory you reference must be created prior to running the program.

2.2.5 Execute AirportProc

There are two ways to execute the batch file. One way is to type ‘source’ and then the batch file

name. Alternatively, first set the permission on the file to ‘execute.’ You do this by using the

UNIX CHMOD command and adding the execute permission to yourself, as the owner of the

file, to anyone in your user group, and/or to anyone on the system. For example,

‘chmod u+x AirportProc.bat’ gives you permission to execute the batch file. Refer to your UNIX

manual for setting other permissions. After you have set the file permission, you can execute the

batch file by typing the file name on the command line, for example, ‘AirportProc.bat’.

2.3 How do I know my run of AirportProc was successful?

2.3.1 Check your SAS® log file

You need to review the output log file to check for errors or other flags indicating incorrect

processing. This review should include searching the log files for occurrences of the strings

“error”, “warning”, “not found”, and “uninitialized”. These can indicate problems with input

files or other errors.

You can also look at the number of records in the input mobile and point source inventory files

and compare it to the number of records in the output mobile and point source inventory files. 

You should be able to account for the number of records in each file according the manner in

which you chose to execute AirportProc (i.e., values assigned to ADD2PT and ADD2MB).
2-15

2.3.2 Check your SAS® list file

The list file created when AirportProc is executed contains information to assist in quality

assurance. The information in this file is listed below:

C List of ISCST3 area source release parameters for airports not found in the inventory

(when processing data for ISCST3 only)

C First 100 allocated airport sites (to get all of the allocated sites, you could analyze the

point source output file discussed in Section 2.3.3 together with the airport allocation

ancillary file)

C Pollutant-level and state-level emissions totals and record counts of allocated aircraft

emissions

C Emissions total and record count of output point source inventory file 

C County-level and AMS code-level emissions totals and record counts of unallocated

aircraft emissions

C Emissions total and record count of output mobile source inventory file

2.3.3 Check other output files from AirportProc

You should check for the existence of both the output point and mobile source inventory files,

named by keywords OUTPOINT and OUTMOBIL, respectively (as indicated in Table 2-6). 

These files will serve as the inputs to the next point (PtDataProc, Chapter 3) and mobile

(MobilePrep, Chapter 10) source processing programs you run. Note, however, that you can only

use the file named by OUTMOBIL for input into MobilePrep if you chose to append the

unallocated (county-level) aircraft emissions back to the mobile source inventory; that is, you set

ADD2MB=1. If you set ADD2MB=0, then OUTMOBIL will contain only the unallocated

aircraft emissions.
3-1

PtDataProc

PtModelProc

PtTemporal

PtGrowCntl

PtFinal_ASPEN

OR

Point Source 

Emissions

ASPEN Point Source Emissions 

Files

PtFinal_ISCST3

ISCST3 SO Pathway of Run 

Stream Section for ISCST3 Point, 

Volume and Area Sources

Flowchart for ASPEN Processing

Flowchart for ISCST3 Processing

Point Source 

Emissions

PtDataProc

PtModelProc

PtTemporal

PtGrowCntl

OR

CHAPTER 3

Point Source Processing 

The Data Quality Assurance Program (PtDataProc)

The flowcharts below (Figure 3-1) show how PtDataProc fits into EMS-HAP’s point source

processing for the ASPEN and ISCST3 models. The point source inventory you input to

PtDataProc is the output from AirportProc (Chapter 2) or it is your initial point source inventory. 

You use the output inventory from PtDataProc as the input to PtModelProc (Chapter 4).

Figure 3-1. Overview of PtDataProc within EMS-HAP Point Source Processing 
3-2

3.1 What is the function of PtDataProc?

The Data Quality Assurance Program (PtDataProc) prepares the point source emission inventory

for modeling by assuring that each record contains valid location coordinates and reasonable

stack parameters. You control which of the three functions listed below are performed in any

given execution of PtDataProc (see Table 3-9 in Section 3.2.3 for details how to do this). 

C Quality assures point source location data

C Quality assures stack parameters- defaults if missing or out-of-range and for all allocated

aircraft emissions

C Removes inventory variables and records not necessary for further processing 

(inventory windowing)

Figure 3-2 shows the flowchart of PtDataProc when processing data for ASPEN, and Figure 3-3

shows the flowchart of PtDataProc when processing data for ISCST3. The following sections

describe the above bullets.
3-3

Reads Keywords

Batch File Containing Keywords e.g. File

Names and Locations, Program Options

Figure 3-2. PtDataProc Flowchart when Processing Data for ASPEN

Output Point Source

Inventory File

Point Source Inventory File

PtDataProc: MACRO LOCATE

Determines location in latitude

and longitude coordinates.

Attempts to determine default

location for records without

sufficient location information.

Determines state and county FIP

code from coordinates and

attempts to resolve any

discrepancies between inventory

FIPS and coordinate-based FIPS.

PtDataProc: MACRO WINDDATA

Removes all records with zero emissions

values and all records with missing latitude and

longitude coordinates

County Polygon File

County Map File

County Data File

PtDataProc: MACRO SETVAR

Removes all variables not essential for further

EMS-HAP point source processing except for

those specified within the variable list file

Variable List File

Records with Zero

Emissions

Records with Missing

Coordinate(s)

County File

State File

Zip Code File

Random Tract List File

Tract Information File

PtDataProc: MACRO STACK

Defaults missing or out-of-range stack

parameters using SCC-based, SIC-based, or

global defaults, depending on program options

SCC-based Default

Stack Parameter File

SIC-based Default

Stack Parameter File

Records without Location Data

Records with Unresolved FIPs

Discrepancies
3-4

Figure 3-3. PtDataProc Flowchart when Processing Data for ISCST3

Reads Keywords Batch File Containing Keywords

e.g. File Names and Locations,

Program Options

Output Point Source

Inventory File

Point Source Inventory File

PtDataProc: MACRO LOCATE

Determines locations in UTM

coordinates. Removes records with

missing coordinates.

PtDataProc: MACRO WINDDATA

Removes all records with zero

emissions values and all records with

missing UTM coordinates

PtDataProc: MACRO SETVAR

Removes all variables not essential for

further EMS-HAP point source

processing except for those specified

within the variable list file

Variable List File

Records with Zero

Emissions

Records with Missing

Coordinate(s)

PtDataProc: MACRO STACK

Defaults missing or out-of-range stack

parameters using SCC-based, SICbased, or global defaults, depending on

program options

SCC-based Default Stack

Parameter File

SIC-based Default Stack

Parameter File

Records without Location Data
3-5

3.1.1 Quality assures point source location data

PtDataProc performs different locational data quality assurance functions when processing data

for ASPEN and ISCST3. When processing data for input into either model, PtDataProc

calculates the location of each point in the coordinate system appropriate for the model. 

Determining default geographic coordinates for missing, out-of-range, or inconsistent location

data is done only when processing data for ASPEN. Generally, when you are processing for

ISCST3, we expect you have properly characterized the locations of your sources within your

local area and, therefore, PtDataProc does not attempt to assign default locations. Table 3-1

below summarizes the differences in how PtDataProc processes data for ASPEN versus ISCST3.

Table 3-1. PtDataProc Functions for QA of Point Source Location Data

PtDataProc Functions When Processing Data for

ASPEN Model

When Processing Data for

ISCST3 Model

Calculating geographic

coordinates from variables X,

Y, and XY_TYPE

Calculates latitude/longitude in

decimal degrees. Creates new

inventory variables “LAT” and

“LON” to store the calculated

values.

Calculates Universal Transverse

Mercator (UTM) coordinates in

meters. Creates new inventory

variables “UTMX” and

“UTMY” to store the calculated

values. 

Drops records when any

location data are missing or zero

Defaulting missing or out-ofrange location dataDefaults, where possible No defaulting done

Checking consistency between

geographic coordinates and

FIPS code

Checks and resolves

inconsistencies, where possible

No checking done

The following sections detail the quality assurance functions listed above.

Calculating geographic coordinates from variables X, Y, and XY_TYPE

Some records in the point source inventory may have their geographical coordinates expressed in

the latitude-longitude coordinate system (XY_TYPE=’LATLON’) and other records may have

the universal transverse mercator (UTM) coordinate system (XY_TYPE=’UTM’). PtDataProc

calculates latitude and longitude in decimal degrees based on the value of the XY_TYPE variable

and the values of the X, Y, and UTM_Z variables. The X and Y values for UTM coordinates can

be expressed in meters or kilometers, and the values for latitude and longitude coordinates can be

expressed in decimal degrees or in degrees-minutes-seconds format (excluding decimal point or

any other separating characters).
3-6

When processing data for ISCST3, PtDataProc calculates UTM in meters based on the same

variables (X, Y, and XY_TYPE). For the ISCST3 model, all UTM coordinates must be

expressed relative to one UTM zone for the ISCST3 domain, which you specify in the batch file

(see keyword REF_ZONE, Table 3-11 in Section 3.2.3). If the UTM coordinates are expressed

relative to a different zone, PtDataProc will recalculate the UTM coordinates relative to the

domain zone.

PtDataProc performs limited quality assurance checks on the values of the location data

(variables X, Y and UTM_Z). Depending on the evaluation of the location data, action is taken

to handle the data in a specific way or to correct the data. To assist you in identifying how the

data were evaluated, PtDataProc sets the value of the diagnostic flag variable LLPROB

accordingly. Table 3-2 presents the location data evaluation, what action is taken, if any, and

what value is assigned to the LLPROB variable. You can use the value of LLPROB to see if

problems exist in your inventory. Section 3.1.3 explains how you can reduce the number of

variables in your inventory through the windowing function, but still retain LLPROB, and any

other variables that are not essential for EMS-HAP point source processing.

When processing data for ISCST3, records are dropped from the inventory when the inventory

location data are incomplete or missing. Specifically, this occurs when the value of either the X

or Y variable is missing or when the value of the XY_TYPE variable is ‘UTM’ and the value of

the UTM_Z variable is either missing or zero; here, the value of the LLPROB variable is

assigned to ‘missing.’ The record is written to a SAS® data set (called “missing”) and is dropped

from further processing (i.e., the record will not be modeled in ISCST3).
3-7

Table 3-2. Assignment of LLPROB Diagnostic Flag Variable

Location Data Evaluation Correction Made to Location Data Value Assigned to

LLPROB variable

 X or Y is missing or zero, or, XY_TYPE =

‘UTM’ and UTM_Z value is missing or zero

None; defaulting will be attempted

when processing data for ASPENa

;

data is dropped when processing data

for ISCST3b

missinga

LAT and LON, as calculated from X, Y and

XY_TYPE variables are outside of an area

including the U.S., Puerto Rico, and U.S.

Virgin Islands.a

None; defaulting will be attempted

when processing data for ASPENa

bad_loca

UTM_Z is not missing or not zero;

XY_TYPE is not equal to ‘UTM’ or

‘LATLON’

Location data is to assumed represent

UTM coordinates

UTM

XY_TYPE=’UTM’ or location data is

assumed to represent UTM coordinates and 

X value is greater than Y value

X and Y values are exchanged flipxy

XY_TYPE=’UTM’ or location data is

assumed to represent UTM coordinates, and

Y value is greater than 10,000 and, therefore,

it must be measured in meters

X and Y values are used as they are

and are not converted from kilometers

to meters

meters

UTM_Z is not the same as the zone specified

in the batch file (keyword REF_ZONE)b

UTM coordinates are converted to 

lat/lon coordinates and then the lat/lon

coordinates are converted back to

UTM coordinates relative to the

correct zone when processing data for

ISCST3b

chzoneb

UTM_Z is missing or zero; XY_TYPE is not

equal to ‘UTM’ or ‘LATLON’

Location data is assumed to represent

lat/lon coordinates

LATLON

XY_TYPE=’LATLON’ or location data is

assumed to represent lat/lon coordinates, and 

X or Y value is less than zero

Change sign of X or Y value negative

XY_TYPE=’LATLON’ or location data is

assumed to represent lat/lon coordinates, and

Y value is greater than the X value

X and Y values are exchanged flipll

XY_TYPE=’LATLON’ or location data is

assumed to represent lat/lon coordinates, and

X and Y values are not in degrees, minutes,

seconds notationa

X and Y values are used as they are

and are not converted from degrees,

minutes, seconds notation to decimal

degrees when processing data for

ASPENa

decimala

a

 evaluation performed and value assigned only when processing data for ASPEN

b

 evaluation performed and value assigned only when processing data for ISCST3
3-8

Defaulting missing or out-of-range location data when processing data for ASPEN only

If the location data provided on a record are incomplete or out-of-range (LLPROB=’missing’ or

LLPROB=’bad_loc’), PtDataProc defaults the latitude and longitude based on the zip code, or, if

no zip code is provided, on the state and county FIPS code of the site. PtDataProc considers the

location out-of-range if the calculated latitude and longitude are outside of an area including the

U.S., Puerto Rico, and U.S. Virgin Islands. The default location based on the zip code is the

centroid latitude and longitude of the zip code area. If the record being defaulted to the zip code

centroid doesn’t have a valid FIPS, PtDataProc changes it to the FIPS represented by the zip code

location. (Note that this will occur as long as the inventory state FIPS, if valid, is not inconsistent

with the state FIPS determined by the zip code.) 

The default location based on the state and county FIPS code is the centroid latitude and

longitude of a census tract within the county. PtDataProc selects the census tract from a list (or

array) of census tracts contained in the trctarry ancillary file. This file provides a random

ordering of the census tracts within each county. For each unique location within a county that

needs a default value, PtDataProc runs through the census tract list in the order of the tract array

file, assigning a tract centroid location from the list. For example, if five locations need to be

defaulted in a particular county, the first location will be defaulted to the first tract centroid that’s

within the county from the list. The second location will be defaulted to the second tract centroid

on the list for that county, and so on. If there are more coordinates that need defaulting than

tracts in that county, PtDataProc will go back to the beginning of the census tract list for that

county (following the same order) until all locations have been defaulted. The census tract

defaulting methodology ensures that if there are multiple point source locations that need to be

defaulted within the same county, they are assigned to as many different tract centroids within the

county as possible.

PtDataProc records which basis was used to default a location by setting the value of the

diagnostic flag variable LFLAG to either ‘zipcode’ or ‘county’. When defaulting by zip code, if

PtDataProc changes the inventory FIPS to the zip code FIPS, it also sets the value of the

diagnostic flag variable FIPFLAG to ‘assigned’. Note that this occurs only if PtDataProc

determines that the inventory FIPS code is invalid. You can use the values of these diagnostic

flag variables to check which point sources were defaulted, and the method PtDataProc used. 

Section 3.1.3 explains how you can reduce the number of variables in your inventory through the

windowing function, but still retain LFLAG and FIPFLAG, and any other variables that are not

essential for EMS-HAP processing.

As stated earlier, the default location based on the state and county FIPS code is the centroid of a

census tract within the county. Census tracts with radius less than or equal to 0.5 km are

excluded from the list of census tracts contained in the trctarry ancillary file. That is, no

locations are defaulted to tracts with radius less than or equal to 0.5 km. We chose 0.5 km to

prevent the ASPEN model from calculating excessively high concentrations for these small

census tracts (resulting from ASPEN’s spatial averaging approach) which are not likely to be real
3-9

values. Also note that if you run EMS-HAP multiple times using different inventories (e.g., if

you remove or add facilities) the PtDataProc census tract defaulting technique may result in

different census tract locations for the same facilities you defaulted in a previous run.

If the state or county FIPS is invalid, and PtDataProc can’t determine a default location by the zip

code, the record is written to both a text file (nolocate.txt) and a SAS® data set (nolocate) and is

dropped from further processing (i.e., the record will not be modeled in ASPEN).

Checking consistency between geographic coordinates and FIPS code when processing data

for ASPEN only

For some sources, there may be a discrepancy in the location information due to errors in the

inventory. For example, the latitude and longitude may indicate that the source is located in New

York, but the FIPS indicates Michigan. PtDataProc addresses this situation by:

1. Calculating a latitude/longitude coordinate-based FIPS, referred to hereafter as the

“alternate FIPS,” for each unique set of geographic coordinates in the inventory.

2. Determining whether the alternate FIPS matches the inventory FIPS

3. Resolving the discrepancy when the alternate FIPS does not match the inventory FIPS

PtDataProc resolves discrepancies between coordinates and FIPS location data using three

approaches:

1. Distance Criterion: PtDataProc computes the distance between the geographical

coordinates and the centroid of the county based on the inventory FIPS. If this distance is

less than 5.4 times the county radius, PtDataProc then presumes that the geographical

coordinates can possibly be within the county and thus takes no action. We chose 5.4 as a

potential worst case. For Monroe County Florida (the county that comprises the Florida

Keys), the distance between the farthest point in the county and its centroid is approximately

5.4 times the county radius. This large value ensures that PtDataProc won’t move coordinates

that could potentially be within the county represented by the inventory FIPS.

2. Zip Code Check: If the distance criterion in step 1 is not met, then PtDataProc uses

inventory zip code information if available, to resolve the discrepancy. If the FIPS based on

the zip code (zip code FIPS) matches the alternate FIPS, then PtDataProc changes the

inventory FIPS to the alternate FIPS. If the zip code FIPS matches the inventory FIPS, then

PtDataProc changes the geographical coordinates to the centroid of the zip code area.

3. FIPS validations: If steps 1 and 2 do not resolve the problem, then PtDataProc conducts a

series of additional checks. Depending on the validity of the inventory and alternate FIPS,

PtDataProc will do one of the following: change the inventory FIPS, change the geographical
3-10

coordinates, or drop the emissions record from further consideration. Table 3-3 contains the

details.

Table 3-3. Resolutions in Discrepancy Between Alternate and Inventory FIPS

(Processing for ASPEN only)

Resolution Occurs when the Distance Criterion and Zip Code check do

not Resolve the Discrepancy, AND when....

Default geographical coordinates to the

county-level default, i.e., the centroid of

a selected tract in the county represented

by the inventory FIPS

The inventory contains a valid state/county FIPS.

Default inventory FIPS to the alternate

FIPS

1. The county inventory FIPS is invalid and the alternate FIPS is in

the same state as the inventory FIPS, or

2. The state inventory FIPS is invalid and the alternate FIPS is in the

same state as represented by the postal code (1st two digits of the

SITE_ID), or

3. The state inventory FIPS is invalid and the record doesn’t have a

valid postal code (e.g., the 1st two digits of the SITE_ID =”ES”)

Drop emission record from further

processing (this record will not be

modeled in ASPEN)

1. The county inventory FIPS is invalid and the alternate FIPS is not

in the same state as the inventory FIPS, or

2. The state inventory FIPS is invalid and the alternate FIPS is not in

the same state as represented by the postal code (1st two digits of the

SITE_ID), or

3. Both the inventory FIPS and alternate FIPS are invalid

Records dropped from the inventory because the discrepancy could not be resolved are written to

both a text file (nomodel.txt) and a SAS® data set (nomodel).

PtDataProc uses the same diagnostic flag variables for location discrepancies as are used when

missing locations are defaulted. These variables are LFLAG and FIPFLAG. PtDataProc assigns

their values based on the action taken to resolve the discrepancy. Table 3-4 presents all possible

values assigned to these variables and their circumstances. Note that every combination of

LFLAG and FIPFLAG is unique to a particular situation. For example, if LFLAG=’county’ and

FIPFLAG=’noch_ss’ then the problem is a location discrepancy. PtDataProc resolved it by

defaulting the geographic coordinates based on the state and county FIPS (i.e., using the census

tract routine described above). The inventory FIPS, which represented the same state as the

geographic coordinates, was not changed. 

You can use these diagnostic flag variables to check the problems that may exist in your

inventory, and how PtDataProc handled them. Section 3.1.3 explains how you can reduce the

number of variables in your inventory through the windowing function, but still retain LFLAG

and FIPFLAG, and any other variables that are not essential for EMS-HAP processing.
3-11

Table 3-4. Assignment of Diagnostic Flag Variables LFLAG and FIPFLAG

(Processing For ASPEN only)

Location Data Evaluation Values Assigned to Flag Variables

Geographic coordinates defaulted based on county (i.e., census

tract routine) due to invalid coordinates (LLPROB has value of 

‘missing’ or ‘bad_loc’)

LFLAG = ‘county’ AND

FIPFLAG is not assigned a value

Geographic coordinates defaulted by zip code due to invalid

coordinates (LLPROB has value of ‘missing’ or ‘bad_loc’) and

the inventory FIPS and zip code FIPS agree

LFLAG = ‘zipcode’ AND

FIPFLAG is not assigned a value

Geographic coordinates defaulted by zip code due to invalid

coordinates (LLPROB has value of ‘missing’ or ‘bad_loc’) and

inventory FIPS is reassigned to the zip code FIPS. Note: this

happens when the inventory FIPS is invalid and either (1) the

state inventory FIPS is the same as the state zip code FIPS or (2)

the postal code from the address represents the same state as the

state zip code FIPS. 

LFLAG = ‘zipcode’ AND

FIPFLAG = ‘assigned’

Geographic coordinates defaulted based on county to resolve

disagreement between inventory FIPS and alternate FIPS

(LLPROB does not have value of ‘missing’ or ‘bad_loc’)

LFLAG = ‘county’ AND 

FIPFLAG = ‘noch_ss’, when inventory FIPS

and alternate FIPS represent the same state;

FIPFLAG = ‘noch_ds’, when inventory FIPS

and alternate FIPS represent different states

Geographic coordinates defaulted by zip code to resolve

disagreement between inventory FIPS and alternate FIPS

(LLPROB variable does not have value of ‘missing’ or

‘bad_loc’)

LFLAG = ‘zipcode’ AND

FIPFLAG = ‘noch_ss’, when inventory FIPS

and alternate FIPS represent the same state; 

FIPFLAG =‘noch_ds’, when inventory FIPS

and alternate FIPS represent different states

Inventory FIPS disagrees with alternate FIPS, but the distance

criterion is met so no change is made to either FIPS or lat/lon.

(This would likely occur when point source is near a state or

county border.)

LFLAG is not assigned a value AND

FIPFLAG = ‘noch_ss’, when inventory FIPS

and alternate FIPS represent the same state;

FIPFLAG = ‘noch_ds’, when inventory FIPS

and alternate FIPS represent different states

Inventory FIPS disagrees with alternate FIPS, and is reassigned

to the zip code FIPS

LFLAG is not assigned a value AND

FIPFLAG = ‘ZIP_ss’, when inventory FIPS

and alternate FIPS represent the same state;

FIPFLAG = ‘ZIP_ds’, when inventory FIPS

and alternate FIPS represent different states

Inventory FIPS disagrees with alternate FIPS, and is reassigned

to the alternate FIPS

LFLAG is not assigned a value AND

FIPFLAG = ‘reloc_ss’, when inventory FIPS

and alternate FIPS represent the same state;

FIPFLAG = ‘reloc_ds’, when inventory FIPS

and alternate FIPS represent different states

Discrepancy between Inventory FIPS and alternate FIPS cannot

be resolved

LFLAG is not assigned a value AND

FIPFLAG = ‘no_model’
3-12

3.1.2 Quality assures stack parameters- defaults if missing or out-of-range and for all

allocated aircraft emissions

PtDataProc checks each record for valid stack parameters and provides defaults to missing or

out-of-range data. PtDataProc determines if a non-missing stack parameter is out-of-range by

comparing it to the minimum and maximum range values you provide in the batch file (see the

“Valid Stack Parameter Ranges” section of Table 3-11 or 12 in Section 3.2.5). Because

AirportProc (Chapter 2) sets the stack parameters for allocated aircraft emissions to missing,

PtDataProc will default stack parameters for these emission records. PtDataProc defaults

missing aircraft emission stack parameters the same way it defaults all other missing stack

parameters as described below.

Note that when processing data for the ISCST3 model, stack parameters are not used for ISCST3

volume sources or ISCST3 area sources (including aircraft emissions processed using

AirportProc). To process these sources, you must include additional release parameters in your

inventory (see Table 3-7 in Section 3.2.1 or, for aircraft emissions, see Section 2.1.3).

Nonetheless, PtDataProc will check and default point source stack parameters where missing or

out-of-range for these sources. PtDataProc will not check or default the ISCST3 area source or

volume source release parameters; thus, you must be careful when supplying this information to

your inventory.

You can choose several ways for PtDataProc to default missing or out-of-range stack parameters

by providing the proper keywords in your batch file (see Section 3.2.3 for details). You can have

PtDataProc assign default stack parameters using the 8-digit Source Classification Code (SCC)-

based and/or 4-digit Standard Industrial Classification (SIC)-based defaults. If you choose either

SCC-based or SIC-based defaults, PtDataProc uses ancillary SCC or SIC default files. If you

choose both SCC-based and SIC-based defaults, and an inventory record can be matched to

values in both default files, the program will use the SCC-based default over the SIC-based one.

Some stack parameters may not be addressed by either of these methods (e.g., if an inventory

record has no SCC nor SIC) or, you may choose not to use these options. In these cases,

PtDataProc uses the following “global” defaulting routine: (1) If the stack parameters are

missing, PtDataProc will default them to the global stack parameters you provide in the batch file

(see Tables 3-10 or 11), (2) If the stack parameters are outside of the valid range you provide in

the batch file, PtDataProc will use either the minimum or maximum range value as the default. 

The one exception to this global defaulting routine is for horizontal stacks or fugitives

(EMRELPTY = ‘03' or ‘01'). If the stack parameters are missing or zero for these, PtDataProc

uses the following defaults: stack height of 5 meters, stack diameter of 1 meter, stack temperature

of 295 K and stack velocity of 0.5 meters/second.

Diagnostic flag variables, set for each stack parameter (HTFLAG, DIAFLAG, VELFLAG, and

TEMPFLAG), explain why and how each stack parameter was assigned a default value; these are

summarized in Table 3-5. Section 3.1.3 explains how you can reduce the number of variables in
3-13

your inventory through the windowing function, but still retain these diagnostic variables, and

any other variables that are not essential for EMS-HAP processing.

Table 3-5. Assignment of Stack Parameter Defaulting Diagnostic Flag Variables

Default

Method

Evaluation of Invalid Stack

Parameter

Default Value

Assigned

Value Assigned to Diagnostic Flag

Variables HTFLAG, DIAFLAG,

VELFLAG, and TEMPFLAG

SCC

Parameter is not missing, but is outside

of valid parameter range

SCC-based

default

Concatenation of the value of

DEFFLAG variable* from the SCC

default file and ‘out’

Parameter is missing SCC-based

default

Concatenation of the value of

DEFFLAG variable* from the SCC

default file and ‘miss’

SIC

Parameter is not missing, but is outside

of valid parameter range

SIC-based

default

Concatenation of the value of

DEFFLAG variable* from the SIC

default file and ‘out’

Parameter is missing SIC-based

default

Concatenation of the value of

DEFFLAG variable* from the SIC

default file and ‘miss’

Neither SCC nor SIC

Parameter is missing Global default ‘default’

Parameter is not missing, but is less

than the minimum range value

Minimum range

value

‘rangelow’

Parameter is not missing, but is greater

than the maximum range value

Maximum

range value

‘rangehi’

* the DEFFLAG variable indicates the method used to obtain the default value. It is described in more detail in

Figures 11 and 12 of Appendix A

3.1.3 Removes inventory variables and records not necessary for further processing

(inventory windowing)

Because point source inventories can be very large, it is useful for further processing of the data

through EMS-HAP to reduce the size of the inventory file as much as possible. The PtDataProc

program allows you to do this in two ways: (1) by removing nonessential variables from your

inventory and (2) by removing nonessential records from your inventory.
3-14

Removal of Nonessential Variables

You can choose to have PtDataProc remove all variables except for those required for further

processing within EMS-HAP. To do this, set the value of the DOSETVAR keyword to 1 in your

batch file (see Table 3-9 in Section 3.2.3). You also have the option of providing PtDataProc

with a list of additional variables (e.g., LLPROB, LFLAG, FIPFLAG) to be retained. When

processing data for ISCST3, PtDataProc checks for the existence of the optional building

dimension variables and the release parameters required to process ISCST3 area sources and

volume sources (see Table 3-7). If these variables are present, PtDataProc will automatically

retain them in the output inventory. To retain additional variables, set the DOSETVAR and

USELIST keywords in your batch file to 1 (one), and provide a list of nonessential variables in

an ancillary text file (see the varlist.txt file in Table 3-8).

Removal of Nonessential Records

You can choose to have PtDataProc remove all records that have no location coordinate data or

that have zero emissions. To do this, set the value of the DOWINDOW keyword in your batch

file to 1 (one). Note that if you choose to have PtDataProc perform the location data quality

assurance function, windowing the inventory to remove records without location coordinate data

would not be necessary, because these records would have already been removed. You would

still, however, need to perform the windowing function if you want to remove records with zero

emissions. 

3.2 How do I run PtDataProc?

3.2.1 Prepare your point source inventory for input into PtDataProc

The point source inventory you use for input into PtDataProc can be your initial point source

inventory or, if you choose to process aircraft emissions as point source emissions, it can be the

output from AirportProc (see Chapter 2). Appendix C describes how we prepared the point

source inventory input file from a modeling file containing the point source portion of the July

2001 version of the 1996 NTI.

When processing data for ISCST3, please note the following:

• You have the option of including ISCST3 volume sources and ISCST3 area sources in your

point source inventory. An ISCST3 volume source is used to model emission releases from

various industrial sources, such as building roof monitors, multiple vents, and conveyor belts. 

An ISCST3 area source is used to model low level or ground level emission releases with no

plume rise, such as storage piles, slag dumps, lagoons, landfills, or airports. An ISCST3 area

source can also be used to model onroad mobile emissions by assigning the emissions to

rectangular road segments. 

• You can also include building parameters in your point source inventory.
3-15

See the last three bullets below on how to include these when processing for ISCST3. 

Your input point source inventory must meet the following requirements:

C It must be in SAS® file format. 

C To complete all point source programs, your data must contain the variables in Table 3-6

with units and values as provided. Additional variables can be present, and will be

included in the output SAS® file. However, you can choose to create an output file with

only those variables needed in subsequent EMS-HAP processing programs by choosing

the windowing function which was discussed in Section 3.1.3.

C All data records must be uniquely identifiable by using the combination of the site ID

(SITE_ID), pollutant code (POLLCODE), and emission release point ID (EMRELPID).

C All stack parameters within a group of records identified by the site ID (SITE_ID), and

emission release point ID (EMRELPID) must be the same.

C It shouldn’t contain Alaska and Hawaii emission records unless you add Alaska and

Hawaii data to the appropriate ancillary files. 

C When processing data for ISCST3, if you choose to model some of your sources as

ISCST3 volume sources (as discussed earlier in this section), your inventory must include

the ISCST3 source type variable ISCTYPE (which must be ‘iscvolume’), and release

parameter variables VOLHGT, SIGMAX, and SIGMAY as listed in Table 3-7. 

C When processing data for ISCST3, if you choose to model some of your sources as

ISCST3 area sources (as discussed earlier in this section), your inventory must include the

ISCST3 source type variable ISCTYPE (which must be ‘iscarea’), and release parameter

variables ARELHGT and AXLEN as listed in Table 3-7. Release parameter variables

AYLEN, AANGLE, and AINPLUM are optional. The locational coordinates in your

inventory should represent the center of the area source.

C When processing data for ISCST3, if you choose to include building parameters in your

point source inventory, then building height must be specified by a variable called BLDH,

and building width by BLDW, and they both must be expressed in meters.
3-16

Table 3-6. Variables Required for PtDataProc Input Point Source Inventory SAS® File

Variables used by PtDataProc are in bold; other variables listed are used by subsequent point source processing programs

Variable Name Data Description 

(Required units or values are in parentheses)

Type*

CNTL_EFF baseline control efficiency, expressed as a percentage N

EMIS pollutant emissions value (tons/year) N

EMRELPID code identifying a unique emission point within a site A50

EMRELPTY physical configuration code of release point

(01=fugitive; 02=vertical stack; 03=horizontal stack, 04=goose neck, 05=vertical

with rain cap, 06=downward-facing vent, AP=aircraft)

A4

FIPS 5-digit FIPS code (state and county combined) A5

MACTCODE MACT code A7

POLLCODE unique pollutant code A10

SCC EPA source category code identifying the process A10

SIC Standard Industrial Classification (SIC) code for the site A4

SITE_ID code identifying a unique site A25

SRC_TYPE description of the emission source at the site (‘nonroad’ for aircraft emissions) If

you choose to define source groups by this variable as explained in 7.1.1 or

8.1.1, or run PtGrowCntl (Chapter 6) then it must have the value of ‘major’ or

‘area’ for non-aircraft emissions.

A15

STACKDIA diameter of stack (meters) N

STACKHT height of stack (meters) N

STACKVEL velocity of exhaust gas stream (meters per second) N

STKTEMP temperature of exhaust gas stream (Kelvin) N

UTM_Z universal transverse mercator (UTM) zone N

X longitude (decimal degrees or degrees, minutes, seconds with no separating

characters) or UTM easting (meters or kilometers)

N

XY_TYPE type of coordinate system used (LAT/LON or UTM) A7

Y latitude (decimal degrees or degrees, minutes, seconds with no separating

characters) or UTM northing (meters or kilometers)

N

ZIP_CODE zip code of site A12

* Ax = character string of length x, N = numeric 
3-17

Table 3-7. Additional Variables for PtDataProc Input Point Source Inventory SAS® File

When Processing ISCST3 Area or Volume Sources

Required variables are in bold.

Variable Name Data Description 

(Required units or values are in parentheses)

Type*

AANGLE orientation angle of rectangle for ISCST3 area sources (degrees from North) N

AINPLUM initial vertical dimension of plume for ISCST3 area source (meters) N

ARELHGT release height above ground for ISCST3 area sources (meters) N

AXLEN length of X side of rectangle for ISCST3 area sources (meters) N

AYLEN length of Y side of rectangle for ISCST3 area sources (meters) N

ISCTYPE ISCST3 source type (iscvolume or iscarea) A9

SIGMAX initial lateral dimension of volume source (meters) N

SIGMAZ initial vertical dimension of volume source (meters) N

VOLHGT release height above ground for volume source (meters) N

* Ax = character string of length x, N = numeric 
3-18

3.2.2 Determine whether you need to modify the ancillary input files for PtDataProc

An ancillary file is any data file you input to the program other than your emission inventory. 

Table 3-8 lists the ancillary input files for PtDataProc and when you may need to modify those

supplied with EMS-HAP.

Table 3-8. Required Ancillary Input Files for PtDataProc

Files used when processing data for both ASPEN and ISCST3 are in bold; 

files identified by an asterisk (*) are used only when processing data for ASPEN

Name of File

Provided with

EMS-HAP

Purpose Need to Modify? Format

zipcodes* Assigns default location coordinates by zip

code

If your inventory contains Alaska

(and want the ability to default by

zip code), you need to add it to this

file. Or, to update data from 1996.

SAS®

cty_cntr* Determines validity of state and county

FIPS

If you are modeling Alaska or

Hawaii you need to add them to

this file. Or, to update data from

1996.

SAS®

st_cntr* Determines state FIPS from postal code “ SAS®

counties* Determines state and county FIPS from

geographic coordinates

If you are modeling Alaska you

need to add it to this file. Or, to

update data from 1996.

SAS®

bound6* “ “ SAS®

cntyctr2* “ “ SAS®

trctarry* Assigns random census tract by county for

purpose of assigning default location

coordinates

If you are modeling Alaska or

Hawaii you need to add them to

this file. Or, to update data from

1996.

SAS®

tractinf* Provides census tract centroid coordinates

for default location coordinates

“ SAS®

def_scc.txt Assigns default stack parameters by SCC if

you choose this option

If you want to use different default

stack parameters by SCC 

Text

def_sic.txt Assigns default stack parameters by SIC if

you choose this option

If you want to use different default

stack parameters by SIC

Text

varlist.txt Provides list of non-essential variables to be

retained in inventory if you choose this

option

If you want to retain different nonessential variables in your

inventory

Text
3-19

3.2.3 Prepare your batch file

The batch file serves two purposes: (1) allows you to pass “keywords” such as file names and

locations, program options, and run identifiers to the program, and (2) sets up the execute

statement for the program. Sample batch files for PtDatalProc for ASPEN and ISCST3

emissions processing are shown in Figures 3 and 4, respectively, of Appendix B. The best way

to prepare your batch file is to use one of the samples we provide and modify it to fit your needs.

Specify your keywords

Table 3-9 shows you how to specify keywords to select which functions you want PtDataProc to

perform. For example, if you’ve already calculated your appropriate location coordinates and

quality assured them, you may choose not to use this function. For this situation, set the keyword

“DOLOCATE” to zero. 

Table 3-9. Keywords for Selecting PtDataProc Functions

PtDataProc Function Keyword (values provided

cause function to be performed)

Process data for ASPEN model MODEL = ASPEN

Process data for ISCST3 model MODEL = ISC

Quality assurance of location data DOLOCATE = 1

Quality assurance of stack parameters and defaulting of aircraft emission

stack parameters

DOSTACK=1

Use SCC based defaults; use global defaults or range defaults if

parameters are still missing or out-of-range after SCC default process

SCCDEFLT = 1; SICDEFLT = 0

Use SIC based defaults; use global defaults or range defaults if

parameters are still missing or out-of-range after SIC default process

SCCDEFLT = 0; SICDEFLT = 1

Use both SIC and SCC based defaults; use global defaults or range

defaults if parameters are still missing or out-of-range (Note: when

single record can be defaulted by both SIC and SCC-based defaults,

PtDataProc will use the SCC default)

SCCDEFLT = 1; SICDEFLT = 1

Use only global defaults (range defaults if parameters are out of range) SICDEFLT = 0; SCCDEFLT = 0

Window Inventory to reduce variable list DOSETVAR = 1

Specify additional variables to retain on output inventory file USELIST = 1

Don’t retain any non-essential variables on output inventory file USELIST = 0

Window Inventory to exclude zero emissions and unlocated records DOWINDOW=1
3-20

The keywords required in the batch file used to process data for the ASPEN model are described

in Table 3-10. PtDataProc is the only EMS-HAP program that uses “include” programs within

the main program. When processing data for ASPEN, three include programs are used:

1) validFIP checks the validity of the FIPS code in the emission inventory; 2) utm2ll computes

latitude and longitude coordinates from UTM coordinates; and 3) latlon2fip computes FIPS

codes based on the inventory geographic coordinates. These programs must be located in the

directory specified by the keyword INC_DIR in the batch file. In addition, you must put the three

ancillary files used by latlon2fip program in the directory named by keyword MAP_DIR, and

they must have the same names as the files we supplied to you (bound6, counties and cntyctr2).

For processing data for the ISCST3 model, the keywords required in the batch file are described

in Table 3-11. Two include programs are also used when processing data for ISCST3: 1) ll2utm

computes UTM coordinates from latitude and longitude coordinates; and 2) utm2ll computes

latitude and longitude coordinates from UTM coordinates. These programs must be located in

the directory specified by the keyword INC_DIR in the batch file.

Note the sections called “Valid Stack Parameter Ranges” and “Global Stack Parameters” used to

process data for both ASPEN and ISCST3. You supply the values for stack parameter ranges

used to determine if a stack parameter is valid. PtDataProc will use the upper or lower bounds of

the range as a “range default” if parameters are not defaulted using SCC and/or SIC based

defaults. You also supply values for global default stack parameters for missing stack parameters

not defaulted by the other methods. 
3-21

Table 3-10. Keywords in the PtDataProc Batch File when Processing Data for ASPEN

Keyword Description of Value

Input Inventory Files

IN_DATA Input SAS® file directory

INSAS Input inventory SAS® file name, prefix of file name only

Program Files

INC_DIR Include program directory. This directory must contain the SAS® programs validFIP, utm2ll,

and latlon2FIP.

Ancillary Files (Prefix of file name provided with EMS-HAP in parentheses)

REFFILE Ancillary SAS® file directory

REFTEXT Ancillary text file directory

MAP_DIR Ancillary mapping file directory. This directory must contain the SAS® files named bound6,

counties and cntyctr2, which are used by the include program latlon2fip

ZIP Zip code to FIPS and lat/lon cross-reference text file, prefix only(zipcodes)

CNTYCENT County FIPS to county centroid location SAS® file, prefix only (cty_cntr)

STCENT State FIPS to postal code cross-reference SAS® file, prefix only (st_cntr)

TRACTS County FIPS to random list of tracts correspondence SAS® file, prefix only (trctarry)

TRCTINFO Census tracts to state and county FIPS code, tract centroid, and tract radius correspondence

SAS® file, prefix only (tractinf)

SCCDEFLT SCC to default stack parameters correspondence text file, prefix only (def_scc)

SICDEFLT SIC to default stack parameters correspondence text file, prefix only (def_sic)

VARLIST file containing list of additional, nonessential variables to be retained in inventory output file,

prefix only (varlist)

Program Options (see also Table 3-9)

MODEL ASPEN=process data for ASPEN model

DOLOCATE 1= quality assure location data; 0 = don’t quality assure them

DOSTACK 1= quality assure stack parameters; 0 = don’t quality assure them.

DOSCCDEF 1= assign default stack parameters by SCC; 0= don’t assign them by SCC 

DOSICDEF 1=assign default stack parameters by SIC; 0 =don’t assign them by SIC

DOSETVAR 1=retain variables required for further processing and only those non-essential variables

specified by you, based on value of USELIST and VARLIST

0=retain all variables 

USELIST 1= use ancillary file (keyword VARLIST) to provide additional non-essential variables to

retain in inventory 

0=don’t retain any non-essential variables from the inventory 
Table 3-10. Keywords in the PtDataProc Batch File when Processing Data for ASPEN

(continued)

Keyword Description of Value

3-22

DOWINDOW 1=remove all records with zero emissions values or records without latitude and longitude

values

0= don’t remove records with zero emissions or without latitude and longitude values (note

that values without latitude and longitude values will still be removed if you perform the data

quality assurance of location data function)

Valid Stack Parameter Ranges

DLOWHT Minimum range value for valid stack height (in meters)

DHIHT Maximum range value for valid stack height (in meters)

DLOWDIA Minimum range value for valid stack diameter (in meters)

DHIDIA Maximum range value for valid stack diameter (in meters)

DLOWVEL Minimum range value for valid stack velocity (in meters/second)

DHIVEL Maximum range value for valid stack velocity (in meters/second)

DLOWTEMP Minimum range value for valid stack temperature (in Kelvin)

DHITEMP Maximum range value for valid stack temperature (in Kelvin)

Global Default Stack Parameters

DFLTHT Default stack height (in meters)

DFLTDIA Default stack diameter (in meters)

DFLTVEL Default stack exit gas velocity (in meters/second)

DFLTTEMP Default stack exit gas temperature (in Kelvin)

Output files

OUTDATA Output SAS® file directory

OUTTEXT Output directory for text file of records without latitude/longitude data

OUTSAS Output inventory SAS® file name (contains all variables and records), prefix only

FINAL Output inventory SAS® file name after windowing, prefix only 

NOLOCATE Output data SAS® file name containing records without coordinates, prefix only

ZEROEMIS Output data SAS® file name containing records with zero emissions values, prefix only
3-23

Table 3-11. Keywords in the PtDataProc Batch File when Processing Data for ISCST3

Keyword Description of Value

Input Inventory Files

IN_DATA Input SAS® file directory

INSAS Input inventory SAS® file name, prefix of file name only

Program Files (Prefix of file name provided with EMS-HAP in parentheses)

INC_DIR Include program directory. This directory must contain the SAS® programs ll2utm and

utm2ll.

Ancillary Files (Prefix of file name provided with EMS-HAP in parentheses)

REFTEXT Ancillary text file directory

SCCDEFLT SCC to default stack parameters correspondence text file, prefix only (def_scc)

SICDEFLT SIC to default stack parameters correspondence text file, prefix only (def_sic)

VARLIST File containing list of additional, nonessential variables to be retained in inventory output file,

prefix only (varlist)

Program Options (see also Table 3-9)

MODEL ISC=process data for ISCST3 model

DOLOCATE 1= quality assure location data; 0 = don’t quality assure them

DOSTACK 1= quality assure stack parameters; 0 = don’t quality assure them.

DOSCCDEF 1= assign default stack parameters by SCC; 0= don’t assign them by SCC 

DOSICDEF 1=assign default stack parameters by SIC; 0 =don’t assign them by SIC

DOSETVAR 1=retain variables required for further processing and only those non-essential variables

specified by you, based on the value of USELIST and VARLIST

0=retain all variables 

USELIST 1= use ancillary file (keyword VARLIST) to provide additional non-essential variables to

retain in inventory 

 0=don’t retain any non-essential variables from the inventory 

DOWINDOW 1=remove all records with zero emissions values or records without latitude and longitude

values

0= don’t remove records with zero emissions or without latitude and longitude values (note

that values without latitude and longitude values will still be removed if you perform the data

quality assurance of location data function)

Valid Stack Parameter Ranges

DLOWHT Minimum range value for valid stack height (in meters)

DHIHT Maximum range value for valid stack height (in meters)

DLOWDIA Minimum range value for valid stack diameter (in meters)

DHIDIA Maximum range value for valid stack diameter (in meters)

DLOWVEL Minimum range value for valid stack velocity (in meters/second)

DHIVEL Maximum range value for valid stack velocity (in meters/second)
Table 3-11. Keywords in the PtDataProc Batch File when Processing Data for ISCST3

(continued)

Keyword Description of Value

3-24

DLOWTEMP Minimum range value for valid stack temperature (in Kelvin)

DHITEMP Maximum range value for valid stack temperature (in Kelvin)

Global Default Stack Parameters

DFLTHT Default stack height (in meters)

DFLTDIA Default stack diameter (in meters)

DFLTVEL Default stack exit gas velocity (in meters/second)

DFLTTEMP Default stack exit gas temperature (in Kelvin)

Additional Input Data

REF_ZONE UTM zone for ISCST3 model domain

Output files

OUTDATA Output SAS® file directory

OUTTEXT Output directory for text file of records without latitude/longitude data

OUTSAS Output inventory SAS® file name (contains all variables and records), prefix only

FINAL Output inventory SAS® file name after windowing 

NOLOCATE Output data SAS® file name containing records without coordinates, prefix only

ZEROEMIS Output data SAS® file name containing records with zero emissions values, prefix only

You must include all directory names, file names, and variable values even if they are related to a

function that you do not select to perform. For example, if you set DOSTACK to 0, you still

need to assign a value to the keywords for the SIC and SCC based default files and the global

default stack parameters in your batch file. The values provided in this circumstance do not need

to represent actual file names; they are merely place holder values for the keywords. You do not

need to include keywords required for processing data for ASPEN when processing data for

ISCST3 and vice versa.

Prepare the execute statement

The last line in the batch file runs the PtDataProc program. In the sample batch files provided in

Figures 3 and 4 of Appendix B, you will see a line preceding the run line that creates a copy of

the PtDataProc code having a unique name. It is this version of the program that is then executed

in the last line. If you do this, the log and list files created by this run can be identified by this

unique name. If you don’t do this and run the program under a general name, every run of

PtDataProc will create a log and a list file that replace any existing files of the same name.

You may find that you need to define a special area on your hard disk to use as work space when

running PtDataProc. In the sample batch file, a work directory is defined on the last line
3-25

following the execution of PtDataProc. The directory you reference here must be created prior to

running the program. For example, the statement: 

 ‘sas ptdataproc_061600.sas -work /data/work1/dyl/’ assigns a work directory called “/data/work1/dyl”.

3.2.4 Execute PtDataProc

There are two ways to execute the batch file. One way is to type ‘source’ and then the batch file

name. Alternatively, first set the permission on the file to ‘execute.’ You do this by using the

UNIX CHMOD command and adding the execute permission to yourself, as the owner of the

file, to anyone in your user group, and/or to anyone on the system. For example,

‘chmod u+x PtDataProc.bat’ gives you permission to execute the batch file. Refer to your UNIX

manual for setting other permissions. After you have set the file permission, you can execute the

batch file by typing the file name on the command line, for example, ‘PtDataProc.bat’.

3.3 How do I know my run of PtDataProc was successful?

3.3.1 Check your SAS® log file

You need to review the output log file to check for errors or other flags indicating incorrect

processing. This review should include searching the log files for occurrences of the strings

“error”, “warning”, “not found”, and “uninitialized”. These can indicate problems with input

files or other errors.

You can also look at the number of records in the input inventory file and compare it to the

number of records in the output inventory file. The number of records shouldn’t change unless

PtDataProc removed records during the quality assurance of the location data or during the

windowing of the inventory. If so, you can determine the number of records written to the

PtDataProc output files containing the records which have been dropped from the inventory (files

“nolocate” and “nomodel”) and the SAS® file containing the records with zero emissions (file

named by keyword ZEROEMIS).

3.3.2 Check your SAS® list file

The list file created when PtDataProc is executed contains information to assist in quality

assurance. This file can contain the information listed below. The contents of the list file from a

specific run of PtDataProc depend on which functions you choose to have PtDataProc perform.

C First 100 sites* requiring location defaulting due to missing or invalid location data

(when processing data for ASPEN only)

C First 100 sites* dropped from the inventory because a default location could not be

determined; emission total from all records dropped from inventory (when processing

data for ASPEN only)
3-26

C First 100 sites* dropped from the inventory because the disagreement between the

location and FIPS of the site could not be resolved; emission total from all records

dropped from inventory (when processing data for ASPEN only)

C Pollutant and state-level emission totals and record counts after all location defaulting is

complete (when processing data for ASPEN only)

C First 100 sites* with out-of-range stack parameters; emission total from all records with

out-of-range stack parameters

C Pollutant and state-level emission totals and record counts after defaulting stack

parameters

* You can analyze the output inventory and additional QA files (Section 3.3.3) to get a complete list

of sites with the above-stated problems. We chose 100 of them to be printed out in the list file arbitrarily.

3.3.3 Check other output files from PtDataProc

You should check for the existence of the output inventory file named by keyword FINAL if you

chose to window the inventory, or by keyword OUTSAS if you didn’t. While either of these two

files can serve as the input to PtModelProc, you’ll likely want to use the file you reduced through

the window function (named by keyword FINAL) to minimize the disk space use. PtDataProc

also creates SAS® and ASCII formatted output files, shown in Table 3-12, containing

information on the location and stack parameters were defaulted or dropped from the inventory.

Table 3-12. Additional QA Files Created by PtDataProc

QA output files File Contents

 Function: Quality assurance of location data when processing data for ISCST3

missing all records found to have missing location data; these records are dropped from the

inventory

 Function: Quality assurance of location data when processing data for ASPEN

dfltloc all records where location was defaulted because of missing or invalid location data

nolocate.txt, nolocate all records dropped from inventory because a default location could not be determined

nomodel.txt, nomodel all records dropped from inventory because discrepancy between location and county

FIPS could not be resolved

 Function: Quality assurance of stack parameters

stkcheck all records where stack parameters are outside a normally anticipated range of values

you supply in the “Valid Stack Parameter Ranges” section of Table 3-10 or 3-11

 Function: Window inventory to exclude nonzero emissions and unlocated sites

file named by 

keyword ZEROEMIS

all records dropped from the inventory where emission values are zero

file named by 

keyword NOLOCATE

all records dropped from inventory because either latitude and/or longitude are missing

(Note: if you chose to quality assure the location data, then this file should be empty)
4-1

PtDataProc

PtModelProc

PtTemporal

PtGrowCntl

PtFinal_ASPEN

OR

Point Source 

Emissions

ASPEN Point Source Emissions 

Files

PtFinal_ISCST3

ISCST3 SO Pathway of Run 

Stream Section for ISCST3 Point, 

Volume and Area Sources

Flowchart for ASPEN 

Processing Flowchart for ISCST3 

Processing

Point Source 

Emissions

PtDataProc

PtModelProc

PtTemporal

PtGrowCntl

OR

CHAPTER 4

Point Source Processing 

The Model-Specific Program (PtModelProc)

The flow charts below (Figure 4-1) show how PtModelProc fits into EMS-HAP’s point source

processing for the ASPEN and ISCST3 models. The point source inventory you input to

PtModelProc is the output from PtDataProc (Chapter 3). You use the output inventory from

PtModelProc as the input to PtTemporal (Chapter 5).

Figure 4-1. Overview of PtModelProc within EMS-HAP Point Source Processing
4-2

Figure 4-2. PtModelProc Flowcharts when Processing Data for ASPEN and ISCST3

Output Point Source Inventory File

PtModelProc:

MACRO DEFAULT

Assigns vent type and

building parameter

variables.

Reads Keywords

Batch File

Containing

Keywords e.g.

File Names and

Locations

PtModelProc:

MACRO SELHAPS

Selects, partitions, and

groups pollutants

according to contents

of HAP table file.

PtModelProc: MACRO

TRCTFLAG

Assigns urban/rural

dispersion flag based

on either county or tract

designation.

County Flag

File

Tract

Information

File

Flowchart for ASPEN Processing

PtModelProc: MACRO

DEFAULT

Assigns building

parameter variables for

height and width.

Output Point Source

Inventory File

Flowchart for ISCST3 Processing

Point Source

Inventory

File

HAP Table

File

Batch File

Containing

Keywords e.g.

File Names and

Locations

PtModelProc: MACRO

SELHAPS

Selects, partitions, and

groups pollutants

according to contents of

HAP table file.

Point Source

Inventory File

HAP Table

File

Reads Keywords

4.1 What is the function of PtModelProc?

The Model-Specific Processing Program (PtModelProc) performs pollutant selection, grouping

and partitioning functions and assigns pollutant and source-specific parameters to the point

source inventory. In particular, PtModelProc performs the functions listed below: 

C Selects pollutants, groups and/or partitions pollutants, and determines their characteristics

C Assigns urban/rural dispersion parameters when processing data for ASPEN only

C Assigns vent type (ASPEN only) and building parameters (for both ASPEN and ISCST3)

Figure 4-2 shows a flowchart of PtModelProc when processing data for ASPEN and for ISCST3. 

The following sections describe the above bullets.
4-3

4.1.1 Selects pollutants, groups and/or partitions pollutants, and determines their

characteristics

PtModelProc reads the point source inventory and selects, partitions, and groups pollutants to be

modeled by either ASPEN or ISCST3. It also assigns the pollutant characteristics of “reactivity

class” or “particulate size class” that the ASPEN model uses to control reactive decay and

deposition. Note that ISCST3 doesn’t use the reactivity/particulate class assignments. ISCST3

includes algorithms to model pollutant and source-specific gravitational settling and removal by

wet and dry deposition; the variables required for these algorithms are assigned in

PtFinal_ISCST3 (see Section 8.1.3). 

You control the selection, partitioning and grouping of pollutants, and the assignment of

reactivity/particulate size class through your entries in an ancillary file that we refer to as the

“HAP table.” PtModelProc uses two HAP table files. One is for the allocated aircraft emissions

which you obtained by running AirportProc. The other is for all other (i.e., non-aircraft) point

sources.

PtModelProc uses the source type variable (SRC_TYPE) to distinguish between aircraft point

sources and all other point sources. All allocated aircraft emissions have SRC_TYPE =

“nonroad”. PtModelProc’s utilization of two different HAP tables gives you the flexibility to

assign different pollutant characteristics (e.g., different particulate size classes for the particulate

pollutants) to the aircraft emission sources when you run these sources together with the nonaircraft point sources through the point source processing programs.

PtModelProc uses the HAP table to:

C Subset the inventory to include only those pollutants you’ve chosen to model

C Group multiple inventory species into a single pollutant category

C Partition inventory species into multiple pollutant categories with different reactivity or

particulate size classes. For example, apportion lead chromate to: 1) lead compounds,

fine particulate; 2) lead compounds, coarse particulate; 3) chromium compounds, fine

particulate and 4) chromium compounds, coarse particulate

C Assign a reactivity class to each gaseous pollutant and a particulate size class to each

particulate pollutant (through the variable REACT). Note that when processing for

ISCST3, PtModelProc assigns this variable, but it is not used.

C Apply a mass adjustment factor (FACTOR variable) to the emissions of an inventory

species to partition it among multiple pollutant categories, account for a particular portion

of it (e.g., the lead portion of lead sulfate), or adjust its potency to determine a toxics or

reactivity equivalency

C Assign the resulting pollutant or pollutant category to be modeled a unique HAP code

(variable NTI_HAP) used for inventory projections in PtGrowCntl, a unique pollutant 

code (variable SAROAD) and a description (variable SAROADDC)
4-4

Section 4.2.3 contains instructions on how to modify a HAP table to meet your needs. 

Appendix A, Tables 1 though 4 contain printouts of the HAP tables supplied with EMS-HAP. 

Appendix D, Sections D.5 and D.6 discuss the development of these HAP tables.

4.1.2 Assigns urban/rural dispersion parameters when processing data for ASPEN only

The dispersion algorithm in the ASPEN model uses different dispersion parameters and

deposition rates for urban and rural sources to account for the effect of land characteristics (e.g.,

numerous tall buildings) on these mechanisms. Therefore, each source must be identified as

being either in an urban or rural census tract. PtModelProc supplies this information through the

assignment of the urban/rural flag where a value of 1 (one) indicates an urban tract, and a value

of 2 indicates a rural tract. When running the ISCST3 model, the urban/rural designation is made

for all of the sources within a model run by a setting within the control option pathway; therefore,

EMS-HAP does not assign an urban/rural flag when processing for ISCST3.

In the situation where all of the tracts within a county are either all urban or all rural,

PtModelProc assigns the urban/rural flag by matching the state and county FIPS code to county

data in an ancillary file called ctyflag. This file contains urban/rural flags for uniform (i.e., either

all urban or all rural) counties. In cases where the tracts within a county are not uniformly urban

or rural, PtModelProc assigns the urban/rural flag by determining the specific tract in which the

site is located, and matching it to tract-level urban/rural data contained in an ancillary file called

tractinf. The ancillary files supplied with EMS-HAP use the same urban/rural designations used

in the EPA’s Cumulative Exposure Project (CEP).6

 The CEP based the designation on

residential population density data for 1990 (urban if greater than 750 people/km2), except for a

few very small tracts. Note this population-based approach is a surrogate for land

characteristics, and has no relation to the various population-based methods used for designating

counties or tracts as urban/rural used by the census. 

You can change the urban/rural designations used for ASPEN modeling by changing ctyflag and

tractinf. They are described briefly in Section 4.2.2 (Table 4-5), and their formats are provided in

Figures 15 and 10, respectively of Appendix A.

4.1.3 Assigns vent type and building parameters

When processing data for the ASPEN model, PtModelProc assigns the vent type variable

(IVENT) based on the stack type, as specified by the emission release point type variable

(EMRELPTY). See Table 4-1 for the details. An IVENT value of 0 (zero) represents a stacked

vent, and the ASPEN model performs plume rise calculations for these stacks. When the IVENT

value is 1 (one), a non-stacked vent, ASPEN does not perform plume rise calculations.
4-5

Table 4-1. Assignment of Vent Type Variable for ASPEN Model

Stack Type

Value of 

EMRELPTY

Assigned Value

of IVENT

vertical, goose neck, vertical with rain cap, downward-facing

vent

02,04,05,06 0

horizontal 03 1

fugitive 01 1

aircraft emissions AP 1

The building parameters required by the ASPEN model are: building code (variable IBLDG),

building width (variable BLDW), and building height (variable BLDH). For ASPEN processing,

PtModelProc sets IBLDG to 1 (one) and BLDH and BLDW to 5 meters for horizontal stacks; for

all other stacks, PtModelProc sets IBLDG, BLDH and BLDW to 0.

When processing data for the ISCST3 model, there is no distinction made between different vent

types; therefore no IVENT variable is assigned. However, EMS-HAP (in a subsequent program)

uses the EMRELPTY variable in defaulting fugitive and horizontal stacks to ISCST3 volume

sources. As described previously, ISCST3 can model three types of sources at specific locations:

point sources, area sources, and volume sources. An ISCST3 volume source is used to model

emission releases from various industrial sources, such as building roof monitors, multiple vents,

and conveyor belts. Point sources designated as fugitive sources and horizontal stacks are best

modeled as ISCST3 volume sources. In the program PtFinal_ISCST3, default ISCST3 volume

source release parameters are assigned to the fugitive sources (EMRELPTY = 1) and horizontal

stacks (EMRELPTY = 3) in order to model these sources as ISCST3 volume sources (see

Chapter 8, Section 8.1.2)

For ISCST3 processing, building width and building height may be specified for ISCST3 point

sources. PtModelProc assigns these building parameters to sources that don’t already have them

in your inventory based on stack height. If your inventory includes ISCST3 area sources, such as

aircraft emission sources, PtModelProc assigns these parameters to these sources as well, even

though (similar to point source stack parameters) they are not used in the ISCST3 model. As

discussed in Chapter 3 (Section 3.2.1), if you have information on building width and height for

some or all of the sources, you can include BLDW and BLDH in your input inventory. In this

case, PtModelProc only assigns default values when the values for these are missing. If your

inventory does not contain these variables, PtModelProc creates them and assigns default values

relative to the stack height for any source with a stack height taller than 65 meters. This is the

maximum height where building downwash effects the plume. Table 4-2 shows how

PtModelProc assigns these variables. As shown in Table 4-2, the minimum default building

height allowed is 3.05 meters; default building heights less than this are set to 3.05 meters. 
4-6

Stacks with heights greater than or equal to 65 meters are not assigned building parameters; their

values remain as missing. 

Table 4-2. Assignment of Default Building Height and Width for the ISCST3 Model

Stack Height

Default Building Height (BLDH)

Default Building

Maximum Value Minimum Value Width (BLDW)

Stack Height Less than 65 Meters Stack Height x 0.625 3.05 Building Height x 2

Stack Height Greater than or Equal

to 65 Meters

missing missing missing

4.2 How do I run PtModelProc?

4.2.1 Prepare your point source inventory for input into PtModelProc

The point source inventory you use for input into PtModelProc can come from a variety of

sources, but you will likely use the output inventory created by PtDataProc (see Chapter 3). 

When you are processing data for ASPEN and your inventory includes allocated aircraft

emissions (from running AirportProc, see Chapter 2), you must run PtDataProc in order to assign

default values to the missing aircraft emission stack parameters. This is not required when you

are processing data for ISCST3, because aircraft emissions are modeled as ISCST3 area sources

and stack parameters are not used for this ISCST3 source type. If your input to PtModelProc is

the result of processing through PtDataProc, the inventory will meet all requirements. 

When processing data for ASPEN, this inventory will contain at least the variables listed in

Table 4-3. It may contain additional variables such as the diagnostic flag variables (LFLAG,

FIPFLAG, etc.) created by PtDataProc depending on the options you chose for the windowing

function and the contents of the varlist.txt file in PtDataProc (see Section 3.1.3).

When processing data for ISCST3, this inventory will contain the variables listed in Table 4-4

with some exceptions. Only if you have included ISCST3 area and/or volume sources will the

inventory contain the release parameter variables required for these sources (see Section 3.2.1 for

a description of these source types). Only if you have included building parameters will the

inventory contain the variables BLDH and BLDW. The inventory may contain additional

variables such as the diagnostic flag variables LLPROB or FIPFLAG created by PtDataProc

depending on the options you chose for the windowing function and the contents of the varlist.txt

file used in PtDataProc.
4-7

Table 4-3. Variables in the PtModelProc Input Point Source 

Inventory SAS® File when Processing Data for ASPEN

Variables used by PtModelProc are in bold; 

other variables listed are used by previously run or subsequent point source processing programs

Variable Name Data Description

(Required units or values are in parentheses)

Type*

CNTL_EFF baseline control efficiency, expressed as a percentage N

EMIS pollutant emissions value (tons/year) N

EMRELPID code identifying a unique emission point within a site A50

EMRELPTY physical configuration code of release point

(01=fugitive; 02=vertical stack; 03=horizontal stack, 04=goose neck, 05=vertical

with rain cap, 06=downward-facing vent, AP=aircraft)

A4

FIPS 5-digit FIPS code (state and county combined) A5

LAT latitude (decimal degrees) N

LON longitude (negative decimal degrees) N

MACTCODE MACT code A7

POLLCODE unique pollutant code A10

SCC EPA source category code identifying the process A10

SIC Standard Industrial Classification (SIC) code for the site A4

SITE_ID code identifying a unique site A25

SRC_TYPE description of the emission source at the site (‘nonroad’ for aircraft emissions). 

If you choose to define source groups by this variable as explained in 7.1.1, or

run PtGrowCntl (Chapter 6) then it must have the value of ‘major’ or ‘area’ for

non-aircraft emissions.

A15

STACKDIA diameter of stack (meters) N

STACKHT height of stack (meters) N

STACKVEL velocity of exhaust gas stream (meters per second) N

STKTEMP temperature of exhaust gas stream (Kelvin) N

* Ax = character string of length x, N = numeric
4-8

Table 4-4. Variables in the PtModelProc Input Point Source 

Inventory SAS® File when Processing Data for ISCST3

Variables used by PtModelProc are in bold; 

other variables listed are used by previously run or subsequent point source processing programs

Variable Name Data Description

(Required units or values are in parentheses)

Type*

AANGLEc orientation angle of rectangle for ISCST3 area sources (degrees from North) N

AINPLUMc initial vertical dimension of plume for ISCST3 area source (meters) N

ARELHGTa release height above ground for ISCST3 area sources (meters) N

AXLENa length of X side of rectangle for ISCST3 area sources (meters) N

AYLENc length of Y side of rectangle for ISCST3 area sources (meters) N

BLDHc building height (meters) N

BLDWc building width (meters) N

CNTL_EFF baseline control efficiency, expressed as a percentage N

EMIS pollutant emissions value (tons/year) N

EMRELPID code identifying a unique emission point within a site A50

EMRELPTY physical configuration code of release point

(01=fugitive; 02=vertical stack; 03=horizontal stack, 04=goose neck,

05=vertical with rain cap, 06=downward-facing vent, AP=aircraft)

A4

FIPS 5-digit FIPS code (state and county combined) A5

ISCTYPEa,b ISCST3 source type (iscarea or iscvolume) A9

MACTCODE process or site-level MACT code A7

POLLCODE unique pollutant code A10

SCC EPA source category code identifying the process A10

SIC Standard Industrial Classification (SIC) code for the site A4

SIGMAXb initial lateral dimension of volume source (meters) N

SIGMAZb initial vertical dimension of volume source (meters) N

SITE_ID code identifying a unique site A25

SRC_TYPE description of the emission source at the site (‘nonroad’ for aircraft emissions). 

If you choose to define source groups by this variable as explained in 8.1.1, or

run PtGrowCntl (Chapter 6) then it must have the value of ‘major’ or ‘area’ for

non-aircraft emissions.

A15
Table 4-4. Variables in the PtModelProc Input Point Source 

Inventory SAS® File when Processing Data for ISCST3

(continued)

Variable Name Data Description

(Required units or values are in parentheses)

Type*

4-9

STACKDIA diameter of stack (meters) N

STACKHT height of stack (meters) N

STACKVEL velocity of exhaust gas stream (meters per second) N

STKTEMP temperature of exhaust gas stream (Kelvin) N

UTMX UTM easting (meters) N

UTMY UTM northing (meters) N

VOLHGTb release height above ground for volume source (meters) N

* Ax = character string of length x, N = numeric

a

 variables required for processing ISCST3 area sources

b

 variables required for processing ISCST3 volume sources

c

 additional variables only included when information is available 

4.2.2 Determine whether you need to modify the ancillary input files for PtModelProc

An ancillary file is any data file you input to the program other than your emission inventory. 

Table 4-5 lists the ancillary input files for PtModelProc. The ones you’ll likely need to modify

are the HAP table files. Four different HAP table files are provided with EMS-HAP. These files

were developed for use with different emission sources (point and non-point, onroad mobile, and

nonroad mobile) and for different pollutant types (directly emitted HAPs, and precursors that

lead to secondary HAP formation). Section D.5 (Appendix D) details how we developed the

HAP table files for directly emitted HAPs, and Section D.6 details how we developed the HAP

table for the precursors. All of these files contain the same type of information in the same

format. You will probably want to modify these HAP table files in order to select and group the

pollutants for your modeling needs. You will need to modify the HAP tables if your inventory

contains species not contained the files supplied with EMS-HAP. A description of the function

and format of a HAP table file is presented in the next section. Complete listings of the

individual HAP table files provided with EMS-HAP can be found in Appendix A (Tables 1

through 4). 
4-10

Table 4-5. Required Ancillary Input Files for PtModelProc

Name Purpose Need to Modify? Format

HAP table

for nonaircraft

point

sources

Selects pollutants to be modeled, groups and

partitions pollutants, assigns reactivity and

particulate size classes used for ASPEN

only, adjusts emissions for non-aircraft point

source emission records

If you choose to change

selection or characteristics of

pollutants or if your

inventory includes species

that aren’t in the HAP tables

we supplied.

Text

HAP table

for aircraft 

sources

Selects pollutants to be modeled, groups

and partitions pollutants, assigns reactivity

and particulate size classes used for ASPEN

only, adjusts emissions for allocated aircraft

emission records

“ Text

tractinf* Provides census tract centroid location and

radius and urban/rural dispersion flag for

assigning dispersion flag to a site at the

tract-level

If you choose to update the

tract-level urban/rural

dispersion designations,

model with tracts based on

census data other than 1990,

or to add Alaska and/or

Hawaii

SAS®

ctyflag* Assigns urban/rural dispersion flag based on

county FIPS for counties with uniform

census tracts

“ SAS®

* required only when processing data for ASPEN

4.2.3 Modify the HAP table input files

We’ve supplied you with four HAP Table files. 

1) point_area HAP table (haptabl_point_area.txt)

2) onroad mobile HAP table (haptabl_onroad.txt)

3) nonroad mobile HAP table (haptabl_nonroad.txt)

4) precursor HAP table (haptabl_precursor.txt), which applies to precursors from point, nonpoint, onroad and nonroad sources. (Not used when processing for ISCST3)

Precursors are pollutants that cause HAPs to form secondarily in the atmosphere. They may or

may not be HAPs themselves. More information about processing HAP precursors can be found

in Appendix D, Section D.6. They are only used when processing for ASPEN.

PtModelProc uses two HAP table files in a single run. One is for aircraft emission sources which

were allocated to specific locations by the AirportProc program, and one is for non-aircraft point
4-11

sources. Before you run PtModelProc you’ll need to select the appropriate HAP tables and

modify them to fit your modeling needs and your inventory. If you are running the direct

emissions of HAPs, then select the point_area HAP table for non-aircraft emissions and nonroad

HAP table for aircraft emissions. Select the precursor HAP table for both non-aircraft point

sources and aircraft point sources if you are processing precursors to HAPs (which you would

only do for ASPEN)..

You may not need to modify any of the HAP table files provided with EMS-HAP. The most

likely reasons to modify one of these files would be to select different pollutants to model, or to

assign reactivity/particulate size classes differently. You must, however, change the files if they

don’t include all species contained in your inventory. Do this by adding records for these species

to HAP table files. Otherwise, EMS-HAP won’t process these pollutants and it won’t pass them

to the model.

The remainder of this section describes the HAP table file. It describes how EMS-HAP uses the

information contained in the HAP table, and gives you the background you need to make

decisions on modifying the HAP tables for use with your inventory.

Key Features of the HAP table

With the HAP table, you can select which pollutants to retain from your emission inventory. 

You can also group pollutants together (e.g., group lead oxide and lead chromate into lead

compounds) or partition pollutants (e.g., partition lead chromate into lead compounds and

chromium compounds). Depending on your inventory, you may need to modify the emission

values to account for such things as reactivity differences between two pollutants in the same

pollutant category (when processing precursor emission data for ASPEN), or expressing the mass

of metal-containing HAPs as the mass of the metal only. PtModelProc makes these adjustments

to the emissions by applying a mass adjustment factor also included in the HAP table file. 

ASPEN and ISCST3 modeling requires that every pollutant or pollutant category be assigned a

unique code and, for ASPEN modeling, a corresponding reactivity/particulate size class

(represented by the variable REACT). PtModelProc assigns these based on the information in

the HAP table file. The HAP table we supply uses the SAROAD code as the unique

pollutant/pollutant category code because that is the code described in the ASPEN User’s guide

to identify a pollutant, and ASPEN requires it to be a 5-digit code. This code comes from the air

pollution chemical species classification system used in EPA’s initial data base for “Storage and

Retrieval of Aerometric Data.” For pollutants/pollutant categories that do not have this code, we

have arbitrarily assigned a 5-digit code.

Table 4-6 shows the format of the HAP tables that PtModelProc uses for HAP-specific

processing. When processing data for ASPEN, all variables except for POLLDESC and

SAROADDC are required to have values for the pollutants you choose to model. However,

values of those variables would be useful for interpreting information in the SAS® list file (see
4-12

Section 4.3.2). Note that the variable REACT is not required when processing data for ISCST3. 

PtModelProc does not default any information not present in your HAP table. 

Table 4-6. Structure of the HAP Table

Variable name used

in PtModelProc

Description Type* Column Length Range

POLLDESC Individual chemical name, 

prior to aggregation

C 1 45

SAROADDC Name of the aggregated

SAROAD code

C 47 50

POLLCODE Code identifying individual

chemical in inventory (the 1996

NTI typically uses a Chemical

Abstracts System [CAS] No.

where available)

C 100 10

REACTa Reactivity/particulate size class N 113 1 1-9

KEEP Flag determining whether

chemical will be modeled

C 121 1 Y or N

SAROAD Code defining a single chemical

or group of chemicals for

modeling. Can be an historic

SAROAD code, or arbitrarily

assigned. 

C 128 5

FACTOR Emission adjustment factor N 135 7

NTI_HAP Code identifying HAP on the

Clean Air Act HAP list. Used

only in projection program

PtGrowCntl (Chapter 6)

C 144 3 1-188

* C=character, N=numeric

a

 required only when processing data for ASPEN

Table 4-7 gives sample entries which illustrate the key HAP-specific modeling features of

EMS-HAP. Note that “lead compounds coarse” has a different SAROAD code from “lead

compounds, fine”. They are therefore treated as two distinct pollutant categories. To get the

emissions of total lead, you would need to sum up the emissions of the two separate SAROAD

codes representing these two separate pollutants.
4-13

Table 4-7. Sample Entries in a HAP Table

Inventory species name HAP category name NTI

species

code

Reactivity or

Particu

late

size

class

Keep

?

SAROAD

code

Factor to

adjust to

emission

value

(TEF or

other)

NTI

HAP

No.

Dioxins, total, w/o individ. isomers reported Dioxins/Furans as TEQ, upper bound 610 1 Y 80245 1.000 9031,2,3,7,8-Pentachlorodibenzo-p-dioxin Dioxins/Furans as TEQ, upper bound 40321764 1 Y 80245 0.500 9032,3,7,8-Tetrachlorodibenzo-p-dioxin Dioxins/Furans as TEQ, upper bound 1746016 1 Y 80245 1.000 9031,2,3,7,8,9-Hexachlorodibenzo-p-dioxin Dioxins/Furans as TEQ, upper bound 19408743 1 Y 80245 0.100 9031,2,3,4,6,7,8-Heptachlorodibenzo-p-/dioxin Dioxins/Furans as TEQ, upper bound 35822469 1 Y 80245 0.010 903Octachlorodibenzo-p-dioxin Dioxins/Furans as TEQ, upper bound 3268879 1 Y 80245 0.001 903Dioxins, total, w/o individ. isomers reported Dioxins/Furans as TEQ, lower bound 610 1 Y 80245 0.000 9032,3,7,8-Tetrachlorodibenzo-p-dioxin Dioxins/Furans as TEQ, lower bound 1746016 1 Y 80412 1.000 9031,2,3,7,8-Pentachlorodibenzo-p-dioxin Dioxins/Furans as TEQ, lower bound 40321764 1 Y 80412 0.500 9031,2,3,7,8,9-Hexachlorodibenzo-p-dioxin Dioxins/Furans as TEQ, lower bound 19408743 1 Y 80412 0.100 9031,2,3,4,6,7,8-Heptachlorodibenzo-p-/dioxin Dioxins/Furans as TEQ, lower bound 35822469 1 Y 80412 0.010 903Octachlorodibenzo-p-dioxin Dioxins/Furans as TEQ, lower bound 3268879 1 Y 80412 0.001 903Lead & Compounds Lead compounds, fine particulate 195 2 Y 80193 0.740 122Lead carbonate Lead compounds, fine particulate 598630 2 Y 80193 0.574 122Lead titanate Lead compounds, fine particulate 12060003 2 Y 80193 0.506 122Lead sulfate Lead compounds, fine particulate 7446142 2 Y 80193 0.506 122Lead oxide Lead compounds, fine particulate 1309600 2 Y 80193 0.687 122Lead nitrate Lead compounds, fine particulate 10099748 2 Y 80193 0.463 122Lead & Compounds Lead compounds, coarse particulate 195 3 Y 80393 0.260 122Lead carbonate Lead compounds, coarse particulate 598630 3 Y 80393 0.202 122Lead titanate Lead compounds, coarse particulate 12060003 3 Y 80393 0.178 122Lead sulfate Lead compounds, coarse particulate 7446142 3 Y 80393 0.178 122Lead oxide Lead compounds, coarse particulate 1309600 3 Y 80393 0.241 122Lead nitrate Lead compounds, coarse particulate 10099748 3 Y 80393 0.163 122Hydrogen Cyanide Cyanide Compounds, gas 74908 1 N 80145 0.963 82
4-14

Selecting the pollutants you want to model

Set the KEEP variable to ‘Y’ for each pollutant that you want to model, and ‘N’ for each

pollutant you don’t want to model. EMS-HAP uses this variable to determine which records to

keep for further processing. EMS-HAP will keep records for the pollutants in the HAP table

with KEEP equal to ‘Y’ and drop records for pollutants with KEEP equal to ‘N.’ 

Combining/partitioning inventory species into groups

To group or partition inventory species, follow the directions in Table 4-8 below. If you are

partitioning HAPs, you must also adjust the FACTOR variable discussed later in this section.

Table 4-8. Directions for Partitioning or Grouping of Inventory Species

If you want to Then For Example......

Partition a pollutant

into more than one

category.

Use multiple records (in the HAP table)

with the same POLLCODE value and

different SAROAD values. You need a

separate record for each HAP category to

which the pollutant is assigned. Also see

Table 4-9 for information on how to

adjust the FACTOR variable.

Table 4-7 shows “Lead &

Compounds” partitioned to

“Lead Compounds, coarse” and

“Lead Compounds, fine” 

categories.

Group multiple

inventory species to

the same HAP

category.

Use multiple records (in the HAP table)

with the same SAROAD value, and

different POLLCODE values.

Table 4-7 shows that both

“Dioxins, total, w/o individ.

isomers reported”and

“1,2,3,7,8-Pentachlorodibenzo-pdioxin” are assigned to the

“Dioxins/Furans as TEQ, upper

bound” HAP group. 

Partition a pollutant

into different particle

size classes, while at

the same time

grouping it together

with other pollutants

in a HAP category.

Use two records for each pollutant. Both

records have the same POLLCODE but

different SAROAD codes. One record

has a SAROAD representing the fine

particulate group, and one record has a

SAROAD representing the coarse

particulate group. 

Table 4-7 shows how to group

six lead inventory entries into

“Lead Compounds” and in turn

divide them into fine and coarse

particulates. Note that 12 records

are needed in the HAP table, two

for each of the six species. The

two resulting pollutant categories

are assigned to different

particulate size classes.
4-15

Assigning ASPEN reactivity/particulate size classes to the pollutants when processing data for

ASPEN only 

When processing data for ASPEN, make sure your HAP table has an assignment of the REACT

variable for every pollutant you want to model. If you have different information on how HAPs

partition between fine and coarse particulate size classes or between gas and particulate matter,

you may want to revise the HAP tables provided. To do this, you need to read about combining

and partitioning inventory species into groups presented in the previous section.

EMS-HAP uses the REACT variable to provide ASPEN information on the amount of decay or

deposition to use for each pollutant. As emissions disperse downwind, most organic HAPs are

gradually converted to other compounds. Particulate HAPs gradually settle and deposit as they

disperse downwind from an emission source. The REACT variable in Table 4-6, specifies the

reactivity class, or in the case of particulate HAPs, the particulate size class. EMS-HAP uses

these classes to establish and provide decay rate information for the ASPEN input files, as

discussed in Chapter 7, Section 7.1.2.

ASPEN uses up to seven reactivity classes to quantify degradation of gaseous organic pollutants,

and two classes to distinguish between fine and coarse particulate pollutants. These classes are:

• non-reactive or very low reactivity (REACT=1)

• low reactivity (REACT=9)

• medium low reactivity (REACT=4)

• medium reactivity (REACT=5)

• medium high reactivity (REACT= 6)

• high reactivity (REACT=8)

• very high reactivity (REACT=7)

• fine: particles with aerodynamic diameter less than 2.5 μm- (REACT=2)

• coarse: particles with aerodynamic diameter between 2.5 and 10 μm- (REACT=3)

This classification system and the associated decay coefficients were developed for the

Cumulative Exposure Project (CEP).7

 The decay coefficients are a function of both reactivity

class, stability class, and time block; the actual values are provided in Table D-5 in Appendix D. 

EMS-HAP provides the coefficients to the ASPEN input file through the ancillary file called

indecay.txt. This file is used with PtFinal_ASPEN (Chapter 7, see 7.2.2) and AMProc (Chapter

11, see 11.2.2). Figure 28 in Appendix A contains its format and sample file contents.

Adjusting emissions 

Use the FACTOR variable to make adjustments to emissions as shown in Table 4-9. If you are

not adjusting emissions, you must set the FACTOR variable to 1 (one). A missing FACTOR

variable will drop emissions for that pollutant from your inventory
4-16

Table 4-9. Using the FACTOR Variable to Adjustment Emissions

Use FACTOR to........ For Example......

Apportion a pollutant’s emissions 

into more than one category

If “Lead & Compounds” contained 26% coarse particulate and 74%

fine particulate, the factors (hereafter referred to as “split factors”) to

apportion emissions into coarse and fine particulate classes would be

0.26 and 0.74, respectively

Adjust the emissions of a metal or

cyanide compound to account for

only the metal or cyanide portion of

the compound

To quantify how much cyanide gas emissions come from Hydrogen

Cyanide (CHN), use a factor (hereafter referred to as “metal reduction

factor”) equal to the ratio of the molecular weight (MW) of total

cyanide moles in CHN to the molecular weight of CHN. The MW of

cyanide moles is 26.0177, and the MW of CHN is 27.0256. The

factor for CHN is therefore 26.0177/27.0256= 0.9627.

Adjust the emissions of a metal or

cyanide compound to account for

only the metal or cyanide portion of

the compound and apportion the

emissions into more than one

category

Combine the coarse fine split factor and metal reduction factor by

multiplying them together. For Lead Carbonate (CO3Pb), the metal

reduction factor is the MW of lead (207.9) divided by the MW of

CO3Pb (267.2092), which is 0.7754. Given a 26/74 coarse/fine split,

the factor used in the HAP table for processing lead carbonate for the

coarse lead category is 0.7754*0.26= 0.202, and the factor for the

fine lead category is 0.7754*0.74 = 0.574

Adjust the emissions of a dioxin

congener to 2,3,7,8-

tetrachlorodibenzodioxin toxic

equivalents (TEQs) using a toxics

equivalency factor (TEF) 

1,2,3,7,8-Pentachlorodibenzo-p-dioxin has a TEF of 0.5, thus use a

factor of 0.5 to adjust this species to TEQ.

Apply two different TEFs for those

dioxin/furans that can not be

converted to TEQ to produce both

upper and lower bound estimates for

dioxin/furans

Assign a TEF of 1.0 to “Dioxins, total, w/o individ. isomers reported”

to reflect an upper end estimate of TEQ. Assign it a TEF of 0.0 to

reflect a lower bound estimate of TEQ

The emissions for a HAP category is the sum of the adjusted emission for each species in the

category. The following hypothetical example illustrates how PtModelProc groups and partitions

inventory species. Refer to Table 4-7 for the factors used in this example. A given stack emits

lead oxide, lead carbonate, and lead sulfate emissions. PtModelProc calculates the emissions (E)

of lead compounds fine particulate (SAROAD= 80193) from that stack as: 

Elead compounds, fine particulate = 0.687*E Lead oxide + 0.574*E Lead carbonate+ 0.506*E lead sulfate

The emissions of lead compounds coarse particulate (SAROAD=80393) are calculated as:

Elead compounds, coarse particulate = 0.241*E Lead oxide + 0.202*E Lead carbonate+ 0.178*E lead sulfate
4-17

4.2.4 Prepare your batch file 

The batch file serves two purposes: (1) allows you to pass “keywords” such as file names and

locations, program options, and run identifiers to the program, and (2) sets up the execute

statement for the program. Sample batch files for PtModelProc for ASPEN and ISCST3

emissions processing are shown in Figures 5 and 6, respectively, of Appendix B. The best way

to prepare your batch file is to use one of the samples we provide and modify it to fit your needs.

Specify your keywords

Table 4-10 describes the keywords required in the batch file when processing data for ASPEN. 

Table 4-11 describes the keywords required in the batch file when processing data for ISCST3. 

Table 4-10. Keywords in the PtModelProc Batch File when Processing Data for ASPEN

Keyword Description of Value

Input Inventory Files

IN_DATA Input SAS® file directory

INSAS Input inventory SAS® file name, prefix of file name only

Ancillary or Reference Files (Prefix of file name provided with EMS-HAP)

REFSAS Reference SAS® file directory

REFTEXT Reference text file directory

PTHAPS HAP table file used for non-aircraft point source emissions, prefix only

(haptabl_point_area or haptabl_precursor)

MOBHAPS HAP table file used for aircraft point source emissions, prefix only

(haptabl_nonroad or haptabl_precursor)

CTYFLAG County FIPS to urban/rural flag correspondence SAS® file for counties with a

uniform flag for all tracts within the county, prefix only (ctyflag)

TRCTINF Census tract information SAS® file containing data necessary to assign an

urban/rural flag, prefix only (tractinf)

Program Options

MODEL ASPEN=process data for ASPEN model

Output files

OUTDATA Output SAS® file directory

OUTSAS Output inventory SAS® file name, prefix only
4-18

Table 4-11. Keywords in the PtModelProc Batch File when Processing Data for ISCST3

Keyword Description of Value

Input Inventory Files

IN_DATA Input SAS® file directory

INSAS Input inventory SAS® file name, prefix of file name only

Ancillary Files (Prefix of file name provided with EMS-HAP)

REFTEXT Ancillary text file directory

PTHAPS HAP table file used for non-aircraft point source emissions, prefix only

(haptabl_point_area)

MOBHAPS HAP table file used for aircraft point source emissions, prefix only

(haptabl_nonroad)

Program Options

MODEL ISC=process data for ISCST3 model

Output files

OUTDATA Output SAS® file directory

OUTSAS Output inventory SAS® file name, prefix only

Prepare the execute statement

The last line in the batch file runs the PtModelProc program. In the sample batch files provided

in Figures 5 and 6 of Appendix B, you will see a line preceding the run line that creates a copy of

the PtModelProc code having a unique name. It is this version of the program that is then

executed in the last line. If you do this, the log and list files created by this run can be identified

by this unique name. If you don’t do this and run the program under a general name, every run of

PtModelProc will create a log and a list file that will replace any existing files of the same name.

You may find that you need to assign a special area on your hard disk to use as work space when

running PtModelProc. In the sample batch file, a work directory is defined on the last line

following the execution of PtModelProc. For example, the command 

 ‘sas PtModelProc_011300.sas -work /data/work15/dyl/’ assigns a work directory called

“/data/work15/dyl”. The directory you reference must be created prior to running the program.

4.2.5 Execute PtModelProc

There are two ways to execute the batch file. One way is to type ‘source’ and then the batch file

name. Alternatively, first set the permission on the file to ‘execute.’ You do this by using the

UNIX CHMOD command and adding the execute permission to yourself, as the owner of the

file, to anyone in your user group, and/or to anyone on the system. For example,
4-19

‘chmod u+x PtModelProc.bat’ gives you permission to execute the batch file. Refer to your UNIX

manual for setting other permissions. After you have set the file permission, you can execute the

batch file by typing the file name on the command line, for example, ‘PtModelProc.bat’.

4.3 How do I know my run of PtModelProc was successful?

4.3.1 Check your SAS® log file

You need to review the output log file to check for errors or other flags indicating incorrect

processing. This review should include searching the log files for occurrences of the strings

“error”, “warning”, “not found”, and “uninitialized”. These can indicate problems with input

files or other errors.

Depending on how you selected, partitioned, and grouped pollutants, the number of records in

the output inventory file will be different from the number of records in the input inventory file. 

After the application of the HAP table files, the number of records in the output inventory file

should not change when the urban/rural dispersion flag, vent type, and building parameters are

added.

4.3.2 Check your SAS® list file

The list file created when PtModelProc is executed contains information to assist in quality

assurance. This file can contain the information listed below.

C List of records (if any) from the inventory with pollutant codes not included in the HAP

tables

C List of pollutants codes retained for modeling based on the HAP tables, including the

SAROAD assignment and FACTOR variable

C List of pollutant codes not retained for modeling based on the HAP tables, including the

SAROAD assignment

C Comparison of pollutant code-level emission totals of aircraft and non-aircraft emissions

retained for modeling, not retained for modeling, and in the input inventory files

C Pollutant code-level and SAROAD-level emission totals for emissions retained for

modeling after application of FACTOR variable

C SAROAD-level emission totals after selection of pollutants, application of FACTOR

variable, and accumulation by SAROAD code

C SAROAD-level emission totals for output inventory from PtModelProc

You should check to be sure that all pollutants of interest are included in your HAP tables by

reviewing the first list of records describes above. Any records with pollutant codes not found in

the HAP tables are removed from the inventory. Based on these lists, you may need to revise

your HAP table files and rerun PtModelProc.
4-20

It is important to check the accuracy of the pollutant selection, the application of the FACTOR

variable, and the accumulation of emissions to the SAROAD code groups. The tables comparing

the emission totals between the pollutants retained for modeling and those not retained to the

input emission inventory is particularly useful for this purpose. It is also important to compare

the pollutant-level emission totals before and after the application of the FACTOR variable.

4.3.3 Check other output files from PtModelProc

You should check for the existence of the output inventory file named by keyword OUTSAS. 

This file will be the inventory input to PtTemporal.
5-1

PtDataProc

PtModelProc

PtTemporal

PtGrowCntl

PtFinal_ASPEN

OR

Point Source 

Emissions

ASPEN Point Source Emissions 

Files

PtFinal_ISCST3

ISCST3 SO Pathway of Run 

Stream Section for ISCST3 Point, 

Volume and Area Sources

Flowchart for ASPEN Processing

Flowchart for ISCST3 Processing

Point Source 

Emissions

PtDataProc

PtModelProc

PtTemporal

PtGrowCntl

OR

CHAPTER 5

Point Source Processing 

The Temporal Allocation Program (PtTemporal)

The flowcharts below (Figure 5-1) show how PtTemporal fits into EMS-HAP’s point source

processing for the ASPEN and ISCST3 models. The point source inventory you input to

PtTemporal is the output from PtModelProc (Chapter 4). You use the output inventory from

PtTemporal as the input to PtGrowCntl (Chapter 6) to project your inventory to a future date. If

you choose not to project the inventory, then you use the output inventory as the input to

PtFinal_ASPEN (Chapter 7) when processing data for ASPEN, or to PtFinal_ISCST3

(Chapter 8) when processing data for ISCST3.

Figure 5-1. Overview of PtTemporal within EMS-HAP Point Source Processing
5-2

5.1 What is the function of PtTemporal?

The PtTemporal program temporally allocates annual point source emissions. Temporal

allocation is the process of estimating emissions at different temporal scales than the scales of the

input emission inventory. The ASPEN model requires emissions for eight 3-hour periods within

an annually-averaged day; this uniform allocation of annual emissions to days during the year

results in each day of the year containing the same emissions. When processing data for the

ASPEN model, this program produces these eight emission rate estimates for each annual

emission record in the point source inventory. The ISCST3 model supports emissions for all 24

hours within each of three different day types (weekday, Saturday, and Sunday) and four different

season types (spring, summer, fall, and winter). When processing data for the ISCST3 model,

this program produces 288 emission rate estimates (24 hours * 4 seasons * 3 day types) for each

annual emission record in the point source inventory.

PtTemporal performs the following functions:

C Assigns a temporal profile to each emission record

C Uses the hourly profiles to produce eight 3-hour emission rates, when processing

data for ASPEN

C Uses the hourly, day, and seasonal profiles to produce 288 emission rates when

processing data for ISCST3

Figure 5-2 shows the flowchart of PtTemporal when processing data for ASPEN, and Figure 5-3

shows the flowchart of PtTemporal when processing data for ISCST3. The following sections

describe the above bullets.
5-3

Reads Keywords

Batch File Containing 

Keywords e.g. File 

Names and Locations

Figure 5-2. PtTemporal Flowchart when Processing Data for ASPEN

PtTemporal: MACRO ASPENTAF 

Reads temporal allocation factor file. 

Calculates eight 3-hour factors and 

renormalizes the 3-hour factors for 

each profile.

Temporal Allocation Factor 

(TAF) File containing 24 

hourly factors of an average 

day for each profile

Point Source Inventory File

PtTemporal: MACRO MERGETAF 

Assigns TAFs to point source inventory by 

matching SCC on inventory to SCC/AMS 

assigned to each profile of TAFs. Uses 

cross reference files to match other 

source/process information (SIC or MACT 

code) on inventory if SCC can not provide a 

match. Multiplies annual emissions by TAFs 

to calculate emission rates (tons/year).

SCC to SCC/AMS Cross 

Reference File

SIC to SCC/AMS Cross 

Reference File

MACT Category to SCC/AMS 

Cross Reference File

Output Point Source Inventory 

File, Including Records 

Assigned Uniform Profile

Records Not Assigned 

TAF profile, but Assigned 

Uniform Profile
5-4

Batch File Containing 

Keywords e.g. File 

Names and Locations

Reads Keywords

Figure 5-3. PtTemporal Flowchart when Processing Data for ISCST3

PtTemporal: MACRO ISCTAF 

Reads temporal allocation factor file. For 

each profile, calculates 288 hourly factors 

representing each hour of each day type of 

each season. Renormalizes hourly factors for 

each profile.

Temporal Allocation Factor 

(TAF) File containing for 

each profile, 24 hour factors 

for each of three day types 

within each of four seasons

Point Source Inventory File

PtTemporal: MACRO MERGETAF 

Assigns TAFs to point source inventory by 

matching SCC on inventory to SCC/AMS 

assigned to each profile of TAFs. Uses 

cross reference files to match other 

source/process information (SIC or MACT 

code) on inventory if SCC can not provide a 

match. Multiplies annual emissions by TAFs 

to calculate emission rates (tons/year).

SCC to SCC/AMS Cross 

Reference File

SIC to SCC/AMS Cross 

Reference File

MACT Category to SCC Cross 

Reference File

Output Point Source Inventory File, 

Including Records Assigned Uniform 

Profile

Records Not Assigned TAF 

profile, but Assigned Uniform 

Profile
5-5

5.1.1 Assigns an hourly temporal profile to each emission record

PtTemporal assigns temporal profiles from an ancillary temporal allocation factor (TAF) file.

Different TAF files are used when PtTemporal processes emissions for ASPEN than for ISCST3,

because ASPEN uses only eight 3-hour values and does not take seasonal or day-of-week

variation into account, whereas ISCST3 can use 24 hourly values with day-of-week and seasonal

variation.

Both TAF files contain temporal profiles based on 8-digit AIRS Source Classification Codes

(SCC) or 10-digit Area and Mobile System (AMS) codes. In the TAF file used to process data

for ASPEN, each temporal profile consists of 24 temporal allocation factors (TAFs) that can

allocate annual emissions to each hour of an average day. See Figure 16a in Appendix A for the

format of this file; Section D.7 discusses its development. In the TAF file used to process data

for ISCST3, each profile consists of 24 hourly TAFs for each of four seasons and three day types. 

See Figure 16b in Appendix A for the format of this file; Section E.7 discusses its development. 

PtTemporal attempts to match each record in the emission inventory to a temporal profile in the

TAF file based on either the SCC code, the Standard Industrial Classification (SIC) code, or the

Maximum Achievable Control Technology (MACT) code. If the emission record contains an 8-

digit SCC code, PtTemporal first attempts to match the record directly to a temporal profile. For

those records without an SCC code or with a code for which no profile is provided, PtTemporal

checks for other information that can be linked to a temporal profile. By using several crossreference files, PtTemporal attempts to link the inventory SCC code, SIC code, or MACT code to

an SCC or AMS code found in the TAF file. For records that still cannot be assigned a temporal

profile, PtTemporal tries to match the first 6 digits of the SCC with the first 6 digits of the SCC

codes in the TAF file. If none of this information links to a temporal profile, then the emissions

are assigned uniform temporal allocation factors that evenly distribute the emissions over the

model-appropriate time periods (eight 3-hour periods for ASPEN and 288 hour-day-seasonspecific periods for ISCST3).
5-6

5.1.2 Uses the hourly profiles to produce eight 3-hour emission rates when processing

data for ASPEN only

Because ASPEN requires emissions for eight 3-hour periods of an average day, PtTemporal uses

the 24 hourly factors in the TAF file (which reflect an average day) to produce 3-hour TAFs and

average emission rates for the 3-hour periods. Equation 5-1 shows the methodology for the 3-

hour period from midnight to 3 am.

E0-3 =Eann x ave TAF0-3 (eq. 5-1)

where:

E0-3 = emission rate during the midnight to 3 a.m. time period for an average day

(tons/year)

Eann = annual emissions (tons/year)

ave TAF0-3 = (HF1 + HF2 + HF3)/3 x 24 hours/day

where:

HFn = temporal allocation factor for hour “n” (fraction of daily emissions

occurring in hour “n” - ([tons/hour]/[tons/day])

Although the initial 24 hourly factors are assumed to be normalized to conserve mass,

PtTemporal normalizes the 3-hour TAFs for each profile by dividing each 3-hour TAF by the

average of the eight TAFs for that profile. In this way, the average of the 3-hour TAFs will be 1

for each profile. PtTemporal will print out in the SAS® list file (see 5.3.2) the records from the

temporal allocation factor (TAF) file where the average of the 3-hour TAFs before normalization

is less than 0.9 or greater than 1.1. 

5.1.3 Uses the hourly, day, and seasonal profiles to produce 288 emission rates when

processing data for ISCST3 only

ISCST3 supports the use of emissions for each hour of each of three day types and four seasons

for a total of 288 emission rates. Each temporal profile used with PtTemporal to allocate data for

ISCST3 consists of twelve records, one for every combination of season and day type. Each of

these records contains a seasonal allocation factor (SF), daily allocation factor (DF), and 24

hourly allocation factors (HF). The 24 individual temporal factors for that season and day are

calculated by multiplying the season factor by the day factor by each of the hour factors.

PtTemporal then applies the TAFs to the annual emission rate. Equation 5-2 shows the

calculation for first hour of a winter Saturday, and delineates which hour, day type and season

each of the 288 emission rates represent.
5-7

E97 = Eann x TAF97 (eq. 5-2)

where:

E97 = emission rate for the first hour of a winter Saturday (tons/hour), because

 emission rates 1-24 represent a Winter weekday,

 emission rates 25-48 represent a Spring weekday,

 emission rates 49-72 represent a Summer weekday,

 emission rates 73-96 represent a Fall weekday,

 emission rates 97-120 represent a Winter Saturday,

 emission rates 121-145 represent a Spring Saturday,

 emission rates 146-168 represent a Summer Saturday,

 emission rates 169- 192 represent a Fall Saturday,

 emission rates 193-216 represent a Winter Sunday,

 emission rates 217-240 represent a Spring Sunday,

 emission rates 241-264 represent a Summer Sunday, and

 emission rates 265-288 represent a Fall Sunday

Eann = annual emissions (tons/year)

TAF97 = SF4 x DF2 x HF1

where:

SF4 = season allocation factor for winter (season 4), because

 season allocation factor 1 is for spring

 season allocation factor 2 is for summer

 season allocation factor 3 is for fall

 season allocation factor 4 is for winter

DF2 = day allocation factor for Saturday (day 2), because

 day allocation factor 1 is for a weekday,

 day allocation factor 2 is for a Saturday, and

 day allocation factor 3 is for a Sunday

HF1 = hour allocation factor for first hour (hour 1)

Although the TAFs are assumed to be normalized to conserve mass, PtTemporal normalizes the 

288 TAFs for each profile by dividing each TAF by the sum of all the hourly factors for the year

for that profile. This sum is calculated according to the equation (eq. 5-3) given below:
5-8

Total TAFyear = Sum TAFWinter + Sum TAFSpring + Sum TAFSummer + Sum TAFFall (eq. 5-3)

Where:

Sum TAFWinter = [(Sum TAFWinter weekday x 5) + Sum TAFWinter Saturday + Sum TAFWinter Sunday] * 13

Sum TAFSpring = [(Sum TAFSpring weekday x 5) + Sum TAFSpring Saturday + Sum TAFSpring Sunday] * 13

Sum TAFSummer = [(Sum TAFSummer weekday x 5) + Sum TAFSummer Saturday + Sum TAFSummer Sunday] * 13

Sum TAFFall = [(Sum TAFFall weekday x 5) + Sum TAFFall Saturday + Sum TAFFall Sunday] * 13

Where:

TAFWinter weekday = 24 hourly factors for a Winter weekday

TAFWinter Saturday = 24 hourly factors for a Winter Saturday

TAFWinter Sunday = 24 hourly factors for a Spring Saturday

etcetera, and

Sum TAFWinter weekday = the sum of all 24 hourly factors for a Winter weekday

In this way, the total TAFs used to process data for ISCST3for a year will sum to 1 for each

profile. PtTemporal will print out in the SAS® list file (see 5.3.2) the records from the temporal

allocation factor (TAF) file where the where the sum of all hourly factors for the year (Total

TAFyear) before normalization is less than 0.9 or greater than 1.1

5.2 How do I run PtTemporal?

5.2.1 Prepare your point source inventory for input into PtTemporal

The point source inventory you use for input into PtTemporal must be the output of

PtModelProc, if you intend to create ASPEN input files or the SO section of the ISCST3 run

stream. If you don’t intend to create ASPEN or ISCST3 specific output by running

PtFinal_ASPEN or PtFinal_ISCST3, respectively, you could use the output from PtDataProc as

the input into PtTemporal. The inventory produced by either PtDataProc or PtModelProc will

meet all requirements. 

When processing data for ASPEN, the inventory produced by PtModelProc will contain at least

the variables listed in Table 5-1. It may contain additional variables such as the diagnostic flag

variables (LFLAG, FIPFLAG, etc.) created by PtDataProc depending on the options you chose

for the windowing function in PtDataProc (see Section 3.1.3). 

When processing data for ISCST3, this inventory will contain the variables listed in Table 5-2

with some exceptions. Only if you have included ISCST3 area and/or volume sources will the

inventory contain the release parameter variables required for these sources (see Section 3.2.1 for
5-9

a description of these source types). The inventory may contain additional variables such as the

diagnostic flag variables LLPROB or FIPFLAG created by PtDataProc depending on the options

you chose for the windowing function and the contents of the varlist file used in PtDataProc.

Table 5-1. Variables in the PtTemporal Input Point Source 

Inventory SAS® File when Processing Data for ASPEN

Variables used by PtTemporal are in bold; 

other variables listed are used by previously run or subsequent point source processing programs

Variable Name Data Description

(Required units or values are in parentheses)

Type*

BLDH building height (meters) (5 for horizontal stacks, 0 for all other stacks); assigned

in PtModelProc (see Section 4.1.3)

N

BLDW building width (meters) (5 for horizontal stacks, 0 for all other stacks); assigned in

PtModelProc (see Section 4.1.3)

N

CNTL_EFF baseline control efficiency, expressed as a percentage N

EMIS pollutant emissions value (tons/year) N

EMRELPID code identifying a unique emission point within a site A50

EMRELPTY physical configuration code of release point (01=fugitive; 02=vertical stack;

03=horizontal stack, 04=goose neck, 05=vertical with rain cap, 06=downwardfacing vent, AP=aircraft)

A4

FIPS 5-digit FIPS code (state and county combined) A5

IBLDG building code (1 for horizontal stacks, 0 for all other stacks) assigned in

PtModelProc (see Section 4.1.3)

A1

IVENT vent type (0 for stacked sources, 1 for non-stacked sources) assigned in

PtModelProc (see Section 4.1.3)

A1

LAT latitude (decimal degrees) N

LON longitude (negative decimal degrees) N

MACTCODE MACT code A7

NTI_HAP code identifying HAP on the Clean Air Act HAP list; assigned in PtModelProc

(see Section 4.1.1) 

A3

REACT pollutant reactivity/particulate size class (1-9); assigned in PtModelProc (see

Section 4.1.1)

N

SAROAD unique pollutant-group code; assigned in PtModelProc (see Section 4.1.1) A10

SAROADDC descriptive name for the SAROAD; assigned in PtModelProc (see Section 4.1.1) A50

SCC EPA source category code identifying the process A10

SIC Standard Industrial Classification (SIC) code for the site A4
Table 5-1. Variables in the PtTemporal Input Point Source 

Inventory SAS® File when Processing Data for ASPEN (continued)

Variable Name Data Description

(Required units or values are in parentheses)

Type*

5-10

SITE_ID code identifying a unique site A25

SRC_TYPE description of the emission source at the site (‘nonroad’ for aircraft emissions) If

you choose to define source groups by this variable as explained in 7.1.1, or run

PtGrowCntl (Chapter 6) then it must have the value of ‘major’ or ‘area’ for non

aircraft emissions.

A15

STACKDIA diameter of stack (meters) N

STACKHT height of stack (meters) N

STACKVEL velocity of exhaust gas stream (meters per second) N

STKTEMP temperature of exhaust gas stream (Kelvin) N

UFLAG urban/rural dispersion flag (1 for urban, 2 for rural); assigned in PtModelProc (see

Section 4.1.2)

N

* Ax = character string of length x, N = numeric

Table 5-2. Variables in the PtTemporal Input Point Source 

Inventory SAS® File when Processing Data for ISCST3

Variables used by PtTemporal are in bold; 

other variables listed are used by previously run or subsequent point source processing programs

Variable Name Data Description

(Required units or values are in parentheses)

Type*

AANGLEc orientation angle of rectangle for ISCST3 area source (degrees from North) N

AINPLUMc initial vertical dimension of ISCST3 area source plume (meters) N

ARELHGTa release height of ISCST3 area source (meters) N

AXLENa length of X side of ISCST3 area source (meters) N

AYLENc length of Y side of ISCST3 area source (meters) N

BLDH building height (meters); missing values defaulted in PtModelProc 

(see Section 4.1.3)

N

BLDW building width (meters); missing values defaulted in PtModelProc 

(see Section 4.1.3)

N

CNTL_EFF baseline control efficiency, expressed as a percentage N

EMIS pollutant emissions value (tons/year) N

EMRELPID code identifying a unique emission point within a site A50
Table 5-2. Variables in the PtTemporal Input Point Source 

Inventory SAS® File when Processing Data for ISCST3 (continued)

Variable Name Data Description

(Required units or values are in parentheses)

Type*

5-11

EMRELPTY physical configuration code of release point (01=fugitive; 02=vertical stack;

03=horizontal stack, 04=goose neck, 05=vertical with rain cap, 06=downwardfacing vent, AP=aircraft)

A4

FIPS 5-digit FIPS code (state and county combined) A5

ISCTYPEa,b ISCST3 source type (iscarea, or iscvolume) A9

MACTCODE MACT code A7

NTI_HAP code identifying HAP on the Clean Air Act HAP list; assigned in PtModelProc

(see Section 4.1.1)

A3

REACT pollutant reactivity/particulate size class (1-9); assigned in PtModelProc (see

Section 4.1.1)

N

SAROAD unique pollutant-group code; assigned in PtModelProc (see Section 4.1.1) A10

SAROADDC descriptive name for the SAROAD; assigned in PtModelProc (see Section 4.1.1) A50

SCC EPA source category code identifying the process A10

SIC Standard Industrial Classification (SIC) code for the site A4

SIGMAXb initial lateral dimension of volume source (meters) N

SIGMAZb initial vertical dimension of volume source (meters) N

SITE_ID code identifying a unique site A25

SRC_TYPE description of the emission source at the site (‘nonroad’ for aircraft emissions) If

you choose to define source groups by this variable as explained in 8.1.1 or run

PtGrowCntl (Chapter 6) then it must have the value of ‘major’ or ‘area’ for non

aircraft emissions.

A15

STACKDIA diameter of stack (meters) N

STACKHT height of stack (meters) N

STACKVEL velocity of exhaust gas stream (meters per second) N

STKTEMP temperature of exhaust gas stream (Kelvin) N

UTMX UTM easting ( meters) N

UTMY UTM northing (meters) N

VOLHGTb release height above ground for volume source (meters) N

* Ax = character string of length x, N = numeric

a

 variables required for processing ISCST3 area sources 

b

 variables required for processing ISCST3 volume sources

c

 additional variables only included when information is available
5-12

5.2.2 Determine whether you need to modify the ancillary input files for PtTemporal

An ancillary file is any data file you input to the program other than your emission inventory. 

Table 5-3 lists the ancillary input files required for PtTemporal and when you may need to modify

them.

Table 5-3. Required Ancillary Input Files for PtTemporal

Name of File

Provided with

EMS-HAP

Purpose Need to Modify? Format

taff_hourly.txta Provides temporal profiles containing

24 hourly temporal allocation factors

(TAFs) for an average day by SCC

and/or AMS codes

When additional source

specific temporal factors

become available

Text

taff_ISCfactors.txtb Provides temporal profiles containing

seasonal allocation factors, day-type

allocation factors, and hourly

allocation factors by SCC and/or

AMS codes

When additional source

specific temporal factors

become available

Text

scc2ams.txt Provides cross reference between

SCC on inventory to SCC and/or

AMS on TAF file in order to assign

temporal profile

When inventory contains

records with partial SCC

codes, or SCC codes that are

not in the cross-reference file

or TAF file

Text

sic2ams.txt Provides cross reference between SIC

on inventory to SCC and/or AMS on

TAF file in order to assign temporal

profile

When inventory contains

records with the source

category identified by SIC

codes (i.e., no SCC code)

that are not in the crossreference file

Text

mact2scc.txt Provides cross reference between

MACT code on inventory to SCC

and/or AMS on TAF file in order to

assign temporal profile

When inventory contains

records with the source

category identified by the

MACT category codes (i.e.,

no SCC) that are not in the

cross-reference file

Text

a file used only when processing data for ASPEN

b file used only when processing data for ISCST3
5-13

5.2.3 Modify the temporal allocation factor file (taff_hourly or taff_ISCfactors)

The temporal allocation factor (TAF) file (taff_hourly.txt for ASPEN data processing, or

taff_ISCfactors.txt for ISCST3 data processing) is common to point, non-point and mobile source

emission processing within EMS-HAP. The temporal profiles are indexed by 8-digit SCC or

10-digit AMS codes. In both files, local time zones are used. The file taff_hourly.txt provides 24

hourly allocation factors that reflect hourly emissions activity on an annual average. Details on

the development of the TAF file used for ASPEN data processing are presented in Appendix D,

Section D.7, and Figure 16a of Appendix A contains the file format. The file taff_ISCfactors.txt

provides 24 hourly allocation factors for each of 4 seasonal factors and 3 day-type factors. Details

on the development of the TAF file used for ISCST3 data processing are presented in Appendix

E, Section E.6, and Figure 16b of Appendix A contains the file format.

Whether to modify or add to the temporal profiles contained within the TAF files supplied with

EMS-HAP depends on the information you have on the temporal characteristics of specific source

categories and how well the source category information included in your emission inventory

matches to the existing profiles. For example, you might consider modifying the TAF file if you

find, after executing PtTemporal, that a large number of records with some form of source

category information cannot be matched to a temporal profile and, therefore, are being assigned a

uniform profile. You can determine which records are being assigned a uniform profile by

looking at the log and list files and a special SAS® file, named “notaf,” created when you run

PtTemporal (see Section 5.3.3 for more details).

5.2.4 Modify the cross-reference files used to link inventory records to the temporal

allocation factor file (scc2ams, sic2ams, and mact2scc)

PtTemporal uses three cross-reference files for cases where there the SCC is missing or the value 

contained on the emission inventory record can’t be linked directly to the SCC and/or AMS on the

TAF file. These cross-reference files provided with EMS-HAP were developed to accommodate

the types of source category information included in the July 2001 version of the 1996 NTI. For

instance, this inventory does not include a value for the SCC for every emission record or

sometimes uses a shortened 1-digit, 3-digit or 6-digit SCC. Therefore, one cross-reference file

(scc2ams.txt) links generic 1-digit, 3-digit, and 6-digit SCCs to the 8-digit SCC and 10-digit AMS

codes used in the temporal profile file. Another file links SIC codes to SCC and AMS codes

(sic2ams.txt), and is used in cases where no SCC is included on the emission record, but an SIC is

included. A third file links MACT codes to SCC and AMS codes (mact2scc.txt) and is used for

cases where no SCC code is present on the emission record, but a MACT code is available. The

formats for these three files are provided in Figures 17, 18, and 19 of Appendix A. Details on

how we developed these files are presented in Appendix D, Section D.9. The same files can be

when processing data for ASPEN and for ISCST3.

You would expect to modify any of these files depending on the source category information

included in your emission inventory. You might consider modifying these files after executing

PtTemporal if you find that a large number of records with some form of source category
5-14

information cannot be matched to a temporal profile and, therefore, are being assigned a uniform

profile. You can determine which records are being assigned a uniform profile by looking at the

log and list files and a special SAS® file, named “notaf,” created when you run PtTemporal (see

Section 5.3.3 for more details).

5.2.5 Prepare your batch file

The batch file serves two purposes: (1) allows you to pass “keywords” such as file names and

locations, program options, and run identifiers to the program, and (2) sets up the execute

statement for the program. Sample batch files for PtTemporal for ASPEN and ISCST3 emissions

processing are shown in Figures 7 and 8, respectively, of Appendix B. The best way to prepare

your batch file is to use one of the samples we provide and modify it to fit your needs. 

Specify your keywords

Table 5-4 describes the keywords required in the batch file. Use keywords to locate and name all

input and output files. The same batch file can be used for running PtTemporal for ASPEN or

ISCST3. The only differences are in the assignment of the keywords MODEL (either ‘ASPEN’ or

‘ISC’) and TAF (different TAF files are used for ASPEN and ISCST3, see Section 5.2.3).

Table 5-4. Keywords in the PtTemporal Batch File when Processing Data for Either

ASPEN or ISCST3

Keyword Description of Value

Input Inventory Files

IN_DATA Input SAS® file directory

INSAS Input inventory SAS® file name, prefix of file name only

Ancillary Files (Prefix of file name provided with EMS-HAP in parentheses)

REFFILE Ancillary text file directory

TAF Temporal profile text file, prefix only (taff_hourly for ASPEN data processing and

taff_ISCfactors for ISCST3 data processing)

SCCLINK SCC to AMS cross-reference text file, prefix only (scc2ams)

SICLINK SIC to SCC or AMS code cross-reference text file, prefix only (sic2ams)

MACTLINK MACT category code to SCC or AMS cross-reference text file, prefix

only(mact2scc)

Program Options

MODEL ASPEN=process data for ASPEN model; ISC=process data for ISCST3 model

Output files

OUTDATA Output SAS® file directory

OUTSAS Output inventory SAS® file name, prefix only
5-15

Prepare the execute statement

The last line in the batch file runs the PtTemporal program. In the sample batch files provided in

Figures 7 and 8 of Appendix B, you will see a line preceding the run line that creates a copy of the

PtTemporal code having a unique name. It is this version of the program that is then executed in

the last line. If you do this, the log and list files created by this run can be identified by this 

unique name. If you don’t do this and run the program under a general name, every run of

PtTemporal will create a log and list file that will replace any existing files of the same name.

You may find that you need to assign a special area on your hard disk to use as work space when

running PtTemporal. In the sample batch file, a work directory is defined on the last line

following the execution of PtTemporal. For example, the command 

 ‘sas PtTemporal_062000.sas -work /data/work15/dyl/’ assigns a work directory called “/data/work15/dyl”. 

The directory you reference must be created prior to running the program.

5.2.6 Execute PtTemporal

There are two ways to execute the batch file. One way is to type ‘source’ and then the batch file

name. Alternatively, first set the permission on the file to ‘execute.’ You do this by using the

UNIX CHMOD command and adding the execute permission to yourself, as the owner of the file,

to anyone in your user group, and/or to anyone on the system. For example,

‘chmod u+x PtTemporal.bat’ gives you permission to execute the batch file. Refer to your UNIX

manual for setting other permissions. After you have set the file permission, you can execute the

batch file by typing the file name on the command line, for example, ‘PtTemporal.bat’.

5.3 How Do I Know My Run of PtTemporal Was Successful?

5.3.1 Check your SAS® log file

You need to review the output log file to check for errors or other flags indicating incorrect

processing. This review should include searching the log files for occurrences of the strings

“error”, “warning”, “not found”, and “uninitialized”. These can indicate problems with input files

or other errors.

You can look at the number of records in the input inventory file and compare it to the number of

records in the output inventory file. The number of records should be the same in these two files. 

5.3.2 Check your SAS® list file

The list file created when PtTemporal is executed contains information to assist in quality

assurance. The information is this file is listed below.

• When processing data for ASPEN, a list of records from the temporal allocation factor

(TAF) file where the average of the 3-hour factors before normalization is less than 0.9 or
5-16

greater than 1.1

• When processing data for ISCST3, a list of records from the temporal allocation factor

(TAF) file where the sum of all hourly factors for the year before normalization is less than

0.9 or greater than 1.1

C Annual emission totals of the temporally allocated emissions and the unmatched

(uniformly allocated by default) emissions by SAROAD code

5.3.3 Check other output files from PtTemporal

You should check for the existence of the output inventory file named by keyword OUTSAS. 

This file will serve as the input to the next point source processing program you choose to run. 

PtTemporal also creates a SAS® output file named notaf. This file contains information on the

emission records not assigned a specific temporal profile. For these records, emissions were

uniformly allocated to each of the time periods. You can reduce the number of records appearing

in this file by the following: 1) You can modify the TAF file (taff_hourly or taff_ISCfactors) by

adding SCC codes and corresponding temporal allocation factors; 2) You can modify one of the

cross-reference files in order to link an AMS or SCC code in the TAF file with the source or

process information contained on the emission records (i.e., SCC, SIC, or MACT). See Section

5.2.4 for a description of the cross-reference files (scc2ams.txt, sic2ams.txt, or mact2scc.txt).
6-1

PtDataProc

PtModelProc

PtTemporal

PtGrowCntl

PtFinal_ASPEN

OR

Point Source 

Emissions

ASPEN Point Source Emissions 

Files

PtFinal_ISCST3

ISCST3 SO Pathway of Run 

Stream Section for ISCST3 Point, 

Volume, and Area Sources

Flowchart for ASPEN Processing

Flowchart for ISCST3 Processing

Point Source 

Emissions

PtDataProc

PtModelProc

PtTemporal

PtGrowCntl

OR

CHAPTER 6

Point Source Processing 

The Growth and Control Program (PtGrowCntl)

The flowcharts below (Figure 6-1) show how PtGrowCntl fits into EMS-HAP’s point source

processing for the ASPEN and ISCST3 models. The point source inventory you input to

PtGrowCntl is the output from PtTemporal (Chapter 5). You use the output inventory from

PtGrowCntl as the input to PtFinal_ASPEN (Chapter 7) when processing data for ASPEN and

PtFinal_ISCST3 (Chapter 8) when processing data for ISCST3.

Figure 6-1. Overview of PtGrowCntl within EMS-HAP Point Source Processing
6-2

6.1 What is the function of PtGrowCntl?

The Growth and Control Program (PtGrowCntl) computes future year emissions as a result of

projected economic growth and/or emission reduction strategy scenarios. You can apply

reduction scenarios based on the Maximum Achievable Control Technology (MACT) standards

and/or based on your own control strategy. You control which of the functions listed below is

performed in any given execution of PtGrowCntl (see Table 6-10 in Section 6.2.7 for details on

how to do this). 

• Assigns and applies growth factors to project emissions due to growth

C Assigns MACT-based emission reduction information

C Assigns user-defined emission reduction information

C Combines MACT-based and user-defined emission reduction information and applies to

project emissions due to an overall emission control scenario

Figure 6-2 shows the flowchart of PtGrowCntl when processing data for ASPEN or ISCST3. 

The programming steps are the same when processing data for either model, although you still

need to identify the model as being either ‘ASPEN’ or ‘ISC’ through the batch file keyword

MODEL (see Section 6.2.7). The following sections describe the above bullets.
6-3

Figure 6-2. PtGrowCntl Flowchart when Processing Data for ASPEN and 

ISCST3

Reads Keywords

Batch File Containing Keywords 

e.g. File Names and Locations, 

Program Options

Output Point Source Inventory File

PtGrowCntl: MACRO APPLCNTL 

Calculates projected emissions from temporally 

allocated baseline emissions.

General MACT Reduction 

Information File

Specific Process/Pollutant 

MACT Reduction Information 

File

User-defined Reduction 

Information File

PtGrowCntl: MACRO GROW 

Reads point source inventory file. Reads 

MACT category growth factor file. Assigns 

growth factors by MACT nationally, by state 

FIPS, and/or by county FIPS. Reads SCC to 

SIC cross-reference file. Assigns missing SIC 

codes in inventory from cross-reference file. 

Reads SIC growth factor file. Assigns growth 

factors by SIC nationally, by state FIPS and/or 

by county FIPS to records without MACTbased growth factors.

Point Source Inventory File

SCC to SIC Cross-Reference 

File

SIC Growth Factor File

MACT Category Growth Factor 

File

PtGrowCntl: MACRO MACTCNTL Reads 

general MACT reduction information file and 

assigns control information to emission 

records by MACT category. Reads specific 

process/pollutant MACT reduction 

information file and assigns control 

information to emission records by MACT 

category and pollutant and/or process codes. 

PtGrowCntl: MACRO USERCNTL 

Reads user-defined reduction information file 

and assigns control information to emission 

records by county, MACT code, SCC code, 

SIC code, pollutant code and/or site code. 
6-4

6.1.1 Assigns and applies growth factors to project emissions due to growth

PtGrowCntl assigns growth factors to the emission records based on the MACT category and/or

the first two digits of the SIC code, with a geographic resolution at the national, state or county

level. You control whether PtGrowCntl assigns growth factors by MACT category only, SIC

only, or both (see Table 6-10 in Section 6.2.7 for details on how to do this). If you choose to

assign growth factors by both criteria, PtGrowCntl will assign the growth factors by the MACT

category first, and then assign growth factors by the SIC to only records without an assignment

(i.e., SIC-based growth factors will not replace assigned MACT-based growth factors). 

Your inventory may contain many records with SCC codes rather than SIC codes. In order to

assign SIC-based growth factors, PtGrowCntl can assign SIC codes to those records in the

inventory with missing values for SIC based on the inventory SCC codes (see keyword

SICFLAG in Table 6-10 in Section 6.2.7). PtGrowCntl uses an ancillary SCC to SIC crossreference file (see Section 6.2.4) for this function; the assigned SIC code is stored in the new

variable SETSIC.

Both the MACT-based and SIC-based growth factors can be applied to specific geographic

regions: nationally, by state, or by county (see Section 6.2.3 for more details). For both the

MACT-based and SIC-based growth factors, the more detailed growth factor (e.g., county) will

replace the less detailed one (e.g., state). 

The MACT-based and SIC-based growth factor files are specific to both the base year and future

year. Each execution of PtGrowCntl results in an inventory file containing emissions projected

to that one future year. PtGrowCntl computes grown, temporally allocated emission rates (eight

3-hour average emission rates when processing data for ASPEN, and 288 hourly specific

emission rates when processing data for ISCST3) for each record by multiplying the base year

temporally allocated emission rates by the assigned growth factor, as follows.

Grown emissions = (Base year baseline emissions) x (Growth factor)

The same growth factor is applied to all temporally allocated emission rates comprising a specific

inventory record. Note that any record not assigned a growth factor based either on the MACT

category or the SIC code will be assigned the default growth factor of one. In these cases, the

grown emissions will be unchanged from the base year emissions. 

6.1.2 Assigns MACT-based emission reduction information

PtGrowCntl can assign MACT-based emission reduction information to the point source

inventory alone or along with the assignment of your own control strategy (user-defined emission

reduction information). You choose the method by specifying keywords in the batch file (see

Table 6-10 in Section 6.2.7). When you select to assign MACT-based reduction information,

PtGrowCntl initially uses the ancillary file MACT_gen.txt to assign general MACT reduction
a “...any stationary source or group of stationary sources located within a contiguous area and under common control

that emits or has the potential to emit considering controls, in the aggregate, 10 tons per year or more of any

hazardous pollutant or 25 tons per year or more of any combination of hazardous air pollutants...” 

b

 “...any stationary source of hazardous air pollutants that is not a major source... shall not include motor vehicles or

nonroad vehicles subject to regulation under title II..”

6-5

information. The information in this file applies to an entire MACT category as represented by

the MACT code.

The general emission reduction information you supply for each MACT category in the

MACT_gen.txt ancillary file consists of:

• Two control efficiencies for the reduction strategy. One efficiency represents the

emission reduction to be applied to existing sources; the other represents the emission

reduction to be applied to new sources. PtGrowCntl gives you the flexibility to apply

different efficiencies for new versus existing facilities because air pollution regulations

often require a higher emission control efficiency for new facilities than for existing

facilities. PtGrowCntl assumes that all new point sources are located at existing point

sources. This would occur, for example, if an existing source rebuilt or constructed an

additional operation to the extent that it (or part of it) would be considered a new source.

• Percentage of emissions at existing sources that will come from new sources. 

PtGrowCntl uses this information to apportion the emissions into new source versus

existing source emissions for each inventory record. A value of 100% would mean that

in the future year, the entire MACT category rebuilt to the extent that the efficiency for

new sources would apply. A value of 50% would signify that half of the emissions was

due to new sources at the existing facilities and the other half was from the existing part.

• Application control flag. PtGrowCntl uses this flag to determine whether or not to apply

the control efficiencies. This enables you to keep a particular emission reduction record

that you’ve put in an ancillary file, but not use it for a particular run of EMS-HAP. An

example of this would be if you want to keep in your MACT_gen file, MACT-based

information for a category for which the compliance date is prior to the base year, but you

don’t want to apply the information since the base-year should already account for it and

no future reductions for that category would be expected.

• Source control flag. This flag determines to which source type (majora

 versus both areab

and major) the control efficiencies apply. For example, if a particular MACT standard

affects only major sources, then you’d set the source control flag to “M” and the

efficiencies would only be applied to inventory records with a source type of “major”.

• Compliance date for the standard. PtGrowCntl uses this information along with the

projection year to determine whether or not the standard will affect the projected

emissions. EMS-HAP gives you the option of projecting based on a fiscal year or a

calendar year (see Table 6-10 in Section 6.2.7). If the compliance date is within the

projection year, then PtGrowCntl assigns a prorated reduction based on the portion (based
6-6

on the fraction of days) of either the fiscal or calendar year which occurred prior to the

compliance date. If there is no compliance date in the file, then PtGrowCntl does not

apply any reductions.

Based on the information in the MACT_gen.txt file, the general MACT reductions (or a

proration of them, as described in the last bullet above) can only be assigned to the emission

inventory when the following criteria are met:

• The application control flag is equal to 1.

• The MACT compliance date occurs within or before the projection (calendar or fiscal)

year.

• The source control flag is applicable to the inventory source type. For example, if the

source control flag for a particular MACT code is “M” then the reduction would only be

applied to an inventory record with that MACT code where the source type variable is

‘major’. If the source control flag is “B” (meaning both) the reduction would be applied

to both major and area sources.

PtGrowCntl can apply more specific MACT-based reduction information to the emissions that

applies to only specific pollutants or specific processes within a MACT category. PtGrowCntl

uses information in the MACT_spec.txt ancillary file to do this. For each MACT code, you can

specify the reduction information by various combinations of the following types of information: 

• process (6-digit SCC code or 8-digit SCC code)

• pollutant (NTI_HAP variable, assigned in PtModelProc)

If you need to apply reduction information at the site-level within a MACT category, you will

need to use the user-defined emission reduction information (see Section 6.1.3).

It is important to note that if you choose to apply MACT-based reduction information,

PtGrowCntl will always use the MACT_gen.txt file, but will only use the MACT_spec.txt file if

you set the batch file keywords appropriately (see Table 6-10 in Section 6.2.7). The

MACT_gen.txt file is used to determine the reduction for any pollutant (or process) within a

MACT category that is not in the MACT_spec.txt file. In addition PtGrowCntl reads the

compliance date from the MACT_gen file (it is not a field in the MACT_spec file). Thus, you

must make sure that any MACT category in the MACT_spec.txt file is also in MACT_gen.txt.

PtGrowCntl uses the same criteria for assigning specific MACT reduction information as it does

for the general information (see the three bullets above). 

When both general and specific reduction information can be assigned to the same inventory

record, PtGrowCntl will assign the specific MACT information from the MACT_spec.txt

ancillary file over the general information. It is also possible that more than one record in the
6-7

MACT_spec.txt file (e.g., a process-specific reduction and a HAP-specific reduction) could

apply to an inventory record. In this case, the more specific information replaces the less specific

information. Table 6-1 shows the order of precedence followed in PtGrowCntl.

Table 6-1. Order of Precedence for MACT-based Emission Reduction Information 

Order of Precedence

Information Used to Specify Reduction

Information

MACT HAP 6-digit

SCC

8-digit

SCC

1 

(most specific information, supercedes all others)

XX X

2X X X

3X X

4X X

5X X

6

(least specific information)

X

6.1.3 Assigns user-defined emission reduction information

PtGrowCntl can assign your own control strategy (user-defined emission reduction information)

to the point source inventory with or without the inclusion of the MACT-based emission

reduction information described above. You choose the method of applying reduction

information by specifying keywords in the batch file (see Table 6-10 in Section 6.2.7). When

you select to assign user-defined reduction information, PtGrowCntl uses the ancillary file

User_control.txt (see also Section 6.2.5).

The emission reduction information you supply in the User_control.txt ancillary file consists of:

• Two control efficiencies for the reduction strategy. Same as in the MACT reduction

information described in Section 6.1.2.

•

• Percentage of emissions at existing sources that will come from new sources. Same as in

the MACT reduction information described in Section 6.1.2.

•

• Application control flag. Same as in the MACT reduction information described in

Section 6.1.2.
6-8

• Source control flag. Same as in the MACT reduction information described in Section

6.1.2. Note that in specifying user-defined information, you can choose to reduce only

major sources with a particular SIC or SCC code rather than only a particular MACT

code.

• Replacement flag. This flag lets you decide whether to have a user-defined control

efficiency replace a MACT-based control efficiency (flag value ‘R’) or be applied in

addition to it (flag value ‘A’). For example, you would set this flag to ‘R’ for a strategy

that contains reduction information on how a particular site’s emissions will be reduced

by a particular MACT standard. This setting would allow you to use site-specific MACT

reduction information in lieu of the general or pollutant, process-specific MACT

reduction discussed in 6.1.2.

You can assign emission reduction information based on your own control strategy (user-defined

information) to the point source inventory alone or after with the assignment of MACT-based

emission reduction information. The assignment of the user-defined reduction information is

made independent from the assignment of the MACT-based information. Only after the

assignment of all emission reduction information, does PtGrowCntl determine what control

efficiencies are used to calculate the projected emissions for each record.

The user-defined reduction information can only be assigned when the following criteria are met:

• The user-defined application control flag is equal to 1.

• The user-defined source control flag is applicable to the inventory source type variable

(user-defined reductions applicable only to major sources get applied only to inventory

sources that are major).

Through the user-defined reduction information, you can assign emission reduction information

by various combinations of the following types of information:

• broad industry group and/or process (using the SIC, MACT code and/or SCC) 

• site (using the SITE_ID variable)

• pollutant (using the NTI_HAP variable)

• specific county or county types (using the CNTYCODE variable)

The specific combinations of these variables used by PtGrowCntl to match the emission

reduction information to the inventory are presented in Table 6-2. In cases where an emission

inventory record can be assigned to more than one record in the user-defined reduction

information file, PtGrowCntl follows a specific order of precedence as shown in Table 6-2.
6-9

Table 6-2. User-defined Emission Reduction Information and Order of Precedence 

Order of Precedence

Information Used to Specify Reduction Information

Site ID MACT SIC SCC HAP County

Code

1 (most specific information, supercedes all others) X X X X

2X X X

3X X X

4X X

5X X X

6X X

7X X

8 X

9 XXX X X

10 X X X X

11 X X X X

12 X X X

13 X X X X

14 X X X

15 X X X

16 X X

17 X X X X

18 X X X

19 X X X

20 X X

21 X X X

22 X X

23 X X

24 X

25 X X X X

26 X X X

27 X X X

28 X X

29 X X X

30 X X

31 X X X

32 X X

33 X X

34 X

35 X X

36 X

37 X X

38 (least specific information) X

In order to assign reduction information to specific counties or to groups of county types, you

must provide the values for the five character county type code (CNTYCODE) in the

popflg96.txt ancillary file for each county where you want to apply controls. PtGrowCntl uses

this file to assign the CNTYCODE variable to the inventory by the state and county FIPS code. 

CNTYCODE can identify general types of counties to which you want to assign specific
6-10

reduction information, such as urban or rural counties, or it can identify an individual county. 

These county type codes can then be used in the user-defined emission reduction information

file. When you provide site-level reduction information, you don’t need to use a county code,

because the SITE_ID variable identifies an individual site located in a specific county.

6.1.4 Combines MACT-based and user-defined emission reduction information and

applies to project emissions due to an overall emission control scenario

After all MACT-based and user-defined reduction information has been assigned to the

inventory, PtGrowCntl combines the information in order to assign the “primary” reduction

variables (applied to the emissions first) and the “additional” reduction variables (applied second,

and in addition to primary, if necessary). PtGrowCntl calculates projected emissions by first

applying primary reduction efficiencies for existing and new sources based on the percentage of

projected emissions attributed to the new sources (primary reduction variables are EXISTEFF,

NEW_EFF, and NEW_RATE). Depending upon how you have chosen to combine MACTbased and user-defined control scenarios, PtGrowCntl will apply additional reduction efficiencies

for existing and new sources to the initially projected emissions in a similar manner (additional

reduction variables are ADDXEFF, ADDNEFF, and ADDRATE). Thus, additional reductions

are applied on top of the primary reductions.

Assignment of Primary Reduction Efficiencies and Additional Reduction Efficiencies

There are three possible ways to assign the primary and additional reduction variables depending

on how you set the keywords in the batch file (see Section 6.2.7) and the emission reduction

information you provide to PtGrowCntl. These are described below.

• Using only MACT-based reduction information: the MACT-based reduction

efficiencies and new source percentage are assigned to the primary reduction variables. 

Additional reduction variables are set to zero.

• Using only user-defined reduction information: the user-defined reduction efficiencies

and new source percentages are assigned to the primary reduction variables. Additional

reductions are set to zero.

• Using both MACT-based and user-defined reduction information: the replacement

flag (REPLACE variable) from the user-defined reduction information file is used to

determined if the user-defined information is assigned to the primary reduction variables

or the additional reduction variables. For records with assigned MACT-based

information, the MACT-based reduction efficiencies and new source percentage are

assigned to the primary reduction variables. For records with assigned user-defined

information where the value of REPLACE is ‘R,’ the user-defined reduction efficiencies

are assigned to the primary reduction variables, replacing any previously assigned

MACT-based reduction information. For records with assigned user-defined information

where the value of REPLACE is ‘A,’ the user-defined reduction efficiencies are assigned
6-11

to the additional reduction variables, regardless of whether or not any reduction

efficiencies are assigned to the primary reduction variables.

Table 6-3 summarizes how the primary and additional reduction variables are assigned in each

circumstance.

Table 6-3. Assignment of Primary and Additional Reduction Variables

Emission Reduction

Information

Value of

REPLACE

variable

Source of Reduction Variables Used to

Project Emissions

Primary 

Reduction Variables

Additional

Reduction Variables

MACT-based only N/A MACT-based all set to zero

User-defined only N/A User-defined all set to zero

Both MACT-based and Userdefined R User-defined all set to zero

A MACT-based User-defined

Application of Emission Reduction Efficiencies

PtGrowCntl calculates projected emissions by first applying primary reduction efficiencies for

existing and new sources and the percentage of projected emissions attributed to the new sources

(primary reduction variables EXISTEFF, NEW_EFF, and NEWRATE). PtGrowCntl uses

NEWRATE to apportion the grown emissions between the existing sources, using the factor

1-NEWRATE/100, and new sources, using the factor NEWRATE/100. This allows PtGrowCntl

to apply the different reduction efficiencies to the emissions from existing source (EXISTEFF)

and to the emissions from new sources (NEW_EFF).

PtGrowCntl uses the baseline control (reduction) efficiency (CNTL_EFF variable) included in

the inventory to account for any existing reductions reflected in the original inventory emission

values. Note that the input inventory file must contain the variable CNTL_EFF, even if there is

no baseline reduction information, for PtGrowCntl to execute successfully. If CNTL_EFF is less

than the emission reduction efficiency, PtGrowCntl uses the baseline reduction to adjust the

emission reduction efficiency when applying it to the grown emissions. If the baseline reduction

efficiency is greater than the emission reduction efficiency, we assume that the assigned emission

reduction efficiencies will not affect the site. Therefore, PtGrowCntl doesn’t apply the assigned

primary emission reduction efficiency. The calculation of projected emissions using the primary

emission reduction efficiencies is summarized in Table 6-4.
6-12

Table 6-4. Summary of Equations Used to Apply Primary Emission Reduction

Information

Projected Emissions from Existing Sources

When Strategy control efficiency > baseline control efficiency (Eq. 6-1) 

Projected EmissionsE = Grown Emissions x (1-NEWRATE/100) x (1 - EXISTEFF/100)

(1 - CNTL_EFF/100)

When Baseline control efficiency > strategy control efficiency (Eq. 6-2) 

Projected EmissionsE = Grown Emissions x (1-NEWRATE/100) 

Projected Emissions from New Sources

When Strategy control efficiency > baseline control efficiency (Eq. 6-3) 

Projected EmissionsN = Grown Emissions x (NEWRATE/100) x (1 - NEW_EFF/100)

(1 - CNTL_EFF/100)

When Baseline control efficiency > strategy control efficiency (Eq. 6-4) 

Projected EmissionsN = Grown Emissions x (NEWRATE/100)

Total Primary Projected Emissions

Projected EmissionsP = Projected EmissionsE + Projected EmissionsN (Eq. 6-5)

Where:

Projected EmissionsP = projected emissions using primary emission reduction efficiencies

Projected EmissionsE = grown and controlled emissions from existing sources

Projected EmissionsN = grown and controlled emissions from new sources

Grown Emissions = (Base year baseline emissions) x (Growth factor) [see Section 6.1.1] 

Grown Emissions=Base year baseline emissions when growth is not chosen

NEWRATE = primary percentage of grown emissions attributed to new sources

EXISTEFF = primary control efficiency for existing sources

NEW_EFF = primary control efficiency for new sources

CNTL_EFF = inventory baseline control efficiency

Additional reduction efficiencies for existing and new sources are applied to the initially

projected emissions (additional reduction variables ADDXEFF, ADDNEFF, and ADDRATE) in

a manner similar to that described above for the primary reduction efficiencies; however, the

value of the baseline reduction efficiency (CNTL_EFF) has no impact since additional reduction

efficiencies are applied in addition to, or, on top of, any existing or primary reductions. The
6-13

calculation is summarized in Table 6-5.

Table 6-5. Summary of Equations used to Apply Additional Emission Reduction

Information

Projected Emissions from Existing Sources Using Additional Reductions (Eq. 6-6)

Projected EmissionsAE = Projected EmissionsP x (1-ADDATE/100) x (1 - ADDXEFF/100)

Projected Emissions from New Sources Using Additional Reductions (Eq. 6-7) 

Projected EmissionsAN = Projected EmissionsP x (ADDRATE/100) x (1 - ADDNEFF/100)

Final Total Projected Emissions

Projected EmissionsF = Projected EmissionsE + Projected EmissionsN (Eq. 6-8)

Where:

Projected EmissionsF = final projected emissions using additional emission reduction efficiencies

Projected EmissionsAE = grown and controlled emissions from existing sources using additional 

 reduction efficiencies

Projected EmissionsAN = grown and controlled emissions from new sources using additional 

 reduction efficiencies

Projected EmissionsP = projected emissions using primary emission reduction efficiencies 

 [see Eqs. 6-1 thru 6-5] 

ADDRATE = additional percentage of grown emissions attributed to new sources 

ADDXEFF = additional control efficiency for existing sources

ADDNEFF = additional control efficiency for new sources

If no reductions are applied to the temporally allocated grown emissions, then the final projected

emissions are equal to the grown emissions.

6.2 How do I run PtGrowCntl?

6.2.1 Prepare your point source inventory for input into PtGrowCntl

The point source inventory you use for input into PtGrowCntl must be the output of PtTemporal. 

When processing data for ASPEN, the inventory produced by PtTemporal will contain at least

the variables listed in Table 6-6. It may contain additional variables such as the diagnostic flag

variables (LFLAG, FIPFLAG, etc.) created by PtDataProc depending on the options you chose

for the windowing function in PtDataProc (see Section 3.1.3).
6-14

Table 6-6. Variables in the PtGrowCntl Input Point Source Inventory SAS® File when

Processing Data for ASPEN

Variables used by PtGrowCntl are in bold; 

other variables listed are used by previously run or subsequent point source processing programs

Variable Name Data Description

(Required units or values are in parentheses) Type *

BLDH building height (meters) (5 for horizontal stacks, 0 for all other stacks); assigned

in PtModelProc (see Section 4.1.3)

N

BLDW building width (meters) (5 for horizontal stacks, 0 for all other stacks); assigned

in PtModelProc (see Section 4.1.3)

N

CNTL_EFF baseline control efficiency, expressed as a percentage N

EMIS pollutant emissions value (tons/year) N

EMRELPID code identifying a unique emission point within a site A50

EMRELPTY physical configuration code of release point

(01=fugitive; 02=vertical stack; 03=horizontal stack, 04=goose neck, 05=vertical

with rain cap, 06=downward-facing vent, AP=aircraft)

A4

FIPS 5-digit FIPS code (state and county combined) A5

IBLDG building code (1 for horizontal stacks, 0 for all other stacks); assigned in

PtModelProc (see Section 4.1.3)

A1

IVENT vent type (0 for stacked sources, 1 for non-stacked sources); assigned in

PtModelProc (see Section 4.1.3)

A1

LAT latitude (decimal degrees) N

LON longitude (negative decimal degrees) N

MACTCODE MACT code A7

NTI_HAP code identifying HAP on the Clean Air Act HAP list; assigned in PtModelProc

(see Section 4.1.1) 

A3

REACT pollutant reactivity class (1-9) N

SAROAD unique pollutant-group code; assigned in PtModelProc (See section 4.1.1) A5

SAROADDC descriptive name for SAROAD; assigned in PtModelProc (see Section 4.1.1) A50

SCC EPA source category code identifying the process A10

SCC_AMS SCC or AMS code from the temporal allocation factor file identifying the

temporal profile used; assigned in PtTemporal

A10

SIC Standard Industrial Classification (SIC) code for the site A4

SITE_ID code identifying a unique site A25
Table 6-6. Variables in the PtGrowCntl Input Point Source Inventory SAS® File when

Processing Data for ASPEN (continued)

Variable Name Data Description

(Required units or values are in parentheses) Type *

6-15

SRC_TYPE description of the emission source at the site (‘nonroad’ for aircraft emissions) If

you choose to define source groups by this variable as explained in 7.1.1, or run

PtGrowCntl (Chapter 6) then it must have the value of ‘major’ or ‘area’ for nonaircraft emissions.

A15

STACKDIA diameter of stack (meters) N

STACKHT height of stack (meters) N

STACKVEL velocity of exhaust gas stream (meters per second) N

STKTEMP temperature of exhaust gas stream (Kelvin) N

TAFS1-TAFS8 temporal factors for the eight 3-hour periods of an average day; assigned in

PtTemporal

N

TEMIS1-

TEMIS8

temporally allocated emissions for the eight 3-hour periods of an average day

(tons/year); calculated in PtTemporal

N

UFLAG urban/rural dispersion flag (1 for urban, 2 for rural); assigned in PtModelProc

(see Section 4.1.2)

N

*Ax = character string of length x, I = integer, N = numeric

When processing data for ISCST3, your input inventory (output inventory from PtTemporal) will

contain the variables listed in Table 6-7 with some exceptions. Only if you have included

ISCST3 area and/or volume sources will the inventory contain the release parameter variables

required for these sources (see Section 3.2.1 for a description of these source types). The

inventory may contain additional variables such as the diagnostic flag variables LLPROB or

FIPFLAG created by PtDataProc depending on the options you chose for the windowing function

and the contents of the varlist.txt file used in PtDataProc.
6-16

Table 6-7. Variables in the PtGrowCntl Input Point Source Inventory SAS® File when

Processing Data for ISCST3

Variables used by PtGrowCntl are in bold; 

other variables listed are used by previously run or subsequent point source processing programs

Variable Name Data Description

(Required units or values are in parentheses) Type *

AANGLEc orientation angle of rectangle for ISCST3 area source (degrees from North) N

AINPLUMc initial vertical dimension of ISCST3 area source plume (meters) N

ARELHGTa release height of ISCST3 area source (meters) N

AXLENa length of X side of ISCST3 area source (meters) N

AYLENc length of Y side of ISCST3 area source (meters) N

BLDH building height (meters); missing values defaulted in PtModelProc 

(see Section 4.1.3)

N

BLDW building width (meters); missing values defaulted in PtModelProc 

(see Section 4.1.3)

N

CNTL_EFF baseline control efficiency, expressed as a percentage N

EMIS pollutant emissions value (tons/year) N

EMRELPID code identifying a unique emission point within an activity A50

EMRELPTY physical configuration code of release point

(01=fugitive; 02=vertical stack; 03=horizontal stack, 04=goose neck, 05=vertical

with rain cap, 06=downward-facing vent, AP=aircraft)

A4

FIPS 5-digit FIPS code (state and county combined) A5

ISCTYPEa,b ISCST3 source type (iscpoint, iscarea, or iscvolume) A9

MACTCODE process or site-level MACT code A7

NTI_HAP code identifying HAP on the Clean Air Act HAP list; assigned in PtModelProc

(see Section 4.1.1) 

A3

REACT pollutant reactivity class (1-9) N

SAROAD unique pollutant-group code; assigned in PtModelProc (See section 4.1.1) A5

SAROADDC descriptive name for the SAROAD; assigned in PtModelProc (see Section 4.1.1) A50

SCC EPA source category code identifying the process A10

SCC_AMS SCC or AMS code from the temporal allocation factor file identifying the

temporal profile used; assigned in PtTemporal

A10

SIC Standard Industrial Classification (SIC) code for the site A4

SIGMAXb initial lateral dimension of volume source (meters) N

SIGMAZb initial vertical dimension of volume source (meters) N
Table 6-7. Variables in the PtGrowCntl Input Point Source Inventory SAS® File when

Processing Data for ISCST3

(continued)

Variable Name Data Description

(Required units or values are in parentheses) Type *

6-17

SITE_ID code identifying a unique site A25

SRC_TYPE description of the emission source at the site (‘nonroad’ for aircraft emissions) If

you choose to define source groups by this variable as explained in 8.1.1, or run

PtGrowCntl (Chapter 6) then it must have the value of ‘major’ or ‘area’ for nonaircraft emissions.

A15

STACKDIA diameter of stack (meters) N

STACKHT height of stack (meters) N

STACKVEL velocity of exhaust gas stream (meters per second) N

STKTEMP temperature of exhaust gas stream (Kelvin) N

TEMIS1-

TEMIS288

temporally allocated emissions for each hour of each of three day types and four

seasons (tons/hour); calculated in PtTemporal

N

UTMX UTM easting (meters) N

UTMY UTM northing (meters) N

VOLHGTb release height above ground for volume source (meters) N

*Ax = character string of length x, I = integer, N = numeric

a

 variables required for processing ISCST3 area sources

b

 variables required for processing ISCST3 volume sources

c

 additional variables only included when information is available

6.2.2 Determine whether you need to modify the ancillary input files for PtGrowCntl

An ancillary file is any data file you input to the program other than your emission inventory.

Table 6-8 lists the ancillary input files required for PtGrowCntl and when you may need to

modify them.
6-18

Table 6-8. Required Ancillary Input Files for PtGrowCntl

Name of File

Provided with

EMS-HAP

Purpose Need to Modify? Format

gfegas_bymactXX_YY

(where XX specifies

the base year and YY

specifies the projection

year)

Provides the assignment of year-specific

growth factors by MACT category and

nationally, by state FIPS, or by county FIPS

When you need growth

factors for a different

projection year or base

year or when you

update growth

information for a

MACT category

Text

gfegas_bysicXX_YY

(where XX specifies

the base year and YY

specifies the projection

year)

Provides the assignment of year-specific

growth factors by SIC code and nationally, by

state FIPS, or by county FIPS

When you need growth

factors for a different

projection year or base

year or when you

update growth

information by SIC

Text

ptscc2sic Provides cross reference between SCC codes

and SIC codes for purpose of assigning

growth factors by state and SIC code

When additional or

different SCC to SIC

cross-references are

needed to assign

growth factors

Text

MACT_gen Provides emission reduction strategy

information by MACT category

When additional or

updated MACT-based

reduction information

is obtained

Text

MACT_spec Provides emission reduction strategy

information by MACT category and SCC

and/or HAP identification code

When additional or

updated MACT-based

reduction information

is obtained

Text

User_cntl* Provides user-defined emission reduction

information by user-defined combinations of

site, MACT category, SCC code, SIC code,

HAP identification code, and/or county type

code

Develop to create a

user-specific emission

reduction scenario for a

future year

Text

popflg96 Allows you to define the county type code

based on the actual counties in the U.S. The

county-type code is used in the User_control

file to allow you to develop emission

reduction scenarios by individual counties or

groups of counties. 

If you want to apply

emission reductions to

specific counties or

groups of counties

Text

* not provided as part of EMS-HAP.
6-19

6.2.3 Modify the MACT-based and SIC-based growth factor input files

(gfegas_bymactXX_YY.txt and gfegas_bysicXX_YY.txt)

The growth factors in the growth factor files provided with EMS-HAP were obtained primarily

by running the Economic Growth Analysis System, version 4.08

, (EGAS4.0) with the “BLS”

option. To create the MACT-based factors we used the SCC-based factors from EGAS4.0 that

matched most appropriately to the MACT category. In a few cases, we replaced the EGAS4.0

factors with MACT-based growth factors recommended by EPA MACT standard development

project leads. The SIC-based factors were based on the SIC-based factors from EGAS4.0. Some

of the factors are county-specific, while others apply uniformly across the nation. You may want

to modify the growth factor files to use more updated information or location-specific

information, if you have it.

The MACT-based growth factor file indexes the factors by MACT and state and county FIPS

code, whereas the SIC-based growth factor indexes it by 2-digit SIC and state and county FIPS

code. The state and county FIPS can be used to control the geographic region over which the

growth factor is to be applied: nationally, state-wide, or within a specific county. This is done by

assigning the state FIPS and county FIPS as shown in Table 6-9.

Table 6-9. Regional Assignment of Growth Factors in the Growth Factor Files

Assignment of Growth

Factor

State FIPS County FIPS

Nationally ‘00' ‘000'

State-wide specific state FIPS code ‘000'

County-wide specific state FIPS code specific county FIPS code

Note that any nationally applied growth factor will be superceded by a state-wide growth factor,

and any state-wide growth factor will be superceded by a county-specific growth factor.

The SIC-based growth factor file contains the same information as the MACT-based growth

factor file, except that the growth factors are identified by the first two digits of the SIC code. 

The growth factors are applied nationally, state-wide, and within a specific county in the same

way as in the MACT-based file. Note that if you assign growth factors by MACT category and

by SIC, the SIC-based growth factors will not replace any assigned MACT-based growth factors. 

Because you may want to use EMS-HAP to analyze a series of future years, you may have

occasion to create a number of different MACT-based or SIC-based growth factor files, with

each separate version addressing a different base and projection year. Only one version (i.e.,

pertaining to one base year and one projection year) of one or both of these growth factor files

can be used in a particular run of EMS-HAP. The formats for the MACT-based and SIC-based

growth factor files are provided in Figures 20a and 20b, respectively, of Appendix A.
6-20

6.2.4 Modify the SCC to SIC cross-reference input file (ptscc2sic.txt)

PtGrowCntl uses the SCC to SIC cross-reference file for cases where there is no SIC contained

on the emission inventory record. This file consists of unique 8-digit SCC codes and a

corresponding 4-digit SIC code. In this file, you can assign only one SIC code to a given SCC

code. Note that PtGrowCntl uses only the first two digits of the SIC code along with the state

and county FIPS to assign growth factors to the inventory records. The format for this file is

provided in Figure 21 of Appendix A.

You would expect to modify this file depending on the SIC information included in your

emission inventory. Note that any records without an SIC code will be assigned the default

growth factor of one and, therefore, the grown emissions will be unchanged from the base year

emissions.

6.2.5 Modify the MACT-based emission reduction information files (MACT_gen.txt and

MACT_spec.txt)

The general MACT reduction information file (MACT_gen.txt) contains the list of MACT

categories and the general reduction information described in Section 6.1.2. You will need to

modify this file to account for updates to this information. This is because this information was

not known for some of the MACT categories at the time we developed this file or may have

changed since then. The format for the general MACT reduction information file is provided in

Figure 22a of Appendix A.

The specific MACT reduction information file (MACT_spec.txt) contains reduction efficiencies

for specific HAPs or specific processes within a MACT category as described in Section 6.1.2. 

Similarly, as discussed (above) for the MACT_gen.txt file, you will need to modify this file to

account for updates to the information. The format for the specific MACT reduction information

file is provided in Figure 22b of Appendix A. If you need to apply reduction information at the

site-level within a MACT category, you will need to use the user-defined emission reduction

information file, User_control.txt (see Section 6.2.6). 

It is important to note that all MACT categories included in the MACT_spec.txt file must be

included in the MACT_gen.txt file. If not, the reduction information in the MACT_spec.txt file

for that MACT category will not be used. This is necessary because the compliance date from

the MACT_gen.txt file is used to determine whether or not the specific reduction information

should be applied to the emissions for the specified projection year. In addition, the compliance

date must be provided in the MACT_gen.txt file.

In cases where an emission inventory record is affected by more than one record in the specific

MACT reduction information file, a specific order of precedence is followed. This order is

presented in Table 6-1 (see Section 6.1.2). As an example, a reduction information record that

specifies MACT code and NTI_HAP will be superceded by a record that specifies MACT code

and 6-digit SCC. 
6-21

6.2.6 Develop the user-defined emission reduction information files (User_control.txt and

popflg96.txt)

The user-defined emission reduction information file (User_control.txt) is not provided as part of

EMS-HAP, because it is based on your own detailed reduction strategy information and

preferences. If you want to apply your own emission reductions to the inventory, you will need

to develop this file. The User_control.txt file allows you to define emission reduction

information by any combination of process and pollutant information, specified by the MACT

code, SCC, SIC, and/or NTI_HAP variable. In addition, you can define any of this information

for specific counties or groups of counties of your own creation (e.g., urban versus rural counties,

counties in a specific MSA, or all counties within a state). Finally, you can define reduction

information for a specific site using the SITE_ID variable. You can do this for the site alone or

in various combinations with process and pollutant information, specified by the MACT code,

SCC , SIC, and/or NTI_HAP variable. Section 6.1.3 describes how PtGrowCntl uses this file

and the hierarchy of assigning the various strategies you may include in the file. The format for

the user-defined reduction information file is provided in Figure 23 of Appendix A. 

You must modify the popflg96.txt file if you choose a user-defined scenario which is specific to

either a single county or a group of similar counties (e.g., all urban counties). You define

specific counties or groups of counties for which you want to specify emission reduction

information in PtGrowCntl, by populating the CNTYCODE variable in this file. All counties

that you want to group together should have the same value for CNTYCODE. For example, if

you want to develop a scenario for all urban counties, then you might use the code ‘URBAN’ for

the CNTYCODE. You would then assign ‘URBAN’ to each urban county in the popflg96.txt

file. The popflag96.txt file also contains 1996 county-level urban/rural designations to help you

if you choose to use that as the basis of a reduction scenario. The format for the popflg96.txt file

is provided in Figure 24 of Appendix A. You must use the same value of CNTYCODE in the

popflg96.txt file as you use in the User_control.txt file. 

6.2.7 Prepare your batch file

The batch file serves two purposes: (1) allows you to pass “keywords” such as file names and

locations, program options, and run identifiers to the program, and (2) sets up the execute

statement for the program. Sample batch files for PtGrowCntl for ASPEN and ISCST3

emissions processing are shown in Figures 9 and 10, respectively, of Appendix B. The best way

to prepare your batch file is to use one of the samples we provide and modify it to fit your needs.

Specify your keywords

Table 6-10 shows you how to specify keywords to select which functions you want PtGrowCntl

to perform. For example, if you want to project your emissions by economic growth based only

on the MACT category, set the GROWFLAG keyword to ‘MACT’.
6-22

Table 6-10. Keywords for Selecting PtGrowCntl Functions

PtGrowCntl Function Keyword (values provided

cause function to be performed)

Select model for which data is being processed

Process data for ASPEN model MODEL = ASPEN

Process data for ISCST3 model MODEL = ISC

Assign and apply growth factors

Assign growth factors by MACT category and geographic region only GROWFLAG = MACT

Assign growth factors by two-digit SIC and geographic region only GROWFLAG = SIC

Assign growth factors by MACT category and geographic region and twodigit SIC and geographic regionGROWFLAG = BOTH

Do not assign growth factors GROWFLAG = NONE

Assign missing SICs by SCC to SIC cross-reference file (used only

when assigning growth factors by two-digit SIC)

SICFLAG = 1

Assign and apply reduction information

Use MACT-based emission reduction information only CNTLFLAG = MACT

Use User-defined emission reduction information only CNTLFLAG = USER

Use both MACT-based and User-defined emission reduction information CNTLFLAG = BOTH

Do not assign reduction information CNTLFLAG = NONE

Use general MACT-based information only (applies only when

CNTLFLAG = ‘MACT’ or ‘BOTH’)

SPECMACT = 0

Use both general and process and/or pollutant specific MACT-based

information (applies only when CNTLFLAG = ‘MACT’ or ‘BOTH’)

SPECMACT = 1

Project Emissions beginning January 1 in the projected year YEARTYPE = CALENDAR

Project Emissions beginning October 1 in the year prior to the projected

year

YEARTYPE = FISCAL

Table 6-11 describes all of the keywords required in the batch file. Use keywords to locate and

name all input and output files. The same batch file can be used for running PtGrowCntl for

ASPEN or ISCST3. The only difference is the assignment of the keywords MODEL (either

‘ASPEN’ or ‘ISC’).
6-23

Table 6-11. Keywords in the PtGrowCntl Batch File For Either ASPEN or ISCST3

Keyword Description of Value

Input Inventory Files

IN_DATA The input SAS® file directory

INSAS Input inventory SAS® file name, prefix of file name only

Ancillary Files (Prefix of file name provided with EMS-HAP in parentheses)

REFSAS The reference SAS® file directory

REFTEXT The reference text file directory

GFMACT MACT-based growth factors text file, prefix only (gfegas_bymactXX_YY, where XX specifies

base year and YY specifies projection year)

GFSIC SIC-based growth factors text file, prefix only (gfegas_bysicXX_YY, where XX specifies base

year and YY specifies projection year)

SCC2SIC SCC to SIC cross-reference text file, prefix only (ptscc2sic)

MACTGEN General MACT-based emission reduction information text file, prefix only (MACT_gen)

SPECFILE Specific MACT-based emission reduction information text file, prefix only (MACT_spec)

USERFILE User-defined emission reduction information text file, prefix only (file not provided with EMSHAP)

CNTYUR State/County FIPS to county control code cross-reference text file, prefix only (popflg96)

Program Options (See also Table 6-10)

MODEL ASPEN=process data for ASPEN model; ISC=process data for ISCST3 model

GROWFLAG MACT= project emissions due to economic growth by MACT code and geographic region

only; 

SIC=project emissions due to economic growth two-digit SIC and geographic region only;

BOTH=project emissions due to economic growth both by MACT code and geographic region

and by two-digit SIC and geographic region;

NONE = does not project emissions due to economic growth

SICFLAG 1=use SCC to SIC cross-reference file to assign SIC where missing in inventory; 0=don’t assign

SIC where missing

CNTLFLAG MACT=project emissions using MACT-based emission reduction information only; 

USER=project emissions using user-defined emission reduction information only; 

BOTH=projects emissions using both MACT-based and user-defined emission reduction

information

NONE=does not project emissions using emission reductions

SPECMACT 1=Use process and/or pollutant specific MACT emission reduction information; 0=don’t use

process and/or pollutant specific MACT emission reduction information

YEARTYPE CALENDAR = Project Emissions beginning January 1 in the projected year

FISCAL = Project Emissions beginning October 1 in the year prior to the projected year

Additional Input Data

GROWYEAR Year to which emissions are to be projected

Output files

OUTDATA The output SAS® file directory

OUTSAS Output inventory SAS® file name, prefix only
6-24

You must include all directory names, file names, and variable values even if they are related to a

function that you do not select to perform. For example, if you set GROWFLAG to ‘NONE,’

you still need to assign values to the keywords GFMACT, GFSIC, SICFLAG, SCC2SIC, and

YEARTYPE. Although the values provided in this circumstance will be ignored by PtGrowCntl,

place holder values for the keywords are still required.

Prepare the execute statement

The last line in the batch file runs the PtGrowCntl program. In the sample batch files provided in

Figures 9 and 10 of Appendix B, you will see a line preceding the run line that creates a copy of

the PtGrowCntl code having a unique name. It is this version of the program that is then

executed in the last line. If you do this, the log and list files created by this run can be identified

by this unique name. If you don’t do this and run the program under a general name, every run of

PtGrowCntl will create a log and list file that will replace any existing files of the same name.

You may find that you need to define a special area on your hard disk to use as work space when

running PtGrowCntl. In the sample batch file, a work directory is defined on the last line

following the execution of PtGrowCntl. For example, the statement: 

 ‘sas PtGrowCntl_062000.sas -work /data/work15/dyl/’ assigns a work directory called

“/data/work15/dyl”. The directory you reference here must be created prior to running the

program.

6.2.8 Execute PtGrowCntl

There are two ways to execute the batch file. One way is to type ‘source’ and then the batch file

name. Alternatively, first set the permission on the file to ‘execute.’ You do this by using the

UNIX CHMOD command and adding the execute permission to yourself, as the owner of the

file, to anyone in your user group, and/or to anyone on the system. For example,

‘chmod u+x PtGrowCntl.bat’ gives you permission to execute the batch file. Refer to your UNIX

manual for setting other permissions. After you have set the file permission, you can execute the

batch file by typing the file name on the command line, for example, ‘PtGrowCntl.bat’.

6.3 How Do I Know My Run of PtGrowCntl Was Successful?

6.3.1 Check your SAS® log file

You need to review the output log file to check for errors or other flags indicating incorrect

processing. This review should include searching the log files for occurrences of the strings

“error”, “warning”, “not found”, and “uninitialized”. These can indicate problems with input

files or other errors.

You can look at the number of records in the input inventory file and compare it to the number of

records in the output inventory file. The number of records should be the same in these two files. 
6-25

6.3.2 Check your SAS® list file

The list file created when PtGrowCntl is executed contains information to assist in quality

assurance. This file can contain the information listed below. The contents of the list file from a

specific run of PtGrowCntl depend on which functions you choose to have PtGrowCntl perform.

C List of general MACT emission reduction information indicating which records contain

information to be used considering the application code and the growth year

C Summary of inventory records assigned general MACT reduction information

C List of specific MACT emission reduction information indicating which records contain

information that is to be used considering the application code

C List of duplicate records in specific MACT emission reduction information files

C List of specific MACT emission reduction information not assigned to any records in the

inventory

C Summary of inventory records assigned process and/or pollutant specific MACT

reduction information

C List of user-defined emission reduction information indicating which records contain

information that is to be used considering the application code and the growth year

C List of state and county FIPS in the popflg96 (keyword=CNTYUR) file that are not found

in the inventory

C List of duplicate records in the user-defined emission reduction information file

C List of user-defined emission reduction information not assigned to a record in the

inventory

C Summary of inventory records assigned user-defined emission reduction information

C Summary of assigned growth factors and emission reduction information and the

resulting projected emissions

6.3.3 Check other output files from PtGrowCntl

You should check for the existence of the output inventory file named by keyword OUTSAS. 

This file will serve as the input to PtFinal_ASPEN or PtFinal_ISCST3, depending on the model

you are using. If your projection included the use of any reduction strategies (MACT, userdefined, or both), the output inventory file will contain the variable CNTLCODE. This variable

contains information about what reduction information (general MACT, specific MACT, and/or

user-defined) was assigned to the emission record and how the information was combined for the

assignment of the primary and additional control efficiencies. Reviewing the CNTLCODE

variable can help confirm how your reduction strategies were used to project the emissions.
7-1

PtDataProc

PtModelProc

PtTemporal

PtGrowCntl

PtFinal_ASPEN

OR

Point Source Emissions

ASPEN Point Source Emissions Files

CHAPTER 7

Point Source Processing 

The Final Format Program for ASPEN

(PtFinal_ASPEN)

The flowchart below (Figure 7-1) shows how PtFinal_ASPEN fits into EMS-HAP’s point source

processing for the ASPEN model. You don’t use this program if you are processing emissions

for ISCST3. The point source inventory you input to PtFinal_ASPEN is either the output from

PtTemporal (Chapter 5) or the output from PtGrowCntl (Chapter 6). You use the output from

PtFinal_ASPEN as the input emission files for the ASPEN model.

Figure 7-1. Overview of PtFinal_ASPEN Within EMS-HAP Point Source Processing
7-2

7.1 What is the function of PtFinal_ASPEN?

The Final Format Program for ASPEN (PtFinal_ASPEN) creates the emission input files for the

ASPEN model. PtFinal_ASPEN performs the functions listed below.

C Assigns ASPEN source groups used in the ASPEN model output

C Converts temporally allocated emissions from tons/year to grams/second for each

of the eight 3-hour periods

C Creates ASPEN input files, a SAS® file and an optional column formatted text file

Figure 7 shows a flowchart of PtFinal_ASPEN. The following sections describe the above

bullets. 
7-3

Reads Keywords

Batch File Containing Keywords e.g. 

File Names and Locations, Program 

Options

ASCII Text Point Source 

Emissions File

PtFinal_ASPEN: MACRO 

FILEHEAD 

Reads reactivity class decay rate 

file. Creates ASPEN input 

emission files for each reactivity 

class. Writes header and 

reactivity decay rates to these 

files.

Reactivity Class Decay Rate File

PtFinal_ASPEN: MACRO GROUPSET 

Reads point source inventory file. Depending on 

program options, reads source group by MACT 

category file, source group by SCC file, and/or source 

by SIC file. Assigns source group as instructed by 

program options.

Source Group by MACT Category File

Source Group by SCC File

Source Group by SIC File

Point Source Inventory File

PtFinal_ASPEN: MACRO ASCII2 

Creates ASCII text version of data written to 

ASPEN input emission files. Converts 3-hr 

emission rates from tons/year to grams/sec.

ASPEN Input Point Source Emission Files 

Reactivity Classes 1 through 9

PtFinal_ASPEN: MACRO 

FILEBODY 

Writes data (grams/second) to 

ASPEN input emissions files 

for each reactivity class

Point Source Inventory SAS Dataset;

contains ASPEN-specific variables if batch file 

keywords are selected

or or

or

Figure 7-2. PtFinal_ASPEN Flow Chart
7-4

7.1.1 Assigns ASPEN source groups used in the ASPEN model output

The ASPEN model computes concentrations by source groups which can be used to analyze the

relative impacts of different types of emissions sources. ASPEN can use up to 10 source groups.

PtFinal_ASPEN can assign ASPEN source groups by the criteria listed below. You choose the

method based on the keywords you specify in your batch file (see Table 7-4 in Section 7.2.4).

• source type (variable SRC_TYPE)

• MACT category code (variable MACTCODE)

• 6-digit SCC

• SIC

The assigned source group value (which can be 0 through 9) is stored in the variable named

GROUP. When assigning the source group by SRC_TYPE, PtFinal_ASPEN makes the

assignment as shown in Table 7-1.

Table 7-1. Assignment of Source Groups for ASPEN Model Using Source Type

Value of 

SRC_TYPE

Variable

Description Source Group

Assignment

major major source of HAPs based on definition in

Section 112 of Clean Air Acta

0

area area source of HAPs based on definition in

Section 112 of Clean Air Actb

1

nonroad nonroad mobile source emissionsc 3 a “...any stationary source or group of stationary sources located within a contiguous area and under common control

that emits or has the potential to emit considering controls, in the aggregate, 10 tons per year or more of any

hazardous pollutant or 25 tons per year or more of any combination of hazardous air pollutants...” 

b

 “...any stationary source of hazardous air pollutants that is not a major source... shall not include motor vehicles or

nonroad vehicles subject to regulation under title II...”

c In point source processing, the only nonroad sources you would have in your point source inventory are allocated

airport emissions obtained from running AirportProc (see Chapter 2)

If you choose to assign the source group by the MACT category, the 6-digit SCC, and/or the SIC,

PtFinal_ASPEN uses the appropriate ancillary file (mact_grp, SCC_grp, or SIC_grp) based on

your assignment method. These files contain the group assignment value by code. See Section

7.2.3 for instructions on how to modify these files if you choose to assign your groups this way.

Although you may choose several of the criteria listed above, PtFinal_ASPEN will not combine

the above criteria to define a group. You can’t, for example, assign a major sources with a

particular SIC to a group by selecting both the source type and SIC criteria. Only one criterion is
7-5

used for each emission point. In cases where you do choose more than one of the criteria, the

order of precedence from lowest to highest priority is as follows: source type, MACT category

code, 6-digit SCC, and SIC. Thus, a source group assigned by MACT category code will replace

one assigned by the source type. There is one exception to this order. If you choose to assign the

source group by both SCC and SIC, the SCC_grp and SIC_grp ancillary files need to contain an

associated ranking that controls when the SIC assignment replaces the SCC assignment.

If, for any record in your inventory, no source group assignment is made by the above methods, a

default source group is assigned. You specify the value for this default in your batch file

(keyword DFLTGRP, see Table 7-5 in Section 7.2.4).

7.1.2 Converts temporally allocated emissions from tons/year to grams/second for each

of the eight 3-hour periods

PtTemporal produces emissions in units of tons per year for each of the eight 3-hour time

periods. If you choose to either create the ASPEN input files or the column formatted ASCII text

file (see Section 7.1.3), PtFinal_ASPEN converts these emissions to grams per second, because

these units are required by the ASPEN model. The following formula is used:

Egps(i) =Etpy(i) x (1 year/365 days) x (1 day/24 hrs) x (1 hr/3600 sec) x (907,184 grams/ton) (eq. 7-1)

where:

Egps(i) = emissions grams/second for time block i (where i represents one of the eight 3-hour time

blocks; e.g., time block i=1 represents the midnight to 3 a.m. time period)

Etpy(i) = emissions (tons/year) for time block i

7.1.3 Creates ASPEN input files, a column formatted text file and a SAS® file

PtFinal_ASPEN can create three different types output files: 

1. The ASPEN input files

2. A column formatted ASCII text file 

3. A SAS® output file 

You control whether or not to create the ASPEN input and column formatted text file in your

execution of PtFinal_ASPEN, based on the keywords you specify in your batch file (see Table 7-

4 in Section 7.2.4). PtFinal_ASPEN automatically creates the SAS® output file. 
7-6

ASPEN Input Files

The ASPEN model requires emissions data in the form of one ASCII text file for each of the

possible nine reactivity/particulate size classes. Each file contains data for all pollutants having

the same class. PtFinal_ASPEN creates all nine files in the appropriate format. (See Section 4.0

of the ASPEN User’s Guide1

 for more details on the required format.) Each text file consists of a

header and body. The elements of the header are:

• A run identifier: You supply this in the batch file (keyword RUNID, see Table 7-

5 in Section 7.2.4)

• Species type: PtFinal_ASPEN sets this to 0 for gaseous species, 1 for fine

particulates, and 2 for coarse particulates.

• Wet and dry deposition codes: PtFinal_ASPEN sets these to 0 for particulates and

1 for gaseous species. These values tell ASPEN whether to invoke the deposition

algorithm for particulates (ASPEN does not perform deposition for gases).

• Decay coefficients associated with the reactivity class: PtFinal_ASPEN

determines these from the ancillary file indecay.txt based on the value of the

REACT variable (discussed in detail in Chapter 4, Section 4.2.3). This file

contains a set of coefficients for each of the nine reactivity/particulate size classes.

The file body contains source information such as latitude and longitude, the source group,

source characteristics such as stack height, building width, and vent type, and the emissions for

each of eight 3-hour periods for each pollutant (of the appropriate reactivity/particulate size

class) emitted from the stack. 

PtFinal_ASPEN names the nine ASPEN input files in the form ‘OUTCODE.rREACT.inp’ 

where OUTCODE is the file identifier keyword you provide in the batch file (see Table 7-5 in

Section 7.2.4), and REACT is the reactivity/particulate size class (a number between 1 and 9,

inclusive). An example file name is ‘Pt96.US.D121599.r1.inp’ where OUTCODE is

‘Pt96.US.D121599' and REACT is ‘1'.

Column-Formatted ASCII File

PtFinal_ASPEN can create a single column-formatted ASCII text file containing data written to

the ASPEN input emissions files. This file can provide easy access to the data for quality

assurance purposes. You specify the prefix name of this file in your batch file (keyword ASCII,

see Table 7-5 in Section 7.2.4); the suffix is ‘txt’. Table 7-7 in Section 7.3.3 shows the format of

this file.

SAS® Output File

PtFinal_ASPEN automatically creates an output SAS® inventory file. This file contains the same

data as in the input SAS® inventory file with the following exceptions:
7-7

• The source group variable (GROUP), and possibly some ASPEN-specific variables (see

Table 7-6 in Section 7.3.3), have been added. 

• The units of the temporally allocated emissions have been converted to grams/second

(unless, in the unlikely event that you chose not to create neither the ASPEN input nor the

column-formatted ASCII files)

You specify the name of this file in your batch file (keyword OUTSAS, see Table 7-5 in Section

7.2.4).

7.2 How do I run PtFinal_ASPEN?

7.2.1 Prepare your point source inventory for input into PtFinal_ASPEN

The point source inventory you use for input into PtFinal_ASPEN can be the output from either

PtTemporal (see Chapter 5) or PtGrowCntl (see Chapter 6). The inventory produced by either of

these programs will meet all requirements and will contain the variables listed in Table 7-2 with

some exceptions. If the output from PtTemporal is used, the file will not include the control

variables created in PtGrowCntl. The file may also contain additional variables such as the

diagnostic flag variables (LFLAG, FIPFLAG, etc.) created by PtDataProc depending on the

options you chose for the windowing function in PtDataProc (see Section 3.1.3).
7-8

Table 7-2. Variables in the PtFinal_ASPEN Input Point Source Inventory SAS® File

Variable Name Data Description

(Required units or values are in parentheses)

Type*

ADDNEFF a reduction (%) for new sources to be applied in addition to primary reductions;

assigned in PtGrowCntl (see Section 6.1.4)

N

ADDXEFF a reduction (%) for existing sources to be applied in addition to primary

reductions; assigned in PtGrowCntl (see Section 6.1.4)

N

ADD_RATE a percentage of emissions attributable to new sources for the purpose of applying

additional reductions; assigned in PtGrowCntl (see Section 6.1.4)

N

BLDH building height (meters) (5 for horizontal stacks, 0 for all other stacks); assigned

in PtModelProc (see Section 4.1.3)

N

BLDW building width (meters) (5 for horizontal stacks, 0 for all other stacks); assigned

in PtModelProc (see Section 4.1.3)

N

CNTL_EFF baseline reduction efficiency, expressed as a percentage N

CNTLCODE a control code indicating the reductions applied to emissions; assigned in

PtGrowCntl

A100

EMIS baseline pollutant emissions value (tons/year) N

EMRELPID code identifying a unique emission point within a site A50

EMRELPTY physical configuration code of release point

(01=fugitive; 02=vertical stack; 03=horizontal stack, 04=goose neck, 05=vertical

with rain cap, 06=downward-facing vent, AP=aircraft)

A4

EXISTEFF a primary percent reduction for existing sources; assigned in PtGrowCntl (see

Section 6.1.4)

N

FIPS 5-digit FIPS code (state and county combined) A5

GFa growth factor; assigned in PtGrowCntl (see Section 6.1.1) N

IBLDG building code (1 for horizontal stacks, 0 for all other stacks); assigned in

PtModelProc (see Section 4.1.3)

A1

IVENT vent type (0 for stacked sources, 1 for non-stacked sources); assigned in

PtModelProc (see Section 4.1.3)

A1

LAT latitude (decimal degrees) N

LON longitude (negative decimal degrees) N

MACTCODE MACT code A7

NEW_EFF a primary percent reduction for new sources; assigned in PtGrowCntl (see

Section 6.1.4)

N

NEW_RATE a percentage of emissions attributable to new sources for the purpose of applying

primary reductions; assigned in PtGrowCntl (see Section 6.1.4)

N
Table 7-2. Variables in the PtFinal_ASPEN Input Point Source Inventory ... (continued)

Variable Name Data Description

(Required units or values are in parentheses)

Type*

7-9

NTI_HAP code identifying HAP on the Clean Air Act HAP list; assigned in PtModelProc

(see Section 4.1.1)

A3

REACT pollutant reactivity/particulate size class (1-9); assigned in PtModelProc (see

Section 4.1.1)

N

REPLACEa user-defined reduction flag (R=replace MACT-based reductions with user-defined

reductions; A=apply user-defined reductions in addition to the primary MACT-based

reductions); assigned in PtGrowCntl (see Section 6.1.4)

A1

SAROAD unique pollutant-group code; assigned in PtModelProc (see Section 4.1.1) A10

SAROADDC descriptive name for the SAROAD; assigned in PtModelProc (see Section 4.1.1) A50

SCC EPA source category code identifying the process A10

SCC_AMS SCC or AMS code from the temporal allocation factor file identifying the temporal

profile used; assigned in PtTemporal

A10

SETSICa SIC assigned by cross-reference to SCC for use in assigning growth factors; assigned

in PtGrowCntl (see Section 6.1.1)

A4

SIC Standard Industrial Classification (SIC) code for the site A4

SITE_ID code identifying a unique site A25

SRC_TYPE description of the emission source at the site (‘nonroad’ for aircraft emissions) If

you choose to define source groups by this variable as explained in 7.1.1, or run

PtGrowCntl (Chapter 6) then it must have the value of ‘major’ or ‘area’ for non

aircraft emissions.

A15

STACKDIA diameter of stack (meters) N

STACKHT height of stack (meters) N

STACKVEL velocity of exhaust gas stream (meters per second) N

STKTEMP temperature of exhaust gas stream (Kelvin) N

TAFS1-TAFS8 temporal factors for the eight 3-hour periods of an average day; assigned in

PtTemporal

N

TEMIS1-TEMIS8 temporally allocated emissions for the eight 3-hour periods of an average day

(tons/year); calculated in PtTemporal, unless emissions projections were done in

which case, values represent temporally allocated projected emissions calculated in

PtGrowCntl

N

UFLAG urban/rural dispersion flag (1 for urban, 2 for rural); assigned in PtModelProc (see

Section 4.1.2)

N

*Ax = character string of length x, I = integer, N = numeric

a

 variable present only if you run the optional Growth and Control Program, PtGrowCntl (Chapter 6)
7-10

7.2.2 Determine whether you need to modify the ancillary input files for

PtFinal_ASPEN

An ancillary file is any data file you input to the program other than your emission inventory. 

Table 7-3 lists the ancillary input files required for PtFinal_ASPEN and when you may need to

modify them.

Table 7-3. Required Ancillary Input Files for PtFinal_ASPEN

Name of File

Provided with

EMS-HAP

Purpose Need to Modify? Format

mact_grp.txt Provides the assignment of source groups

by MACT code

If you want to make

source group assignments

by MACT code

Text

scc6_grp.txt Provides the assignment of source groups

by 6-digit SCC and a rank code used to

determine if the source group can be

replaced by a SIC-based source group

If you want to make

source group assignments

by SCC code

Text

sic_grp.txt Provides the assignment of source groups

by SIC and a rank code used to determine

if the source group can replace a SCCbased source group

If you want to make

source group assignments

by SIC code

Text

indecay.txt Provides decay coefficients for 6 stability

classes for the eight 3-hour time periods

for up to 9 reactivity/particulate classes

No Text

7.2.3 Modify the source group assignment files (mact_grp.txt, scc6_grp.txt, and

sic_grp.txt)

The ASPEN model output presents data for each pollutant (SAROAD) by census tract and by

source group. The source group assignment you make in PtFinal_ASPEN will determine how

ASPEN will group the concentration estimates. You can control this assignment based on the

source type using the SRC_TYPE variable (as was discussed in 7.1.1) and/or by using any one of

the three ASPEN source group assignment files. The specific formats for these files are

presented in Figures 25 through 27 of Appendix A. The mact_grp.txt is a simple text file that

has a MACT code followed by a source group code (number between 0 and 9, inclusive). To

modify it, put the same group code next to each MACT code that you want in the same group. If

you choose to use this file in combination with either of the other two files, it is important to

remember that a MACT code-based assignment will automatically replace a source type-based

assignment and will automatically be replaced by either an SCC-based or SIC-based assignment.
7-11

If you want to use both SCC-based assignments and SIC-based assignments, you can control

whether or not the SIC-based assignment replaces the SCC-based assignment by setting the rank

field in each file. These files contain the SCC or SIC code followed by the source group,

followed by the rank. If an inventory record contains both SCC and SIC codes, the SCC

assignment is made first. If an assignment can also be made by SIC, the SIC-based assignment

will only replace the SCC-based assignment if the SIC rank is lower than the SCC rank (e.g. an

SIC rank of 1 and a SCC rank of 3 will result in the SCC-based assignment to be replaced by the

SIC-based assignment of the source group).

7.2.4 Prepare your batch file

The batch file serves two purposes: (1) allows you to pass “keywords” such as file names and

locations, program options and run identifiers to the program, and (2) sets up the execute

statement for the program. A sample batch file for PtFinal_ASPEN is shown in Figure 11 of

Appendix B. The best way to prepare your batch file is to use the sample we provide and modify

it to fit your needs.

Specify your keywords

Table 7-4 shows you how to specify keywords to select PtFinal_ASPEN functions. 

Table 7-4. Keywords for Selecting PtFinal_ASPEN Functions

PtFinal_ASPEN Function Keyword (values provided cause function

to be performed)

Process data for ASPEN model MODEL = ASPEN

Assign ASPEN source groups

by source type DOSOURCE = 1

by MACT code DOMACT = 1

by SCC DOSCC = 1

by SIC DOSIC = 1

Create ASPEN input files DOWRITE = 1

Create single text-formatted file DOASCII = 1

Table 7-5 describes all of the keywords required in the batch file. In addition to supplying all

input and output file names and directories and program options, you must also supply additional

input data (see “Additional Input Data” section in Table 7-5). You must supply a value for

keyword ITYPE, which tells ASPEN whether your sources are point or pseudopoint sources. 

Always set ITYPE to 0 (which signifies point source).
7-12

Table 7-5. Keywords in the PtFinal_ASPEN Batch File

Keyword Description of Value

Input Inventory Files

IN_DATA Input SAS® file directory

INSAS Input inventory SAS® file name, prefix of file name only

Ancillary Files (Prefix of file name provided with EMS-HAP in parentheses)

REFFILES Ancillary file directory

MACTGRP MACT code to source group correspondence text file, prefix only (mact_grp)

SCCGRP SCC code to source group correspondence text file, prefix only (scc6_grp)

SICGRP SIC code to source group correspondence text file, prefix only (sic_grp)

DECAY Reactivity class decay coefficients for 6 stability classes for eight 3-hour time periods, prefix

only (indecay)

Program Options (see also Table 7-4)

MODEL ASPEN = process data for the ASPEN model

DOSOURCE 1= assign source group by source type; 0=don’t assign by source type

DOMACT 1=assign source group by MACT category code; 0=don’t assign by MACT

DOSCC 1=assign source group by SCC code; 0=don’t assign by SCC

DOSIC 1=assign source group by SIC code; 0=don’t assign by SIC

DOWRITE 1=create ASPEN input emission files; 0=don’t create ASPEN input files

DOASCII 1=create column-formatted ASCII text output file; 0=don’t create column-formatted ASCII

text output file

Additional Input Data

DFLTGRP Default source group (must be an integer between 0 and 9, inclusive)

OUTCODE File identifier included in name of ASPEN input emission files (limit of 10 characters is

recommended. Additional characters will be truncated from the file header, not the file

name)

ITYPE ASPEN Source type (0 for point sources)

RUNID Run identifier included in ASPEN input emission file header (limit of 25 characters is

recommended. Additional characters will be truncated)

Output files

OUTDATA Output SAS® file directory

OUTSAS Output inventory SAS® file name, prefix only

OUTFILES Output ASPEN emission files directory

ASCIIFILE Output ASCII text file directory

ASCII Column-formatted ASCII text file name, prefix only

You must include all directory names, file names and variable values even if they are related to a

function that you do not select to perform. For example, if you set DOMACT to 0 (zero), you

still need to assign a value to keyword MACTGRP in your batch file. The value provided in this

circumstance does not need to represent an actual file name; it is merely a place holder value for

the keyword.
7-13

Prepare the execute statement

The last line in the batch file runs the PtFinal_ASPEN program. In the sample batch file

provided in Figure 11 of Appendix B, you will see a line preceding the run line that creates a

copy of the PtFinal_ASPEN code with a unique name. It is this version of the program that is

then executed in the last line. If you do this, the log and list files created by this run can be

identified by this unique name. If you don’t do this and run the program under a general name,

every run of PtFinal_ASPEN will create a log and list file that will replace any existing files of

the same name.

You may find that you need to assign a special area on your hard disk to use as work space when

running PtFinal_ASPEN. In the sample batch file, a work directory is defined on the last line

following the execution of PtFinal_ASPEN. For example, the command 

 ‘sas PtFinal_ASPEN_062000.sas -work /data/work15/dyl/’ assigns a work directory called

“/data/work15/dyl”. The directory you reference must be created prior to running the program.

7.2.5 Execute PtFinal_ASPEN

There are two ways to execute the batch file. One way is to type ‘source’ and then the batch file

name. Alternatively, first set the permission on the file to ‘execute.’ You do this by using the

UNIX CHMOD command and adding the execute permission to yourself, as the owner of the

file, to anyone in your user group, and/or to anyone on the system. For example,

‘chmod u+x PtFinal_ASPEN.bat’ gives you permission to execute the batch file. Refer to your UNIX

manual for setting other permissions. After you have set the file permission, you can execute the

batch file by typing the file name on the command line, for example, ‘PtFinal_ASPEN.bat’.

7.3 How Do I Know My Run of PtFinal_ASPEN Was Successful?

7.3.1 Check your SAS® log file

You need to review the output log file to check for errors or other flags indicating incorrect

processing. This review should include searching the log files for occurrences of the strings

“error”, “warning”, “not found”, and “uninitialized”. These can indicate problems with input

files or other errors.

You can look at the number of records in the input inventory file and compare it to the number of

records in the output SAS® inventory file. The number of records should be the same in these

two files.
7-14

7.3.2 Check your SAS® list file

You need to check this list file for records that do not contain source types. Source groups are

also provided for every unique combination of MACT, SCC, and SIC code.

7.3.3 Check other output files from PtFinal_ASPEN

PtFinal_ASPEN can create several different output files. It automatically creates an output SAS®

inventory file, named by keyword OUTSAS. This file contains the same data as in the input

SAS® inventory file and additional data that depends on how you set the keywords DOASCII and

DOWRITE in the batch file (see Table 7-4 in Section 7.2.4). Table 7-6 lists the variables that

can be added to the output point source inventory. The temporally allocated emissions values are

also converted from tons/year to grams/sec (see Section 7.1.2) if you choose to create the either

the ASPEN input or column formatted ASCII files (i.e., either DOWRITE or DOASCII=1).

Table 7-6. Variables Added to Input Inventory in Creating 

the PtFinal_ASPEN Output Point Source Inventory SAS® File

Variable Name Data Description (Required units or values are in parentheses) Type*

GROUP Emissions source group written to the ASPEN input file; assigned in

PtFinal_ASPEN

A1

ITYPE ASPEN source type written to the ASPEN input file (0=point; 3=

pseudopoint. Should be “0" for all point sources); assigned if batch file

keywords DOASCII or DOWRITE = 1

A1

PLANTID Plant ID variable written to the ASPEN input file (first 10 characters of

EMS-HAP SITE_ID); assigned if batch file keywords DOASCII or

DOWRITE = 1

A10

STACKID Stack ID variable written to the ASPEN input file (last five characters of

the EMRELPID variable); assigned if batch file keywords DOASCII or

DOWRITE = 1

A5

*Ax = character string of length x, I = integer, N = numeric

If you set the DOWRITE keyword to 1 (one), PtFinal_ASPEN will create nine ASPEN input

emissions files, one for each possible reactivity class. You should check that all nine files were

created and that emission data are included only in those files representing reactivities/particulate

size classes for which you know your inventory has emission data. You may also want to check

the header of the files for the decay rate information. If you set the DOASCII flag to 1 (one),

PtFinal_ASPEN will create a single column formatted ASCII file which can be helpful in

checking the quality of the ASPEN input emission data. Table 7-7 provides the variables in this

file.
7-15

Table 7-7. PtFinal_ASPEN Output ASCII File Variables

Variables and Data Description (Units or values are in parentheses) Type*

FIPS: 5-digit FIPS code; state and county combined A5

PLANT_ID: ASPEN plant ID (first 10 characters of EMS-HAP SITE_ID) A10

LON: point source longitude (negative decimal degrees) 10.5

LAT: point source latitude (decimal degrees) 8.5

ITYPE: ASPEN source type, 0 for point, 3 for pseudopoint (0) A1

UFLAG: urban/rural dispersion flag (1 for urban, 2 for rural) 1.0

STACKID: ASPEN Stack ID ( last 5 characters of EMS-HAP EMRELPID) A5

STACKHT: height of stack (meters) 6.1

STACKDIA: diameter of stack (meters) 6.2

STACKVEL: velocity of exhaust gas stream (meters per second) 6.1

STKTEMP: temperature of exhaust gas stream (Kelvin) 6.1

SAROAD: unique pollutant-group code A5

GROUP: ASPEN source group (integer between 0 and 9, inclusive) A1

TEMISA1: Emissions rate (grams/second) for the first 3-hour time period E10.

TEMISA2: Emissions rate, time period 2 E10.

TEMISA3: Emissions rate, time period 3 E10.

TEMISA4: Emissions rate, time period 4 E10.

TEMISA5: Emissions rate, time period 5 E10.

TEMISA6: Emissions rate, time period 6 E10.

TEMISA7: Emissions rate, time period 7 E10.

TEMISA8: Emissions rate, time period 8 E10.

SITE_ID: Identifies a unique site A25

* Ax = character string of length x, x.y = numeric format with y places right of decimal, Ex. = exponential
8-1

PtFinal_ISC ST 3

ISC ST3 SO Pathw ay of R un 

Stream Section for ISC ST 3 Point, 

V olum e and A rea Sources

Point Source Em issions

PtD ataProc

PtM odelProc

PtTem poral

O R PtG row C ntl

CHAPTER 8

Point Source Processing 

The Final Format Program for ISCST3

(PtFinal_ISCST3)

The flowchart below (Figure 8-1) shows how PtFinal_ISCST3 fits into EMS-HAP’s point source

processing for the ISCST3 model. You don’t use this program if you are processing emissions

for ASPEN. The point source inventory you input to PtFinal_ISCST3 is either the output from

PtTemporal (Chapter 5) or the output from PtGrowCntl (Chapter 6). You use the output from

PtFinal_ISCST3 as the source (SO) pathway section of the ISCST3 run stream for running the

ISCST3 model.

Figure 8-1. Overview of PtFinal_ISCST3 within EMS-HAP Point Source Processing
8-2

8.1 What is the function of PtFinal_ISCST3?

The Final Format Program for ISCST3 (PtFinal_ISCST3) creates the SO pathway section of the

ISCST3 run stream. PtFinal_ISCST3 performs the functions listed below.

C Assigns source groups used in the ISCST3 model output

C Assigns default release parameters in order to model fugitive sources and horizontal

stacks as ISCST3 volume sources

C Assigns available particulate size and gas deposition data by pollutant or by combination

of SCC and pollutant

C Removes emission sources outside your modeling domain

C Assigns available emission source elevation data by modeling grid cell

C Assigns source identification codes needed for the ISCST3 SO pathway section files

C Adjusts UTM coordinates of ISCST3 area emission sources from the center of the source

to its southwest corner

C Converts temporally allocated emissions from tons/hour to the necessary units for each

source for each of the 288 emission rates

C Creates SO pathway section of the ISCST3 run stream and include files

Figure 8-2 shows a flowchart of PtFinal_ISCST3. The following sections describe the above

bullets.
8-3

Reads Keywords

Batch File Containing Keywords 

e.g. File Names and Locations, 

Program Options

SO Pathway of ISCST3 Run Stream

PtFinal_ISCST3: MACRO MERGASD 

Reads default gas deposition parameter file and 

assigns to emissions by pollutant.

Default Gas Deposition Parameter 

File

PtFinal_ISCST3: MACRO GROUPSET 

Reads point source inventory file. Depending on 

program options, reads source group by MACT 

category file, source group by SCC file, and/or source 

by SIC file and assigns source group to emission 

records.

Source Group by MACT Category 

File

Source Group by SCC File

Source Group by SIC File

Point Source Inventory File

PtFinal_ISCST3: MACRO MERGELE 

Reads grid cell elevation file and assigns elevation 

data to emissions by grid cell.

PtFinal_ISCST3: MACRO MERGPART 

Reads pollutant-level particle size distribution file and 

assigns to emissions by pollutant. Reads source 

group-level particle size distribution file and assigns 

Group-level Particle Size to emissions by source group.

Distribution File

Pollutant-level Particle Size 

Distribution File

Grid Cell Elevation File

PtFinal_ISCST3: MACRO SOPATH 

Creates SO pathway of ISCST3 run stream. Creates 

all ISCST3 SO pathway include files.

PtFinal_ISCST3: MACRO FUGDEF 

Assigns default release parameters to fugitive sources 

and horizontal stacks in order to model these as 

ISCST3 volume sources.

PtFinal_ISCST3: MACRO GRIDCELL 

Determines grid cell for each source and retains only 

sources within modeling domain.

Figure 8-2 PtFinal_ISCST3 Flowchart

SO Pathway include files
8-4

8.1.1 Assigns source groups used in the ISCST3 model output

The ISCST3 model can compute pollutant concentrations at the receptors by source groups. This

information can then be used to analyze the relative impacts of different types of emissions

sources. For example, ISCST3 can output concentrations from dry cleaning sources separately

from onroad mobile sources. This source group assignment is also incorporated into a sequential

source identification code (discussed in 8.1.6) that PtFinal_ISCST3 assigns to each source for use

in the ISCST3 model.

ISCST3 can use up to 100 source groups. PtFinal_ISCST3 can assign source groups by the

criteria listed below. You choose the method based on the keywords you specify in your batch

file (see Table 8-9 in Section 8.2.5). 

• source type (variable SRC_TYPE)

• MACT category code (variable MACTCODE)

• 6-digit SCC

• SIC

The assigned source group value (which can be 00 through 99) is stored in the variable named

GROUP. When assigning the source group by SRC_TYPE, PtFinal_ISCST3 makes the

assignment as shown in Table 8-1.

Table 8-1. Assignment of Source Groups for the ISCST3 Model

Value of 

SRC_TYPE Variable

Description Source Group

Assignment

major Major source of HAPs based on definition in Section

112 of Clean Air Acta

00

area Area source of HAPs based on definition in Section

112 of Clean Air Actb

01

onroad Onroad mobile source emissions (for example: GISbased onroad segment emissions appended into the

point source inventory)

02

nonroad Nonroad mobile source emissions (for example:

allocated aircraft emissions incorporated into the point

source inventory through running AirportProc)

03

a “...any stationary source or group of stationary sources located within a contiguous area and under common control

that emits or has the potential to emit considering controls, in the aggregate, 10 tons per year or more of any

hazardous pollutant or 25 tons per year or more of any combination of hazardous air pollutants...” 

b

 “...any stationary source of hazardous air pollutants that is not a major source... shall not include motor vehicles or

nonroad vehicles subject to regulation under title II..”
8-5

If you choose to assign the source group by the MACT category, the 6-digit SCC, or the SIC,

PtFinal_ISCST3 uses the appropriate ancillary file (mact_grp, scc_grp, or sic_grp) based on your

assignment method. These files contain the group assignment value by code. See Section 8.2.3

for instructions on how to modify these files if you choose to assign your groups this way.

Although you may choose several of the criteria listed above, PtFinal_ISCST3 will not combine

the above criteria to define a group. You can’t, for example, assign a major sources with a

particular SIC to a group by selecting both the source type and SIC criteria. Only one criterion is

used for each emission point. In cases where you do choose more than one of the criteria, the

order of precedence from lowest to highest priority is as follows: source type, MACT category

code, 6-digit SCC, and SIC. For example, a source group assigned by MACT category code will

replace one assigned by the source type. There is one exception to this order. If you choose to

assign the source group by both SCC and SIC, the SCC_grp and SIC_grp ancillary files need to

contain an associated ranking that controls when the SIC assignment replaces the SCC

assignment.

If, for any record in your inventory, no source group assignment is made by the above methods, a

default source group is assigned. You specify the value for this default in your batch file

(keyword DFLTGRP, see Table 8-10 in Section 8.2.5). 

8.1.2 Assigns default release parameters in order to model fugitive sources and horizontal

stacks as ISCST3 volume sources

The ISCST3 model can process three types of EMS-HAP point sources located at specific

coordinates: ISCST3 point sources, ISCST3 volume sources and ISCST3 area sources. An

ISCST3 point source is used to model discrete emission stacks and vents. We expect that the

majority of your point source inventory consists of these type of sources. An ISCST3 volume

source is used to model emission releases from various industrial sources, such as building roof

monitors, multiple vents, and conveyor belts. An ISCST3 area source is used to model low level

or ground level emission releases with no plume rise, such as storage piles, slag dumps, lagoons,

landfills, airports, or onroad mobile segments. You can include ISCST3 volume and ISCST3

area sources in the point source inventory you input to EMS-HAP by including the required

variables needed to describe these sources (see Table 3-7 in Section 3.2.1).

Even if you don’t include ISCST3 volume sources in your inventory, PtFinal_ISCST3 assigns

certain emission sources in your point source inventory, based on the emission release type

(variable EMRELPTY), to be modeled as ISCST3 volume sources. These are fugitive sources

(EMRELPTY=01) and horizontal sources (EMRELPTY=03), which are typically included in

point source inventories, but we believe would be best modeled as ISCST3 volume sources

rather than as ISCST3 point sources. For these release types in your inventory, PtFinal_ISCST3

assigns default ISCST3 volume source release parameters as shown in Table 8-2. This

assignment does not affect any ISCST3 volume or ISCST3 area sources you have included in the

inventory. PtFinal_ISCST3 also assigns the ISCTYPE variable to the value ‘iscpoint’ to all

sources not identified as either ISCST3 volume or ISCST3 area sources.
8-6

Table 8-2. Default ISCST3 Volume Source Release Parameters Assigned to Fugitive and

Horizontal Emission Release Types

Variable Name Release Parameter Assigned Value

ISCTYPE ISCST3 source type ‘iscvolume’

VOLHGT Release height (meters) 2

SIGMAX Initial lateral dimension of the volume (meters) 1.5

SIGMAZ Initial vertical dimension of the volume

(meters)

1.5

8.1.3 Assigns available particulate size and gas deposition data by pollutant or by

combination of SCC and pollutant

The ISCST3 model includes several different algorithms for deposition, some of which require

information in addition to the emissions inventory data. The type of deposition and the

additional information required is summarized in Table 8-3.

Table 8-3. ISCST3 Deposition Algorithms and Required Information

Type of Deposition Additional Information Required Specificity of

Information

Gravitational settling and

removal of particulates in

the plume by dry deposition

Emission source particle size distribution

parameters (particle diameter, mass fraction,

and particle density) for up to 10 fractions

by SAROAD

or SAROAD

and SCC

Scavenging and removal of

particles by wet deposition

Liquid and ice scavenging coefficients for up

to 10 fractions

by SAROAD

or SAROAD

and SCC

Dry deposition and removal

of gaseous pollutants

Molecular diffusivity, solubility enhancement

factor, reactivity parameter, mesophyll

resistence term, and Henry's Law coefficient

by SAROAD

Depending on which, if any, of these deposition algorithms you will be using when running the

ISCST3 model, you need to provide the appropriate information by using one of three ancillary

files. One ancillary file contains the particle size distribution information and, if necessary, the

liquid and ice scavenging coefficients by pollutant as identified by the SAROAD variable (for a

description of the assigning of the SAROAD variable, see Section 4.1.1). Another ancillary file

contains this same type of information, but by the SAROAD code and the SCC code. You
8-7

control whether or not these files are used and how they are used by PtFinal_ISCST3 through the

keywords DEFPART, SCCPART and SCAVENG assigned in the batch file (see Table 8-9 in

Section 8.2.5).

A third ancillary file contains the gas deposition parameters and, if necessary, the liquid and ice

scavenging coefficients by SAROAD. You control whether or not this file is used and whether

the scavenging coefficients are used by PtFinal_ISCST3 through the keywords GASDEPO and

DEFGAS and SCAVENG assigned in the batch file (see Table 8-9 in Section 8.2.5). If you

instruct PtFinal_ISCST3 to read scavenging coefficients by setting the keyword SCAVENG to 1,

then these coefficients will be read from both the gas deposition and particle size distribution

files.

8.1.4 Removes emission sources outside your modeling domain

PtFinal_ISCST3 windows the inventory to exclude any records in grid cells that are outside of

the modeling domain; PtFinal_ISCST3 drops these records from the inventory. Grid cells are

outside the domain if they have a column or row greater than the maximum column and row for

the domain.

PtFinal_ISCST3 computes the modeling grid cell of each emission source in your inventory

using equations 8-1 through 8-3, and the information you supply in your batch file (see Table 8-

10 in Section 8.2.5) that describes your modeling grid. Table 8-4 summarizes this information. 

Table 8-4. Modeling Grid Information Required by PtFinal_ISCST3 to Assign Grid Cell

Modeling Grid Information Batch File Keyword

UTM easting coordinate of grid origin (meters) X_ORIG

UTM northing coordinate of grid origin (meters) Y_ORIG

Grid cell size (meters) CELLSIZE

Number of grid columns MAXCOL

Number of grid rows MAXROW
8-8

The grid cell column, row, and cell number are computed according to the equations given

below.

COL = (UTMX - X_ORIG)/(CELLSIZE) + 1 (Eq. 8-1)

ROW = (UTMY - Y_ORIG)/(CELLSIZE) + 1 (Eq. 8-2)

CELL = (COL x 1000) + ROW (Eq. 8-3)

Where:

COL = modeling domain grid column number

UTMX = UTM easting coordinate (meters)

ROW = modeling domain grid row number

UTMY = UTM northing coordinate (meters)

CELL = modeling domain grid cell number 

Note that PtFinal_ISCST3 assigns the variables that define the grid cell to the inventory

(variables CELL, ROW, COL, described above) as this information may be used for assigning

emission source elevation data. This is discussed in 8.1.5. 

8.1.5 Assigns available emission source elevation data by modeling grid cell

ISCST3 supports both flat and complex terrain modeling.PtFinal_ISCST3 provides two options

for entering source elevations. You can use an ancillary file to provide elevation data by

modeling grid cell or you can enter a single elevation to be used for all sources. If you provide

an ancillary file containing elevation data by modeling grid cell, PtFinal_ISCST3 assigns this

data to the inventory using the COL and ROW variables assigned based on the location of the

emission source (see Section 8.1.4). If you want to use a single elevation for all sources, you

provide this value through the keyword DEFELEV assigned in the batch file (see Table 8-9 in

Section 8.2.5). 

8.1.6 Assigns source identification codes needed for the ISCST3 SO pathway section files

PtFinal_ISCST3 also assigns a source identification code to each emission record for use in the

files for ISCST3. This identification code is created from the source group (variable GROUP,

see Section 8.1.1), the RUN_ID keyword provided in the batch file (see Table 8-10, Section

8.2.5), and a sequential number. This number is determined by arranging the inventory by

pollutant and source group (variables SAROAD and GROUP) and numbering the emission

records sequentially within each source group (remember that separate files are created for each

pollutant). The one character RUN_ID is included in the source identification code to allow the

ISCST3 model to distinguish between emission sources from different runs of EMS-HAP with

different inventories (i.e., the NTI non-point source inventory and the NTI point source

inventory). Without the RUN_ID, the same source identification code would be given to sources
8-9

from different runs of EMS-HAP for different inventories.

8.1.7 Converts temporally allocated emissions from tons/hour to the necessary units for

each source for each of the 288 emission rates

When running for the ISCST3 model, PtTemporal produces emissions in units of tons per hour

for each of the 288 time periods. PtFinal_ISCST3 converts the ISCST3 point source emissions

to grams per second using the following formula:

Egps(i) =Etons/hour(i) x (1 hour / 3600 seconds) x (907,184 grams / ton) (eq. 8-4)

where:

Egps(i) = emissions grams/second for time block i (where i represents one of the 288 time

blocks; e.g. time block i=1 represents the first hour of a winter weekday)

Etons/hour(i) = emissions in tons/hour for time block i

For ISCST3 area sources (ISCTYPE=”iscarea”), the emissions are converted from tons/hours to

grams/sec-m2

, by using Equation 8-4 and then dividing by the area (in square meters) of the

source as follows:

Eg/s-m2(i) =Egps(i) / (axlen x aylen) (eq. 8-5)

where:

Eg/s-m2(i) = emissions flux from the ISCST3 area source in grams/second per square meter

for time block i (where i represents one of the 288 time blocks; e.g. time block

i=1 represents the first hour of a winter weekday)

Egps(i) = emissions in grams/second for time block i

axlen = length of X side of rectangle for ISCST3 area sources (meters)

aylen = length of Y side of rectangle for ISCST3 area sources (meters)

For ISCST3 volume sources (ISCTYPE=”iscvol”), the emissions are converted from tons/hours

to grams/sec, by using Equation 8-4.

8.1.8 Adjusts UTM coordinates of emission sources

The location of the ISCST3 area sources in the inventory is given as the UTM coordinates of the

center of the area. For modeling in ISCST3, the location must be given as the coordinates of the

southwest corner of the area rectangle. PtFinal_ISCST3 changes the UTM coordinates from the

center of the area rectangle to the southwest corner. This conversion is not done for any ISCST3

area source representing onroad segments (variable SRC_TYPE=onroad). For these sources, the
8-10

UTM coordinates in your inventory must represent the southwest corner of the area rectangle due

to the varying angles of rotation about that corner. The original UTM coordinates for the center

of the ISCST3 area sources (not including onroad segments) can be obtained from the

PtFinal_ISCST3 output by adding one-half the value of AXLEN and AYLEN to UTMX and

UTMY, respectively.

Within the ISCST3 model, only six significant digits are used for the UTM coordinates of any

source. If you are modeling a large domain, it is possible that some sources have the UTM

coordinates greater than 1,000,000 meters. To avoid the truncation of such coordinates in the

ISCST3 model, PtFinal_ISCST3 makes all of the coordinates relative to the origin of the

modeling domain. The keywords X_ORIG and Y_ORIG, provided in the batch file (see Table 8-

9 in Section 8.2.5), are used in the following equations to perform this adjustment.

Adjusted UTMX = UTMX - X_ORIG (Eq. 8-7)

Adjusted UTMY = UTMY - Y_ORIG (Eq. 8-8)

Where:

UTMX = UTM easting coordinate (meters)

X_ORIG = UTM easting coordinate of grid origin

UTMY = UTM northing coordinate (meters)

X_ORIG = UTM northing coordinate of grid origin

PtFinal_ISCST3 output retains the original UTM coordinates in the output SAS® inventory file

described in 8.3.3, however the ISCST3 area source coordinates (other than those for onroad

mobile road segments) have been shifted to their southwest corners.

8.1.9 Creates SO pathway section of the ISCST3 run stream and include files

ISCST3 is run using a "run stream" file that provides the model with information about the

emission sources to be used, meteorological data, receptors, etc. PtFinal_ISCST3 produces text

files that contain the emission source portion of the ISCST3 run stream, called the SO pathway. 

The SO pathway text files produced by PtFinal_ISCST3 are formatted for direct use in an

ISCST3 run stream. 

The ISCST3 model processes only one pollutant during a run; therefore, PtFinal_ISCST3 creates

the SO pathway text files for each pollutant, as identified by SAROAD variable. The names of

these files are a concatenation of the OUTNAME keyword specified in the batch file, the

RUN_ID (see Section 8.1.6), SAROAD, and an extension of “.inp.” 

In order to reduce the size of the SO pathway section of the run stream text files, PtFinal_ISCST3

uses the “include file” feature of ISCST3 run streams. Depending on functions you have

specified in the batch file (see Section 8.2.5), PtFinal_ISCST3 creates the necessary include files. 
8-11

The include files created are referenced in the SO pathway section of the run stream text files. 

Table 8-5 shows a list of the include files and when they are created, and Table 8-6 shows how

PtFinal_ISCST3 names these include files.

Table 8-5. ISCST3 SO Pathway Run Stream Include Files

Include File Contents When File is Created

emission

factors 

288 temporally allocated emission rates

(inventory variables TEMIS1-TEMIS288)

For each SAROAD in

inventory

emission

source data 

Each file contains source location coordinates,

stack parameters for point sources, release

parameters for area and volume sources, and

emission rate [set to 1] for each source

For each SAROAD in

inventory; one created for each

combination of ISCST3 source

type (ISCST3 point, ISCST3

volume, or ISCST3 area) and

source group (up to 100 source

groups can be specified) found

in inventory

particle size

distribution

data

Particle diameter, mass fraction, and particle

density and, if provided, liquid and ice

scavenging coefficients (see Section 8.1.3)

Only if particle size

distribution data is provided

gas deposition

parameters

Molecular diffusivity, solubility enhancement

factor, reactivity parameter, mesophyll resistence

term, and Henry's Law coefficient (see Section

8.1.3)

Only if gas deposition data is

provided

building

dimension data 

Building height and width (inventory variables

BLDH, BLDW)

Only if keyword USEBLDG is

set to ‘YES’ in batch file (see

Table 8-9, Section 8.2.5)
8-12

Table 8-6. ISCST3 SO Pathway Include File Names

Type of Include File File Name (located in OUTFILES directory)

Hourly emission factors “hrlyemis_” + RUN_ID + “.” + SAROAD

Emission source data for point sources “pnt” + GROUP + RUN_ID + “.” + SAROAD

Emission source data for ISCST3 area

sources

“area” + GROUP + RUN_ID + “.” + SAROAD

Emission source data for ISCST3

volume sources

“vol” + GROUP + RUN_ID + “.” + SAROAD

Particle size distribution

data/scavenging coefficients

“particle_” + RUN_ID + “.” + SAROAD

Gas deposition parameters “gasdepo_” + RUN_ID + “.” + SAROAD

Building dimension parameters “bldgdim_” + RUN_ID + “.” + SAROAD

In addition to the SO pathway (section of the ISCST3 run stream) files and include files,

PtFinal_ISCST3 automatically creates an output SAS® inventory file, named by keyword

OUTSAS. With the exception of the (not onroad mobile segment) ISCST3 area source

coordinates being shifted to their southwest corners and the conversion of the units of the

emissions (Section 8.1.7), this file contains the same data as in the input SAS® inventory file and

additional data that depends on how you set the keywords in the batch file (see Table 8-9, Section

8.2.5). Table 8-11 lists the variables that can be added to the output point source inventory. 

8.2 How do I run PtFinal_ISCST3?

8.2.1 Prepare your point source inventory for input into PtFinal_ISCST3

The point source inventory you use for input into PtFinal_ISCST3 can be the output from either

PtTemporal (see Chapter 5) or PtGrowCntl (see Chapter 6). The inventory produced by either of

these programs will meet all requirements and will contain the variables listed in Table 8-7 with

some exceptions. If the output from PtTemporal is used, the file will not include the growth and

control variables created in PtGrowCntl. Only if you have included ISCST3 area and/or volume

sources will the inventory contain the release parameter variables required for these sources (see

Section 3.2.1 for a description of these source types). The inventory may contain additional

variables such as the diagnostic flag variables LLPROB or FIPFLAG created by PtDataProc

depending on the options you chose for the windowing function and the contents of the varlist

file used in PtDataProc.
8-13

Table 8-7. Variables in the PtFinal_ISCST3 Input Point Source Inventory SAS® File

Variable

Name

Data Description

(Required units or values are in parentheses)

Type*

AANGLEa Orientation angle of rectangle for ISCST3 area source (degrees from North) N

ADDNEFFc Reduction (%) for new sources to be applied in addition to primary reductions; assigned in

PtGrowCntl (see Section 6.1.4)

N

ADDXEFFc Reduction (%) for existing sources to be applied in addition to primary reductions; assigned

in PtGrowCntl (see Section 6.1.4)

N

ADD_RATEc Percentage of emissions attributable to new sources for the purpose of applying additional

reductions; assigned in PtGrowCntl (see Section 6.1.4)

N

AINPLUMa Initial vertical dimension of ISCST3 area source plume (meters) N

ARELHGTa Release height of ISCST3 area source (meters) N

AXLENa Length of X side of ISCST3 area source (meters) N

AYLENa Length of Y side of ISCST3 area source (meters) N

BLDH Building height (meters); missing values defaulted in PtModelProc (see Section 4.1.3) N

BLDW Building width (meters);missing values defaulted in PtModelProc; (see Section 4.1.3) N

CNTL_EFF Baseline reduction efficiency, expressed as a percentage N

CNTLCODEc Control code indicating the reductions applied to emissions; assigned in PtGrowCntl A100

EMIS Baseline pollutant emissions value (tons/year) N

EMRELPID Code identifying a unique emission point within a site A50

EMRELPTY Physical configuration code of release point

(01=fugitive; 02=vertical stack; 03=horizontal stack, 04=goose neck, 05=vertical with

rain cap, 06=downward-facing vent, AP=aircraft)

A4

EXISTEFFc Primary percent reduction for existing sources; assigned in PtGrowCntl (see Section

6.1.4)

N

FIPS 5-digit FIPS code (state and county combined) A5

GFc Growth factor; assigned in PtGrowCntl (see Section 6.1.1) N

ISCTYPE a, b ISCST3 source type (iscvolume or iscarea) A9

MACTCODE MACT code A7

NEW_EFFc Primary percent reduction for new sources; assigned in PtGrowCntl (see Section 6.1.4) N

NEW_RATEc Percentage of emissions attributable to new sources for the purpose of applying primary

reductions; assigned in PtGrowCntl (see Section 6.1.4)

N
Table 8-7. Variables in the PtFinal_ISCST3 Input Point Source Inventory SAS® File

(continued)

Variable

Name

Data Description

(Required units or values are in parentheses)

Type*

8-14

NTI_HAP Code identifying HAP on the Clean Air Act HAP list; assigned in PtModelProc (see

Section 4.1.1)

A3

REACT Pollutant reactivity class (1-9); assigned in PtModelProc (see Section 4.1.1) N

REPLACEc User-defined control flag (R=replace MACT-based reductions with user-defined reductions;

A=apply user-defined reductions in addition to the primary MACT-based reductions); 

assigned in PtGrowCntl (see Section 6.1.3)

A1

SAROAD Unique pollutant-group code; assigned in PtModelProc (see Section 4.1.1) A10

SAROADDC Descriptive name for the SAROAD; assigned in PtModelProc (see Section 4.1.1) A50

SCC EPA source category code identifying the process A10

SCC_AMS SCC or AMS code from the temporal allocation factor file identifying the temporal profile

used; assigned in PtTemporal

A10

SETSICc SIC assigned by cross-reference to SCC for use in assigning growth factors; assigned in

PtGrowCntl (see Section 6.1.1)

A4

SIC Standard Industrial Classification (SIC) code for the site A4

SIGMAXb Initial lateral dimension of volume source (meters) N

SIGMAZb Initial vertical dimension of volume source (meters) N

SITE_ID Code identifying a unique site A20

SRC_TYPE Description of the emission source at the site (‘nonroad’ for aircraft emissions) If you

choose to define source groups by this variable as explained in 8.1.1, or run PtGrowCntl

(Chapter 6) then it must have the value of ‘major’, ‘area’, or ‘onroad’ for non aircraft

emissions.

A15

STACKDIA Diameter of stack (meters) N

STACKHT Height of stack (meters) N

STACKVEL Velocity of exhaust gas stream (meters per second) N

STKTEMP Temperature of exhaust gas stream (Kelvin) N

TEMIS1-

TEMIS288

Temporally allocated emissions for each hour of each of three day types and four seasons

(tons/hour); calculated in PtTemporal

N

UTMX UTM easting coordinate (meters) N

UTMY UTM northing coordinate (meters) N

VOLHGTb Release height above ground for volume source (meters) N

*Ax = character string of length x, I = integer, N = numeric

a

 variables required for processing ISCST3 area sources; b variables required for processing ISCST3 volume sources; c

 variables present only if you run the optional Growth and Control Program (Chapter 6)
8-15

8.2.2 Determine whether you need to modify the ancillary input files for PtFinal_ISCST3

An ancillary file is any data file you input to the program other than your emission inventory. 

Table 8-8 lists the ancillary input files you can choose to use in PtFinal_ISCST3 and when you

may need to modify them.

Table 8-8. Required Ancillary Input Files for PtFinal_ISCST3

Name of File

Provided with

EMS-HAP

Purpose Need to Modify? Format

mact_grp.txt Provides the assignment of source

groups by MACT code

If you want to make source

group assignments by

MACT code

Text

scc6_grp.txt Provides the assignment of source

groups by 6-digit SCC and a rank code

used to determine if the source group

can be replaced by a SIC-based source

group

If you want to make source

group assignments by SCC

code

Text

sic_grp.txt Provides the assignment of source

groups by SIC and a rank code used to

determine if the source group can

replace a SCC-based source group

If you want to make source

group assignments by SIC

code

Text

defpart.txt Provides the default particle size

distribution data by pollutant

If you want to add new

pollutants or replace

parameter values with new

values

Text

sccpart.txt Provides the particle size distribution

data by source group

If you want to add new

SCCs or replace parameter

values with new values

Text

defgas.txt Provides the default gas deposition

parameters by pollutant

If you want to add new

pollutants or replace

parameter values with new

values

Text

hstn-elev.dat Provides terrain elevations (in meters)

by modeling domain grid cell

If you want to use elevation

data for your domain and

grid

Text
8-16

8.2.3 Modify the source group assignment files (mact_grp.txt, scc6_grp.txt, and

sic_grp.txt)

The ISCST3 model can present output concentrations that are grouped by specific source types or

it can present output concentrations for all sources. The source group assignments you make in

PtFinal_ISCST3 will determine how ISCST3 will group the concentration estimates. You can

control this assignment based on the source type using the SRC_TYPE variable (as was

discussed in Section 8.1.1) and/or by using any one of the three source group assignment files. 

The specific formats for these files are presented in Figures 25 through 27 of Appendix A. The

mact_grp.txt is a simple text file that has a MACT code followed by a source group code (a

number between 0 and 99, inclusive). To modify it, put the same group code next to each

MACT code that you want in the same group. If you choose to use this file in combination with

either of the other two files, it is important to remember that a MACT code-based assignment

will automatically replace a source type-based assignment and will automatically be replaced by

either an SCC-based or SIC-based assignment.

If you want to use both SCC-based assignments and SIC-based assignments, you can control

whether or not the SIC-based assignment replaces the SCC-based assignment by setting the rank

field in each file. These files contain the SCC or SIC code followed by the source group,

followed by the rank. If an inventory record contains both SCC and SIC codes, the SCC

assignment is made first. If an assignment can also be made by SIC, the SIC-based assignment

will only replace the SCC-based assignment if the SIC rank is lower than the SCC rank (e.g. an

SIC rank of 1 and a SCC rank of 3 will result in the SCC-based assignment to be replaced by the

SIC-based assignment of the source group).

8.2.4. Develop the particle size distribution, gas deposition, and terrain elevation files

(defpart.txt, sccpart.txt, defgas.txt, and hstn-elev.txt)

The particle size distribution, gas deposition, and terrain elevation files (defpart.txt, sccpart.txt,

defgas.txt, and hstn-elev.txt) that are currently being provided as part of EMS-HAP are those

used for a specific application as discussed in Appendix E. Depending on the pollutants you

choose to run and your domain, you will likely need to develop your own files. Unless you are

modeling the same Houston domain, the hstn-elev.txt file is strictly presented for illustrative

purposes. Sections 8.1.3 and 8.1.4 discuss how PtFinal_ISCST3 uses these files. These files,

with the exception of sccpart.txt, are also used in the program AMFinalFormat (see Chapter 12).

The defpart.txt file contains information about particle size distributions that are applied to

specific pollutants identified by the SAROAD code. You can include up to 10 particle size

classes. You must specify the number of size classes in the file. You can also include liquid and

ice scavenging coefficients for each size class, but this is optional. The format for the particle

size distribution by SAROAD file is provided in Figure 29 of Appendix A, and Section E.7

(Appendix E) discusses how we developed it.

The sccpart.txt file contains information about particle size distributions that are applied to
8-17

specific pollutants based on the SCC of the emission source. The format of this file is provided

in Figure 30 of Appendix A.

The defgas.txt file contains gas deposition parameters that are assigned to the inventory by the

SAROAD code. The format for this file is provided in Figure 31 of Appendix A, and Section

E.7 (Appendix E) discusses how we developed it.

The hstn-elev.txt file contains terrain elevation data by grid cell. This information is specific for

your modeling domain. You would need to develop a new file when your modeling domain

changes. The format for this file is provided in Figure 32 of Appendix A, and Section E.8

(Appendix E) discusses how we developed it.

8.2.5 Prepare your batch file

The batch file serves two purposes: (1) allows you to pass “keywords” such as file names and

locations, program options and run identifiers to the program, and (2) sets up the execute

statement for the program. A sample batch file for PtFinal_ISCST3 is shown in Figure 12 of

Appendix B. The best way to prepare your batch file is to the sample we provide and modify it

to fit your needs.

Specify your keywords

Table 8-9 shows you how to specify keywords to select PtFinal_ISCST3 functions.
8-18

Table 8-9. Keywords for Selecting PtFinal_ISCST3 Functions

PtFinal_ISCST3 Functions Keyword (values provided cause function to be

performed)

Process data for ISCST3 model MODEL = ISC

Assign source groups

by source type DOSOURCE = 1

by MACT code DOMACT = 1

by SCC DOSCC = 1

by SIC DOSIC = 1

Use particle size distribution data provided

by SAROAD without scavenging data DEFPART = Prefix of data file

SCCPART = NONE 

SCAVENG = 0

PARTMETH = 2 

by SAROAD with scavenging data DEFPART = Prefix of data file

SCCPART = NONE

SCAVENG = 1

PARTMETH = 2 

by SCC without scavenging data DEFPART = NONE

SCCPART = Prefix of data file

SCAVENG = 0

PARTMETH = 1 

by SCC with scavenging data DEFPART = NONE

SCCPART = Prefix of data file

SCAVENG = 1

PARTMETH = 1 

Use gas deposition parameters provided

without scavenging data DEFGAS = Prefix of data file; SCAVENG = 0

with scavenging data DEFGAS = Prefix of data file; SCAVENG = 1

Use elevation data provided ELEVDAT = Prefix of data file

Create gas deposition include file GASDEPO = YES

Create building dimensions include file USEBLDG = YES

Note that because the keyword SCAVENG applies to both gaseous and particulate pollutants,

you do not have the option to use scavenging data for one of these pollutants without the other.

Table 8-10 describes all of the keywords required in the batch file. In addition to supplying all

input and output file names and directories and program options, you must also supply additional

input data (see “Additional Input Data” section in Table 8-10).
8-19

Table 8-10. Keywords in the PtFinal_ISCST3 Batch File

Keyword Description of Value

Input Inventory Files

IN_DATA Input SAS® file directory

INSAS Input inventory SAS® file name, prefix of file name only

Ancillary Files (Prefix of file name provided with EMS-HAP in parentheses)

REFFILES Ancillary file directory

MACTGRP MACT code to source group correspondence text file, prefix only (mact_grp)

SCCGRP SCC code to source group correspondence text file, prefix only (scc6_grp)

SICGRP SIC code to source group correspondence text file, prefix only (sic_grp)

DEFPART Default pollutant-level particle distribution text file, prefix only (defpart)

put ‘NONE’ if no file is to be used

SCCPART SCC-level particle distribution text file, prefix only (sccpart) 

put ‘NONE’ if no file is to be used

DEFGAS Default pollutant-level gas deposition data text file, prefix only (defgas)

 put ‘NONE’ if no file is to be used

ELEVDAT Gridded terrain elevation data text file, prefix only (hstn-elev)

 put ‘NONE’ if no file is to be used 

Program Options

MODEL ISC=process data for the ISCST3 model

RUN_ID Run identification code used to insure unique ISCST3 source ID’s; typically used to

distinguish between point, non-point, and mobile inventory runs (one character limit)

DOSOURCE 1= assign source group by source type; 0=don’t assign by source type

DOMACT 1=assign source group by MACT category code; 0=don’t assign by MACT

DOSCC 1=assign source group by SCC code; 0=don’t assign by SCC

DOSIC 1=assign source group by SIC code; 0=don’t assign by SIC

GASDEPO YES=create gas deposition include files; NO=do not write gas deposition include files

SCAVENG 1=scavenging coefficients are included in the DEFPART or DEFGAS files; 

0=scavenging coefficients are not included in the DEFPART or DEFGAS files

USEBLDG YES=write building dimension include files; NO=do not write building dimension include

files

PARTMETH 0=do not create particle distribution include files;

1=create particle distribution include files by SCC;

2=create particle distribution include files by pollutant

Additional Input Data

DFLTGRP Default source group

DEFELEV Default elevation value used for all sources (meters); only used if ELEVDAT file prefix is

‘NONE’

X_ORIG UTM easting coordinate of the modeling grid origin (meters)

Y_ORIG UTM northing coordinate of the modeling grid origin (meters)

CELLSIZE Width of each grid cell (meters)
Table 8-10. Keywords in the PtFinal_ISCST3 Batch File

(continued)

Keyword Description of Value

8-20

MAXCOL Total number of columns in the modeling grid

MAXROW Total number of rows in the modeling grid

Output files

OUTDATA Output SAS® file directory

OUTSAS Output inventory SAS® file name, prefix only

OUTFILES Output directory of SO pathway file and include files

OUTNAME File identifier included in name of SO pathway file (limited to 10 characters)

You must include all directory names, file names and variable values even if they are related to a

function that you do not select to perform. For example, if you set DEFPART to “NONE", you

still need to assign a value to keyword SCAVENG in your batch file. The value provided in this

circumstance will not be used by the program; it is merely a place holder value for the keyword.

Prepare the execute statement

The last line in the batch file runs the PtFinal_ISCST3 program. In the sample batch file

provided in Figure 12 of Appendix B, you will see a line preceding the run line that creates a

copy of the PtFinal_ISCST3 code with a unique name. It is this version of the program that is

then executed in the last line. If you do this, the log and list files created by this run can be

identified by this unique name. If you don’t do this and run the program under a general name,

every run of PtFinal_ISCST3 will create a log and list file that will replace any existing files of

the same name.

You may find that you need to assign a special area on your hard disk to use as work space when

running PtFinal_ISCST3. In the sample batch file, a work directory is defined on the last line

following the execution of PtFinal_ISCST3. For example, the command 

‘sas PtFinal_ISCST3_062000.sas -work /data/work15/dyl/’ assigns a work directory called

“/data/work15/dyl”. The directory you reference must be created prior to running the program.

8.2.6 Execute PtFinal_ISCST3

There are two ways to execute the batch file. One way is to type ‘source’ and then the batch file

name. Alternatively, first set the permission on the file to ‘execute.’ You do this by using the

UNIX CHMOD command and adding the execute permission to yourself, as the owner of the

file, to anyone in your user group, and/or to anyone on the system. For example,

‘chmod u+x PtFinal_ISCST3.bat’ gives you permission to execute the batch file. Refer to your

UNIX manual for setting other permissions. After you have set the file permission, you can

execute the batch file by typing the file name on the command line, for example,

‘PtFinal_ISCST3.bat’.
8-21

8.3 How Do I Know My Run of PtFinal_ISCST3 Was Successful?

8.3.1 Check your SAS® log file

You need to review the output log file to check for errors or other flags indicating incorrect

processing. This review should include searching the log files for occurrences of the strings

“error”, “warning”, “not found”, and “uninitialized”. These can indicate problems with input

files or other errors.

You can look at the number of records in the input inventory file and compare it to the number of

records in the output SAS® inventory file. The number of records should be the same in these

two files.

8.3.2 Check your SAS® list file

You need to check this list file for records that may not contain source types. Source groups are

also provided for every unique combination of MACT, SCC, and SIC code. PtFinal_ISCST3

also ensures that the ISCTYPE variable is valid (see Table 8-7); records with invalid values are

dropped from the inventory and identified in this file.

8.3.3 Check other output files from PtFinal_ISCST3

To ensure that PtFinal_ISCST3 created the SO pathway sections of the ISCST3 run stream files

and all necessary include files, you need to check the output file directory that you specified in

the batch file using keyword OUTFILES. For each pollutant in the point source inventory,

PtFinal_ISCST3 always creates an SO pathway section of the ISCST3 run stream file, an

emission factors include file, and an emission source data include file for each ISCST3 source

type found in the inventory (ISCST3 point, ISCST3 area, and/or ISCST3 volume). The creation

of other include files containing particle size distribution data, gas deposition parameters, and

building dimension data depends on how you set the keywords in your batch file.

In addition to the SO pathway sections of the ISCST3 run stream files and include files,

PtFinal_ISCST3 automatically creates an output SAS® inventory file, named by keyword

OUTSAS. This file contains the same data as in the input SAS® inventory file, except:

1. 1_In the output file, the ISCST3 area source coordinates (other than those for onroad mobile

road segments) have been shifted to their southwest corners, as was discussed in 8.1.8

2. The temporally allocated emissions values have been converted from tons/hour to the proper

units as was discussed in 8.1.6

3. Additional data may be present depending on how you set the keywords in the batch file (see

Table 8-9, Section 8.2.5). Table 8-11 lists the variables that can be added to the output point

source inventory.
8-22

Table 8-11. Variables Added to Input Inventory in Creating 

the PtFinal_ISCST3 Output Point Source Inventory SAS® File

Variable Name Data Description

(Required units or values are in parentheses)

Type*

ALPHAd Gas deposition parameter: solubility enhancement factor N

CELL Grid cell number (see Section 8.1.4) I

COL Grid cell column number (see Section 8.1.4) I

DIFFd Gas deposition parameter: molecular diffusivity (cm2

/sec) N

GROUP Source group (see Section 8.1.1) A2

HENRYd Gas deposition parameter: Henry’s Law coefficient N

ISCTYPEa ISC source code (iscpoint, iscvolume, or iscarea) A9

LIQSCAVd Gas deposition parameter: liquid scavenging coefficient (1/(sec-mm/hr)) N

NUMCAT Number of particle size classes N

PDEN1-PDEN10b Particle size distribution parameter: density (grams/cm3

) N

PDIA1-PDIA10b Particle size distribution parameter: diameter (microns) N

PFRA1-PFR10b Particle size distribution parameter: mass fraction N

PICE1-PICE10c Particle size distribution parameter: ice scavenging coefficient

(1/(sec-mm/hr))

N

PLIQ1-PLIQ10c Particle size distribution parameter: liquid scavenging coefficient 

(1/(sec-mm/hr))

N

ROW Grid cell row number (see Section 8.1.3) I

RSUBMd Gas deposition parameter: mesophyll resistence term (sec/cm) N

RXd Gas deposition parameter: reactivity parameter N

SELEV Source elevation N

SIGMAXa Initial lateral dimension of volume source (meters) N

SIGMAZa Initial vertical dimension of volume source (meters) N

SRCID Source identification code (see Section 8.1.5) A8

VOLHGTa Release height above ground for volume source (meters) N

*Ax = character string of length x, I = integer, N = numeric

a

 variables added only when no ISCST3 volume sources are included in input inventory

b

 variables added only when particle size distribution data are provided

c

 variables added only when liquid/ice scavenging data are provided

d

 variables added only when gas deposition parameters are provided
9-1

AreaPrep

AMProc

AMFinalFormat

Non-point Source 

Emissions File

ISCST3 SO 

Pathway of Run 

Stream Section 

for Gridded 

ISCST3 Area 

Sources

Flowchart for ISCST3 Processing

ASPEN 

Non-Point 

Source 

Emissions Files

Non-point Source 

Emissions File

AreaPrep

AMProc

Flowchart for ASPEN Processing

CHAPTER 9

Non-Point Source Processing

The Area Source AMProc Preparation Program

(AreaPrep)

The flowcharts below (Figure 9-1) show how AreaPrep fits into EMS-HAP’s non-point source

processing for the ASPEN and ISCST3 models. Note we use the term “non-point inventory” to

describe what was formerly referred to as the area source inventory so as not to conflict with the

regulatory term “area source” which is also used to describe a type of stationary source based on

its size as defined in the Clean Air Act. We are still, however, using the term “area” in the name

of the EMS-HAP programs for processing the non-point inventory. AreaPrep is the first nonpoint source processing program you run in EMS-HAP and the non-point source inventory you

input to AreaPrep is your initial inventory. You use the output inventory from AreaPrep as the

input to AMProc (Chapter 11).

Figure 9-1. Overview of AreaPrep within EMS-HAP for Non-point Source Processing
9-2

Adds variables STCOUNTY and

POLLCODE to inventory

Prints frequencies of pollutants and 

source categories. Prints emissions 

totals by source category, by 

pollutant, and by state.

Prints emission summaries

Merges spatial surrogate codes and 

AMS codes into the emissions file 

using MACT, SIC, SCC, AMS 

precedence. Prints list of spatial 

surrogates which will be needed. 

Checks for source categories with no 

temporal allocation factors 

Reads Keywords

Reads emissions

Batch File Containing Keywords e.g. 

File Names and Locations

Non-point Source Inventory File

Cross Reference /

Spatial Surrogate Files

SIC-to-AMS

SCC-to-AMS

MACT-to-AMS

AMS Surrogates

Temporal Allocation

Factor File

Non-point Emission file

for input to AMProc

9.1 What is the Function of AreaPrep?

The Area Source AMProc Preparation Program (AreaPrep) prepares your non-point source

emission inventory for the Area and Mobile Source Processor (AMProc). AreaPrep performs the

following functions:

C Assigns a spatial surrogate for each non-point source category for subsequent spatial

allocation of county-level emissions

C Assigns a code to each source category for matching to temporal profiles 

C Creates inventory variables required by AMProc

Figure 9-2 shows a flowchart of AreaPrep when processing data for either ASPEN or ISCST3. 

The following sections describe the above bullets.

Figure 9-2. AreaPrep Flowchart for Processing Data for ASPEN or ISCST3
9-3

9.1.1 Assigns a spatial surrogate for each area source category for subsequent spatial

allocation of county-level emissions to census tracts

AreaPrep assigns spatial surrogates to be used for spatial allocation in AMProc. Emission

processors use surrogates for spatial allocation of emissions based on the premise that the

geographic distributions of particular surrogates is similar to the geographic distributions of

emissions from particular source categories. 

Emission processors usually assign spatial surrogates to source categories extracted from the 10-

digit AMS code. Because we designed EMS-HAP based on the 2001 version of the 1996 NTI, it

can assign spatial surrogates to non-point source categories using a variety of codes that may be

in the non-point source inventory. These are: the MACT code, the SIC code, the SCC code or

the AMS code. In addition, shortened AMS codes (4- or 7-digit) and SCC codes (3- or 6-digit)

can be used for general categories of emissions; you may assign surrogates based on these. We

designed EMS-HAP to use these other codes in addition to AMS for two reasons. First, in the

1996 NTI, the 10-digit AMS code is missing for some non-point source categories; in these cases

the categories will have a non-missing MACT, SIC or SCC code. Second, these codes (MACT,

SIC, SCC) tend to be more defined than the AMS code that is in the 1996 NTI, and are therefore

more useful for assigning spatial surrogates. When a specific non-point source category contains

multiple codes, AreaPrep uses the following hierarchy to select the spatial surrogate: MACT

code, SIC code, SCC code, and AMS code. We determined that this hierarchy provided the best

match of non-point source category to available spatial surrogates for the 1996 NTI, because of

the level of detail provided in that inventory by the different classification codes. Generally, we

found that the MACT category code provided the most detail, followed by the SIC, SCC, and

AMS codes. Note that even though AreaPrep was designed based on the 2001 version of the

1996 NTI, it is sufficiently general to assign surrogates for any emission inventory that can be

formatted as shown in Table 9-3. For example, AreaPrep will assign surrogates to your area

source inventory based solely on AMS code, if the data for all of the other codes are missing.

AreaPrep makes surrogate assignments through the use of ancillary files (see Section 9.2.3 for

directions on how you would modify these files). Each record provides the spatial surrogate that

should be used for the applicable code. If AreaPrep can’t assign a spatial surrogate to a source

category (because either the source category has no codes or the codes it has are not contained in

your ancillary files) then AreaPrep prints out a warning in your output SAS® list file and assigns

this category to population (spatial surrogate code 20). 

The actual allocation of the county-level emissions is performed in AMProc (see Section 11.1.2

in Chapter 11). Table 9-1 gives a description of the spatial surrogates in the EMS-HAP ancillary

files for ASPEN processing and their corresponding spatial surrogate code. Information on how

we developed the spatial allocation factors for these surrogates for use with ASPEN is provided

in Appendix D (see Section D.10). Information on how we developed the spatial allocation

factors for these and other surrogates for use with ISCST3 for an urban scale domain is provided

in Appendix E (see Section E.8).
9-4

Table 9-1. Surrogates for Spatially Allocating Emissions for the ASPEN Model

Code Surrogate Definition Origin of data

1 Residential land USGS land use categories: Residential, plus one-third of mixed urban

and built-up land plus one-third of other urban and built-up land 

mid-70's to 80's

2 Commercial land USGS land use categories: Commercial and services, plus one-half of

industrial and commercial complexes, plus one-third of mixed urban and

built-up land plus one-third of other urban and built-up land

mid-70's to 80's

3 Industrial land USGS land use categories: industrial, plus one-half of industrial and

commercial complexes, plus one-third of mixed urban and built-up land,

plus one-third of other urban and built-up land

mid-70's to 80's

4 Utility land USGS land use category: “transportation, communications, and utilities” mid-70's to 80's

6 Sum of commercial land

and industrial land

Sum of commercial land and industrial land, as defined above mid-70's to 80's

7 Farm land USGS land use category: “cropland and pasture” mid-70's to 80's

8 Orchard land USGS land use category: “orchards, groves, vineyards, nurseries, and

ornamental horticultural areas”

mid-70's to 80's

9 Confined feeding USGS land use category "confined feeding" mid-70's to 80's

10 Farm land & confined

feeding

USGS land use categories "cropland and pasture" plus "confined feeding" mid-70's to 80's

12 Rangeland USGS land use categories: “herbaceous rangeland” plus “scrub and

brush” plus “mixed rangeland” 

mid-70's to 80's

13 Forest land USGS land use categories: “deciduous forest” plus “evergreen forest”

plus “mixed forest land” 

mid-70's to 80's

14 Rangeland & forest land Sum of rangeland and forest land, as defined above mid-70's to 80's

15 Water US Census category: water area 1990

17 Mining & quarry land USGS land use category: “strip mines, quarries, and gravel pits” mid-70's to 80's

18 Inverse population

density

Inverse (reciprocal) of: census tract population (see 20) divided by census

tract area. Tracts with zero population assigned spatial factor of zero.

1990

19 Inverse population

density

Inverse (reciprocal) of: census tract population (20 -defined below)

divided by census tract land area. Tracts with zero population assigned

tract population of one.

1990

20 Population U.S. Census category: 1990 residential population 1990

21 Railway miles Total railway miles, as reported in TIGER/Line 1993

22 Roadway miles Total miles of all roadway types in each census tract, as reported in

TIGER/Line 

1993

24 50% Population & 50%

roadway miles

Surrogate based equally on population and on roadway miles 1990-93

25 25% Population & 75%

roadway miles

Surrogate based on population and roadway miles, weighted by 25% and

75% respectively

1990-93

26 Tract area The area of census tracts (includes land and water) 1990

27 Urban – inverse

population density (18)

Rural – farmland

inverse population density (18) for urban counties;

farmland for rural counties

1990, 

mid-70's to 80's

28 Urban – population

Rural – tract area

Population (20) for urban counties, tract area (26) for rural counties 1990

29 Sum of farmland and

orchard land

Sum of farmland and orchard land, as defined above mid-70's to 80's
9-5

9.1.2 Assigns a code to each source category for matching to temporal profiles 

As with spatial surrogate assignments, EMS-HAP uses the various codes (MACT, SIC, SCC and

AMS) that may be present in the inventory to match inventory records with temporal profiles. To

do this, AreaPrep assigns an additional code to each inventory record. We refer to this code in

this documentation as the AMS_SCC code (although AMProc names it the AMS code) because

it can be either a 10-digit AMS code or an 8-digit SCC code. AMProc, the next non-point source

processing program you run, uses this code to match each record to an appropriate temporal

profile. AreaPrep assigns this code the same way it assigns a spatial surrogate (i.e., using the

MACT code, SIC, SCC or AMS in the inventory along with the ancillary files discussed in

Section 9.2.3.) The AMS_SCC can overwrite the AMS code in the inventory. This will happen

if the inventory record has values for both the AMS and another code (MACT, SIC or SCC) due

to the fact that the inventory AMS is at the bottom of the hierarchy for this assignment. If a

record has only a value for the inventory AMS, and no other code, then the assigned AMS_SCC

will equal the inventory AMS. If a particular source category has no codes, or the codes it has

are not contained in your ancillary files, then AreaPrep assigns the AMS_SCC a value of

7777777. AMProc will eventually assign this category a uniform temporal profile.

AreaPrep also reads in the temporal allocation factor (TAF) ancillary input file, and gives you

diagnostic information (see Section 9.3.2) regarding how the profiles in the TAF file match to the

assigned AMS_SCC codes. The TAF file used here is the same as the one used for point source

temporal allocation and is discussed in detail in Chapter 5. If there are source categories with no

temporal allocation factor assignments, AreaPrep provides a warning that these categories will be

assigned a uniform temporal profile. Note that different TAF files are used when processing data

for ASPEN (taff_hourly.txt) and when processing data for ISCST3 (taff_ISCfactors.txt).

9.1.3 Creates inventory variables required by AMProc

AreaPrep creates the 5-character STCOUNTY variable by concatenating the 2-digit STATE and

the 3-digit COUNTY variables. It also creates the POLLCODE variable and sets its value equal

to the CAS variable. The non-point source inventory you input to AMProc (see Table 11-3 in

Section 11.2.1) requires these variables.

9.2 How do I run AreaPrep?

9.2.1 Prepare your area source inventory for input into AreaPrep

Your non-point source inventory must meet the following requirements:

C It must be in SAS® file format. 

C It must contain, at a minimum, the variables listed in Table 9-2, with units and values as

provided. Additional variables will not be retained in the output inventory file.

C All data records should be uniquely identifiable by using the combination of the state
9-6

FIPS code (STATE), county FIPS code (COUNTY), source category name

(CAT_NAME), and pollutant code (CAS).

C It shouldn’t contain Alaska and Hawaii emission records unless you add Alaska and

Hawaii data to the appropriate ancillary files. 

Table 9-2. Variables Required in the AreaPrep Non-point Source Inventory

 SAS® Input File

Variable Name Data Description

(Required units or values are in parentheses)

Type*

AMS AMS code A10

CAS unique pollutant code A10

CAT_NAME non-point source emissions category name A90

COUNTY county 3-digit FIPS code A3

EMIS emissions (tons/year) N

MACT MACT code A4

POL_NAME pollutant name A50

SCC EPA source category code (SCC) identifying the process A8

SIC Standard Industrial Classification (SIC) code A4

STATE state 2-digit FIPS code A2

UNITS emission units (tons/year) A6

*Ax = character string of length x, N = numeric

9.2.2 Determine whether you need to modify the ancillary input files for AreaPrep

An ancillary file is any data file you input to the program other than your emission inventory. 

Table 9-3 lists the ancillary input files for AreaPrep. You may need to modify all of these files to

tailor them to your emission inventory (for example, if your inventory has a value for SIC not

contained in the sic2ams.txt file, or if you choose to use different spatial surrogate assignments

from those we provided), because they were developed based on the 2001 version of the 1996

NTI. How to do this is explained in the next section.
9-7

Table 9-3. Ancillary Input Files for AreaPrep

File Name

Provided with

EMS-HAP

Purpose Need to Modify? Format

surrxref.txt Assigns each AMS code in the

emission inventory to a particular

spatial surrogate category

If you choose to change spatial surrogate

assignments or have AMS codes in your

inventory not included in this file

Text

mact2ams.txt Assigns spatial surrogates and

AMS_SCC codes for temporal

allocation by MACT code

If you choose to change spatial surrogate

or AMS_SCC assignments or have

MACT codes in your inventory not

included in this file

Text

scc2ams.txt Assigns spatial surrogates and

AMS_SCC codes for temporal

allocation by SCC code

If you choose to change spatial surrogate

or AMS_SCC assignments or have SCC

codes in your inventory not included in

this file

Text

sic2ams.txt Assigns spatial surrogates and

AMS_SCC codes for temporal

allocation by SIC code

If you choose to change spatial surrogate

or AMS_SCC assignments or have SIC

codes in your inventory not included in

this file

Text

taff_hourly.txta Provides temporal profiles containing

24 hourly temporal allocation factors

(TAFs) by AMS and/or SCC (i.e.,

AMS_SCC) codes. These will be

applied in AMProc (see Chapter 11)

If you choose to add or change temporal

allocation factors for a particular source

category

Text

taff_ISCfactors.

txtb

Provides temporal profiles containing

seasonal allocation factors, day-type

allocation factors, and hourly allocation

factors by SCC and/or AMS codes (i.e.,

AMS_SCC). These will be applied in

AMProc (see Chapter 11)

If you choose to add or change temporal

allocation factors for a particular source

category

Text

a file used when processing data for ASPEN

b file used when processing data for ISCST3

9.2.3 Modify the files that assign codes and spatial surrogates based on MACT, SIC, SCC,

and AMS codes (scc2ams.txt, sic2ams.txt, surrxref.txt, and mact2ams.txt)

Figures 17, 18, 33, and 34 in Appendix A give the structure and sample file contents of the

following respective spatial surrogate and AMS_SCC assignment files: scc2ams.txt, sic2ams.txt,

surrxref.txt, and mact2ams.txt. You can edit these text files to change the spatial surrogate

assignment or AMS_SCC assignment for a particular non-point source category or add a record

for a source category that is in your inventory, but not represented in these files. Table 9-1 lists

the available spatial surrogates for use with the ASPEN model and their corresponding surrogate

codes. Information on how we developed the spatial allocation factors for these surrogates is
9-8

provided in Appendix D (see Section D.10). Information on how we developed the spatial

allocation factors for these and other surrogates when processing data for ISCST3 for an urban

area is provided in Appendix E (see Section E.8).

When you add or change an AMS_SCC code assignment in mact2ams.txt, sic2ams.txt or

scc2ams.txt files, you should look at the codes (and a description of the codes) in the temporal

allocation factor file (see Figures 16a and 16b of Appendix A). You want to make sure the codes

you change or add to the assignment files are present in the TAF file. Otherwise the AMS_SCC

you add will not match to a temporal profile.

You don’t need to change or add spatial surrogate and AMS_SCC assignments in all three

ancillary assignment files if a source category in your inventory is only represented by one of the

files. For example, if you have a source category in your inventory called “Consumer Products

Usage” and it is represented only by AMS code 2460000000 (i.e., all other codes are blank), you

only need to change the surrxref.txt file. Also, as discussed in Section 9.1.3, AreaPrep uses the

MACT code file first, followed by the SIC, SCC and AMS. So, if your category has all four

codes, modify the mact2ams.txt file first.

9.2.4 Prepare your batch file

The batch file serves two purposes: (1) allows you to pass “keywords” such as file names and

locations, program options, and run identifiers to the program, and (2) sets up the execute

statement for the program. A sample batch file for AreaPrep is shown in Figure 13 of

Appendix B. The best way to prepare your batch file is to use the sample we provide and modify

it to fit your needs. 

Specify your keywords

Table 9-4 lists the keywords required in the batch file. Use keywords to provide a run identifier

and to locate and name all input and output files.
9-9

Table 9-4. Keywords in the AreaPrep Batch File

Keyword Description (prefix of file name provided with EMS-HAP in parentheses)

Input Inventory Files

INPFILES Input emission file directory

AREADATA Input inventory SAS® file name, prefix of file name only

Ancillary Files (Prefix of file name provided with EMS-HAP in parentheses)

REFFILES Ancillary files directory

SIC2AMS Spatial surrogate assignments and codes for matching to temporal profiles by SIC text file,

prefix only (sic2ams)

SCC2AMS Spatial surrogate assignments and codes for matching to temporal profiles by SCC text file,

prefix only (scc2ams)

MACT2AMS Spatial surrogate assignments and codes for matching to temporal profiles by MACT text file, 

prefix only (mact2ams)

SURRXREF Spatial surrogate assignments by AMS text file, prefix only (surrxref)

TAFFILE Temporal profile text file, prefix only (taff_hourly for ASPEN; taff_ISCfactors for ISCST3)

Additional Input Data

RUNID Run identification for titles

Output files

OUTFILES Output files directory

OUTDATA Output inventory SAS® file name

Prepare the execute statement

The last line in the batch file runs the AreaPrep program. In the sample batch file provided in

Figure 13 of Appendix B, you will see a line preceding the run line that creates a copy of the

AreaPrep code having a unique name. It is this version of the program that is then executed in

the last line. If you do this, the log and list files created by this run can be identified by this

unique name. If you don’t do this and run the program under a general name, every run of

AreaPrep will create a log and list file that will replace any existing files of the same name.

You may find that you need to assign a special area on your hard disk to use as work space when

running AreaPrep. In the sample batch file, a work directory is defined on the last line following

the execution of AreaPrep. For example, the command 

 ‘sas AreaPrep_060900.sas -work /data/home/mls/’ assigns a work directory called “/data/home/mls”. 

The directory you reference must be created prior to running the program.

9.2.5 Execute AreaPrep

There are two ways to execute the batch file. One way is to type ‘source’ and then the batch file

name. Alternatively, first set the permission on the file to ‘execute.’ You do this by using the

UNIX CHMOD command and adding the execute permission to yourself, as the owner of the

file, to anyone in your user group, and/or to anyone on the system. For example,
9-10

‘chmod u+x AreaPrep.bat’ gives you permission to execute the batch file. Refer to your UNIX

manual for setting other permissions. After you have set the file permission, you can execute the

batch file by typing the file name on the command line, for example, ‘AreaPrep.bat’.

9.3 How Do I Know My Run of AreaPrep Was Successful?

9.3.1 Check your SAS® log file

You need to review the output log file to check for errors or other flags indicating incorrect

processing. This review should include searching the log files for occurrences of the strings

“error”, “warning”, “not found”, and “uninitialized”. These can indicate problems with input

files or other errors.

9.3.2 Check your SAS® list file

The list file contains the following information:

C Emissions totals and record counts, by pollutant, for the input emission inventory

C List of source category names

C Frequencies of lengths of codes

C The numbers of present and missing AMS, SCC, SIC, and MACT source category

codes and names

C Frequencies of AMS, SCC, SIC, and MACT source category codes and names

C SCC Codes in emissions file not in SCC link file

C Warning message if a problem was encountered when matching source category codes

C Warning message if there were source categories with no spatial surrogate assignments

C List of the spatial surrogates which will be used in AMProc

C Warning message if there were source categories with no temporal allocation factor

assignments, with a note that these categories will be assigned a uniform temporal

profile in AMProc

C Summaries of Emissions With Missing SCC’s

C All AMS, SCC, SIC, and MACT code combinations, with assigned AMS_SCC codes

and spatial surrogates. Five tables: sorted by category name, AMS, SIC, SCC, and

MACT codes

C Contents of the data set written out for subsequent input to AMProc, and the first six

records in the file

C Output non-point source emissions totals for each pollutant

C Output file source category frequencies

C State-level emissions totals and record counts

One of the most important summaries in the list file is the one entitled “All Code Combinations,

With Matched AMS_SCC Code and Spatial Surrogates.” This summary shows the spatial

surrogates and AMS_SCC code assignments. If you want to modify these assignments, you will
9-11

need to change the mact2ams.txt, scc2ams.txt, sic2ams.txt, and surrxref.txt files as discussed

above and rerun AreaPrep.

9.3.3 Check other output files from AreaPrep

You should check for the existence of the output inventory file named by keyword OUTDATA. 

This file (or this file divided up into smaller files, depending on how large it is and how much

memory your computer has) will serve as the input to AMProc.
10-1

MobilePrep

AMProc

AMFinalFormat

Mobile Source 

Emissions File 

(excluding allocated 

aircraft emissions 

data)

ISCST3 SO 

Pathway of Run 

Stream Section 

for Gridded 

Mobile Sources

Flowchart for ISCST3 Processing

ASPEN Mobile 

Source 

Emissions Files

Mobile Source 

Emissions File 

(excluding allocated 

aircraft emissions 

data)

MobilePrep

AMProc

Flowchart for ASPEN Processing

CHAPTER 10

Mobile Source Processing 

The Mobile Source AMProc Preparation Program

(MobilePrep)

The flowcharts below (Figure 10-1) show how MobilePrep fits into EMS-HAP’s mobile source

processing for the ASPEN and ISCST3 models. The mobile source inventory you input to

MobilePrep is the output from AirportProc (Chapter 2) or it is your initial mobile source

inventory. You use the output inventories from MobilePrep as inputs to AMProc (Chapter 11).

.

Figure 10-1. Overview of MobilePrep within EMS-HAP Mobile Source Processing
10-2

Verifies that emissions units are all tons/year

Prints emissions tracking summary

Prints emissions tracking summary

Prints frequencies of pollutants and source 

categories. Prints emissions totals by source 

category, by pollutant, and by state.

Prints emissions summaries

Reads Keywords

Reads emissions

Separates emissions into onroad and nonroad 

components

Batch File Containing 

Keywords e.g. Filenames and Locations

Mobile Source Inventory File

Output Mobile Inventory Files for AMProc

10.1 What is the function of MobilePrep?

The Mobile Source AMProc Preparation Program (MobilePrep) is used to prepare mobile source

emissions for input to the Area and Mobile Source Processor (AMProc). MobilePrep performs

the following functions:

C Splits the mobile source inventory into onroad and nonroad inventories

C Creates inventory variables required by AMProc

Unlike AreaPrep (discussed in Chapter 9), MobilePrep does not assign spatial surrogates or

AMS_SCC codes. AMProc performs these functions for mobile sources. This is because, in the

1996 NTI, the mobile source emission inventory contains only one coding system, the AMS

code. Thus, temporal allocation factors and spatial surrogates are selected using this code alone.

Figure 10-2 shows a flowchart of MobilePrep when processing data for either ASPEN or

ISCST3. The following sections describe the above bullets.

Figure 10-2. MobilePrep Flowchart for Processing Data for ASPEN or ISCST3
10-3

10.1.1 Splits the mobile source inventory into onroad and nonroad inventories

MobilePrep splits the mobile source inventory into onroad and nonroad inventories based on the

inventory AMS code. If the first 3 characters of the AMS code are 220 or 223, then the emission

records are written into the onroad file (last two characters of the file name are ‘on’); records

having all other AMS codes are written to the nonroad emissions file (last two characters are

‘of’).

MobilePrep creates separate onroad and nonroad emission inventories to allow these inventories

to be processed separately in AMProc. You will likely want to process these inventories

separately through AMProc because it is the only way to assign different pollutant characteristics

such as coarse/fine particulate matter splits for onroad and nonroad sources. Many metals, for

example, have different coarse/fine particulate matter splits for onroad and nonroad sources. To

use different splits, you need to specify a different HAP table when you run AMProc. You do

this by running AMProc twice, each time using a different HAP table. The HAP table is one of

the ancillary files for AMProc, and is discussed in greater detail in Chapter 4 (Section 4.2.3),

Chapter 11 (Section 11.1.1), and Appendix D (Sections D.5 and D.6).

10.1.2 Creates inventory variables required by AMProc

MobilePrep creates the 5-character STCOUNTY variable by concatenating the 2-digit STATE

and the 3-digit COUNTY variables It also creates the POLLCODE variable and sets its value

equal to the CAS variable. These variables are required in the inventory you input to AMProc

(see Table 11-4 in Section 11.2.1).

10.2 How do I run MobilePrep?

10.2.1 Prepare your mobile source inventory for input into MobilePrep

Your mobile source inventory must meet the following requirements:

C It must be in SAS® file format. 

C It must contain, at a minimum, the variables listed in Table 10-1, with units and values as

provided. (Additional variables can be present, but will not be present in the output

inventory file.)

C All data records should be uniquely identifiable by using the combination of the state

FIPS code (STATE), county FIPS code (COUNTY), AMS source category code (AMS),

and pollutant code (CAS).

C It shouldn’t contain Alaska and Hawaii emission records unless you add Alaska and

Hawaii data to the appropriate ancillary files.
10-4

Table 10-1. Variables Required in the MobilePrep 

Input Mobile Source Inventory SAS® File

Variable Name Data Description

(Required units or values are in parentheses)

Type*

AMS AMS 10-digit category code A10

CAS unique pollutant code number A10

CAT_NAME mobile source emissions category name A50

COUNTY county 3-digit FIPS code A3

EMIS emissions (tons/year) N

POL_NAME pollutant name A50

STATE state 2-digit FIPS A2

UNITS emission units (tons/year) A12

*Ax = character string of length x, N = numeric

10.2.2 Determine whether you need to modify the ancillary input files for MobilePrep

An ancillary file is any data file you input to the program other than your emission inventory.

There are no ancillary input files for MobilePrep.

10.2.3 Prepare your batch file

The batch file serves two purposes: (1) allows you to pass “keywords” such as file names and

locations, program options, and run identifiers to the program, and (2) sets up the execute

statement for the program. Figure 14 of Appendix B shows a sample batch file for MobilePrep. 

Specify your keywords

Table 10-2 lists the keywords required in the batch file. Use keywords to provide a run identifier

and to locate and name all input and output files.

Table 10-2. Keywords in the MobilePrep Batch File

Keyword Description of Value

Input Inventory Files

INPFILES Input emission file directory

INEMIS Input emissions file name, prefix of file name only

Additional Input Data

TITLE Run identification for titles

WORKDIR Temporary directory for large work file

Output files

OUTFILES Output files directory

OUTEMIS Output file name, prefix of file name only
10-5

Prepare the execute statement

The last line in the batch file runs the MobilePrep program. In the sample batch file provided in

Figure 14 of Appendix B, you will see a line preceding the run line that creates a copy of the

MobilePrep code having a unique name. It is this version of the program that is then executed in

the last line. If you do this, the log and list files created by this run can be identified by this

unique name. If you don’t do this and run the program under a general name, every run of

MobilePrep will create a log and list file that will replace any existing files of the same name.

You may find that you need to define a special area on your hard disk to use as work space when

running MobilePrep. A directory for work space is defined in the batch file by the keyword

WORKDIR. The directory you specify in your batch file must be created prior to running the

program.

10.2.4 Execute MobilePrep

There are two ways to execute the batch file. One way is to type ‘source’ and then the batch file

name. Alternatively, first set the permission on the file to ‘execute.’ You do this by using the

UNIX CHMOD command and adding the execute permission to yourself, as the owner of the

file, to anyone in your user group, and/or to anyone on the system. For example,

‘chmod u+x MobilePrep.bat’ gives you permission to execute the batch file. Refer to your UNIX

manual for setting other permissions. After you have set the file permission, you can execute the

batch file by typing the file name on the command line, for example, ‘MobilePrep.bat’.

10.3 How do I know my run of MobilePrep was successful?

10.3.1 Check your SAS® log file

You need to review the output log file for MobilePrep to check for errors or other flags indicating

incorrect processing. This review should include searching the log files for occurrences of the

strings “error”, “warning”, “not found”, and “uninitialized”. These can indicate problems with

input files or other errors.

10.3.2 Check your SAS® list file

The list file contains the following information:

C The options that you specified

C Contents of input emissions file

C Emissions totals and record counts, by pollutant, for the input emission inventory

C List of source category names

C List of states in the inventory
10-6

C Table of emission units (there should be only tons/year listed)

C Emissions totals for each source category and pollutant for all mobile sources

C Contents of the onroad and nonroad data sets written out for subsequent input to AMProc

C Output emissions totals for each pollutant for all mobile, onroad, and nonroad sources

You should review the list file to verify that the emissions, pollutants, and source categories are

correct. You should also make sure the emission units are ‘tons/year.’ 

10.3.3 Check other output files from MobilePrep

You should check for the existence of the onroad, nonroad and combined nonroad and onroad

output inventory files. MobilePrep names the combined file what you entered as your name for

the keyword “OUTFILE.” It names the onroad and nonroad files with the name you used for

keyword “OUTFILE” concatenated with an ‘on,’ for onroad and an ‘of’ for nonroad. These files

(or these files divided up into smaller files, depending on how large they are and how much

memory your computer has) will serve as the input to AMProc. 
11-1

MobilePrep AreaPrep

AMProc AMProc

AMFinalFormat AMFinalFormat

Mobile Source 

Emissions File 

(excluding allocated 

airport emissions 

data)

Non-point Source 

Emissions File

ISCST3 SO Pathway 

of Run Stream 

Section for Gridded 

Mobile Sources

ISCST3 SO Pathway 

of Run Stream 

Section for Gridded 

Area Sources

Flowcharts for ISCST3 Processing

ASPEN Mobile 

Source Emissions 

Files

ASPEN Non-point 

Source Emissions 

Files

Non-point Source 

Emissions File

Mobile Source 

Emissions File 

(excluding allocated 

airport emissions 

data)

MobilePrep AreaPrep

AMProc AMProc

Flowcharts for ASPEN Processing

CHAPTER 11

Non-point and Mobile Source Processing 

The Area and Mobile Source Processor (AMProc)

The flowcharts below (Figure 11-1) show how AMProc fits into EMS-HAP’s non-point and

mobile source processing for ASPEN and ISCST3. Note we use the term “non-point inventory”

to describe what was formerly referred to as the area source inventory so as not to conflict with

the regulatory term “area source” which is also used to describe a type of stationary source based

on its size as defined in the Clean Air Act. We are still, however, using the term “area” in the

name of the EMS-HAP programs for processing the non-point inventory. You must run AMProc

separately for non-point sources and mobile sources. The non-point inventory you input to

AMProc is the output from AreaPrep (Chapter 9). You will likely need to run AMProc

separately for nonroad and onroad sources, as discussed in Section 11.1.1. The mobile inventory

you input to AMProc is either the nonroad inventory, the onroad inventory, or the combined

nonroad and onroad inventory output from MobilePrep (Chapter 10). This is the last non-point

and mobile source program you run when processing data for the ASPEN model. When

processing data for the ISCST3 model, you use the output from AMProc as the input to

AMFinalFormat (Chapter 12).

Figure 11-1. Overview of AMProc within EMS-HAP 

for Non-point and Mobile Source Processing
11-2

11.1 What is the Function of AMProc?

The Area and Mobile Sources Processor (AMProc) is the core of EMS-HAP’s processing of nonpoint and mobile source emissions that are inventoried and processed at the county-level. It

performs the functions listed below. 

• Selects pollutants, groups and/or partitions pollutants, and assigns their characteristics

• Spatially allocates county-level emissions

• Temporally allocates emissions

• Assigns ASPEN-specific modeling parameters when processing data for ASPEN only

• Assigns source groups and source type

• Projects emissions to a future year

• Converts temporally allocated emissions from tons/year to grams/second for each of the

eight 3-hour periods when processing data for ASPEN only

• Creates ASPEN input files, column formatted text and SAS® files when processing data

for ASPEN only

• Creates SAS® file used as input to AMFinalFormat when processing data for ISCST3

You control whether or not to have AMProc project emissions to a future year in your execution

of the program (see Section 11.2.8 for details on how to do this). You also have the option of

having AMProc only project emissions to a future year. In this case, the input emissions

inventory would be a base year inventory previously processed through AMProc.

Figure 11-2 gives an overview of AMProc when processing data for ASPEN and Figure 11-3

gives an overview of AMProc when processing data for ISCST3. The following sections

describe the above bullets.
11-3

Figure 11-2. AMProc Flowchart when Processing Data for ASPEN

Reads and summarize emissions

Pollutant processing 

(selection, grouping, and 

partitioning)

Assignment of source groups and 

source type

Spatial allocation of county 

emissions to census tracts

Temporal allocation of annual 

emissions to 3-Hour periods

Growth and Control

Produces emissions summaries

Writes ASPEN emissions files

Reads Keywords

OR

Batch File Containing Keywords 

e.g. File Names and Locations, 

Program Options

Emission Inventory File

Emissions Summaries

HAP Table

Source Group File

AMS-to-Spatial Surrogate File, 

Spatial Allocation Factor File

Temporal Allocation Factor File

Growth and Control 

Files

Emissions Summaries

ASPEN Emissions Files

OR

OR
11-4

Figure 11-3. AMProc Flowchart when Processing Data for ISCST3

Reads and summarize emissions

Pollutant processing 

(selection, grouping, and 

partitioning)

Spatial allocation of county 

emissions to grid cells

Temporal allocation of annual 

emissions to 288 hour, day type, 

and season specific emissions

Growth and Control

Prepares emission inventory for writing 

portion of ISCST3 SO pathway section of 

run stream

Reads Keywords

OR

Assignment of source groups and 

source type

Batch File Containing Keywords 

e.g. File Names and Locations, 

Program Options

Emission Inventory File

Emissions Summaries

HAP Table

AMS-to-Spatial Surrogate File, 

Spatial Allocation Factor Files

Temporal Allocation Factor File

Growth and Control Files

Source Group File

AMFinalFormat Emission 

Inventory for input into 

AMFinalFormat

OR

OR
11-5

11.1.1 Selects pollutants, groups and/or partitions pollutants, and assigns their

characteristics 

One of AMProc’s first functions is the selection, partitioning, and grouping of pollutants to be

modeled by either ISCST3 or ASPEN and the assignment of their characteristics. This same

function is performed for point source processing with the PtModelProc program (see Chapter 4). 

As with point source processing, you control these processes through your entries in an ancillary

input file we refer to as the “HAP table” file. Unlike point sources, AMProc uses only one HAP

table. Thus, in order to specify a different HAP table for onroad sources than nonroad sources,

you will need to run AMProc twice, once with the onroad HAP table and onroad emissions, and

once with the nonroad HAP table and nonroad emissions. We run this way to allow EMS-HAP

to use different values for the percentage of the particulate HAPs that would be emitted as coarse

versus fine particulates for onroad versus nonroad sources (see Appendix D, Section D.5.1, and

in particular Table D-6).

AMProc uses the HAP table for non-point and mobile sources in the same way PtModelProc

uses it for point sources (Section 4.1.1 of Chapter 1) with a few minor exceptions (last bullet). It

uses it to:

C Subset the inventory to include only those pollutants you’ve chosen to model

C Group multiple inventory species into a single pollutant category

C Partition inventory species into multiple pollutant categories with different reactivity or

particulate size classes. For example, apportion lead chromate to: 1) lead compounds,

fine particulate; 2) lead compounds, coarse particulate; 3) chromium compounds, fine

particulate and 4) chromium compounds, coarse particulate

C Assign a reactivity class to each gaseous pollutant and a particulate size class to each

particulate pollutant (through the variable REACT). Note that when processing for

ISCST3, AMProc assigns this variable, but it is not used.

C Apply a mass adjustment factor (FACTOR variable) to the emissions of inventory species

to partition it among multiple pollutant groups, account for a particular portion of it (e.g.,

the lead portion of lead sulfate), or adjust its potency to determine a toxics or reactivity

equivalency

C Assign the resulting pollutant or pollutant category to be modeled a unique HAP code

(variable NTI_HAP) used for inventory projections (if you choose this function), and a

unique pollutant code (variable POLLCODE). Note that in the EMS-HAP point source

processing programs, this variable is named the SAROAD code. In contrast to point

source processing, AMProc does not assign the pollutant description to the inventory.

Because this function is the same for point sources as it is for non-point and mobile sources, we

refer you back to Chapter 4 for details about the HAP table. Section 4.2.3 contains instructions

on how to modify it to meet your needs. Appendix A (Tables 1-4) contains printouts of all HAP

tables supplied with EMS-HAP. Appendix D (Sections D.5 and D.6) describes how we

developed these HAP tables.
11-6

11.1.2 Spatially allocates county-level emissions

Emission inventories generally provide non-point and mobile source emissions at the county

level. When processing data for ASPEN, EMS-HAP spatially allocates county-level emissions

to the census tracts within each county. When processing data for ISCST3, EMS-HAP spatially

allocates county-level emissions to the grid cells within the modeling domain. AMProc uses

“spatial allocation factors” to apportion county-level emissions to the appropriate geographical

area. These spatial allocation factors are derived from data on the geographic distribution of

various “spatial surrogates” that are believed to have geographic variations similar to those of

emissions from various source categories. For example, the residential heating source categories

may be allocated using the geographic distribution of population, while autobody refinishing may

be allocated using the geographic distribution of commercial land.

The spatial allocation factors (SAF) are stored in a series of ancillary files. Each SAF file is

specific to a particular surrogate (e.g., population) and a particular model (ASPEN versus

ISCST3). The SAF files for ASPEN supplied with EMS-HAP cover the continental US, PR and

VI. The development of these SAF files are discussed in Appendix D (see Section D.10). The

SAF files for ISCST3 supplied with EMS-HAP cover a 9752 km2

 area encompassing Houston. 

The development of these SAF files is discussed in Appendix E (see Section E.8). You will have

to develop your own SAF files tailored to your modeling domain when processing data for

ISCST3. You will likely need to use a geographic information system (outside of EMS-HAP) to

create the SAF files.

Figure 11-4 presents a flow chart of the spatial allocation process in AMProc. The first step is to

assign the appropriate spatial surrogate to each source category. For non-point sources, this is

done in AreaPrep; the process is explained in detail in Section 9.1.1. For mobile sources,

AMProc assigns the spatial surrogates using the AMS code and the AMS-based surrogate

assignment ancillary file, surrxref.txt (see Section 11.2.5).

In the next step, AMProc uses the spatial surrogate assignments discussed above to link each

county-level emission record to the appropriate SAF file. The spatial allocation factors from this

file are then matched to the appropriate emission record by the state and county FIPS code. 

Emission records not matched to a spatial surrogate are assigned a default surrogate that you

specify in the batch file (see Table 11-8 in Section 11.2.8).

The last step is to apply the spatial allocation factors to the county-level emissions in the

inventory. When processing data for ASPEN, this results in tract-level emissions for each tract

in that county, for each non-point or mobile source category. When processing data for ISCST3,

this results in grid cell emissions, for each grid cell in (fully or partially) that county, for each

non-point or mobile source category. AMProc uses the same equation to compute tract-level or

grid cell emissions for each source category, j, in a county as shown in equation 11-1.
11-7

A M Proc: M A C R O A PPL Y SA F

A pplies spatial allocation factors to em issions, checking that 

all em issions records are m atched and producing sum m ary of 

non-m atched em issions. D rops records w ith zero em issions.

A M Proc: M A C R O M ER G ESA F

M erges spatial surrogate codes into em issions file. M erges 

spatial allocation factors into em issions file.

A reaPrep

M erges spatial surrogate codes into em issions file using 

M A C T , SIC , SC C , A M S precedence. 

M obile Source E m ission Inventory File 

(O utput from M obilePrep) 

O nroad, N onroad, or B oth

A M S Surrogates

Spatial A llocation 

Factor File

Spatially A llocated M obile E m issions

N on-point Source E m issions Inventory 

File

C ross-R eference / 

Spatial Surrogate Files

SIC -to-A M S 

SC C -to-A M S

M A C T -to-A M S

A M S Surrogates

Spatially A llocated N on-point 

Em issions

Spatial A llocation 

Factor File

A M Proc: M A C R O M E R G E SA F

M erges spatial surrogate codes into em issions file. M erges 

spatial allocation factors into em issions file.

A M Proc: M A C R O A PPLY SA F

A pplies spatial allocation factors to em issions; checks that 

all em issions records are m atched; produces sum m ary of 

non-m atched em issions. D rops records w ith zero em issions.

F o r M o b ile

So u rc e s

Fo r N on -p o in t

So urce s

Etract or grid cell, county, j = Ecounty, j x Scounty, tract or grid cell, j (eq. 11-1)

Where:

Etract or grid cell, county,j = census tract or grid cell emissions from source category j in a county

Ecounty, j = emissions from category j in county that contains census tract or grid cell. 

Scounty, tract or grid cell, j = spatial allocation factor for tract or grid cell in county that corresponds to spatial

surrogate assigned to source category j. 

Figure 11-4. The Spatial Allocation Process in AMProc
11-8

When processing data for ISCST3, some grid cells will contain area from more than one county. 

As a result, the emissions for a given grid cell may be split up among two or more counties when

using the equation above. AMFinalFormat, the next program used when processing data for

ISCST3, sums the emissions for each pollutant, source group, and grid cell (see Section 12.1.4).

AMProc describes the gridded or tract-level emissions based on the needs of ISCST3 or ASPEN

by adding the appropriate geographic coordinates to each allocated emission record. The

variable CELL links the county level emissions to census tracts (ASPEN) or grid cells (ISCST3). 

For ASPEN, the CELL variable, a concatenation of the 5-digit state and county FIPS and 6-digit

tract ID (see Tables 11-11 and 11-12), is present in every SAF file. For ISCST3, the components

of the CELL variable (the row and column of the grid cell) are present in every SAF file.

The ISCST3 model requires that each ISCST3 gridded area source be defined, in part, by the

UTM coordinates of the southwest corner of the grid cell. AMProc uses the row and column

numbers of the grid cell from the SAF files to calculate these. The column number begins with

“1" at the southwest corner of the domain, and iterates upwards for each UTM easting kilometer

until the eastern edge of the domain; for example, column 50 would begin 50 UTM easting

kilometers from the western edge of the domain. Similarly, row numbers begin with “1" at the

southwest corner and iterate upwards for each UTM northing kilometer until the northern edge of

the domain. AMProc also creates a CELL variable (6-character) for ISCST3 processing (see

Table 11-12) by concatenating the column and row; leading zeros are added when either the

column or row are less than “100". For example, CELL variable equal to “001034" represents

the first column and thirty fourth row in the domain, or, a grid cell with a southwest corner on the

western edge of the domain and 34 kilometers north of the southern edge of the domain.

AMProc uses the column number to calculate the UTM easting coordinate for the southwest

corner of the grid cell and the row number to calculate the UTM northing coordinate using

Equations 11-2 and 11-3 below. Note that these calculations require information about your

modeling domain. You provide this information by assigning the corresponding keywords in the

batch file (see Table 11-7 in Section 11.2.8).

UTM-Xc,r = Xorigin + (COLUMN - 1) x CELLSIZE (eq. 11-2)

UTM-Yc,r = Yorigin + (ROW - 1) x CELLSIZE (eq. 11-3)

Where:

UTM-Xc,r = UTM easting coordinate of southwest corner of grid cell with column c and row r

Xorigin = UTM easting coordinate (in meters) of southwest corner of modeling domain grid

COLUMN = Column number of grid cell

UTM-Yc,r = UTM northing coordinate of southwest corner of grid cell with column c and row r

Yorigin = UTM northing coordinate (in meters) of southwest corner of modeling domain grid

ROW = Row number of grid cell

CELLSIZE = Width of grid cell (in meters)
11-9

When processing emissions for ASPEN, the tract-level emissions are associated with the latitude

and longitude of the census tract centroid. AMProc reads these coordinates from the SAF file,

and assigns them to the tract-level emissions during the allocation step.

11.1.3 Temporally allocates emissions

AMProc temporally allocates annual non-point and mobile source emissions similarly to the

methodology PtTemporal (see Chapter 5) uses for point sources. When processing data for the

ASPEN model, AMProc produces eight emission rate estimates for each spatially allocated

source in the non-point or mobile source inventory. When processing data for the ISCST3

model, AMProc produces 288 emission rate estimates (24 hours * 4 seasons * 3 day types) for

each spatially allocated source in the non-point or mobile source inventory.

Just as PtTemporal (Chapter 5) does for point sources, AMProc produces the emission rate

estimates for non-point and mobile source categories using temporal profiles from model-specific

ancillary temporal allocation factor (TAF) files. The same TAF files are used for processing the

non-point, mobile and point source inventories (taff_hourly.txt, for ASPEN and

taff_ISCfactors.txt, for ISCST3).

The one difference between the methodology in AMProc and PtTemporal is the hierarchy of

codes used to assign the TAFs to the emission sources. AMProc uses the AMS code to assign

TAFs. For non-point sources, this code was assigned in AreaPrep (see Section 9.1.2) based on

the following hierarchy: MACT code, SIC code, SCC code and inventory AMS code. For point

sources, PtTemporal assigns TAFs using a different hierarchy: the SCC, SIC and the MACT

code. For mobile sources, AMProc uses the inventory AMS code.

If none of these codes links to a temporal profile, then the emissions are assigned uniform

temporal allocation factors that evenly distribute the emissions over the model appropriate time

periods (eight 3-hour periods for ASPEN and 288 hour-day-season-specific periods for ISCST3). 

AMProc produces a list any categories that do not match to a temporal profile (for information

about the contents of an AMProc run list file, see Section 11.3.2).

Figure 11-5 shows a flow chart of the temporal allocation process in EMS-HAP for non-point

and mobile sources when processing data for ASPEN. Figure 11-6 shows this when processing

data for ISCST3.
11-10

AMProc: MACRO MERGETAF

Merges the temporal allocation factors into the emissions 

file by source category and applies them. Checks that all 

emissions records are matched and produces a summary 

of non-matched emissions.

AMProc: MACRO ASPENTAF

Reads temporal allocation factors (TAFs) and converts 

hourly TAFs to 3-hour TAFs. Normalizes TAFs

Figure 11-6. Non-point and Mobile Source Temporal Emissions Processing 

Flowchart when Processing Data for ISCST3

AMProc: MACRO MERGETAF

Merges the temporal allocation factors into the emissions 

file by source category and applies them. Checks that all 

emissions records are matched and produces a summary 

of non-matched emissions.

AMProc: MACRO ISCTAF

Reads seasonal, daily, and hourly temporal allocation 

factors (TAFs) and computes 288 TAFs specific for each 

hour of each day type of each season. Normalizes TAFs

Spatially Allocated Emissions Inventory File

Temporal Allocation 

Factor File Containing 

Hourly Factors for an 

Average Day

Temporally Allocated Emissions for ASPEN Model

Spatially Allocated Emissions Inventory File

Temporal Allocation 

Factor File Containing 

Season, Daily, and 

Hourly Factors

Temporally Allocated Emissions for ISCST3 Model

Figure 11-5. Non-point and Mobile Source Temporal Emissions Processing 

Flowchart when Processing Data for ASPEN
11-11

11.1.4 Assigns ASPEN-specific modeling parameters when processing data for ASPEN

only

Urban/Rural Dispersion Parameters

The dispersion algorithm in the ASPEN model uses different dispersion parameters and

deposition rates for urban and rural sources to account for the effect of land characteristics (e.g.,

numerous tall buildings) on these mechanisms. Therefore, each tract must be identified as being

either urban or rural. AMProc supplies this information through the assignment of the

urban/rural flag where a value of 1 (one) indicates an urban tract, and a value of 2 indicates a

rural tract. When running the ISCST3 model, the urban/rural designation is made for all of the

sources within a model run by a setting within the control option pathway; therefore, an urban or

rural designation for each source is not assigned within EMS-HAP when processing for ISCST3.

AMProc reads the urban/rural flags at the tract level from the spatial allocation factor (SAF) files

used for ASPEN processing. These files are ancillary input files to the program (see Table 11-6

in Section 11.2.2) and, as discussed in Section 11.1.2, also serve to provide the spatial allocation

factors for allocating county-level emissions to the census tracts. The SAF files supplied with

EMS-HAP for ASPEN modeling use the same urban/rural designations as those used in the

EPA’s Cumulative Exposure Project (CEP).6

 The CEP based the designation on residential

population density data from 1990 (urban if greater than 750 people/km2), except for a few very

small tracts. Note this population-based approach is a surrogate for land characteristics, and has

no relation to the various population-based methods used for designating counties or tracts as

urban/rural used by the census. 

Each SAF file contains the same urban/rural flag designations. To change these designations you

need to change them in all SAF files. The format of the SAF files for ASPEN processing is

provided in Figure 35 of Appendix A.

Vent Type Parameter IVENT

An IVENT value of 0 (zero) represents a stacked vent. The ASPEN model performs plume rise

calculations for these stacks. An IVENT value of 1 (one) represents a non-stacked vent. ASPEN

does not perform plume rise calculations for this case. IVENT is set to 1 (one) for all non-point

and mobile sources because stacks are not being processed. When processing data for the

ISCST3 model, no distinction is made between different vent types through the use of a vent type

variable. By processing non-point and mobile sources as ISCST3 area sources, plume rise

calculations with the ISCST3 model are made using the default ISCST3 area source release

parameters assigned in AMFinalFormat (see Chapter 12).
11-12

11.1.5 Assigns source groups and source type

Source Groups

Both the ASPEN and ISCST3 models can compute concentrations by source groups that can then

be used to analyze the relative impacts of different types of emissions sources. The ASPEN

model can compute concentrations for up to 10 source groups, while ISCST3 can use up to 100

source groups. AMProc can assign source groups based on a particular source category or

combinations of different source categories and/or the designation of the county containing the

emission source as urban or rural. Use of the county-level urban/rural designation allows you to

group non-point or mobile sources located in urban counties differently from sources located in

rural counties. For example, AMProc can assign a unique group to gasoline vehicles in urban

counties, which you can then use to compute concentrations separately for gasoline vehicles in

urban counties with either ASPEN or ISCST3. 

AMProc assigns groups using two ancillary files: (1) a source group assignment file, am_grp.txt

(see Section 11.2.4), which contains your selection of how to assign source categories based on

category name and how to use the urban/rural information, and (2) an ancillary file, pop_flag.txt,

containing urban/rural designations by county. AMProc uses these files to link inventory

records, based on the source category name variable (CAT_NAME) and the county-level urban

rural designation, to a source group (between 0 (zero) and 9 for ASPEN and between 00 and 99

for ISCST3). AMProc names the source group variable “EMISBIN”.

Note that the ability to assign source groups based on urban/rural county designation is not

available for point sources. Because of this, and because stationary sources and aircraft

emissions could be contained in both point and non-point inventories, you would likely only

want to assign groups based on the county-level urban/rural designation for onroad and particular

nonroad mobile sources. Note also that the county-level urban/rural designation is different from

the tract-level urban/rural dispersion parameter used for ASPEN modeling described in Section

11.1.4. The county-level urban/rural designations in the ancillary file popflg96.txt are based on

1996-based designations from EPA's Integrated Urban Air Toxics Strategy.9

 For purposes of

developing the Strategy, a county was considered "urban" if either 1) it includes a metropolitan

statistical area with a population greater than 250,000 or 2) the U.S. Census Bureau

designates more than fifty percent of the population as "urban."

Source Type

AMProc uses the SRC_TYPE variable only for distinguishing between different types of

stationary sources for the purposes of projecting emissions to a future year. If you choose not to

project your emissions, AMProc will still assign the SRC_TYPE variable, but not use it.

If you are projecting emissions to a future year, then you should read on regarding how and why

AMProc assigns the SRC_TYPE variable. 
a “...any stationary source or group of stationary sources located within a contiguous area and under

common control that emits or has the potential to emit considering controls, in the aggregate, 10 tons per year or

more of any hazardous pollutant or 25 tons per year or more of any combination of hazardous air pollutants...” It is

unlikely that major sources will be in the non-point inventory as they are generally inventoried as point sources. 

Nonetheless , it is a possibility, and in fact the July 2001 version of the 1996 NTI contained some landfills

designated as “major” sources.

b

“...any stationary source of hazardous air pollutants that is not a major source... shall not include motor

vehicles or nonroad vehicles subject to regulation under title II...”

c

 stationary sources in the non-point inventory which are not area or major sources, and may be more

appropriately addressed by other programs rather through regulations developed under certain air toxics provisions

(sections 112 or 129) in the Clean Air Act. Examples of other stationary sources include wildfires and prescribed

burning.

11-13

Your non-point inventory can conceivably contain the following types of sources: “major”a

,

“area”b

 and “other”c. AMProc assigns a source type to each emission record using the same

ancillary file as was used for the source group assignments, am_grp.txt. This file contains a

source type for each non-point and mobile source category. AMProc uses the source type

variable to distinguish between major and area stationary sources in your inventory when

assigning emission reduction information for the purpose of projecting emissions to future years. 

It is important to distinguish between these because it allows different emission reduction

information to be assigned. To properly implement emission projections, AMProc requires, in

am_group.txt, a source type of ‘A’ for area sources and ‘M’ for major sources. 

11.1.6 Projects emissions to a future year

AMProc can project the non-point and mobile source emissions inventories to a future year,

reflecting the impacts of growth and emission reduction scenarios. We expect you will use this

primarily for non-point sources, since mobile source projections usually involve running a

mobile source emissions model rather than multiplying base year emissions by a series of factors

(which is basically what this program does). Nonetheless, if you develop a set of growth and

emission reduction factors to use for mobile sources, you can use AMProc to project their

emissions.

You can choose to project your emissions along with the other functions in AMProc, or you can

supply an inventory that is already temporally and spatially allocated (for use with either ASPEN

or ISCST3) and project emissions for that inventory. To grow your emissions to a future year,

AMProc allows you to use growth factors based on the MACT category and/or the SIC code. In

addition, AMProc lets you assign SICs or pseudo SICs based on the category name. Emission

reduction information can be assigned to the emission records by the MACT code, using the

same ancillary files used in point source processing (described in Chapter 6). User-defined

emission reduction information can also be assigned by the non-point and mobile source

category, MACT code, and/or pollutant.
11-14

Temporally and Spatially Allocated Emissions 

(when GCFLAG = 1) OR

Temporally and Spatially Allocated AMProc Output 

(when GCFLAG = 2)

Projected Temporally and Spatially 

Allocated Emissions

AMProc: GROW (continued)

Reads general MACT reduction control 

information file and assign control information 

to emission records by MACT category. Reads 

specific pollutant/process MACT reduction 

control information file and assigns control 

information to emission records by MACT 

category and pollutant only. Reads user-defined 

reduction control information file and assigns 

control information to emission records by 

county, MACT category, source category and/or 

pollutant. Calculates projected emissions from 

temporally allocated baseline emissions.

General MACT Reduction 

Control Information File

Specific Process/Pollutant 

MACT Reduction Control 

Information File

User-defined Reduction 

Control Information File

AMProc: GROW 

Reads MACT category growth factor file. 

Assigns growth factors by MACT nationally, by 

state FIPS, and/or by county FIPS. Merges 

Source Category to SIC and Source Category to 

Category Code cross-reference files with 

emissions and assign missing SICs. Reads SIC 

growth factor file. Assigns growth factors by 

SIC nationally, by state FIPS, and/or by county 

FIPS.

Source Category to SIC 

Cross-Reference File

SIC Growth Factor File

Source Category to 

Category Code and 

Emission Bin File

MACT Category Growth 

Factor File

You control which of the growth and control functions are performed in any given execution of

AMProc through setting keywords in the batch file (see Table 11-7 in Section 11.2.8 for details

on how to do this). The same projection algorithm is used when processing data for ASPEN or

ISCST3. Figure 11-7 shows a flowchart for this algorithm.

Figure 11-7. Non-point and Mobile Source Growth and Control Projection Flowchart
11-15

Projections due to Economic Growth

AMProc assigns growth factors to the emission records based on the MACT category and/or the

first two digits of the SIC code or an SIC-“linked” approach based on the category name. 

Geographic location (county, state or nation) is also used in conjunction with these. SIC-linked

growth factors are obtained from the SIC-based growth factor file by linking source category

names to 2-digit SIC codes or 4-character ‘pseudo-SIC’ codes for those non-point categories

which would not typically have an SIC code. For example, the source category “Consumer

Products Usage,” does not have a MACT category or SIC code associated with it. Therefore, we

created a new ‘pseudo-SIC’ code called “POPN” to cross-reference the Consumer Products. The

ancillary file that links the category names to the 2-digit or 4-digit pseudo-SIC codes is called

area_sic and is discussed in Section 11.2.7.

The growth factor files used in AMProc are the same ones used in the point source processing

(PtGrowCntl). One notable difference related to applying the SIC-based growth factors is that in

point source processing, the pseudo SICs contained in the SIC growth factor files would not be

used for point sources since they can only be assigned based on the source category name

through the area_sic.txt ancillary file.

You control how the growth factors are assigned in AMProc through the keywords in the batch

file (see Table 11-7 in Section 11.2.8 for details on how to do this). If you choose to assign

growth factors by both criteria, AMProc will assign the growth factors by the MACT category

first, and then assign growth factors by the SIC to only records without an assignment (i.e., SICbased growth factors will not replace assigned MACT-based growth factors). AMProc will

assign the 2-digit or 4-digit pseudo SIC codes to those records in the inventory with missing SIC

codes if you set the keyword SICFLAG to 1 in the batch file (see Table 11-7 in Section 11.2.8). 

The assigned SIC code is stored in the new variable SETSIC.

Both the MACT-based and SIC-based growth factors can be applied to specific geographic

regions: nationally, by state, or by county (see Section 6.2.3 for more details). For both the

MACT-based and SIC-based growth factors, AMProc will replace any growth factor assigned

nationally by one assigned by a state FIPS. AMProc will replace any growth factor assigned by

the state FIPS by one assigned by a county FIPS.

MACT-based and SIC-based growth factor files are specific to both the base year and future year. 

Each execution of AMProc creates an inventory file containing emissions projected to that one

future year. AMProc computes grown, temporally allocated emission rates (eight 3-hour average

emission rate when processing data for ASPEN, and 288 hourly specific emission rates when

processing data for ISCST3) for each record by multiplying the base year temporally allocated

emission rates by the assigned growth factor, as follows.

Grown emissions = (Base year baseline emissions) x (Growth factor)
11-16

The same growth factor is applied to all temporally allocated emission rates on each record. 

Note that any record not assigned a growth factor based either on the MACT category, SIC code

or SIC-link will be assigned the default growth factor of one. In these cases, the grown

emissions will be unchanged from the base year emissions. 

Assignment of MACT-based Emission Reduction Controls

AMProc can assign MACT-based emission reduction information based on the inventory MACT

code. AMProc assigns the MACT-based reduction information to the emission records using the

same two ancillary files, MACT_gen.txt and MACT_spec.txt, as are used in PtGrowCntl. The

use of these files and the emission reduction information they contain are described in more

detail in Section 6.1.2. 

Note that because the MACT_spec.txt file is also used to project point source emissions, it may

also include MACT reduction information identified by SCC. AMProc will not use any records

including SCC information in the MACT_spec.txt file for the projection. Therefore, if you want

to assign pollutant-specific information to the entire MACT category, make sure you include a

record in the MACT_spec.txt file in which the SCC fields are blank. 

Assignment of User-Defined Emission Reduction Scenarios

Based on the value of the keyword CNTLFLAG in the batch file (see Table 11-7 in Section

11.2.8), you can assign emission reduction information based on your own reduction strategy

(user-defined information) to the inventory alone (CNTLFLAG=”USER”), or, after the

assignment of MACT-based emission reduction information (CNTLFLAG=”BOTH”). The

assignment of the user-defined reduction information, provided through the ancillary file

area_cntl.txt is made independent from the assignment of the MACT-based information. Only

after the assignment of all emission reduction information (MACT-based and user-defined), does

AMProc determine what reduction efficiencies are used to calculate the projected emissions for

each record. The user-defined reduction information can only be assigned when the user-defined

application control flag is equal to 1 (one).

Similar to the point source processing, the user-defined reduction information file also contains a

replacement flag. This flag is used to determine how the user-defined reduction information will

be used to calculate the projected emissions when MACT-based reduction information has been

assigned to the same emission record. Set this flag to ‘R’ when you want the user-defined

reduction to replace any assigned MACT-base reductions, and set to ‘A’ if you want the userdefined reduction to be used in addition to any MACT-based reductions. This decision is made

after all reduction information assignments are made.
11-17

Through the user-defined reduction information, you can assign emission reduction information

by various combinations of the following types of information:

• process (using non-point and mobile source category, and/or MACT code) 

• pollutant (using the NTI_HAP variable)

• specific county or county types (using the CNTYCODE variable)

The specific combinations of these variables, used by AMProc to match the emission reduction

information to the inventory, are presented in Table 11-1. In cases where an emission inventory

record can be assigned to more than one record in the user-defined reduction information file,

AMProc follows a specific order of precedence as shown in the table. Note that when you

provide reduction information based on the non-point category, AMProc uses, for programming

efficiency, a category code (variable CATCODE) rather than the category name. AMProc

assigns a CATCODE to each unique category name using the ancillary file am_group.txt (which

is also used for assigning source groups and the source type variable as described in Section

11.1.5). You need to assure that the category codes in am_group.txt are unique for each different

source category in the inventory for AMProc’s growth and control module to run successfully

when using user-defined reductions based on source category. You also need to ensure that the

category names in the am_group.txt and user-defined reduction file are identical; AMProc does

not care about the case of each word, but the actual characters must be the same.

Table 11-1. Specification of User-defined Emission Reduction Information 

and Order of Precedence 

Order of Precedence 

Information Used to Specify Reduction Information

Non-point and

Mobile Source

Category

MACT HAP County Code

1 (most specific information , supercedes all others) X X X X

2X XX

3X X X

4X X

5 XX X

6 XX

7X X X

8X X

9X X

10 X

11 X X

12 (Least specific information) X

In order to assign reduction information to specific counties or to groups of county types, you

must assign the CNTYCODE variable to each record in the inventory by the state and county
11-18

FIPS code using the popflg96.txt ancillary file. See Section 6.1.3 (last paragraph) for more

information. 

Calculation of Projected Emissions

AMProc calculates projected emissions similarly to the way PtGrowCntl calculates them for

point sources. Refer to Section 6.1.3 for a description of the primary and secondary reduction

efficiencies. 

Table 11-2 summarizes how the primary and additional reduction variables are assigned in

depending on your choices in the batch file and on the value of the replacement flag in the userdefined reduction file.

Table 11-2. Assignment of Primary and Additional Control Variables

Reduction

Information File

Value of

REPLACE

variable

Source of Control Variables Used to Project Emissions

Primary Control Variables Additional Control Variables

MACT-based only N/A MACT-based all set to zero

User-defined only N/A User-defined all set to zero

Both MACT-based and

User-defined 

R User-defined all set to zero

A MACT-based User-defined

After the primary and additional reduction variables have been assigned for each inventory

record, the projected emissions are calculated as shown in Table 11-3. Note that unlike in point

source processing, there is no baseline control efficiency variable in the non-point or mobile

inventory. Thus the variable CNTL_EFF does not factor into the equations in the Table 11-3.
11-19

Table 11-3. Equations Used to Apply Primary and Additional Emission Reduction

Information

Application of Primary Emission Reduction Information

Projected Emissions from Existing and New Sources

Projected EmissionsE, P = Grown Emissions x (1-NEWRATE/100) x (1 - EXISTEFF/100) (eq. 11-4)

Projected EmissionsN, P = Grown Emissions x (NEWRATE/100) x (1 - NEW_EFF/100) (eq. 11-5)

Total Primary Projected Emissions

Projected EmissionsP = Projected EmissionsE, P + Projected EmissionsN, P (eq. 11-6)

Where:

Projected EmissionsP = projected emissions using primary efficiencies

Projected EmissionsE, P = grown/controlled emissions from existing sources using primary efficiencies

Projected EmissionsN, P = grown/controlled emissions from new sources using primary efficiencies

Grown Emissions = (Base year baseline emissions) x (Growth factor) 

NEWRATE = primary percentage of grown emissions attributed to new sources 

EXISTEFF = primary control efficiency for existing sources

NEW_EFF = primary control efficiency for new sources

Application of Additional Emission Reduction Information

Projected Emissions from Existing and New Sources

Projected EmissionsE, A = Projected EmissionsP x (1-ADDATE/100) x (1 - ADDXEFF/100) (eq. 11-7)

Projected EmissionsN, A = Projected EmissionsP x (ADDRATE/100) x (1 - ADDNEFF/100) (eq. 11-8)

Final Total Projected Emissions

Projected EmissionsF = Projected EmissionsE, A + Projected EmissionsN, A (eq. 11-9)

Where:

Projected EmissionsF = final projected emissions using additional efficiencies

Projected EmissionsE, A = grown/controlled emissions from existing sources using additional efficiencies

Projected EmissionsN, A = grown/controlled emissions from new sources using additional efficiencies

ADDRATE = additional percentage of grown emissions attributed to new sources

ADDXEFF = additional control efficiency for existing sources

ADDNEFF = additional control efficiency for new sources
11-20

11.1.7 Converts temporally allocated emissions from tons/year to grams/second for each

of the eight 3-hour periods when processing data for ASPEN only

AMProc produces emissions for ASPEN in units of tons per year for each of the eight 3-hour

time periods. AMProc converts these emissions to grams per second using the following

formula:

Egps(i) =Etpy(i) x (1 year/365 days) x (1 day/24 hrs) x (1 hr/3600 sec) x (907,184 grams/ton) (eq. 11-10)

where:

Egps(i) = emissions grams/second for time block i (where i represents one of the eight 3-hour time blocks; e.g., 

time block i=1 represents the midnight to 3 a.m. time period)

Etpy(i) = emissions (tons/year) for time block i

Note that AMProc does not convert emission units for non-point or mobile sources for ISCST3

processing; AMFinalFormat performs this function (see 12.1.5).

11.1.8 Creates ASPEN input files, column formatted text and SAS® files when processing

data for ASPEN only

AMProc creates three different types of output files when processing data for ASPEN:

1. The ASPEN input files

2. A column formatted ASCII text file

3. SAS® output files – a core file and an extended file.

ASPEN Input Files

You control whether or not to create the extended SAS® file in your execution of AMProc, based

on the value of the keyword SAVEFILE you specify in your batch file (see Table 11-7 in Section

11.2.8). The ASPEN model requires emission data in the form of one ASCII text file for each of

the nine possible reactivity classes. Each file contains data for all pollutants having the same

reactivity/particulate size class. AMProc creates all nine files in the appropriate format (see

Section 4.0 of the ASPEN User’s Guide1

 for more details on the required format). Each file

consists of a header and body. The elements of the header are:

• A run identifier: You supply this in the batch file (keyword RUNID, see Table 11-7 in

Section 11.2.8)

• Species type: AMProc sets this to 0 for gaseous species, 1 for fine particulates, and 2 for

coarse particulates.

• Wet and dry deposition codes: AMProc sets these to 0 for particulates and 1 for gaseous

species. These values tell ASPEN whether to invoke the deposition algorithm for

particulates (ASPEN does not perform deposition for gases).
11-21

• Decay coefficients associated with the reactivity class: AMProc determines these from

the ancillary file indecay.txt based on the value of the REACT variable (discussed in

detail in Chapter 4, Section 4.2.3). This file contains a set of coefficients for each of the

nine reactivity/particulate size classes.

The file body contains source information such as census tract centroid latitude and longitude,

the source group, and the emissions for each of eight 3-hour periods for each pollutant (of the

appropriate reactivity/particulate size class) emitted from the source.

Using the run identifier keywords in the batch file, AMProc names the ASPEN input files in the

form ‘EMISTYPE.USRLABEL.SUBSETG.dRUNDATE.rREACT.inp.’ An example file name

is ‘MV.Base96.NH.d020499.r9.inp,’ where ‘Base96' is the keyword USRLABEL, ‘MV’ (note

that it would be ‘AR’ for non-point sources) is the keyword EMISTYPE, ‘NH' is the 2-character

postal code keyword (SUBSETG), ‘9' the REACT variable, and ‘020499' is the keyword

RUNDATE. The keyword SUBSETG allows you to process emissions and create ASPEN input

files for an individual state (New Hampshire in the example above); if the keyword SUBSETG is

not assigned a valid state postal code (or if is left blank), AMProc will assign a value of “US” to

SUBSETG, indicating that all emissions will be processed and printed to the ASPEN input files.

Column-Formatted ASCII Files

AMProc creates a single column-formatted ASCII text file containing data written to the ASPEN

input emission files. This file provides easy access to the data for quality assurance purposes. 

The prefix name of this file is based on the keywords EMISTYPE and USRLABEL, specified in

your batch file; the suffix is ‘dat’. Table 11-8 in Section 11.3.3 shows the format of this file.

SAS® output files

There are two SAS®-formatted files written out by AMProc. One is the core output file,

reflecting what is written to the ASPEN emissions files, and the other is the extended output file,

which retains the source category information for each source, and is therefore much larger. You

can specify that AMProc not produce the extended file in your execution of AMProc by setting

the keyword SAVEFILE in your batch file (see Table 11-7 in Section 11.2.8) to 0 (zero). Tables

11-9 and 11-10 in Section 11.3.3 show the formats of the core and extended output files.

The name of the extended output file is the first 7 characters of the value assigned to the

concatenation of the keywords EMISTYPE and USRLABEL with the suffix ‘##,’ where ‘##’ is

an engine-specific suffix. For example, if EMISTYPE is ‘MV’ (mobile), USRLABEL is

‘Bas96,’ then the extended SAS®-formatted output file prefix would be ‘MVBas96.’ The file

name of the core output file is the same as the extended file except that it is preceded by the letter

‘c’ (e.g., ‘cMVBas96').
11-22

11.1.9 Creates SAS® file used as input to AMFinalFormat when processing data for

ISCST3

When processing data for ISCST3, AMProc creates an output SAS® file subsequently used as the

input to AMFinalFormat. See Table 12-6 in Section 12.2.1 for the format of this file.

11.2 How do I run AMProc?

11.2.1 Prepare your non-point and mobile source emission inventory files for input into

AMProc

Non-Point Source Inventory Requirements

The non-point source inventory you use for input into AMProc must be the output inventory

SAS® file from AreaPrep. This file will contain the variables listed in Table 11-4.

Table 11-4. Variables in the AMProc Input Non-point Source Inventory SAS® File

Variables used by AMProc are in bold; other variables listed were either created or used by AreaPrep

Variable Name Data Description

(Required units or values are in parentheses)

Type*

AMS AMS 10-digit category code or SCC 8-digit category code; assigned in

AreaPrep (see Section 8.1.2)

A10

CAS Unique pollutant code A10

CAT_NAME Emissions category name A90

EMIS Emissions (tons/year) N

MACTa MACT code A4

MATCH Information on how AreaPrep assigned spatial surrogates and AMS codes; A4

POL_NAME Pollutant name A50

POLLCODE Pollutant code (same value as CAS); assigned in AreaPrep A10

SCC SCC code A8

SICa SIC code A4

SPATSURR The assigned spatial surrogate from AreaPrep N

STCOUNTY 5-digit FIPS code (state and county combined) A5

*Ax = character string of length x, N = numeric

a

 used only when AMProc’s optional growth and control function is performed
11-23

Onroad and Nonroad Mobile Source Inventory Requirements

The mobile source inventory you use for input into AMProc must be an output inventory SAS®

file from MobilePrep. It can be either the onroad inventory, the nonroad inventory, or the

combined onroad and nonroad inventory. These files will contain the variables listed in

Table 11-5.

Table 11-5. Variables in the AMProc Input Mobile Source Inventory SAS® File

Variables used by AMProc are in bold; Other variables listed were either created or used by MobilePrep

Variable Name Data Description

(Required units or values are in parentheses)

Text*

AMS AMS 10-digit category code or SCC 8-digit category code A10

CAS Unique pollutant code A15

CAT_NAME Emissions category name A50

COUNTY County 3-digit FIPS code A3

EMIS Emissions (tons/year) N

POLLCODE Unique pollutant code (same value as CAS) A15

POL_NAME Pollutant name A50

STATE 2-digit State abbreviation A2

STCOUNTY 5-digit FIPS code (state and county combined) A5

*Ax = character string of length x, N = numeric

Splitting Your Input Emissions Files into Smaller Files

You may need to split the input emission inventory file into smaller files and run each of these

through AMProc separately. Do this after running AreaPrep (for non-point sources) and

MobilePrep (for mobile sources). File splitting will be necessary if you run out of disk space

while running AMProc. You may not need to do this if your inventory contains a limited number

of pollutants and/or source categories. The number of inventory subsets will be determined by

the number of pollutants, source categories and counties that are being processed, and the amount

of available free disk space.

11.2.2 Determine whether you need to modify the ancillary input files for AMProc

An ancillary file is any data file you input to the program other than your emission inventory. 

Table 11-6 lists the ancillary input files needed to run AMProc. In the following sections we

discuss the content of most of these files and when you need to modify them. Appendix A

contains the file formats of these files; see the table of contents in Appendix A for the list of

ancillary files associated with AMProc.
11-24

Table 11-6. Ancillary Files for AMProc

Keyword, File

Description or File

Name

Purpose Need to Modify? Format

indecaya Provides decay coefficients for 6

stability classes for the eight 3-

hour time periods for the 9

reactivity classes for use in the

ASPEN model

No Text

HAP Table Selects pollutants to be modeled,

groups and partitions pollutants,

assigns reactivity and particulate

size classes used for ASPEN only,

adjusts emissions

If you want to change selection or

characteristics of pollutants from

those in files provided with EMSHAP or if your inventory includes

species that aren’t in the HAP tables

we supplied.

Text

SAF#, where # is a

number between 1-29

(inclusive)a

Contains spatial allocation factors

for the spatial surrogates available

in EMS-HAP for use with ASPEN,

also contain urban/rural dispersion

flags for each tract for input into

ASPEN

If you want to use updated spatial

surrogate information or new

surrogates; if you want to change the

tract-level urban/rural dispersion

designations

SAS®

HSAF#, where # is a

number between 1-

highest number for

spatial surrogateb

*

Contains spatial allocation factors

for the spatial surrogates available

in EMS-HAP for ISCST3 for a

specific domain

Develop this file to match your

desired domain. Update when more

recent data or new sources of data

become available

SAS®

taff_hourly.txta Provides temporal profiles

containing 24 hourly temporal

allocation factors (TAFs) by SCC

and/or AMS codes.

If you want to use different source

category specific temporal factors

Text

taff_ISCfactors.txtb Provides temporal profiles

containing seasonal fractions, day

fractions, and 24 hourly temporal

allocation factors (TAFs) by SCC

and/or AMS codes.

If you want to used different source

category specific temporal factors

Text

surrxref.txt Contains AMS to spatial allocation

surrogate cross-references

If you want to use different surrogates

or have additional categories in your

non-point/mobile inventories

Text

am_grp.txt Provides ASPEN source group

assignments by source category

and urban/rural designation. Also

contains a category code for each

source category and the source

type variable to distinguish

between “major” and “area”

sources for projecting emissions.

If you want to make different source

group assignments or have additional

/different categories in your nonpoint/mobile inventories

Text
Table 11-6. Ancillary Files for AMProc

(continued)

Keyword, File

Description or File

Name

Purpose Need to Modify? Format

11-25

popflg96.txt Contains county-level urban/rural

designations; also contains county

code used to apply county-level

emissions reductions specified in

area_cntl.txt

If you want to use different countylevel urban/rural designations; if you

want to group counties different ways

for specifying different emission

reductions at the county level

Text

gfegas_bymactXX_YY

(where XX specifies the

base year and YY

specifies the projection

year)

Provides the assignment of year

specific growth factors by MACT

category and nationally, by state

FIPS, or by county FIPS

When growth factors are needed for a

different projection year or base year

Text

gfegas_bysicXX_YY

(where XX specifies the

base year and YY

specifies the projection

year)

Provides the assignment of year

specific growth factors by SIC

code and nationally, by state FIPS,

or by county FIPS

When growth factors are needed for a

different projection year or base year

Text

area_sic.txt Provides cross-reference between

source categories and SIC or

pseudo SIC codes for purpose of

assigning growth factors by state,

county, and SIC code

When additional or different source

category to SIC cross-references are

needed to assign growth factors

Text

area_cntl.txt Provides emission reduction

strategy information by source

category, MACT category, HAP

identification code and/or county

code (county code is defined in the

popflg96.txt file).

Develop if you want to apply userdefined emission reduction strategiesText

MACT_gen Provides emission reduction

strategy information by MACT

category

Develop by obtaining MACT-based

reduction information

Text

MACT_spec Provides emission reduction

information by MACT category

and HAP identification code

Develop by obtaining MACT-based

reduction information

Text

a file used when processing data for ASPEN

b file used when processing data for ISCST3

* These files are not currently being provided as part of EMS-HAP
11-26

11.2.3 Modify the HAP table input file

We’ve supplied you with four HAP table files.

1. point_area HAP table (haptabl_point_area.txt)

2. onroad mobile HAP table (haptabl_onroad.txt)

3. nonroad mobile HAP table (haptabl_nonroad.txt)

4. precursor HAP table (haptabl_precursor.txt), which applies to precursors from point, nonpoint, onroad and nonroad sources.

Precursors are pollutants that cause HAPs to form secondarily in the atmosphere. They may or

may not be HAPs themselves. More information about processing HAP precursors can be found

in Appendix D, Section D.6.

AMProc uses a single HAP table with each run for processing your inventory. Before you run

AMProc you’ll need to select the appropriate HAP table and modify it to fit your modeling needs

and your inventory. Select the onroad HAP table for onroad HAP emissions, the nonroad HAP

table for nonroad HAP emissions and the point_area HAP table for non-point HAP emissions. 

You can use either onroad or nonroad for diesel particulate matter unless you change the

coarse/fine particulate matter allocation factors from those in the current HAP tables such that

they differ between onroad and nonroad emission types. Select the precursor HAP table if you

are processing non-point or mobile source precursors. See Section 4.2.3 for a detailed

description of the format of the HAP table files and how to modify them.

11.2.4 Modify the files that assign non-point and mobile source categories to source

groups (am_grp.txt and popflag96.txt)

You can modify the emission groups ancillary input file, am_grp.txt, to specify different source

groups for different non-point or mobile source categories or by incorporating differences in

county urban/rural designation. For example, if you want to determine the contribution of onroad

mobile sources in urban areas to your results, then assign a unique source group number

(between zero and 9, inclusive, for ASPEN, or zero 00 and 99, inclusive, for ISCST3) in the

am_grp.txt to every onroad mobile source category in the urban column, and make sure that no

other category (non-point, point, nonroad mobile, rural onroad mobile) uses this number.

If the source categories in your inventory are different from those listed in the am_grp.txt file,

then you also need to assign values to the group and catcode variables, and, an “A” or “M” for

the source type (SRC_TYPE) variable if the source type is area and other (see footnote in 11.1.5

for definition) or major, respectively. The am_grp.txt file does not require a value for the source

type variable, however, values of SRC_TYPE other than “A” or “M” will prevent any available

MACT-based emission reductions from being applied.

The format of am_grp.txt is shown in Figure 37 of Appendix A. The variable CAT_NAME in

this file is used to identify unique source categories. This file must contain one record for each
11-27

category in the emission inventory. For each source category, this file specifies an emissions

group for urban and for rural sources. It also assigns a unique category code for each source

category for use in AMProc’s growth and control module (see Section 11.2.7). The last column

in am_grp.txt is the optional and aforementioned SRC_TYPE variable. The use of the category

code makes the growth and control program run more efficiently.

The format of popflag96.txt is shown in Figure 24 of Appendix A. This file contains a countylevel urban/rural designation for every county in the contiguous United States. These

designations were taken from those developed for the purposes of developing EPA's Integrated

Urban Air Toxics Strategy7

, based on the following: a county was considered "urban" if either

(based on 1996): 1) it includes a metropolitan statistical area with a population greater than

250,000; or 2) the U.S. Census Bureau designates more than fifty percent of the population as

"urban." 

This information is used in conjunction with the group assignments for urban and rural sources

from the am_grp.txt file to assign source groups to each emission record. In addition, the

popflag96.txt file also contains a county code used to assign county-level emission reduction

information (see Section 11.2.7).

11.2.5 Modify the file that assigns spatial surrogates to mobile source categories

(surrxref.txt)

The most important option in spatial allocation is the selection of the appropriate spatial

allocation surrogates. AMProc assigns surrogates to mobile sources using the ancillary input file

surrxref.txt. This file provides a spatial surrogate assignment for each unique AMS code. This

file is also used to assign surrogates for non-point sources (in conjunction with other spatial

surrogate assignment files) in AreaPrep (see Section 9.2.3).

You can assign different surrogates to source categories or add new source categories (by AMS

code) to this file and assign surrogates to those. Table 9-1 in Section 9.1.1 gives a list of the

currently available spatial surrogates for EMS-HAP for ASPEN modeling. The format of this

file is given in Figure 33 of Appendix A.

11.2.6 Modify the temporal allocation factor file (taff_hourly.txt or taff_ISCfactors.txt)

The temporal allocation factor (TAF) file is a common file used for point, non-point and mobile

sources. It provides allocation factors that are applied to emissions sources based on 8-digit

Source Classification Codes (SCC) or 10-digit Area and Mobile System (AMS) codes. The TAF

file used when processing data for ASPEN, taff_hourly.txt, allocates emissions for each source

into average diurnal profiles that are representative of a typical day. Details on the development

of the file taff_hourly.txt are presented in Appendix D, Section D.7, and Figure 16a of

Appendix A contains the file format. The TAF file used when processing data for ISCST3,

taff_ISCfactors.txt, allocates emissions for each source into hourly emissions representing each

of three day types in each of four seasons. Details on the development of the file
11-28

taff_ISCfactors.txt are presented in Appendix E, Section E.6, and Figure 16b of Appendix A

contains the file format. You can change temporal allocation factors for source categories in

these files and you can add profiles for additional source categories. For more information on

modifying these files, see Section 5.2.3.

11.2.7 Modify the growth factors and emission reduction information files

The growth and control algorithm can use the following input files, depending on the type of

reduction scenario you want to apply:

• am_grp.txt file - cross-reference file from category name to category code

• gfegas_bymactXX_YY.txt - MACT-based growth factor file to grow from year

XX to year YY

• gfegas_bysicXX_YY.txt - SIC-based growth factor file to grow from year XX to

year YY

• area_sic.txt - cross-reference file from area or mobile source category to SIC or

pseudo SIC

• popflg96.txt - cross-reference file from county FIP code to county reduction code

• MACT_gen.txt - general MACT emission reduction information file

• MACT_spec.txt - pollutant specific MACT emission reduction information file

• area_cntl.txt - user-defined emission reduction information file

The am_grp.txt file (also discussed in 11.2.4) is used to cross-reference a category name from the

area_sic.txt and area_cntl.txt files, and from your inventory, to a category code. AMProc uses

the category code (rather than the category name) in the growth and control module to allow the

module to run more efficiently. You need to make sure that the category names in the am_grp.txt

file exactly match the names in your emissions inventory and in the area_sic.txt and area_cntl.txt

files.

The MACT-based and SIC-based growth factor files are specific to the emission inventory base

year, and the year of the projection inventory. They are used in both non-point source processing

and point source processing (PtGrowCntl). Possible modification of these files, with the

exception of the pseudo-SIC records contained in the gfegas_bysicXX_YY.txt files, is described

in Section 6.2.3. We created pseudo-SIC codes (e.g. “POPN”) for matching non-point source

categories to growth factors from the EGAS4.0 8

 SCC-based growth factor files. These pseudoSIC codes can’t be used for point sources (which is why we didn’t explain them in Chapter 6). 

You can create additional pseudo-SIC codes and use EGAS or a different source of growth factor

information to supply growth factors which you can then add to the gfegas_bysicXX_YY.txt

files. If you do this, then make sure you modify the area_sic.txt file (discussed below). The file

formats of gfegas_bymactXX_YY.txt and gfegas_bysicXX_YY.txt are provided in Figures 20a

and 20b of Appendix A. 

The area_sic.txt file assigns an SIC code or pseudo SIC code that can be up to 4-digits in length

for each emission source category. The SIC code or pseudo-SIC code is used to match the
11-29

appropriate SIC-based growth factors from the growth factor file gfegas_bysicXX_YY.txt. You

can modify the cross-references in this file or define additional pseudo-SIC codes (as discussed

above). If you define pseudo-SIC codes, make sure you include growth factors for them in

gfegas_bysicXX_YY.txt. The format for the area_sic.txt file is provided in Figure 38 of

Appendix A. 

The general MACT reduction information file (MACT_gen.txt) and the specific MACT

reduction information file (MACT_spec.txt) are used in both non-point source processing and

point source processing (PtGrowCntl). They provide the reduction information needed to

calculate the projected emissions for the specified projection year (see Section 6.1.2). 

Modification of these files is described in Section 6.2.5 and the formats are provided in Figures

22a and 22b of Appendix A.

The user-defined emission reduction information file (area_cntl.txt) is not currently being

provided as part of EMS-HAP. If you want to apply your own emission reductions to the

inventory, you will need to develop this file. This file allows you to define emission reduction

information by any combination of process and pollutant information, specified by the source

category, MACT code, and/or NTI-HAP variable. In addition, you can define any of this

information for specific counties or groups of counties of your own creation (e.g., urban versus

rural counties, counties in a specific metropolitan statistical area, or all counties within a state). 

The format for the user-defined reduction information file is provided in Figure 39 of Appendix

A. Note when specifying reduction information at the county level, the county control codes

used in area_cntrl.txt must match the codes in the popflg96.txt file which define the specific

counties represented by those codes.

In cases where an emission inventory record is affected by more than one record in your userdefined emission reduction file, a specific order of precedence is followed as presented in

Table 11-1 in Section 11.1.6. In general, the more specific information will replace the more

general information.

11.2.8 Prepare your batch file

The batch file serves two purposes: (1) allows you to pass “keywords” such as file names and

locations, program options, and run identifiers to the program, and (2) sets up the execute

statement for the program. Sample batch files for AMProc are shown in Figures 15 and 16 of

Appendix B. The best way to prepare your batch file is to use one of the samples we provide and

modify it to fit your needs.

Specify your keywords

Table 11-7 shows you how to specify keywords to select which functions you want AMProc to

perform. For example, if you want to project your emissions by economic growth based only on

the MACT category, set the GROWFLAG keyword to ‘MACT’.
11-30

Table 11-7. Keywords for Selecting AMProc Functions

AMProc Function Keyword (values provided

cause function to be performed)

Select model for which data is being processed

Process data for ASPEN model MODEL = ASPEN

Save extended SAS® file created when processing data for ASPEN only SAVEFILE = 1

Process data for ISCST3 model MODEL = ISC

Perform growth and control functions

Perform growth and control functions only GCFLAG = 2

Perform growth and control functions with other AMProc functions GCFLAG = 1

Do not perform growth and control functions GCFLAG = 0

Assign and apply growth factors (applies only when GCFLAG is not equal

to ‘0')

Assign growth factors by MACT category only GROWFLAG = MACT

Assign growth factors by SIC only GROWFLAG = SIC

Assign growth factors by both MACT category and SIC GROWFLAG = BOTH

Assign missing SICs (applies only when GROWFLAG = ‘SIC’ or

‘BOTH’)

SICFLAG = 1

Assign and apply reduction information (applies only when GCFLAG is

not equal to ‘0')

Assign MACT-based emission reduction information only CNTLFLAG = MACT

Assign User-defined emission reduction information only CNTLFLAG = USER

Assign both MACT-based and User-defined emission reduction

information

CNTLFLAG = BOTH

Assign general MACT-based information only (applies only when

CNTLFLAG = ‘MACT’ or ‘BOTH’)

SPECMACT = 0

Assign both general and process and/or pollutant specific MACT-based

information (applies only when CNTLFLAG = ‘MACT’ or ‘BOTH’)

SPECMACT = 1

Project Emissions beginning January 1 in the projected year YEARTYPE = CALENDAR

Project Emissions beginning October 1 in the year prior to the projected

year

YEARTYPE = FISCAL

Reassign emission source groups (applies only when GCFLAG is not

equal to ‘0')

REBIN = 1
11-31

Table 11-8 describes all of the keywords required in the batch file. Use them to locate and name

all input and output files and supply run identification information. Further, you can run the

program for a single HAP or state and get diagnostic information on a particular census tract 

when processing for ASPEN or a particular gridcell when processing for ISCST3. Note that the

keywords cannot have blanks in their values, so if you don’t want to run the program for a single

HAP, you still need to provide a value as a place holder. (It doesn’t need to be real value).

Table 11-8. Keywords in the AMProc Batch File

Keyword Description of Value

Run identifiers

RUNIDa Run identification used when processing data for ASPEN (at most 60 characters)

EMISLABL Emissions category description used in titles of tables in list file (up to 60 characters)

RUNDATEa Date, to help identify output files created when processing data for ASPEN (e.g., 011999)

EMISTYPE Emissions file type (AR for non-point, MV for mobile)

USRLABEL User-specified label used as prefix for output files and used in titles of tables in list file

Input Inventory Files

INPEMISS Input emissions files directory

EMISFILE Input county-level emissions SAS® file, prefix of file name only

Ancillary Input files (Prefix of file name provided with EMS-HAP in parentheses)

INPFILES The ancillary files directory

SAFFILE Spatial allocation factor SAS® files, prefixes only (safe# for ASPEN data processing or hsaf for

ISCST3 data processing, where # is a 1 or 2-digit number)

TAFFILE Temporal profile text file , prefix only (taff_hourly for ASPEN data processing and

taff_ISCfactors for ISCST3 data processing)

INDECAYa Reactivity class decay coefficients for 6 stability classes for eight 3-hour time periods , prefix

only (indecay)

HAPTABLE HAP table file, prefix only (haptabl_point_area, haptabl_onroad, haptabl_offroad, or

haptabl_precursor)

SURRXREF Spatial surrogate assignments by AMS text file, prefix only (surrxref)

EMISBINS Emission source groups assignment text file, prefix only (am_grp)

CNTYUR County urban/rural and county control code cross-reference file, prefix only (popflg96)

GFMACT Growth factors to MACT category and state/county FIPS cross-reference text file, prefix only

(gfegas_bymactXX_YY, where XX specifies base year and YY specifies projection year)

GFSIC Growth factors to SIC and state/county FIPS cross-reference text file, prefix only

(gfegas_bysicXX_YY, where XX specifies base year and YY specifies projection year)

SICXREF Source category to SIC or pseudo SIC cross-reference file, prefix only (area_sic)

MACTGEN General MACT-based emission reduction information text file, prefix only (MACT_gen)

SPECFILE Specific MACT-based emission reduction information text file, prefix only (MACT_spec)

USERFILE User-defined emission reduction information text file, prefix only (area_cntl)

Program Options

MODEL ASPEN=process data for ASPEN model; ISC=process data for ISCST3 model

SAVEFILEa 1=save large extended SAS®-formatted file with all emissions information on a source category

level basis for each census tract 0=don’t save this large SAS® file
Table 11-8. Keywords in the AMProc Batch File (continued)

Keyword Description of Value

11-32

GCFLAG 0=do not project emissions to a future year;

1=project emissions to a future year in conjunction with the other AMProc functions;

2=project without processing emission inventory through other AMProc functions

GROWFLAG MACT=project emissions due to economic growth by MACT code and geographic region only;

SIC=project emissions due to economic growth two-digit SIC and geographic region only;

BOTH=project emissions due to economic growth both by MACT code and geographic region

and by two-digit SIC and geographic region;

NONE = does not project emissions due to economic growth

SICFLAG 1=use SCC to SIC cross-reference file to assign SIC where missing in inventory; 0=don’t assign

SIC where missing

CNTLFLAG MACT=project emissions using MACT-based emission reduction information only; 

USER=project emissions using user-defined emission reduction information only; 

BOTH=projects emissions using both MACT-based and user-defined emission reduction

information

NONE=does not project emissions using emissions reductions

SPECMACT 1=Use pollutant specific MACT emission reduction information; 0=don’t use pollutant specific

MACT emission reduction information

YEARTYPE CALENDAR = Project Emissions beginning January 1 in the projected year;

FISCAL = Project Emissions beginning October 1 in the year prior to the projected year

REBIN 1=Reassign emission groups during growth and control processing; 0=don’t reassign them

Additional Input Data

DEFLTSAF Default spatial surrogate number, applied when source category not linked to a spatial surrogate

XORIGb UTM easting coordinate of the modeling grid origin (meters)

YORIGb UTM northing coordinate of the modeling grid origin (meters)

CELLSIZEb

 Width of each grid cell (meters)

GROWYEAR Year to which emissions are to be grown

Subsetting controls

LSUBSETP 1= process only one pollutant; 0=don’t process only one pollutant

SUBSETP The pollutant code to be subset to

LSUBSETG 1= process only one state; 0=don’t process only one state

SUBSETG State 2-character postal code abbreviation of the state to be subset to

Diagnostics flags

LCPTIMES 1=print component CPU times; 0=don’t print component CPU times

LDBG 1=printout of diagnostic information; 0=don’t

ONECELL The selected single census tract (concatenation of STCOUNTY and tract identification code) or

gridcell (concatenation of column and row number) for which diagnostic information is printed

Output files

OUTFILES The output file directory

ISCOUTb Output SAS® emissions file for data processed for ISCST3, prefix only

WORK2 Directory for large temporary work files

a

 required only when processing data for ASPEN model; b required only when processing data for ISCST3 model
11-33

Prepare the execute statement

The last line in the batch file runs the AMProc program. In the sample batch files provided in

Figures 15 and 16 of Appendix B, you will see a line preceding the run line that creates a copy of

the AMProc code having a unique name. It is this version of the program that is then executed in

the last line. If you do this, the log and list files created by this run can be identified by this

unique name. If you don’t do this and run the program under a general name, every run of

AMProc will create a log and list file that will replace any existing files of the same name.

You may find that you need to define a special area on your hard disk to use as work space when

running AMProc. In the sample batch file, a directory for work space is defined by the keyword

WORK2. The directory you reference here must be created prior to running the program.

11.2.9 Execute AMProc

There are two ways to execute the batch file. One way is to type ‘source’ and then the batch file

name. Alternatively, first set the permission on the file to ‘execute.’ You do this by using the

UNIX CHMOD command and adding the execute permission to yourself, as the owner of the

file, to anyone in your user group, and/or to anyone on the system. For example,

‘chmod u+x AMProc.bat’ gives you permission to execute the batch file. Refer to your UNIX

manual for setting other permissions. After you have set the file permission, you can execute the

batch file by typing the file name on the command line, for example, ‘AMProc.bat’.

11.3 How Do I Know My Run of AMProc Was Successful?

11.3.1 Check your SAS® log file

You should review the output log file to check for errors or other flags indicating incorrect

processing. This review should include searching the log files for occurrences of the strings

“error”, “warning”, “not found”, and “uninitialized”. These can indicate problems with input

files or other errors.

The log file contains details on the number of records in the intermediate files created and

modified during processing. You should check this information to make sure it’s reasonable. 

The number of records after conversion from inventory pollutant codes to SAROAD codes can

change for three reasons: 1) some pollutants are dropped here, 2) some pollutants are split into

two pollutants, and 3) after the pollutants have been assigned to SAROAD code groups, the

emissions are summed to the SAROAD level. The number of records should increase after

spatial allocation. The number of records decreases when the emissions file is collapsed to the

source group level. 
11-34

11.3.2 Check your SAS® list file

The list file can contain the following information depending on the program control options you

specified, such as projecting emissions to a future year:

C The options that you specified

C Contents of input emissions file

C Emissions totals and record counts, by pollutant, for the input emission inventory

C Summary of Input Emission Rates by Pollutant

C Summary of Input Emission Rates by State

C HAP table pollutant code list

C Warning message if there are pollutants in emissions file not matched to HAP

table. Lists the pollutant codes in emissions inventory not matched.

C Warning message if records with no reactivity code were encountered when

merging reactivity codes with emissions. Prints the first 10 records and a

summary of emissions by pollutant.

C Pollutant sums by pollutant before and after collapsing to SAROAD codes

C Warning message if there are counties in the emissions file which do not have a

match in the county urban/rural codes file

C Warning message if there are emissions categories not matched to source groups. 

Lists the unmatched categories.

C Table of assignment of spatial surrogates to source categories

C Surrogate-level summary of emissions

C Warning message if records with no matching surrogate code were encountered

when merging spatial surrogate codes with emissions. These are assigned to a

default surrogate you choose in the batch file (keyword DEFLTSAF). Lists the

AMS codes which did not match to spatial surrogates. Prints the first few

non-matched records. Prints summaries of non-matched emissions by pollutant

and by source category.

C Summary of emissions by pollutant after spatial surrogate matching

C Spatial surrogates frequency table

C Warning message if records with no matching spatial factors were encountered

when matching spatial surrogates with emissions. Lists the first few records with

no factors. Summarizes emissions without factors by pollutant, by county, by

source category, and by surrogate.

C Summary of emission rates by pollutant after spatial allocation

C Summary of temporal profiles used

C Summary of emission rates by pollutant after temporal factor merge

C Warning message if records with no matching TAFs were encountered when

merging temporal allocation factors with emissions. Lists the AMS codes which

did not match to temporal factors. Prints the first few non-matched records. 

Prints summaries of non-matched emissions by pollutant and by source category.

C Summary of emission rates by pollutant after collapsing source categories to

source groups
11-35

C Summary of temporally allocated emissions by pollutant

C List of general MACT reduction information

C Warning message if general MACT reduction information not found in inventory

C List of specific MACT reduction information

C Warning message if specific MACT reduction information not found in inventory

C List of user-defined reduction information

C Warning message if user-defined reduction information not found in inventory

C Summary of reduction information applied to emissions

C Run times for processing components

C Pollutant sums by source category group

C Emissions summaries by reactivity class

C Contents of the core SAS® output emission data set

C Contents of the extended SAS® output emission data set

C Table of emissions totals by pollutant, with reactivity class, record counts, and the

average emissions for a tract

C Summary of emissions by state

C Frequencies of emissions sources by reactivity class

C Emissions totals by reactivity class

At succeeding steps in the processing, emissions are summed and printed in the processing

output files. You should review these after completion of program execution, looking for

changes in emissions, which then would need to be explained. These are the processing points

where emissions sums are reported:

C After reading the emissions, before any processing

C Before collapsing from CAS pollutants to SAROAD pollutant groups

C After collapsing from CAS pollutants to SAROAD pollutant groups

C After match/merge of spatial surrogates with emissions

C After spatial allocation of emissions

C After temporal allocation of emissions

C When writing out the ASPEN emissions files

You can inspect the diagnostics (in the list file) that AMProc provides of the temporal allocation

step (non-matched categories to temporal profiles) to see which emissions categories need to be

added to the temporal allocation factor file, and the importance of each in terms of the amount of

emissions in the categories.

Similarly, you can inspect diagnostics of the spatial allocation process. If a source category is

present in the emissions file but absent in the spatial surrogate file, the emission record cannot be

matched and is assigned the default surrogate, population. In this case a warning message is

printed to the AMProc output file along with a summary of how many emission records were not

matched, and a summary by source category of the non-matched emissions. Inspection of this

information allows you to see which emissions categories need to be added to the spatial
11-36

surrogate file, and the importance of each of these in terms of the amount of emissions in the

categories.

The spatial allocation factors are matched to emissions records according to spatial surrogates. If

these do not match properly, AMProc prints a warning message and summaries of the problem.

The most common cause of non-matches is counties or census tracts/grid cells missing from one

or more spatial allocation factor files. Emission records not matched to spatial surrogates are

assigned the user-defined surrogate (keyword DEFLTSAF in the batch file).

The HAP table file is matched to emission records according to the inventory pollutant code. If a

pollutant is present in the emissions file but absent in the HAP table, the emission record cannot

be matched. In this case a warning message is printed to the AMProc output file along with a

summary of how many emission records were not matched, and a summary by pollutant of the

non-matched emissions. Inspection of this information allows you to see which pollutants need

to be added to the HAP table.

The emissions source group assignment file (am_grp.txt) is matched to emission records

according to source category and county urban/rural designation. If a source category is present

in the emissions file but absent in the am_grp.txt file, the emission record cannot be matched. In

this case a warning message is printed to the AMProc list file along with a summary of how

many emission records were not matched, and a summary by source category of the non-matched

emissions. Inspection of this information allows you to see which source categories need to be

added to the source group file.

The county urban/rural designation and county control codes file (popflg96.txt) is matched to

emission records according to FIPS state and county codes. If a county is present in the

emissions file but absent in the county data file, the emission record cannot be matched. In this

case a warning message is printed to the AMProc output file along with a summary of how many

emission records were not matched, and a summary by county of the non-matched emissions. 

Inspection of this information allows you to see which counties need to be added to this ancillary

file.

As each of the three emission reduction information files used to project emissions to a future

year are read, the information is listed in the AMProc output file. After the information is

assigned to the emission records, any emission reduction information not assigned is listed in the

output file. This allows you to see exactly what reduction information is being applied to the

inventory.

After the projected emissions are computed, a summary of the grown emissions (after application

of the growth factor) and the projected emissions (after application of emission reduction

controls) for selected time periods is listed in the AMProc output file. Inspection of this

information allows you to see precisely how the reduction information was assigned and then

applied to the emissions.
11-37

11.3.3 Check other output files

When processing data for ASPEN, you should check for the existence of the ASPEN-input files. 

You should check that all nine files were created and that emission data are included only in

those files representing reactivities classes for which you know your inventory has emission data. 

You may also want to check the header of the files for the decay rate information. Table 11-9

shows how AMProc names these files.

You should also, when processing data for ASPEN, check for the existence of the column

formatted ASCII file and the core SAS® file. Table 11-9 shows how AMProc names these files. 

Tables 11-10 and 11-11 show the format of each of these files. If you chose to create the

extended SAS® file (i.e., the keyword SAVEFILE=1), then you should check for its existence as

well. If you intend to run AMProc again to produce various projected emission inventories, you

must create this extended SAS® file when you process the base year emission inventory. This

extended SAS® file is the input emission inventory for these subsequent runs. Table 11-9 shows

how AMProc names this file and Table 11-12 shows the file format.

If you projected the emissions to a future year, the extended SAS® file will contain the variable

CNTLCODE. This variable contains information about what reduction information (general

MACT, specific MACT, and/or user-defined) was assigned to the emission record and how the

information was combined for the assignment of the primary and additional reduction

efficiencies. Reviewing the CNTLCODE variable can help confirm how your reduction

strategies were used to project the emissions.

When processing data for ISCST3, you should check for the existence of the output inventory

SAS® file which is similar (in that MACT and SIC-level emissions are retained) to the extended

SAS® file created when processing data for ASPEN. You input this file into AMFinalFormat,

the last non-point and mobile source processing program you run that will create a portion of the

SO pathway section of the ISCST3 run stream. If you projected emissions to a future year, you

can review the variable CNTLCODE to help confirm how your reduction strategies were used to

project the emissions. Table 11-9 shows how AMProc names this file.

Table 11-9. AMProc Output File Names

Output File File Name (located in OUTFILES directory)

Model input files a EMISTYPE + “.” + USRLABEL + “.” + SUBSETG + “.D”

+ RUNDATE + “.r” + REACT + “.inp”

ASCII file a EMISTYPE + USRLABEL + “.dat”

Core Inventory SAS® file a “c” + EMISTYPE + USRLABEL

Extended Inventory SAS® file for ASPEN; Output

SAS® file for input to AMFinalFormat for ISCST3

EMISTYPE + USRLABEL

a

 created when processing data for ASPEN model only
11-38

Table 11-10. Format of AMProc ASCII Data File Created 

when Processing Data for ASPEN

(Values in order listed)

Description (Units or values are in parentheses) Type*

5-digit FIPS code; state and county combined A5

Census tract centroid location longitude (negative decimal degrees) 10.5

Census tract centroid location latitude (decimal degrees) 10.5

ASPEN Source type (0=points, 3=pseudo-points) A1

Urban/rural dispersion flag (1 for urban, 2 for rural) 1.0

ASPEN Stack ID (same as State/County FIPS code) A5

constant = 999. 6.0

constant = 999. 6.0

constant = 999. 6.0

constant = 999. 6.0

Unique pollutant group code (SAROAD code) A5

ASPEN source group (integer between 0 and 9, inclusive) A1

Emissions rate (grams/second) for the first 3-hour time period** E10.

Emissions rate, (grams/second) time period 2 ** E10.

Emissions rate, (grams/second) time period 3 ** E10.

Emissions rate, (grams/second) time period 4 ** E10.

Emissions rate, (grams/second) time period 5 ** E10.

Emissions rate, (grams/second) time period 6 ** E10.

Emissions rate, (grams/second) time period 7 ** E10.

Emissions rate, (grams/second) time period 8 ** E10.

Tract ID A6

Vent/stack flag A1

Building wake effects flag A1

Baseline annual emissions rate (tons/year) E12.5

Baseline annual emissions rate (grams/second) E12.5

* Ax = character string of length x, x.y = numeric format with y places right of decimal, Ex. = exponential

** Temporally allocated emission values represent projected emissions when you choose to perform EMS-HAP’s

emission projection capabilities
11-39

Table 11-11. Variables Contained in AMProc Core SAS® Output File Created when

Processing Data for ASPEN

Variable Name Description (Units or values are in parentheses) Type*

CELL State and county FIPS codes concatenated with the 6-digit tract ID A11

EMIS Baseline annual emissions rate (grams/second) N

EMISBIN ASPEN source group (integer between 0 and 9, inclusive) N

EMIS_TPY Baseline annual emissions rate (tons/year) N

IBLDG Building wake effects flag A1

IVENT Vent/stack flag A1

LAT Census tract centroid location latitude (decimal degrees) N

LON Census tract centroid location longitude (negative decimal degrees) N

NOSC Excluded stability classes A6

NOWD Excluded wind directions A6

NOWS Excluded wind speeds A6

POLLCODE Unique pollutant-group code (SAROAD) N

REACT Reactivity class (integer between 1 and 9, inclusive) N

SRCETYPE Source type (0=points, 3=pseudo-points) A1

STACKID State/county FIPS code A5

STCOUNTY State/county FIPS code A5

TEMIS1 Emissions rate (grams/second) for the first 3-hour time period ** N

TEMIS2 Emissions rate, (grams/second) time period 2 ** N

TEMIS3 Emissions rate, (grams/second) time period 3 ** N

TEMIS4 Emissions rate, (grams/second) time period 4 ** N

TEMIS5 Emissions rate, (grams/second) time period 5 ** N

TEMIS6 Emissions rate, (grams/second) time period 6 ** N

TEMIS7 Emissions rate, (grams/second) time period 7 ** N

TEMIS8 Emissions rate, (grams/second) time period 8 ** N

TRACTR Tract ID A6

UFLAG Urban/rural dispersion flag (1=urban, 2=rural) A1

WBANID Meteorological station ID A5

* Ax = character string of length x, x.y = numeric format with y places right of decimal

** Temporally allocated emission values represent projected emissions when you choose to perform EMS-HAP’s

emission projection capabilities
11-40

Table 11-12. Variables Contained in AMProc Extended SAS® Output File For ASPEN and

Output SAS® Created when Processing Data for ISCST3

Variable Name Description (Units or values are in parentheses) Type*

AMS c AMS source category code A10

ADDNEFF b Reduction (%) for new sources to be applied in addition to primary reductions N

ADDXEFF b Reduction (%) for existing sources to be applied in addition to primary reduction N

ADD_RATE b Percentage of emissions attributable to new sources for the purpose of applying

additional reductions

N

CATCODE Source category code specified in the source group cross-reference file A4

CELL For ASPEN: State and county FIPS codes concatenated with the 6-digit tract ID

For ISCST3: 3-character column concatenated with the 3-character row

A11

A6

CNTLCODE b Control code indicating the reductions applied to emissions A60

EMIS Baseline annual emissions rate (tons/year) N

EMISBIN Source group N

EXISTEFF b Primary percent reduction for existing sources N

GF b Growth factor N

LAT c Census tract centroid location latitude (decimal degrees) N

LON c Census tract centroid location longitude (negative decimal degrees) N

MACT MACT code A7

NEW_EFF b Primary percent reduction for new sources N

NEW_RATE b Percentage of emissions attributable to new sources for the purpose of applying

primary reductions

N

NTI_HAP Code identifying HAP on the Clean Air Act HAP list A3

POLLCODE Unique pollutant-group code (SAROAD) N

REACT c Reactivity class N

REPLACE b User-defined reduction flag (R=replace MACT-based reductions with userdefined reductions; A=apply user-defined reductions in addition to the primary

MACT-based reductions)

A1

SETSIC b SIC assigned by cross-reference to category name for use in assigning growth

factors

A4

SIC Standard Industrial Classification (SIC) code A4

SRC_TYPE Emission source type A1
Table 11-12. Variables Contained in AMProc Extended SAS® Output File For ASPEN and

Output SAS® Created when Processing Data for ISCST3

(continued)

Variable Name Description (Units or values are in parentheses) Type*

11-41

STCOUNTY State/county FIPS code A5

SURR c Spatial allocation surrogate code N

TF3HR1-

TFHR8 c

Temporal allocation factor (dimensionless) for 3-hour time periods 1-8 N

TEMIS1-

TEMIS8 ac

Emissions rate (tons/year), 3-hour time periods 1-8 N

TEMIS1-

TEMIS288 ad

Temporally allocated hourly emissions for the four seasons, three day types

(weekday, Saturday, Sunday), and 24 hours (tons/hour), calculated in AMProc

(see Section 11.1.3)

N

UFLAG c Urban/rural dispersion flag (1=urban, 2=rural) A1

UTMX d UTM easting coordinate (meters), computed in AMProc (see Section 11.1.2) N

UTMY d UTM northing coordinate (meters), computed in AMProc (see Section 11.1.2) N

* Ax = character string of length x, N = numeric

a

 Temporally allocated emission values represent projected emissions when you choose to perform EMS-HAP’s

emission projection capabilities

b

 Variables included only when emission projections are done (see Section 11.1.6)

C

 Variables included only when processing emissions for ASPEN

d

 Variables included only when emission projections for ISCST3
12-1

MobilePrep AreaPrep

AMProc AMProc

AMFinalFormat AMFinalFormat

Mobile Source 

Emissions File 

(excluding allocated 

airport emissions data)

Non-point 

Source 

Emissions File

Include Files for the SO 

Pathway Section of the 

ISCST3 Run Stream for 

Gridded Mobile Sources

Include Files for the SO 

Pathway Section of the 

ISCST3 Run Stream for 

Gridded Non-point Sources

CHAPTER 12

Non-point and Mobile Source Processing 

The Final Format Program (AMFinalFormat) for

ISCST3

The flowchart below (Figure 12-1) shows how AMFinalFormat fits into EMS-HAP’s mobile and

non-point source processing for the ISCST3 model. You don’t use this program if you are

processing emissions for ASPEN. The non-point or mobile source inventory you input to

AMFinalFormat is the output from AMProc (Chapter 11). You use the output of

AMFinalFormat to assist you in appending these sources to the SO pathway section of the

ISCST3 run stream that was created by PtFinal_ISCST3.

Figure 12-1. Overview of AMFinalFormat within EMS-HAP for

Non-point and Mobile Source Processing
12-2

12.1 What is the function of AMFinalFormat?

The Final Format Program (AMFinalFormat) for ISCST3 prepares the gridded non-point or

mobile source emissions from AMProc for their treatment as ISCST3 area sources in the ISCST3

model. It also creates, for these sources, the include files for the SO pathway section of the

ISCST3 run stream file and a text file containing source identification information for the source

groups represented. You are responsible for adding both (1) the contents of this source

identification information text file, and (2) statements to call the include files, to the existing SO

pathway section of the ISCST3 run stream file created from PtFinal_ISCST3. 

The specific functions of AMFinalFormat are listed below. You control how the first three

functions are performed in any given execution of AMFinalFormat (see Table 12-8 in Section

12.2.4 for details on how to do this).

C Assigns default release parameters to emission sources

C Assigns available pollutant-specific particle size data and gas deposition data

C Assigns available emission source elevation data by modeling grid cell

C Sums category-specific emissions to the emission source group level

C Converts each of the 288 temporally allocated emission rates and baseline emissions to

grams/sec-m2

C Removes emission sources that are outside of modeling domain

C Assigns source identification codes needed for the ISCST3 SO pathway section files

C Adjusts UTM coordinates of emission sources

C Creates include files for the SO pathway section of the ISCST3 run stream

C Creates text files containing source identification information for the source groups for

inclusion in the SO pathway section of the ISCST3 run stream

Figure 12-2 shows a flowchart of AMFinalFormat. The following sections describe the above

bullets.
12-3

Reads Keywords

Batch File Containing Keywords 

e.g. File Names and Locations, 

Program Options

Include Files for SO Pathway of 

ISCST3 Run Stream.

Text File containing source 

groupings for inclusion in the SO 

pathway section of the ISCST3 

run stream

AMFinalFormat: MACRO MERGASD 

Reads default gas deposition parameter file and 

assigns to emissions by pollutant

Default Gas Deposition 

Parameter File

Emission Inventory File

AMFinalFormat: MACRO MERGELEV 

Reads grid cell elevation file and assigns 

elevation data to emissions by grid cell.

AMFinalFormat: MACRO MERGPART 

Reads pollutant-level particle size distribution file 

Group-level Particle Size and assigns to emissions by pollutant.

Distribution File

Pollutant-level Particle Size 

Distribution File

Grid Cell Elevation File

AMFinalFormat: MACRO SOPATH 

Assigns default release parameters to all sources 

in order to model as ISCST3 area sources. 

Removes emissions from gridcells outside of 

modeling domain. Adjusts UTM coordinates of 

emission sources. Assigns source identification 

codes needed in the SO pathway of run stream. 

Creates text file to be used as part of the SO 

pathway of ISCST3 run stream. Writes include 

files for SO pathway of run stream.

AMFinalFormat: MACRO GetInfo 

Reads emissions inventory. Sums emissions for 

each source group, pollutant, and gridcell. 

Converts emissions to units of grams/sec-m2.

Figure 12-2. AMFinalFormat Flowchart.
12-4

12.1.1 Assigns default release parameters to emission sources

The ISCST3 model requires release parameter information for each source to be modeled. All 

(non-point and mobile) sources processed by AMProc and AMFinalFormat are prepared for

ISCST3 modeling as ISCST3 area sources; each grid cell represents an ISCST3 area source. The

release parameters are shown in Table 12-1. Of the variable names listed in Table 12-1, only

REL_HGT and DELTA_X are required for ISCST3 processing.

AMFinalFormat assigns most of the default release parameters to each grid cell based on the

keywords you provide in the batch file (see Table 12-9, Section 12.2.4); the only exception is the

variable ROTATE, which is hard-coded in AMFinalFormat as 0 (zero) degrees because the grid

cells are square (DELTA_X = DELTA_Y) with no rotation. DELTA_X and DELTA_Y are

based your grid cell dimensions. For example, if you are using a 1 by 1 km modeling domain

grid, then you would set CELLSIZE=1000 meters, and DELTA_X and DELTA_Y would be

1000 meters.

Table 12-1. Default ISCST3 Area Source Release Parameters

Variable

Name

Release Parameter Keyword Used

to Assign

Value

REL_HGT release height (meters) ARELHGT

DELTA_X length of X side of source (meters) CELLSIZE

DELTA_Y length of Y side of source (meters) CELLSIZE

ROTATE orientation angle of rectangle for source (degrees from North) -------- *

SIGMA_Z initial vertical dimension of plume (meters) AINPLUM

* A rotation angle of 0 (zero) is hard coded in AMFinalFormat

12.1.2 Assigns available pollutant-specific particle size and gas deposition data

The ISCST3 model includes several different algorithms for deposition, some of which require

information in addition to the emission inventory data. The type of deposition and the additional

information required are summarized in Table 12-2.
12-5

Table 12-2. ISCST3 Deposition Algorithms and Required Information

Type of Deposition Additional Information Required Specificity of

Information

gravitational settling and

removal of particulates in the

plume by dry deposition

emission source particle size distribution

parameters (particle diameter, mass fraction, and

particle density)

by pollutant

(SAROAD)

scavenging and removal of

particles by wet deposition

liquid and ice scavenging coefficients by pollutant

(SAROAD)

dry deposition and removal of

gaseous pollutants

molecular diffusivity, solubility enhancement

factor, reactivity parameter, mesophyll resistence

term, and Henry's Law coefficient

by pollutant

(SAROAD)

Depending on which, if any, of these deposition algorithms you will be using when running the

ISCST3 model, you need to provide the appropriate information by using one of two ancillary

files. One ancillary file contains the particle size distribution information, and, if necessary, the

liquid and ice scavenging coefficients by pollutant as identified by the SAROAD variable (which

is the same as the POLLCODE variable discussed in AMProc - AMFinalFormat renames this

variable to “SAROAD”). A second ancillary file contains the gas deposition parameters and the

liquid scavenging coefficients by pollutant (SAROAD). These two SAROAD-based ancillary

files are the same as the SAROAD-based files used by PtFinal_ISCST3 (see Section 8.1.3). Note

that unlike PtFinal_ISCST3, AMFinalFormat does not allow you to specify different deposition

information by source category.

You control how the particle size distribution file and the gas deposition file are used in

AMFinalFormat through the file name keyword DEFPART and the program options keywords

GASDEPO and SCAVENG you specify in the batch file (see Table12-9 in Section 12.2.4). If

you instruct AMFinalFormat to read scavenging coefficients by setting the keyword SCAVENG

to 1, then these coefficients will be read from both the gas deposition and particle size

distribution files.

12.1.3 Assigns available emission source elevation data by modeling grid cell

ISCST3 supports both flat and complex terrain modeling. AMFinalFormat provides two options

for entering source elevations. You can use an ancillary file to provide elevation data by

modeling grid cell or you can enter a single elevation to be used for all sources. If you provide

the elevation data, AMFinalFormat assigns them to the inventory using the CELL variable

assigned in AMProc (see Section 11.1.2). If you want to use a single elevation for all sources,

provide this value through the batch file keyword DEFELEV(see Table 12-9 in Section 12.2.4).
12-6

12.1.4 Sums category-specific emissions to the emission source group level

AMFinalFormat sums the temporally allocated emissions (variables TEMIS1-TEMIS288) and

baseline emissions (variable EMIS) for each pollutant (variable SAROAD) and emission source

group (variable EMISBIN) within each grid cell. This function removes all category-specific

information from the input file such as the SCC and AMS by summing to the emission source

group level. The emission source group was assigned to the inventory in AMProc, based on your

preferences (see Section 11.1.5). This summation process allows AMFinalFormat to provide

gridded emissions for each pollutant at the emission source group level. This allows ISCST3 to

compute the concentrations by emission source group. This function is performed early on in

the program for computational efficiency, as it reduces the size of the inventory file considerably.

12.1.5 Converts each of the 288 temporally allocated emission rates and baseline

emissions to grams/sec-m2

AMFinalFormat converts the temporally allocated emissions (variables TEMIS1-TEMIS288)

from tons/hour to grams/sec-m2 according to Equation 12-1, below. AMFinalFormat also

converts the baseline emissions (EMIS) from tons/year to grams/sec-m2

 according to Equation

12-2, below. The variable EMIS_TPY retains the baseline emissions in tons/year (Table 12-10).

Eg/s-m2(i) = Etons/hour(i) x [(1 hr/3600 sec) x (907,184grams/ton)] / (CELLSIZE)2 (eq. 12-1)

Eg/s-m2 =Etons/year x [(1 year/365 days)x(1 day/24 hrs)x(1 hr/3600 sec)x (907,184grams/ton)]/(CELLSIZE)2 (eq. 12-2)

where:

Eg/s-m2(i)= emissions in grams/second/meter2 for time block i (where i represents one of the 288 time blocks; e.g. 

time block i=1 represents the first hour of a winter weekday)

Eg/s-m2 = emissions in grams/second/meter2

Etons/hour(i) = emissions in tons/hour for time block i

Etons/year = emissions in tons/year

CELLSIZE = length of grid cell side, keyword CELLSIZE (see Table 12-9 in Section 12.2.4)
12-7

12.1.6 Removes emission sources that are outside of modeling domain

AMFinalFormat windows the inventory to exclude any grid cells that are outside of the modeling

domain. The CELL variable, created during spatial allocation for ISCST3 in AMProc (see

Section 11.1.2), contains the column and row from each grid cell; all grid cells with columns or

rows greater than the maximum column or maximum row of your modeling domain are dropped. 

You provide the modeling domain information through the keywords MAXCOL and MAXROW

in the batch file (see Table 12-9 in Section 12.2.4).

12.1.7 Assigns source identification codes needed for the ISCST3 SO pathway section files

AMFinalFormat assigns a source identification code to each emission record for use in the

ISCST3 model. This identification code is created from the source group (variable EMISBIN,

see Section 11.1.5), the RUN_ID keyword provided in the batch file (see Table 12-9 in

Section 12.2.4), and a sequential number. This number is determined by arranging the inventory

by pollutant SAROAD code and source group (variable EMISBIN) and numbering the emission

records sequentially within each source group (remember that separate run stream and include

files are created for each pollutant). The one character RUN_ID is included in the source

identification code to allow the ISCST3 model to distinguish between emission sources from

different runs of EMS-HAP with different inventories which may have the same source group

(e.g., the non-point source inventory and the point source inventory). Without the RUN_ID, the

same source identification code could be given to sources from different runs of EMS-HAP for

different inventories.

12.1.8 Adjusts UTM coordinates of emission sources

Within the ISCST3 model, only six significant digits are used for the UTM coordinates of any

source; it is possible that some sources have the UTM coordinates greater than 1,000,000 meters. 

To avoid the truncation of such coordinates in the ISCST3 model, AMFinalFormat adjusts all of

the coordinates relative to the origin (southwest corner) of the modeling domain. The keyword

X_ORIG and Y_ORIG provided in the batch file (see Table 12-9 in Section 12.2.4) are used in

the following equations to perform this adjustment.

Adjusted UTMX = UTMX - X_ORIG (Eq. 12-3)

Adjusted UTMY = UTMY - Y_ORIG (Eq. 12-4)

Where:

UTMX = UTM easting coordinate (meters)

X_ORIG = UTM easting coordinate of grid origin

UTMY = UTM northing coordinate (meters)

Y_ORIG = UTM northing coordinate of grid origin
12-8

12.1.9 Creates include files for the SO pathway section of the ISCST3 run stream

In order to reduce the size of the SO pathway section of the run stream text files, AMFinalFormat

uses the “include file” feature of ISCST3 run streams. The ISCST3 model processes only one

pollutant during a run; therefore, AMFinalFormat creates separate include files for each

pollutant, as identified by the pollutant SAROAD code. Table 12-3 shows a list of the include

files and when they are created, and Table 12-4 shows how AMFinalFormat names them. After

AMFinalFormat is complete, for each pollutant (SAROAD), you need to reference these include

files in an existing SO pathway section of a run stream text file (use the one created by

PtFinal_ISCST3).

Table 12-3. ISCST3 SO Pathway Run Stream Include Files

Include File Contents When File is Created

Hourly emission

factors

288 temporally allocated emission rates (inventory

variables TEMIS1-TEMIS288)

For each SAROAD in inventory

emission source

data

each file contains source location coordinates, stack

parameters for point sources, release parameters for

area and volume sources, and emission rate [set to 1]

for each source

For each SAROAD in inventory

particle size

distribution

data/scavenging

coefficients

particle diameter, mass fraction, and particle density

and, if provided, liquid and ice scavenging coefficients

(see Section 12.1.4)

Only if particle size distribution

data is provided

gas deposition

parameters

molecular diffusivity, solubility enhancement factor,

reactivity parameter, mesophyll resistence term, and

Henry's Law coefficient (see Section 12.1.4)

Only if gas deposition data is

provided

Table 12-4. ISCST3 Include File Names

Type of Include File File Name (located in OUTFILES directory)

Hourly emission factors “hrlyemis_” + RUN_ID + “.” + SAROAD

Emission source data “grid” + EMISBIN + RUN_ID + “.” + SAROAD

Particle size distribution data/scavenging

coefficients

“particle_” + RUN_ID + “.” + SAROAD

Gas deposition parameters “gasdepo_” + RUN_ID + “.” + SAROAD
12-9

12.1.10 Creates text files containing source identification information for the source

groups for inclusion in the SO pathway section of the ISCST3 run stream

The SO pathway section of the ISCST3 run stream file must contain source group information

for every source in the include files. Therefore, in addition to the include files discussed above,

AMFinalFormat creates, for each pollutant (SAROAD), a text file containing the range of source

identification codes (see Section 12.1.7) for each source group in the include files. Table 12-5

provides the naming convention for these files. For each pollutant modeled with ISCST3, you

must add, to an existing SO pathway section of the ISCST3 runstream file, the contents of the

source grouping files as well as the references to the include files created by AMFinalFormat. 

An SO pathway section will exist if the pollutant had sources that made it through

PtFinal_ISCST3; that is, if any of the sources in the point source inventory had nonzero

emissions in the modeling domain. 

Table 12-5. Text File Names Containing Emission Source Groupings

Description File Name (located in OUTFILES directory)

Source groupings; one record per source

group (EMISBIN), one file per pollutant

(SAROAD)

“AMcats_” + RUN_ID + “.” + SAROAD

12.2 How do I run AMFinalFormat?

12.2.1 Prepare your point source inventory for input into AMFinalFormat

The gridded non-point or mobile source inventory you use for input into AMFinalFormat is the

output from AMProc (see Chapter 11). This inventory will contain the necessary variables for

AMFinalFormat, as shown in Table 12-6.
12-10

Table 12-6. Variables in the AMFinalFormat Input Inventory SAS® File

Variable

Name

Data Description

(Required units or values are in parentheses)

Type*

ADDNEFFa reduction (%) for new sources to be applied in addition to primary reductions; assigned in

AMProc (see Section 11.1.6)

N

ADDXEFFa reduction (%) for existing sources to be applied in addition to primary reductions; assigned in

AMProc (see Section 11.1.6)

N

ADD_RATEa percentage of emissions attributable to new sources for the purpose of applying additional

reductions; assigned in AMProc (see Section 11.1.6)

N

CATCODE Source category code specified in the source group cross-reference file A4

CELL Modeling domain grid cell, 3-character column concatenated with the 3-character row,

assigned AMProc (see Section 11.1.2)

A6

CNTLCODEa control code indicating the reductions applied to emissions; assigned in AMProc (see Section

11.1.6)

A60

EMIS Baseline pollutant emissions value (tons/year) N

EMISBIN Source group, assigned in AMProc (see Section 11.1.5) N

EXISTEFFa primary percent reduction for existing sources; assigned in AMProc (see Section 11.1.6) N

GFa growth factor; assigned in AMProc (see Section 11.1.6) N

MACT MACT code A7

NEW_EFFa primary percent reduction for new sources; assigned in AMProc (see Section 11.1.6) N

NEW_RATEa percentage of emissions attributable to new sources for the purpose of applying primary

reductions; assigned in AMProc (see Section 11.1.6)

N

NTI_HAP code identifying HAP on the Clean Air Act HAP list A3

POLLCODE unique pollutant-group code (same as SAROAD variable in point source processing), assigned in

AMProc (see Section 11.1.1)

N

REPLACEa user-defined reduction flag (R=replace MACT-based reductions with user-defined reductions;

A=apply user-defined reductions in addition to the primary MACT-based reductions); assigned

in AMProc (see Section 11.1.6)

A1

SIC SIC code A4

SRC_TYPE code identifying source type, assigned in AMProc (see Section 11.1.5) to apply reduction

information by source type, not source group (EMISBIN)

A1

STCOUNTY 5-digit FIPS code (state and county combined) A5

TEMIS1-

TEMIS288

temporally allocated hourly emissions for the four seasons, three day types (weekday, Saturday,

Sunday), and 24 hours (tons/hour), calculated in AMProc (see Section 11.1.3)

N

UTMX UTM easting coordinate (meters), computed in AMProc (see Section 11.1.2) N

UTMY UTM northing coordinate (meters), computed in AMProc (see Section 11.1.2) N

*Ax = character string of length x, I = integer, N = numeric

a

 variables present only if you selected to project your emissions to a future year when you ran AMProc
12-11

12.2.2 Determine whether you need to modify the ancillary input files for

AMFinalFormat

An ancillary file is any data file you input to the program other than your emission inventory. 

Table 12-7 lists the optional ancillary input files for AMFinalFormat and when you may need to

modify them.

Table 12-7. Required Ancillary Input Files for AMFinalFormat

Name of File

Provided with

EMS-HAP

Purpose Need to Modify? Format

defpart.txt Provides the default particle size

distribution data by pollutant

If you want to add new

pollutants or replace parameter

values with new values

Text

defgas.txt Provides the default gas deposition

parameters by pollutant

If you want to add new

pollutants or replace parameter

values with new values

Text

hstn-elev.txt Provides terrain elevations (in

meters) by modeling domain grid

cell

If you want to use elevation

data for your domain and grid

Text

12.2.3. Develop the particle size distribution, gas deposition, and terrain elevation files

(defpart.txt, defgas.txt, and hstn-elev.txt)

As discussed in Appendix E, the particle size distribution, gas deposition, and terrain elevation

files, defpart.txt, sccpart.txt (see section 8.1.3), defgas.txt, and hstn-elev.txt, that we’ve provided

with EMS-HAP are intended for a specific application. Depending on your domain and the

pollutants you choose to run, you will likely need to develop your own files. Unless you are

modeling the same Houston domain, the hstn-elev.txt file is presented strictly for illustrative

purposes. These files are also used in the point source program PtFinal_ISCST3 (see Chapter 8).

The defpart.txt file contains information about particle size distributions that are applied to

specific pollutants identified by the SAROAD variable. You can include up to10 particle size

classes. You must specify the number of size classes in the file. You can also include liquid and

ice scavenging coefficients for each size class, but this is optional. The format for the defpart.txt

file is provided in Figure 29 of Appendix A, and Section E.9 (Appendix E) discusses how we

developed it.

The defgas.txt file contains gas deposition parameters that are assigned to the inventory by the

SAROAD variable. The format for this file is provided in Figure 31 of Appendix A, and Section
12-12

E.9 (Appendix E) discusses how we developed it.

The hstn-elev.txt file contains terrain elevation data by grid cell. This information is specific for

your modeling domain. You need to develop a new file when your modeling domain changes. 

The format for this file is provided in Figure 32 of Appendix A, and Section E.10.5 (Appendix

E) discusses how we developed it.

12.2.4 Prepare your batch file

The batch file serves two purposes: (1) allows you to pass “keywords” such as file names and

locations, program options and run identifiers to the program, and (2) sets up the execute

statement for the program. A sample batch file for AMFinalFormat is shown in Figure 17 of

Appendix B. The best way to prepare your batch file is to use one of the samples we provide and

modify it to fit your needs.

Specify your keywords

Table 12-8 shows you how to specify keywords to select AMFinalFormat functions.

Table 12-8. Keywords for Selecting AMFinalFormat Functions

AMFinalFormat Functions Keyword (values provided cause function to

be performed)

Use particle size distribution data provided

by pollutant without scavenging data DEFPART = Prefix of data file; SCAVENG = 0

by pollutant with scavenging data DEFPART = Prefix of data file; SCAVENG = 1

Use gas deposition parameters provided

without scavenging data GASDEPO = YES; SCAVENG = 0

with scavenging data GASDEPO = YES; SCAVENG = 1

Use elevation data provided ELEVDAT = Prefix of data file

Create gas deposition include file GASDEPO = YES

Note that because the keyword SCAVENG applies to both gaseous and particulate pollutants,

you don’t have the option to use scavenging data for one of these pollutants types without the

other.

Table 12-9 describes all of the keywords required in the batch file. In addition to supplying all

input and output file names and directories and program options, you must also supply additional

input data (see “Additional Input Data” section in Table 12-9).
12-13

Table 12-9. Keywords in the AMFinalFormat Batch File

Keyword Description of Value

Input Inventory Files

IN_DATA Input SAS® file directory

INSAS Input inventory SAS® file name, prefix of file name only

Ancillary Files (Prefix of file name provided with EMS-HAP in parentheses)

REFFILES Ancillary file directory

DEFPART Default pollutant-level particle distribution text file, prefix only (defpart); 

put “NONE” if no file is to be used

DEFGAS Default pollutant-level gas deposition data text file, prefix only (defgas)

 put ‘NONE’ if no file is to be used

ELEVDAT Gridded terrain elevation data text file, prefix only ;

 put “NONE” if no file is to be used (hstn-elev)

Program Options

RUN_ID Run identification code used to insure unique ISCST3 source ID’s; typically used to

distinguish between point, non-point, and mobile inventory runs (one character limit)

GASDEPO YES = create gas deposition include files; NO = do not write gas deposition include files

SCAVENG 1 = scavenging coefficients are included in the DEFPART or DEFGAS files; 

0 = scavenging coefficients are not included in the DEFPART or DEFGAS files

Additional Input Data

DEFELEV Default elevation value used for all sources (meters); only used if ELEVDAT file prefix is

‘NONE’

X_ORIG UTM easting coordinate of the modeling grid origin (meters)

Y_ORIG UTM northing coordinate of the modeling grid origin (meters)

CELLSIZE Width of each grid cell (meters) 

MAXCOL Total number of columns in the modeling grid

MAXROW Total number of rows in the modeling grid

ARELHGT Release height above ground (meters)

AINPLUM Initial vertical dimension of plume (meters)

Output files

OUTDATA Output SAS® file directory

OUTSAS Output inventory SAS® file name, prefix only

OUTFILES Output directory of SO pathway include files

You must include all directory names, file names and variable values even if they are related to a

function that you do not select to perform. For example, if you set DEFPART to “NONE", you

still need to assign a value to keyword SCAVENG in your batch file. The value provided in this

circumstance will not be used by the program; it is merely a place holder value for the keyword. 
12-14

Prepare the execute statement

The last line in the batch file runs the AMFinalFormat program. In the sample batch file

provided in Figure 17 of Appendix B, you will see a line preceding the run line that creates a

copy of the AMFinalFormat code with a unique name. It is this version of the program that is

then executed in the last line. If you do this, the log and list files created by this run can be

identified by this unique name. If you don’t do this and run the program under a general name,

every run of AMFinalFormat will create a log and list file that will replace any existing files of

the same name.

You may find that you need to assign a special area on your hard disk to use as work space when

running AMFinalFormat. In the sample batch file, a work directory is defined on the last line

following the execution of AMFinalFormat. For example, the command 

 ‘sas AMFinalFormat_062000.sas -work /data/work15/dyl/’ assigns a work directory called

“/data/work15/dyl”. The directory you reference must be created prior to running the program.

12.2.5 Execute AMFinalFormat

There are two ways to execute the batch file. One way is to type ‘source’ and then the batch file

name. Alternatively, first set the permission on the file to ‘execute.’ You do this by using the

UNIX CHMOD command and adding the execute permission to yourself, as the owner of the

file, to anyone in your user group, and/or to anyone on the system. For example,

‘chmod u+x AMFinalFormat.bat’ gives you permission to execute the batch file. Refer to your

UNIX manual for setting other permissions. After you have set the file permission, you can

execute the batch file by typing the file name on the command line, for example,

‘AMFinalFormat.bat’.

12.3 How Do I Know My Run of AMFinalFormat Was Successful?

12.3.1 Check your SAS® log file

You need to review the output log file to check for errors or other flags indicating incorrect

processing. This review should include searching the log files for occurrences of the strings

“error”, “warning”, “not found”, and “uninitialized”. These can indicate problems with input

files or other errors.
12-15

12.3.2 Check your SAS® list file

This program does not create a list file.

12.3.3 Check other output files from AMFinalFormat

To ensure that AMFinalFormat created all necessary include files, as well as the text files

containing the source group information for each pollutant, you need to check the output file

directory that you specified in the batch file using keyword OUTFILES. For each pollutant, in

the gridded mobile or non-point source inventory, AMFinalFormat always creates an emission

factors include file, an emission source data file, and a text file listing source identification code

ranges for the source groups. The creation of other include files containing particle size

distribution data and gas deposition parameters depends on how you set the keywords in your

batch file.

In addition to the include files and text file of source groupings, AMFinalFormat automatically

creates an output SAS® inventory file, named by keyword OUTSAS. This file contains the

variables listed in Table 12-10; some of these variables are only included depending on how you

set the keywords in the batch file (see Table 12-9, Section 12.2.4). Note that since the emissions

data from the input SAS® inventory file are summed over the source group, pollutant, and

gridcell, specific source category information (SCC, SIC, MACT) is not included in this output

file. Also note that the units of the temporally allocated emissions values are converted from

tons/hour (input file) to grams/sec-m2

, and the units of the baseline emission (EMIS) variable has

been converted from tons/year to grams/sec-m2

. The original baseline emissions value in

tons/year is retained in the EMIS_TPY variable. Finally, note that the numeric variable

POLLCODE is replaced by the character variable SAROAD (name change).
12-16

Table 12-10. Variables in the AMFinalFormat Output SAS® File

Variable Name Data Description

(Required units or values are in parentheses)

Type*

ALPHAc Gas deposition parameter: solubility enhancement factor N

CELL Modeling domain grid cell, 3-character column concatenated with the 3-

character row, assigned AMProc (see Section 11.1.2)

A6

DIFFc Gas deposition parameter: molecular diffusivity (cm2

/sec) N

EMIS Baseline pollutant emissions in grams/sec/m2 N

EMISBIN Source group, assigned in AMProc (see Section 11.1.5) N

EMIS_TPY Annual grid cell baseline emission in tons/year N

HENRYc Gas deposition parameter: Henry’s Law coefficient N

LIQSCAVc Gas deposition parameter: liquid scavenging coefficient (1/(sec-mm/hr)) N

NUMCAT Number of particle size classes N

PDEN1-

PDEN10a

Particle size distribution parameter: density (grams/cm3) N

PDIA1-

PDIA10a

Particle size distribution parameter: diameter (microns) N

PFRA1-PFR10a Particle size distribution parameter: mass fraction N

PICE1-

PICE10b

Particle size distribution parameter: ice scavenging coefficient (1/(sec-mm/hr)) N

PLIQ1-

PLIQ10b

Particle size distribution parameter: liquid scavenging coefficient (1/(secmm/hr))N

RSUBMc Gas deposition parameter: mesophyll resistence term (sec/cm) N

RXc Gas deposition parameter: reactivity parameter N

SAROAD Pollutant code (character variable that replaces the assigned value of the

numeric input variable POLLCODE)

A5

SELEV source elevation N

SRCID Source identification code (see Section 12.1.7) A8

TEMIS1-

TEMIS288 d

Temporally allocated hourly emissions for the four seasons, three day types

(weekday, Saturday, Sunday), and 24 hours (tons/hour), calculated in AMProc

(see Section 11.1.3)

N

UTMX UTM easting coordinate (meters), computed in AMProc (see Section 11.1.2) N

UTMY UTM northing coordinate (meters), computed in AMProc (see Section 11.1.2) N

*Ax = character string of length x, N = numeric

a

 variables added only when particle size distribution data are provided; b variables added only when liquid/ice

scavenging data are provided; c

 variables added only when gas deposition parameters are provided d

 Temporally allocated emission values represent projected emissions when you choose to perform EMS-HAP’s

emission projection capabilities
R-1

REFERENCES

1. User’s Guide: Assessment System for Population Exposure Nationwide (ASPEN,

Version 1.1) Model. EPA-454-R-00-017, U.S. Environmental Protection Agency,

Research Triangle Park, NC. March 2000.

2. User's Guide for the Industrial Source Complex (ISC3) Dispersion Models: Volume I -

User Instructions. EPA-454-/D-95-003a, U.S. Environmental Protection Agency,

Research Triangle Park, NC. 1995d.

3. U.S. Environmental Protection Agency. Technology Transfer Network National Air

Toxics Assessment. The National-scale Air Toxics Assessment. 

http://www.epa.gov/ttn/atw/nata/ (Accessed July 2002).

4. Example Application of Modeling Toxic Air Pollutants in Urban Areas. EPA-454-/R-02-

003, U.S. Environmental Protection Agency, Research Triangle Park, NC. June 2002.

5. Driver, L.; Pope, A.; Billings, R.; Wilson, D. “The 1996 National Toxics Inventory and

Its Role in Evaluating the EPA’s Progress in Reducing Hazardous Air Pollutants in

Ambient Air”, Presented at the 92nd Annual Meeting of the Air & Waste Management

Association, St. Louis, MO, June 1999; paper 91-501.

6. Rosenbaum, A.S.; Ligocki, M.P.; Wei, Y.H. “Modeling Cumulative Outdoor

Concentrations of Hazardous Air Pollutants, Volume 1: text”; SYSAPP-99-96-33r2,

Prepared for the U.S. Environmental Protection Agency, Office of Policy, Planning, and

Evaluation, by Systems Applications International, Inc., San Rafael, CA. 1998, pp. 5-3 to

5-4.

7. Rosenbaum, A.S.; Ligocki, M.P.; Wei, Y.H. “Modeling Comulative Outdoor

Concentrations of Hazardous Air Pollutants, Volume 1: text”; SYSAPP-99-96-33r2,

Prepared for the U.S. Environmental Protection Agency, Office of Policy, Planning, and

Evaluation, by Systems Applications International, Inc., San Rafael, CA. 1998, pp. 5-9 to

5-11.

8. U.S. Environmental Protection Agency. Economic Growth Analysis System Version 4.0

 and Documentation, from the Technology Transfer Network Clearinghouse for

Inventories and Emission Factors.

http://www.epa.gov/ttn/chief/emch/projection/egas40/index.html (Accessed May, 2001)

9. U.S. Environmental Protection Agency. Integrated Urban Air Toxics Strategy PO Data

System.. http://www.epa.gov/ttn/atw/urban/urbanpg.html (Accessed April 2, 2002)
APPENDIX A

EMS-HAP Ancillary File Formats
A-ii

TABLE OF CONTENTS

Program Name List of Figures Corresponding to All Ancillary Files Needed Page #

AirportProc Figure 1. Airport Location and Allocation File (apt_allc) A-1

Figure 2. ISCST3 Area Source Parameter to Airport Assignment File

(ISC-airport_parameters.txt)

A-2

PtDataProc Figure 3. Zip Code File (zipcodes) A-3

Figure 4. County File (cty_cntr) A-4

Figure 5. State File (st_cntr) A-5

Figure 6. Counties File (counties) A-6

Figure 7. Boundary File (bound6) A-7

Figure 8. County Mapping File (cntyctr2) A-8

Figure 9. Tract Array File (trctarry) A-9

Figure 10. Tract Information File, including location of centroid and

urban/rural flag (tractinf)

A-10

Figure 11. SCC-Based Default Stack Parameter File (def_scc.txt) A-11

Figure 12. SIC-Based Default Stack Parameters File (def_sic.txt) A-12

Figure 13. Additional Variables File (varlist.txt) A-13

PtModelProc Figure 14. HAP Table File (haptabl_XXX.txt) A-14

Table 1. HAP Table File Used to Process 1996 NTI Point and Nonpoint Source Emissions Data (haptabl_point_area.txt)A-15

Table 2. HAP Table File Used to Process Precursors from 1996 NTI

and 1996 speciated NET Point, Non-point and Mobile Source

Emissions Data (haptabl_precursor.txt)

A-29

Table 3. HAP Table File Used to Process 1996 NTI Onroad Mobile

Source Emissions Data (haptabl_onroad.txt)

A-31

Table 4. HAP Table File Used to Process 1996 NTI Nonroad Mobile

Source Emissions Data (haptabl_nonroad.txt)

A-32

Figure 15. County-level Urban/Rural Flag File (ctyflag) A-33

Figure 10. Tract Information File, including location of centroid and

urban/rural flag (tractinf)

A-10
TABLE OF CONTENTS

(continued)

Program Name List of Figures Corresponding to All Ancillary Files Needed Page #

A-iii

PtTemporal Figure 16a. Temporal Allocation Factor File Used When Processing

Data for ASPEN (taff_hourly.txt)

A-34

Figure 16b. Temporal Allocation Factor File Used When Processing

Data for ISCST3 (taff_ISCfactors.txt)

A-35

Figure 17. SCC to AMS Cross-Reference File (scc2ams.txt) A-36

Figure 18. SIC to SCC or AMS Cross-Reference File (sic2ams.txt) A-37

Figure 19. MACT Category to SCC or AMS Cross-Reference File

(mact2scc.txt)

A-38

PtGrowCntl Figure 20a. MACT-based Growth Factor File to Grow from Year XX

to Year YY (gfegas_bymactXX_YY.txt)

A-39

Figure 20b. SIC-based Growth Factor File to Grow from Year XX to

Year YY (gfegas_bysicXX_YY.txt)

A-40

Figure 21. SCC to SIC Cross-Reference File (ptscc2sic.txt) A-41

Figure 22a. General MACT Reduction Information File

(MACT_gen.txt)

A-42

Figure 22b. Specific MACT Reduction Information File

(MACT_spec.txt)

A-43

Figure 23. User-defined Reduction Information File

(User_Control.txt)

A-44

Figure 24. County-level Urban/Rural Designations and County Code

Assignment File (popflg96.txt)

A-45

PtFinal_ASPEN Figure 25. Source Group Assignment by MACT Category File

(mact_grp.txt)

A-46

Figure 26. Source Group Assignment by SCC Code File

(scc6_grp.txt)

A-47

Figure 27. Source Group Assignment by SIC Code File (sic_grp.txt) A-48

Figure 28. Decay Rate File (indecay.txt) A-49

PtFinal_ISCST3 Figure 25. Source Group Assignment by MACT Category File

(MACT_grp.txt)

A-46

Figure 26. Source Group Assignment by SCC Code File

(SCC6_grp.txt)

A-47
TABLE OF CONTENTS

(continued)

Program Name List of Figures Corresponding to All Ancillary Files Needed Page #

A-iv

Figure 27. Source Group Assignment by SIC Code File (SIC_grp.txt) A-48

Figure 29. Particle Size Distribution File by SAROAD Code

(defpart.txt)

A-50

Figure 30. Particle Size Distribution File by SAROAD Code and

SCC (sccpart.txt)

A-51

Figure 31. Gas Deposition Parameter File by SAROAD Code

(defgas.txt)

A-52

Figure 32. Terrain Elevation File by Grid Cell (hstn-elev.dat) A-53

AreaPrep Figure 33. Spatial Surrogate Assignment File (surrxref.txt) A-54

Figure 17. SCC to AMS Cross-Reference File (scc2ams.txt) A-36

Figure 18. SIC to SCC or AMS Cross-Reference File (sic2ams.txt) A-37

Figure 34. MACT Category to AMS or SCC Code Cross-Reference

File (mact2ams.txt)

A-55

Figure 16a. Temporal Allocation Factor File Used When Processing

Data for ASPEN (taff_hourly.txt)

A-34

Figure 16b. Temporal Allocation Factor File Used When Processing

Data for ISCST3 (taff_ISCfactors.txt)

A-35

MobilePrep There are no ancillary files for MobilePrep

AMProc Figure 28. Decay Rate File (indecay.txt) A-49

Figure 14. HAP Table File (haptabl_XXX.txt) A-14

Figure 16a. Temporal Allocation Factor File Used When Processing

Data for ASPEN (taff_hourly.txt)

A-34

Figure 16b. Temporal Allocation Factor File Used When Processing

Data for ISCST3 (taff_ISCfactors.txt)

A-35

Figure 33. Spatial Surrogate Assignment File (surrxref.txt) A-54

Figure 35. Spatial Allocation Factor to Census Tract File (SAFE#) A-56

Figure 36. Spatial Allocation Factor to Grid Cell File (HSAF#) A-57

Figure 37. Area and Mobile Source Group and Category Code

Assignment File (am_grp.txt)

A-58
TABLE OF CONTENTS

(continued)

Program Name List of Figures Corresponding to All Ancillary Files Needed Page #

A-v

Figure 24. County-level Urban/Rural Designations and County Code

Assignment File (popflg96.txt)

A-45

Figure 20a. MACT-based Growth Factor File to Grow from Year XX

to Year YY (gfegas_bymactXX_YY.txt)

A-39

Figure 20b. SIC-based Growth Factor File to Grow from Year XX to

Year YY (gfegas_bysicXX_YY.txt)

A-40

Figure 38. Non-point Source Category to SIC Cross-Reference File

(area_sic.txt)

A-59

Figure 22a. General MACT Reduction Information File

(MACT_gen.txt)

A-42

Figure 22b. Specific MACT Reduction Information File

(MACT_spec.txt)

A-43

Figure 39. Non-point and Mobile Source Reduction Information File

(area_cntl.txt)

A-60

AmFinal_Format Figure 29. Particle Size Distribution File by SAROAD Code

(defpart.txt)

A-50

Figure 31. Gas Deposition Parameter File by SAROAD Code

(defgas.txt)

A-52

Figure 32. Terrain Elevation File by Grid Cell (hstn-elev.txt) A-53
A-1

File Name: apt_allc

File Type: SAS®

Variables and Structure

Name Type* Description

ST_FIPS A2 State FIPS code

Cty_FIPS A3 County FIPS code

Locid A4 Airport Location Identification Code

Lat N Latitude of the airport

Lon N Longitude of the airport

Alloc N Allocation factor for activity within a specific airport. Sums to 1.0 for

all of the airports in a particular county.

Arpt_nam A42 Airport name

City A26

County A21

State A2 Postal abbreviation

Activity N Airport activity, not used

Fraction N Test variable, not used

Air_carr A6 Carrier code

Arpt_use A2 Airport use, not used

 *Ax=character string of length x, N=numeric

Sample records

01 001 1A9 32.43877500 86.51044778 1.0000 Autauga County

Prattville Autauga AL 0.08 1.0000 PU

01 003 4R4 30.46211250 87.87801972 1.0000 Fairhope Muni

Fairhope Baldwin AL 3.00 0.9259 PU

01 005 EUF 31.95131917 85.12892500 1.0000 Weedon Field

Eufaula Barbour AL 3.00 0.9740 PU

01 007 0A8 32.93679056 87.08888306 1.0000 Bibb County

Centreville Bibb AL 0.08 1.0000 PU

01 009 20A 33.97231972 86.37942722 1.0000 Robbins Field

Oneonta Blount AL 0.08 1.0000 PU

NOTE: Records in the actual file are not wrapped.

Figure 1. Airport Location and Allocation File (apt_allc)
A-2

File Name: ISC_airport_parameters

File Type: ASCII Text; Non-header data begins on line #3.

Variables and Structure

Name Type* Column Length Description

Locid C 1 4 Airport Location Identification Code

Axlen N 6 8 length of X side of rectangle for ISCST3 area sources

(meters)

Aylen N 15 8 length of Y side of rectangle for ISCST3 area sources

(meters)

Aangle N 24 4 orientation angle of rectangle for ISCST3 area sources

(degrees from North)

Arelhgt N 29 4 release height above ground for ISCST3 area sources

(meters) 

Ainplum N 34 4 initial vertical dimension of plume for ISCST3 area source

(meters)

*C = character, N = numeric.

Sample records

ISCarea File to provide ISC area parameters for airport

IAH 5100 5300 0 2 2

HOU 2000 3000 0 2 2

Figure 2. ISCST3 Area Source Release Parameter to Airport Assignment File

(ISC_airport_parameters.txt)
A-3

File Name: zipcodes

File Type: SAS®

Variables and Structure

Name Type* Description

CntLon N Longitude of the zip code centroid (negative for West)

CntLat N Latitude of the zip code centroid

FIPS A5 State and county FIPS codes.

Zip_Code A5 Zip Code

*Ax=character string of length x, N=numeric

Sample records

-156.767 60.3045 00001 00000

-147.933 66.3257 00002 00000

-156.977 57.5460 00003 00000

-153.122 60.2933 00004 00000

-149.675 62.4791 00006 00000

-152.441 68.9926 00007 00000

-130.561 55.3437 00008 00000

-161.996 62.5095 00010 00000

-150.557 59.9493 00011 00000

-120.059 39.0849 00013 06061

-120.503 40.7815 00019 06035

-119.270 37.5986 00020 06039

-123.612 39.4520 00022 06045

-120.745 41.5977 00025 06049

-121.188 39.8527 00028 06063

-121.025 35.7180 00031 06079

-119.927 34.9444 00032 06083

-120.300 39.4885 00033 06091

-123.313 41.6818 00034 06093

-121.793 41.4740 00035 06093

-122.725 40.0801 00037 06103

-121.703 40.1609 00038 06103

-123.209 40.3513 00039 06105

-119.573 37.9598 00040 06109

-119.829 38.5142 00044 06003

-122.390 39.5797 00047 06021

-122.813 39.3149 00048 06033

-123.787 41.5751 00049 06015

-123.620 41.2205 00050 06023

-120.373 38.8950 00051 06017

-120.297 38.6574 00052 06017

-123.697 40.8768 00054 06023

-123.253 40.9764 00055 06105

-119.621 37.6995 00058 06043

Figure 3. Zip Code File (zipcodes)
A-4

File Name: cty_cntr

File Type: SAS®

Variables and Structure

Name Type* Description

FIPS A5 State and county FIPS codes

Cyname A25 County Name

AvgLat N Latitude of the county centroid

AvgLon N Longitude of the county centroid (negative for West)

Stname A20 State Name

Area_mi2 N Area of County (square miles)

Rad_mi N Radius of County (miles)

*Ax=character string of length x, N=numeric

Sample records

01001 Autauga 32.4967 -86.5162 Alabama 597 14

01003 Baldwin 30.6183 -87.7776 Alabama 1589 22

01005 Barbour 31.8521 -85.2971 Alabama 884 17

01007 Bibb 33.0190 -87.0847 Alabama 625 14

01009 Blount 33.9834 -86.5568 Alabama 643 14

01011 Bullock 32.0948 -85.7230 Alabama 625 14

01013 Butler 31.7685 -86.6697 Alabama 779 16

01015 Calhoun 33.7048 -85.8266 Alabama 611 14

01017 Chambers 32.8743 -85.2889 Alabama 596 14

01019 Cherokee 34.1673 -85.6360 Alabama 553 13

01021 Chilton 32.8601 -86.6811 Alabama 695 15

01023 Choctaw 31.9981 -88.2686 Alabama 909 17

01025 Clarke 31.6937 -87.8321 Alabama 1230 20

01027 Clay 33.2497 -85.8423 Alabama 605 14

01029 Cleburne 33.6396 -85.5005 Alabama 561 13

01031 Coffee 31.3612 -85.9429 Alabama 680 15

01033 Colbert 34.7323 -87.7110 Alabama 589 14

01035 Conecuh 31.4348 -86.9805 Alabama 854 16

01037 Coosa 32.9756 -86.1582 Alabama 657 14

01039 Covington 31.2736 -86.3953 Alabama 1038 18

01041 Crenshaw 31.7370 -86.2985 Alabama 611 14

01043 Cullman 34.1542 -86.8498 Alabama 738 15

01045 Dale 31.4013 -85.6303 Alabama 561 13

01047 Dallas 32.3727 -87.0579 Alabama 975 18

01049 DeKalb 34.4634 -85.7886 Alabama 778 16

01051 Elmore 32.5648 -86.2204 Alabama 622 14

01053 Escambia 31.0848 -87.2756 Alabama 951 17

01055 Etowah 34.0185 -86.0205 Alabama 542 13

Figure 4. County File (cty_cntr)
A-5

File Name: st_cntr

File Type: SAS®

Variables and Structure

Name Type* Description

StFips A2 State FIPS (code)

State A2 State Name (2-letter abbreviation)

 *Ax=character string of length x, N=numeric

Sample records

01 AL

04 AZ

05 AR

06 CA

08 CO

09 CT

10 DE

11 DC

12 FL

13 GA

16 ID

17 IL

18 IN

19 IA

20 KS

21 KY

22 LA

23 ME

24 MD

25 MA

26 MI

27 MN

28 MS

29 MO

30 MT

31 NE

32 NV

33 NH

34 NJ

35 NM

36 NY

37 NC

38 ND

39 OH

40 OK

41 OR

42 PA

44 RI

45 SC

46 SD

47 TN

48 TX

Figure 5. State File (st_cntr)
A-6

File Name: counties

File Type: SAS®

Variables and Structure

Name Type* Description

County N County FIPS code

State N State FIPS code

Segment N County Segment Number

Density N Density for lower resolution map

X N Unprojected longitude in radians

Y N Unprojected latitude in radians

*Ax=character string of length x, N=numeric

Sample records

1 1 1 6 1.51449 0.57006

1 1 1 3 1.51343 0.57004

1 1 1 3 1.51344 0.57081

1 1 1 6 1.51239 0.57081

1 1 1 6 1.51191 0.57082

1 1 1 0 1.50819 0.57084

1 1 1 6 1.50818 0.56884

1 1 1 6 1.50818 0.56879

1 1 1 0 1.50816 0.56566

1 1 1 6 1.50846 0.56550

1 1 1 6 1.50858 0.56549

1 1 1 6 1.50871 0.56547

1 1 1 6 1.50882 0.56550

1 1 1 6 1.50892 0.56559

1 1 1 3 1.50902 0.56557

1 1 1 6 1.50902 0.56545

1 1 1 6 1.50903 0.56533

1 1 1 6 1.50905 0.56522

1 1 1 6 1.50906 0.56510

1 1 1 6 1.50916 0.56503

1 1 1 6 1.50925 0.56492

1 1 1 6 1.50933 0.56485

1 1 1 6 1.50945 0.56490

1 1 1 6 1.50955 0.56486

1 1 1 6 1.50957 0.56475

1 1 1 6 1.50955 0.56464

1 1 1 6 1.50956 0.56453

1 1 1 0 1.50966 0.56451

1 1 1 6 1.50970 0.56450

1 1 1 6 1.50977 0.56449

Figure 6. Counties File (counties)
A-7

File Name: bound6File Type: SAS®

Variables and Structure

Name Type* Description

Xmax N Maximum x-valueXmin N Minimum x-valueYmax N Maximum y-valueYmin N Minimum y-valueSegct N Segment countStCt N Start countBegSeg N Beginning segmentEndSeg N Ending segmentBegSt N Beginning stateEndSt N Ending stateCounty N County FIPS codeState N State FIPS codeSegment N County Segment Number*Ax=character string of length x, N=numeric

Sample records1.51703 1.50816 0.57084 0.56387 164 164 1 164 1 . 1 1 11.53639 1.52492 0.54660 0.52746 429 592 165 593 1 . 3 1 11.49658 1.48441 0.56109 0.55183 186 777 594 779 1 . 5 1 11.52579 1.51627 0.58025 0.57299 44 820 780 823 1 . 7 1 11.51780 1.50627 0.59795 0.58931 202 1021 824 1025 1 . 9 1 11.50097 1.49068 0.56380 0.55641 87 1107 1026 1112 1 . 11 1 1

Figure 7. Boundary File (bound6)
A-8

File Name: cntyctr2

File Type: SAS®

Variables and Structure

Name Type* Description

FIPST N State FIPS codes.

FIPCNTY N County FIPS code

State A2 State (2-letter abbreviation)

Lon N Longitude of the county centroid (negative for West)

Lat N Latitude of the county centroid

County A25 County Name

TrueCnty A25 True County Name

*Ax=character string of length x, N=numeric

Sample records

1 1 AL 86.6642 32.5245 AUTAUGA AUTAUGA

1 3 AL 87.7021 30.7599 BALDWIN BALDWIN

1 5 AL 85.4021 31.8822 BARBOUR BARBOUR

1 7 AL 87.1486 33.0384 BIBB BIBB

1 9 AL 86.6334 34.0127 BLOUNT BLOUNT

1 11 AL 85.7047 32.0816 BULLOCK BULLOCK

1 13 AL 86.6773 31.7440 BUTLER BUTLER

1 15 AL 85.8380 33.7621 CALHOUN CALHOUN

1 17 AL 85.3594 32.9185 CHAMBERS CHAMBERS

1 19 AL 85.6211 34.2320 CHEROKEE CHEROKEE

1 21 AL 86.6969 32.8655 CHILTON CHILTON

1 23 AL 88.2019 32.0040 CHOCTAW CHOCTAW

1 25 AL 87.8198 31.5915 CLARKE CLARKE

1 27 AL 85.9075 33.2946 CLAY CLAY

1 29 AL 85.5963 33.7168 CLEBURNE CLEBURNE

1 31 AL 85.9928 31.4006 COFFEE COFFEE

1 33 AL 87.7832 34.7294 COLBERT COLBERT

1 35 AL 87.0479 31.4721 CONECUH CONECUH

1 37 AL 86.2590 32.9292 COOSA COOSA

1 39 AL 86.4441 31.2610 COVINGTON COVINGTON

1 41 AL 86.3228 31.7458 CRENSHAW CRENSHAW

1 43 AL 86.7850 34.0858 CULLMAN CULLMAN

1 45 AL 85.6035 31.4077 DALE DALE

1 47 AL 87.1441 32.3880 DALLAS DALLAS

1 49 AL 85.8158 34.5299 DEKALB DE KALB

1 51 AL 86.1442 32.5897 ELMORE ELMORE

1 53 AL 87.1521 31.1279 ESCAMBIA ESCAMBIA

1 55 AL 86.0353 34.0211 ETOWAH ETOWAH

Figure 8. County Mapping File (cntyctr2)
A-9

File Name: trctarryFile Type: SAS®

Variables and Structure

Name Type* Description

FIPS A5 State and county FIPS codes.T1 ... T1652 A6 Random array of tract numbersN N missing or = 1653*Ax=character string of length x, N=numeric

Sample records (including variables T1 through T10 only)01001 20300 21000 20100 20700 20400 21100 20800 20200 20900 2060001003 10902 10400 11100 11202 10600 11300 10300 11600 10703 1140101005 950700 950600 950500 950300 950400 950100 950200 950800 95090001007 951300 951600 951400 95150001009 50400 50300 50600 50500 50200 50102 50101 5070001011 952300 952400 952200 95210001013 952800 953300 953100 953200 952700 953400 952900 953500 95300001015 2500 1700 2600 1000 1600 1800 2100 1900 1300 20001017 954100 954600 954200 953800 954300 954700 954000 953700 954400 95390001019 955800 955900 955700 956100 95600001021 60402 60700 60500 60102 60200 60101 60300 60600 6040101023 956700 956800 957000 95690001025 958000 957900 957500 957800 957600 95770001027 959200 959000 958900 95910001029 959500 959600 959700 95980001031 10400 10800 11000 11100 10600 10700 10300 10900 10200 1130001033 20400 21000 20100 20700 20500 20600 20800 20900 20200 2030001035 960200 960300 960700 960600 960400 96050001037 961000 961200 96110001039 961600 962700 962600 962100 962500 961900 962800 962900 961700 96240001041 963600 963400 963700 963800 963900 96350001043 964600 965200 964400 964900 964300 965700 965300 965400 965000 964100

Figure 9. Tract Array File (trctarry)
A-10

File Name: tractinf

File Type: SAS®

Variables and Structure

Name Type* Description

FIPS A5 State and County FIPS code

Tract A6 Tract Identification Number

TrLon N Longitude of the tract centroid

TrLat N Latitude of the tract centroid

TrRad N Radius of the tract 

Uflag N Urban/Rural flag. Values: 1 (urban), 2 (rural).

*Ax=character string of length x, N=numeric.

Sample records

01001 20100 -86.486433 32.474244 1.77 2

01001 20200 -86.472171 32.471439 1.03 2

01001 20300 -86.45861 32.474265 1.31 2

01001 20400 -86.443581 32.467688 1.43 2

01001 20500 -86.427195 32.449808 2.33 2

01001 20600 -86.476381 32.44054 1.64 2

01001 20700 -86.450539 32.448456 2.71 2

01001 20800 -86.499096 32.521553 10.07 2

01001 20900 -86.510556 32.639226 9.66 2

01001 21000 -86.749412 32.610292 11.12 2

01001 21100 -86.703688 32.466033 12.51 2

01003 10100 -87.777357 31.067326 17.93 2

01003 10200 -87.679484 30.954101 8.39 2

01003 10300 -87.829813 30.822099 10.81 2

01003 10400 -87.6968 30.759083 15.37 2

01003 10500 -87.777433 30.89022 2.39 2

01003 10600 -87.774911 30.861673 2.41 2

01003 10701 -87.895933 30.674223 7.20 2

01003 10702 -87.894121 30.640161 4.27 2

01003 10703 -87.838217 30.629101 6.67 2

01003 10800 -87.900319 30.594581 5.03 2

01003 10901 -87.680218 30.588978 10.32 2

01003 10902 -87.726362 30.549474 5.95 2

01003 11000 -87.707953 30.49058 6.46 2

01003 11100 -87.84749 30.502787 5.05 2

01003 11201 -87.894621 30.533266 2.18 2

01003 11202 -87.904921 30.512735 4.82 2

01003 11300 -87.880924 30.437874 7.94 2

01003 11401 -87.759805 30.390277 11.08 2

01005 950100 -85.170708 31.977997 12.79 2

01005 950200 -85.450932 31.887413 12.85 2

Figure 10. Tract Information File, including location of centroid and urban/rural flag

(tractinf)
A-11

File Name: def_scc.txtFile Type: ASCII Text; Non-header data begins on line #1.Variables and Structure

Name Type* Column Length Decimals Description

SCC C 1 10 Source Category CodeAvgHt N 12 14 10 Default Stack Height (in meters)AvgDiam N 27 14 10 Default Stack Diameter (in meters)AvgVel N 42 14 10 Default Stack Exit Gas Velocity (in meters/second)AvgTemp N 57 16 10 Default Stack Exit Gas Temperature (in Kelvin) defflag C 74 6 Default data flag that provides the source of the

default data (in the sample file, SCCNTI refers todefaults used in generating the 1996 NTI, andSCCGEN was based on averages computed from1996 NTI data).

 *C = character, N = numeric.

Sample of File Contents01020060 26.2006604013 0.8778257557 17.9984759970 308.1833333333 SCCgen10000199 12.3992887986 0.7680975362 16.9987299975 547.1833333333 SCCgen10100101 91.4063474750 4.5719527517 23.4699289010 421.6769452153 SCCgen10100201 252.3749047498 6.5532131064 28.9560579121 433.3333333333 SCCNTI10100202 137.1602743205 5.1816103632 23.1648463297 413.8888888889 SCCNTI10100203 137.4650749302 4.4958089916 28.0416560833 427.2222222222 SCCNTI10100204 67.0561341123 2.7523495047 11.5824231648 436.1111111111 SCCNTI10100205 77.8547842810 3.8948728183 30.0310461192 461.0396825397 SCCgen

Figure 11. SCC-Based Default Stack Parameter File (def_scc.txt)
A-12

File Name: def_sic.txtFile Type: ASCII Text; Non-header data begins on line #1.Variables and Structure

Name Type* Column Length Decimals Description

SIC C 1 5 State and County FIPS codeAvgHt N 10 14 10 Default Stack Height (in meters)AvgDiam N 25 14 10 Default Stack Diameter (in meters)AvgVel N 40 14 10 Default Stack Exit Gas Velocity (meters/second)AvgTemp N 55 16 10 Default Stack Exit Gas Temperature (in Kelvin) defflag C 72 6 Default data flag that provides the source of the

default data (in the sample file, SICNTI refers todefaults used in generating the 1996 NTI, andSICGEN was based on averages computed from1996 NTI data).

*C = character, N = numeric.

Sample of File Contents0782 20.0297543452 0.9579447730 8.0619761240 476.1904761905 SICgen0851 7.3152146304 0.8534417069 12.0640081280 450.0000000000 SICgen0913 3.6576073152 4.1148082296 0.7040894082 316.6666666667 SICgen0971 9.3016737758 0.4620269241 143.7890525781 870.1157407407 SICgen1009 3.0480060960 0.2011684023 3.9989839980 295.5555555556 SICgen1011 38.4018288037 2.4384048768 17.9984759970 360.1833333333 SICNTI1021 18.3024786832 0.8445422628 13.3421590655 307.9009249972 SICgen1031 21.0312420625 0.5577851156 46.9392938786 294.4444444444 SICgen

Figure 12. SIC-Based Default Stack Parameters File (def_sic.txt)
A-13

File Name: varlist.txt

File Type: ASCII Text; Non-header data begins on line #1.

Variables and Structure

Name Type* Column Length Description

Var C 1 20 Name of variable to be retained in inventory

Keep C 22 1 Keep flag (‘Y’ to retain variable)

*C=character, N=numeric

Sample of File Contents

EMISRELPID N

EMISUNITID N

EMISPROCID N

FIPFLAG Y

LFLAG Y

LLPROB Y

MACT_CODE_ASSIGNMENT Y

NTI_SITE_ID N

SITENAME N

NTI_UNIQUE_ID N

DEFAULT_DIA_FLAG N

FLOWRATE N

DEFAULT_FLWRT_FLAG N

DEFAULT_HGT_FLAG N

DEFAULT_VEL_FLAG N

DEFAULT_TEMP_FLAG N

UTM_Z N

X N

XY_TYPE N

Y N

ZIP_CODE N

EMISSIONTYPE N

Figure 13. Additional Variables File (varlist.txt)
A-14

File Name: haptabl_XXX.txtFile Type: ASCII Text; Non-header data begins on line #2.Variables and Structure

Name Type* Column Length Decimals Description

POLLDESC C 1 45 Individual chemical name, 

prior to aggregation

SAROADDC C 47 50 Name of the aggregated SAROAD codePOLLCODE C 100 10 Code identifying individual chemical in inventory

(typically a Chemical Abstracts System [CAS] No.)

REACT N 113 1 Reactivity or Particle Size Class KEEP C 121 1 Flag determining whether chemical will be modeledSAROAD C 128 5 Defines a single chemical or group of chemicals for

modeling. Can be an historic SAROAD code, orarbitrarily assigned. 

FACTOR N 135 7 4 Emission adjustment factorNTI_HAP C 144 3 Code identifying HAP on the Clean Air Act HAP

list. Describes HAP code used only in growth andcontrol program

*C = character, N = numeric.

Sample of File Contents

POLLDESC HAPDESC POLLCODE React Keep SaroadFactor NTI(Dichloromethyl) benzene (Dichloromethyl) benzene - nonHAP 98873 N 1.0000Pyrene 16-PAH, fine PM 129000 2 N 80232 1.0000 16516-PAH 16-PAH, fine PM 40 2 N 80232 1.0000 165Benzofluoranthenes 16-PAH, fine PM 56832736 2 N 80232 1.0000 165Phenanthrene 16-PAH, fine PM 85018 2 N 80232 1.0000 165Benzo[g,h,i,]perylene 16-PAH, fine PM 191242 2 N 80232 1.0000 165Benzo[b+k]fluoranthene 16-PAH, fine PM 102 2 N 80232 1.0000 165Indeno[1,2,3-c,d]pyrene 16-PAH, fine PM 193395 2 N 80232 1.0000 165

Figure 14. HAP Table File (haptabl_XXX.txt)
A-15

Table 1. HAP Table File Used to Process 1996 NTI Point and Non-point Source Emissions Data (haptabl_point_area.txt)

POLLDESC HAPDESC POLLCODE React Keep SaroadFactor NTI

(Dichloromethyl) benzene (Dichloromethyl) benzene - nonHAP 98873 N 1.0000Pyrene 16-PAH, fine PM 129000 2 N 80232 1.0000 16516-PAH 16-PAH, fine PM 40 2 N 80232 1.0000 165Benzofluoranthenes 16-PAH, fine PM 56832736 2 N 80232 1.0000 165Phenanthrene 16-PAH, fine PM 85018 2 N 80232 1.0000 165Benzo[g,h,i,]perylene 16-PAH, fine PM 191242 2 N 80232 1.0000 165Benzo[b+k]fluoranthene 16-PAH, fine PM 102 2 N 80232 1.0000 165Indeno[1,2,3-c,d]pyrene 16-PAH, fine PM 193395 2 N 80232 1.0000 165Benzo[b]fluoranthene 16-PAH, fine PM 205992 2 N 80232 1.0000 165Benzo[k]fluoranthene 16-PAH, fine PM 207089 2 N 80232 1.0000 165Chrysene 16-PAH, fine PM 218019 2 N 80232 1.0000 165Benzo[a]pyrene 16-PAH, fine PM 50328 2 N 80232 1.0000 165Dibenzo[a,h]anthracene 16-PAH, fine PM 53703 2 N 80232 1.0000 165Benz[a]anthracene 16-PAH, fine PM 56553 2 N 80232 1.0000 1651-Phenanthrene 16-PAH, fine PM 283 2 N 80232 1.0000 165Acenaphthalene 16-PAH, fine PM 78 2 N 80232 1.0000 165Acenaphthene 16-PAH, fine PM 83329 2 N 80232 1.0000 165Acenaphthylene 16-PAH, fine PM 208968 2 N 80232 1.0000 165Anthracene 16-PAH, fine PM 120127 2 N 80232 1.0000 165Fluoranthene 16-PAH, fine PM 206440 2 N 80232 1.0000 165Fluorene 16-PAH, fine PM 86737 2 N 80232 1.0000 165Naphthalene 16-PAH, fine PM 91203 2 N 80232 1.0000 1652,6-Dimethyl-4-heptanone 2,6-Dimethyl-4-heptanone - nonHAP 108838 N 1.00004-Vinylcyclohexene 4-Vinylcyclohexene - nonHAP 100403 N 1.0000Benzo[b+k]fluoranthene 7-PAH, fine PM 102 2 Y 80233 1.0000 165Indeno[1,2,3-c,d]pyrene 7-PAH, fine PM 193395 2 Y 80233 1.0000 165Benzo[b]fluoranthene 7-PAH, fine PM 205992 2 Y 80233 1.0000 165Benzo[k]fluoranthene 7-PAH, fine PM 207089 2 Y 80233 1.0000 165Chrysene 7-PAH, fine PM 218019 2 Y 80233 1.0000 165Benzo[a]pyrene 7-PAH, fine PM 50328 2 Y 80233 1.0000 165Dibenzo[a,h]anthracene 7-PAH, fine PM 53703 2 Y 80233 1.0000 165Benz[a]anthracene 7-PAH, fine PM 56553 2 Y 80233 1.0000 1657-PAH 7-PAH, fine PM 75 2 Y 80233 1.0000 165Benzofluoranthenes 7-PAH, fine PM 56832736 2 Y 80233 1.0000 165Acetaldehyde Acetaldehyde 75070 5 Y 43503 1.0000 37Acetamide Acetamide 60355 7 N 80101 1.0000 38Acetonitrile Acetonitrile 75058 1 N 70016 1.0000 39Acetophenone Acetophenone 98862 1 N 80103 1.0000 402-Acetylaminofluorene Acetylaminofluorene, 2- , fine PM 53963 2 N 53963 1.0000 23Acrolein Acrolein 107028 5 Y 43505 1.0000 41Acrylamide Acrylamide 79061 7 N 80105 1.0000 42Acrylic acid Acrylic acid 79107 5 N 43407 1.0000 43Acrylonitrile Acrylonitrile 107131 1 Y 43704 1.0000 44Allyl chloride Allyl chloride 107051 5 N 80108 1.0000 454-Aminobiphenyl Aminobiphenyl, 4- 92671 N 92671 1.0000 33Aniline Aniline 62533 8 N 45701 1.0000 46
Table 1. Point and Area HAP Table File: Used to Process the 1996 NTI Point and Non-point Source Emissions Data

(haptabl_point_area.txt) (continued)

A-16

o-Anisidine Anisidine, o- 90040 7 N 80110 1.0000 149ANTIMONY TRICHLORIDE Antimony Compounds, coarse PM 10025919 3 N 80311 0.2402 47Antimony trioxide Antimony Compounds, coarse PM 1309644 3 N 80311 0.3759 47Antimony Oxide Antimony Compounds, coarse PM 1327339 3 N 80311 0.3570 47ANTIMONY TRISULFIDE Antimony Compounds, coarse PM 1345046 3 N 80311 0.3226 47Antimony Pentafluoride Antimony Compounds, coarse PM 619 3 N 80311 0.2528 47Antimony Antimony Compounds, coarse PM 7440360 3 N 80311 0.4500 47Antimony & Compounds Antimony Compounds, coarse PM 92 3 N 80311 0.4500 47

Antimony Compounds, coarse PM ANTCMPS 3 N 80311 0.4500 47

Antimony & Compounds Antimony Compounds, coarse PM 1 3 N 80311 0.4500 47ANTIMONY TRICHLORIDE Antimony Compounds, fine PM 10025919 2 N 80111 0.2935 47Antimony trioxide Antimony Compounds, fine PM 1309644 2 N 80111 0.4594 47Antimony Oxide Antimony Compounds, fine PM 1327339 2 N 80111 0.4363 47ANTIMONY TRISULFIDE Antimony Compounds, fine PM 1345046 2 N 80111 0.3942 47Antimony Pentafluoride Antimony Compounds, fine PM 619 2 N 80111 0.3089 47Antimony Antimony Compounds, fine PM 7440360 2 N 80111 0.5500 47Antimony & Compounds Antimony Compounds, fine PM 92 2 N 80111 0.5500 47

Antimony Compounds, fine PM ANTCMPS 2 N 80111 0.5500 47

Antimony & Compounds Antimony Compounds, fine PM 1 2 N 80111 0.5500 47ARSENIC PENTOXIDE Arsenic Cmpds. (inorganic, incl. arsine), coarse PM 1303282 3 Y 80312 0.2673 48ARSENIC ACID Arsenic Cmpds. (inorganic, incl. arsine), coarse PM 1327522 3 Y 80312 0.2164 48Arsenic Trioxide Arsenic Cmpds. (inorganic, incl. arsine), coarse PM 1327533 3 Y 80312 0.3105 48Arsenic compounds (inorganic) Arsenic Cmpds. (inorganic, incl. arsine), coarse PM 601 3 Y 80312 0.4100 48Arsenic Arsenic Cmpds. (inorganic, incl. arsine), coarse PM 7440382 3 Y 80312 0.4100 48Arsine Arsenic Cmpds. (inorganic, incl. arsine), coarse PM 7784421 3 Y 80312 0.3941 48Arsenic & Compounds (inorganic including arsinArsenic Cmpds. (inorganic, incl. arsine), coarse PM 93 3 Y 80312 0.4100 48Arsenic & Compounds (inorganic including arsinArsenic Cmpds. (inorganic, incl. arsine), coarse PM 2 3 Y 80312 0.4100 48ARSENIC PENTOXIDE Arsenic Compounds (inorganic, incl. arsine), fine PM 1303282 2 Y 80112 0.3846 48ARSENIC ACID Arsenic Compounds (inorganic, incl. arsine), fine PM 1327522 2 Y 80112 0.3114 48Arsenic Trioxide Arsenic Compounds (inorganic, incl. arsine), fine PM 1327533 2 Y 80112 0.4469 48Arsenic compounds (inorganic) Arsenic Compounds (inorganic, incl. arsine), fine PM 601 2 Y 80112 0.5900 48Arsenic Arsenic Compounds (inorganic, incl. arsine), fine PM 7440382 2 Y 80112 0.5900 48Arsine Arsenic Compounds (inorganic, incl. arsine), fine PM 7784421 2 Y 80112 0.5671 48Arsenic & Compounds (inorganic including arsinArsenic Compounds (inorganic, incl. arsine), fine PM 93 2 Y 80112 0.5900 48Arsenic & Compounds (inorganic including arsinArsenic Compounds (inorganic, incl. arsine), fine PM 2 2 Y 80112 0.5900 48Asbestos Asbestos, coarse PM 1332214 3 N 1.0000 49Asbestos Asbestos, fine PM 1332214 2 N 1.0000 49Benzaldehyde Benzaldehyde - nonHAP 100527 N 1.0000Benzene Benzene (including benzene from gasoline) 71432 1 Y 45201 1.0000 50Benzidine Benzidine, gas 92875 7 N 80115 1.0000 51Benzoic acid Benzoic acid - nonHAP 65850 N 1.0000Benzotrichloride Benzotrichloride 98077 1 N 80116 1.0000 52Benzoyl chloride Benzoyl chloride - nonHAP 98884 N 1.0000Benzyl chloride Benzyl chloride 100447 1 N 45810 1.0000 53Beryllium & Compounds Beryllium Compounds, coarse PM 109 3 Y 80318 0.3200 54Beryllium Oxide Beryllium Compounds, coarse PM 1304569 3 Y 80318 0.1153 54BERYLLIUM SULFATE Beryllium Compounds, coarse PM 13510491 3 Y 80318 0.0275 54
Table 1. Point and Area HAP Table File: Used to Process the 1996 NTI Point and Non-point Source Emissions Data

(haptabl_point_area.txt) (continued)

A-17

Beryllium Beryllium Compounds, coarse PM 7440417 3 Y 80318 0.3200 54BERYLLIUM FLUORIDE Beryllium Compounds, coarse PM 7787497 3 Y 80318 0.0613 54Beryllium & Compounds Beryllium Compounds, coarse PM 3 3 Y 80318 0.3200 54Beryllium & Compounds Beryllium Compounds, fine PM 109 2 Y 80118 0.6800 54Beryllium Oxide Beryllium Compounds, fine PM 1304569 2 Y 80118 0.2450 54BERYLLIUM SULFATE Beryllium Compounds, fine PM 13510491 2 Y 80118 0.0583 54Beryllium Beryllium Compounds, fine PM 7440417 2 Y 80118 0.6800 54BERYLLIUM FLUORIDE Beryllium Compounds, fine PM 7787497 2 Y 80118 0.1304 54Beryllium & Compounds Beryllium Compounds, fine PM 3 2 Y 80118 0.6800 54Biphenyl Biphenyl 92524 9 N 45226 1.0000 56Bis(2-ethylhexyl)phthalate Bis(2-ethylhexyl)phthalate (DEHP), gas 117817 1 N 45470 1.0000 57Bis(chloromethyl)ether Bis(chloromethyl) ether 542881 1 N 80121 1.0000 58Bisphenol A Bisphenol A - nonHAP 80057 N 1.0000Bromoform Bromoform 75252 1 N 80122 1.0000 591,3-Butadiene Butadiene, 1,3- 106990 7 Y 43218 1.0000 10CADMIUM CHLORIDE Cadmium Compounds, coarse PM 10108642 3 Y 80324 0.1471 60CADMIUM SULFATE Cadmium Compounds, coarse PM 10124364 3 Y 80324 0.1294 60CADMIUM NITRATE Cadmium Compounds, coarse PM 10325947 3 Y 80324 0.1141 60Cadmium & Compounds Cadmium Compounds, coarse PM 125 3 Y 80324 0.2400 60Cadmium Oxide Cadmium Compounds, coarse PM 1306190 3 Y 80324 0.2101 60CADMIUM SULFIDE Cadmium Compounds, coarse PM 1306236 3 Y 80324 0.1867 60Cadmium Cadmium Compounds, coarse PM 7440439 3 Y 80324 0.2400 60CADMIUM IODIDE Cadmium Compounds, coarse PM 7790809 3 Y 80324 0.0737 60Cadmium & Compounds Cadmium Compounds, coarse PM 4 3 Y 80324 0.2400 60CADMIUM CHLORIDE Cadmium Compounds, fine PM 10108642 2 Y 80124 0.4660 60CADMIUM SULFATE Cadmium Compounds, fine PM 10124364 2 Y 80124 0.4098 60CADMIUM NITRATE Cadmium Compounds, fine PM 10325947 2 Y 80124 0.3613 60Cadmium & Compounds Cadmium Compounds, fine PM 125 2 Y 80124 0.7600 60Cadmium Oxide Cadmium Compounds, fine PM 1306190 2 Y 80124 0.6652 60CADMIUM SULFIDE Cadmium Compounds, fine PM 1306236 2 Y 80124 0.5912 60Cadmium Cadmium Compounds, fine PM 7440439 2 Y 80124 0.7600 60CADMIUM IODIDE Cadmium Compounds, fine PM 7790809 2 Y 80124 0.2332 60Cadmium & Compounds Cadmium Compounds, fine PM 4 2 Y 80124 0.7600 60Calcium Cyanamide Calcium Cyanamide 156627 N 1.0000 61Captan Captan, gas 133062 7 N 80127 1.0000 62Carbaryl Carbaryl, gas 63252 5 N 80128 1.0000 63Carbon disulfide Carbon disulfide 75150 1 N 43934 1.0000 64Carbon tetrachloride Carbon tetrachloride 56235 1 Y 43804 1.0000 65Carbonyl sulfide Carbonyl sulfide 463581 1 N 43933 1.0000 66Catechol Catechol 120809 5 N 80132 1.0000 67Chloramben Chloramben 133904 N 1.0000 68Chlordane Chlordane, gas 57749 1 N 80134 1.0000 69Chlorine Chlorine 7782505 1 N 80135 1.0000 70Chloroacetic acid Chloroacetic acid 79118 1 N 80136 1.0000 712-Chloroacetophenone Chloroacetophenone, 2- 532274 1 N 1.0000 24Chlorobenzene Chlorobenzene 108907 1 N 45801 1.0000 178Chlorobenzilate Chlorobenzilate, fine PM 510156 2 N 1.0000 73
Table 1. Point and Area HAP Table File: Used to Process the 1996 NTI Point and Non-point Source Emissions Data

(haptabl_point_area.txt) (continued)

A-18

Chloroform Chloroform 67663 1 Y 43803 1.0000 74Chloromethyl methyl ether Chloromethyl methyl ether 107302 1 N 80139 1.0000 75Chloroprene Chloroprene 126998 6 N 43862 1.0000 76Chlorotoluene Chlorotoluene - nonHAP 25168052 N 1.0000Calcium chromate Chromium Compounds, fine PM 13765190 2 Y 80141 0.2366 77SODIUM CHROMATE(VI) Chromium Compounds, coarse PM 10034829 3 Y 80341 0.0931 77CHROMIUM CHLORIDE Chromium Compounds, coarse PM 10060125 3 Y 80341 0.0952 77Chromic Sulfate Chromium Compounds, coarse PM 10101538 3 Y 80341 0.0496 77Barium chromate Chromium Compounds, coarse PM 10294403 3 Y 80341 0.0595 77Sodium dichromate Chromium Compounds, coarse PM 10588019 3 Y 80341 0.1151 77POTAS ZNC CHROM HYDR Chromium Compounds, coarse PM 11103869 3 Y 80341 0.0632 77CHROMIC ACID*OBSOLET Chromium Compounds, coarse PM 11115745 3 Y 80341 0.1278 77CHROMIUM DIOXIDE Chromium Compounds, coarse PM 12018018 3 Y 80341 0.1795 77CHROMIUM ZINC OXIDE Chromium Compounds, coarse PM 12018198 3 Y 80341 0.1292 77ZINC CHROMATES Chromium Compounds, coarse PM 1308130 3 Y 80341 0.0831 77CHROMIUM HYDROXIDE Chromium Compounds, coarse PM 1308141 3 Y 80341 0.1464 77Chromic Oxide Chromium Compounds, coarse PM 1308389 3 Y 80341 0.1984 77Chromium trioxide Chromium Compounds, coarse PM 1333820 3 Y 80341 0.1508 77Zinc Chromate Chromium Compounds, coarse PM 13530659 3 Y 80341 0.0831 77CHROMIC ACID Chromium Compounds, coarse PM 13530682 3 Y 80341 0.1278 77Chromium & Compounds Chromium Compounds, coarse PM 136 3 Y 80341 0.2900 77LITHIUM CHROMATE Chromium Compounds, coarse PM 14307358 3 Y 80341 0.1161 77CHROMYL CHLORIDE Chromium Compounds, coarse PM 14977618 3 Y 80341 0.0974 77Chromium III Chromium Compounds, coarse PM 16065831 3 Y 80341 0.2900 77LEAD CHROMATE OXIDE Chromium Compounds, coarse PM 18454121 3 Y 80341 0.0276 122Chromium +6 Chromium Compounds, coarse PM 18540299 3 Y 80341 0.2900 77ZINC CHROMITE Chromium Compounds, coarse PM 50922297 3 Y 80341 0.0813 77Chromium Chromium Compounds, coarse PM 7440473 3 Y 80341 0.2900 77Chromic Acid Chromium Compounds, coarse PM 7738945 3 Y 80341 0.1278 77Lead chromate Chromium Compounds, coarse PM 7758976 3 Y 80341 0.0467 122CHROMIC ACID,(H2CR04 Chromium Compounds, coarse PM 7775113 3 Y 80341 0.1278 77POTASSIUM DICHROMATE Chromium Compounds, coarse PM 7778509 3 Y 80341 0.1025 77CHROMYL FLUORIDE Chromium Compounds, coarse PM 7788967 3 Y 80341 0.1236 77POTASSIUM CHROMATE Chromium Compounds, coarse PM 7789006 3 Y 80341 0.0776 77Strontium chromate Chromium Compounds, coarse PM 7789062 3 Y 80341 0.0741 77AMMONIUM DICHROMATE Chromium Compounds, coarse PM 7789095 3 Y 80341 0.1197 77Calcium chromate Chromium Compounds, coarse PM 13765190 3 Y 80341 0.0966 77Chromium & Compounds Chromium Compounds, coarse PM 5 3 Y 80341 0.2900 77SODIUM CHROMATE(VI) Chromium Compounds, fine PM 10034829 2 Y 80141 0.2279 77CHROMIUM CHLORIDE Chromium Compounds, fine PM 10060125 2 Y 80141 0.2331 77Chromic Sulfate Chromium Compounds, fine PM 10101538 2 Y 80141 0.1213 77Barium chromate Chromium Compounds, fine PM 10294403 2 Y 80141 0.1458 77Sodium dichromate Chromium Compounds, fine PM 10588019 2 Y 80141 0.2819 77POTAS ZNC CHROM HYDR Chromium Compounds, fine PM 11103869 2 Y 80141 0.1548 77CHROMIC ACID*OBSOLET Chromium Compounds, fine PM 11115745 2 Y 80141 0.3128 77CHROMIUM DIOXIDE Chromium Compounds, fine PM 12018018 2 Y 80141 0.4395 77CHROMIUM ZINC OXIDE Chromium Compounds, fine PM 12018198 2 Y 80141 0.3164 77
Table 1. Point and Area HAP Table File: Used to Process the 1996 NTI Point and Non-point Source Emissions Data

(haptabl_point_area.txt) (continued)

A-19

ZINC CHROMATES Chromium Compounds, fine PM 1308130 2 Y 80141 0.2036 77CHROMIUM HYDROXIDE Chromium Compounds, fine PM 1308141 2 Y 80141 0.3583 77Chromic Oxide Chromium Compounds, fine PM 1308389 2 Y 80141 0.4858 77Chromium trioxide Chromium Compounds, fine PM 1333820 2 Y 80141 0.3692 77Zinc Chromate Chromium Compounds, fine PM 13530659 2 Y 80141 0.2036 77CHROMIC ACID Chromium Compounds, fine PM 13530682 2 Y 80141 0.3128 77Chromium & Compounds Chromium Compounds, fine PM 136 2 Y 80141 0.7100 77LITHIUM CHROMATE Chromium Compounds, fine PM 14307358 2 Y 80141 0.2842 77CHROMYL CHLORIDE Chromium Compounds, fine PM 14977618 2 Y 80141 0.2383 77Chromium III Chromium Compounds, fine PM 16065831 2 Y 80141 0.7100 77LEAD CHROMATE OXIDE Chromium Compounds, fine PM 18454121 2 Y 80141 0.0676 122Chromium +6 Chromium Compounds, fine PM 18540299 2 Y 80141 0.7100 77ZINC CHROMITE Chromium Compounds, fine PM 50922297 2 Y 80141 0.1990 77Chromium Chromium Compounds, fine PM 7440473 2 Y 80141 0.7100 77Chromic Acid Chromium Compounds, fine PM 7738945 2 Y 80141 0.3128 77Lead chromate Chromium Compounds, fine PM 7758976 2 Y 80141 0.1142 122CHROMIC ACID,(H2CR04 Chromium Compounds, fine PM 7775113 2 Y 80141 0.3128 77POTASSIUM DICHROMATE Chromium Compounds, fine PM 7778509 2 Y 80141 0.2510 77CHROMYL FLUORIDE Chromium Compounds, fine PM 7788967 2 Y 80141 0.3026 77POTASSIUM CHROMATE Chromium Compounds, fine PM 7789006 2 Y 80141 0.1901 77Strontium chromate Chromium Compounds, fine PM 7789062 2 Y 80141 0.1813 77AMMONIUM DICHROMATE Chromium Compounds, fine PM 7789095 2 Y 80141 0.2929 77Chromium & Compounds Chromium Compounds, fine PM 5 2 Y 80141 0.7100 77COBALT SULFATE Cobalt Compounds, coarse PM 10124433 3 N 80342 0.0760 78COBALT OXIDE Cobalt Compounds, coarse PM 1307966 3 N 80342 0.1573 78COBALT OXIDE-CO3O4 Cobalt Compounds, coarse PM 1308061 3 N 80342 0.1468 78COBALT SULFIDE Cobalt Compounds, coarse PM 1317426 3 N 80342 0.1295 78COBALT ALUMINATE Cobalt Compounds, coarse PM 1345160 3 N 80342 0.0666 78Cobalt & Compounds Cobalt Compounds, coarse PM 139 3 N 80342 0.2000 78COBALT CARBONATE 1:1 Cobalt Compounds, coarse PM 513791 3 N 80342 0.0991 78COBALT NAPHTHA Cobalt Compounds, coarse PM 61789513 3 N 80342 0.0290 78Cobalt Hydrocarbonyl Cobalt Compounds, coarse PM 16842038 3 N 80342 0.0689 78Cobalt Cobalt Compounds, coarse PM 7440484 3 N 80342 0.2000 78Cobalt & Compounds Cobalt Compounds, coarse PM 6 3 N 80342 0.2000 78COBALT SULFATE Cobalt Compounds, fine PM 10124433 2 N 80142 0.3042 78COBALT OXIDE Cobalt Compounds, fine PM 1307966 2 N 80142 0.6292 78COBALT OXIDE-CO3O4 Cobalt Compounds, fine PM 1308061 2 N 80142 0.5874 78COBALT SULFIDE Cobalt Compounds, fine PM 1317426 2 N 80142 0.5182 78COBALT ALUMINATE Cobalt Compounds, fine PM 1345160 2 N 80142 0.2666 78Cobalt & Compounds Cobalt Compounds, fine PM 139 2 N 80142 0.8000 78COBALT CARBONATE 1:1 Cobalt Compounds, fine PM 513791 2 N 80142 0.3964 78COBALT NAPHTHA Cobalt Compounds, fine PM 61789513 2 N 80142 0.1158 78Cobalt Hydrocarbonyl Cobalt Compounds, fine PM 16842038 2 N 80142 0.2782 78Cobalt Cobalt Compounds, fine PM 7440484 2 N 80142 0.8000 78Cobalt & Compounds Cobalt Compounds, fine PM 6 2 N 80142 0.8000 78Coke Oven Emissions Coke Oven Emissions, fine PM 140 2 Y 80411 1.0000 79Cresols (includes o, m, & p)/Cresylic Acids Cresol/Cresylic acid (mixed isomers), fine PM 331 2 N 45605 1.0000 80
Table 1. Point and Area HAP Table File: Used to Process the 1996 NTI Point and Non-point Source Emissions Data

(haptabl_point_area.txt) (continued)

A-20

o-Cresol Cresol/Cresylic acid (mixed isomers), fine PM 95487 2 N 45605 1.0000 80p-Cresol Cresol/Cresylic acid (mixed isomers), gas 106445 2 N 45605 1.0000 80m-Cresol Cresol/Cresylic acid (mixed isomers), gas 108394 2 N 45605 1.0000 80Cresol Cresol/Cresylic acid (mixed isomers), gas 1319773 2 N 45605 1.0000 80Cumene Cumene 98828 9 N 45210 1.0000 81SODIUM CYANIDE Cyanide Compounds, coarse PM 143339 3 N 80143 0.5309 82Potassium Cyanide Cyanide Compounds, coarse PM 151508 3 N 80143 0.3996 82SILVER CYANIDE Cyanide Compounds, coarse PM 506649 3 N 80143 0.1943 82ZINC CYANIDE C2N2ZH Cyanide Compounds, coarse PM 557211 3 N 80143 0.4432 82POTASSIUM FERROCYANI Cyanide Compounds, fine PM 13943583 2 N 80144 0.4238 82BENZYL CYANIDE Cyanide Compounds, fine PM 140294 2 N 80144 0.2221 82POTASS NICKEL CYANID Cyanide Compounds, fine PM 14220178 2 N 80144 0.4019 82GOLD CYANIDE Cyanide Compounds, fine PM 37187647 2 N 80144 0.1167 82COPPER CYANIDE Cyanide Compounds, fine PM 544923 2 N 80144 0.2905 82GOLD POTASSIUM CYANI Cyanide Compounds, fine PM 554074 2 N 80144 0.1806 82Cyanide Cyanide Compounds, fine PM 57125 2 N 80144 1.0000 82Cyanide & Compounds Cyanide Compounds, gas 144 1 N 80145 1.0000 82Hydrogen Cyanide Cyanide Compounds, gas 74908 1 N 80145 0.9627 822-Methyl-Propanenitrile Cyanide Compounds, gas 78820 1 N 80145 1.0000 82Cyanide & Compounds Cyanide Compounds, gas 7 1 N 80145 1.0000 822,4-Dichlorophenoxy acetic acid D, 2,4- (including salts and esters), gas 94757 1 N 80146 1.0000 19DDE (1,1-dichloro-2,2-bis(p-chlorophenyl) ethyDDE 72559 2 N 1.0000 83Dibenzofuran Dibenzofuran, gas 132649 1 N 80247 1.0000 9021,2-Dibromo-3-chloropropane Dibromo-3-chloropropane, 1,2- 96128 1 N 92672 1.0000 6Dibutyl phthalate Dibutylphthalate, gas 84742 1 N 45452 1.0000 861,4-Dichlorobenzene Dichlorobenzene,p 1,4- 106467 1 N 45807 1.0000 133,3'-Dichlorobenzidene Dichlorobenzidene, 3,3'- , gas 91941 1 N 80150 1.0000 26Dichloroethyl ether Dichloroethyl ether (Bis[2-chloroethyl]ether) 111444 5 N 80151 1.0000 871,3-Dichloropropene Dichloropropene, 1,3- 542756 4 Y 80152 1.0000 11Dichlorvos Dichlorvos 62737 4 N 80153 1.0000 88Diesel PM Diesel, coarse PM 80400 3 Y 80401 1.0000Diesel PM Diesel, fine PM 80400 2 Y 80400 1.0000Diethanolamine Diethanolamine 111422 7 N 80154 1.0000 89Diethyl sulfate Diethyl sulfate 64675 1 N 80156 1.0000 903,3'-Dimethoxybenzidine Dimethoxybenzidine, 3,3'-, gas 119904 7 N 80157 1.0000 274-Dimethylaminoazobenzene Dimethyl aminoazobenzene, 4- , fine PM 60117 2 N 92673 1.0000 34Dimethylcarbamoyl chloride Dimethyl carbamoyl chloride 79447 0 N 92674 1.0000 93N,N-Dimethylformamide Dimethyl formamide 68122 7 N 43450 1.0000 1421,1-Dimethyl hydrazine Dimethyl hydrazine, 1,1- 57147 7 N 80159 1.0000 3Dimethyl phthalate Dimethyl phthalate 131113 1 N 45451 1.0000 91Dimethyl Sulfate Dimethyl sulfate 77781 1 N 80161 1.0000 923,3'-Dimethylbenzidine Dimethylbenzidine, 3,3'- , fine PM 119937 2 N 92675 1.0000 284,6-Dinitro-o-cresol Dinitro-o-cresol, 4,6- , gas 534521 1 N 80162 1.0000 322,4-Dinitrophenol Dinitrophenol, 2,4- , gas 51285 5 N 80163 1.0000 202,4-Dinitrotoluene Dinitrotoluene, 2,4- 121142 1 N 80164 1.0000 21p-Dioxane Dioxane, 1, 4 123911 5 N 80165 1.0000 108Dioxins Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 155 2 Y 80412 0.0000 903
Table 1. Point and Area HAP Table File: Used to Process the 1996 NTI Point and Non-point Source Emissions Data

(haptabl_point_area.txt) (continued)

A-21

2,3,7,8-Tetrachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 1746016 2 Y 80412 1.0000 9031,2,3,7,8,9-hexachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 19408743 2 Y 80412 0.1000 903Pentachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 36088229 2 Y 80412 0.0500 903Pentachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 30402154 2 Y 80412 0.0495 903Octachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 3268879 2 Y 80412 0.0010 9031,2,3,4,6,7,8-heptachlorodibenzo-p-/dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 35822469 2 Y 80412 0.0100 903Octachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 39001020 2 Y 80412 0.0010 9031,2,3,4,7,8-hexachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 39227286 2 Y 80412 0.1000 9031,2,3,7,8-pentachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 40321764 2 Y 80412 0.5000 9032,3,7,8-Tetrachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 51207319 2 Y 80412 0.1000 9031,2,3,4,7,8,9-heptachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 55673897 2 Y 80412 0.0100 9032,3,4,7,8-pentachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 57117314 2 Y 80412 0.5000 9031,2,3,7,8-pentachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 57117416 2 Y 80412 0.0500 9031,2,3,6,7,8-hexachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 57117449 2 Y 80412 0.1000 9031,2,3,6,7,8-hexachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 57653857 2 Y 80412 0.1000 9032,3,7,8-TCDD TEQ Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 600 2 Y 80412 1.0000 9032,3,4,6,7,8-hexachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 60851345 2 Y 80412 0.1000 903Dibenzofurans (chlorinated) {PCDFs} Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 609 2 Y 80412 0.0000 903Dioxins, total, w/o individ. isomers reported Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 610 2 Y 80412 0.0000 9031,2,3,4,6,7,8-heptachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 67562394 2 Y 80412 0.0100 9031,2,3,4,7,8-hexachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 70648269 2 Y 80412 0.1000 9031,2,3,7,8,9-hexachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 72918219 2 Y 80412 0.1000 903Dioxins/Furans as TEQ Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 701 2 Y 80412 1.0000 903Hexachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 34465468 2 Y 80412 0.0000 903Polychlorinated dibenzo-p-dioxin, total Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 623 2 Y 80412 0.0000 903Polychlorinated dibenzofurans, total Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 624 2 Y 80412 0.0000 903Total tetrachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 41903575 2 Y 80412 0.0000 903Dioxins Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 155 2 Y 80245 1.0000 9032,3,7,8-Tetrachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 1746016 2 Y 80245 1.0000 9031,2,3,7,8,9-hexachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 19408743 2 Y 80245 0.1000 903Pentachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 36088229 2 Y 80245 0.0500 903Pentachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 30402154 2 Y 80245 0.0495 903Octachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 3268879 2 Y 80245 0.0010 9031,2,3,4,6,7,8-heptachlorodibenzo-p-/dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 35822469 2 Y 80245 0.0100 903Octachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 39001020 2 Y 80245 0.0010 9031,2,3,4,7,8-hexachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 39227286 2 Y 80245 0.1000 9031,2,3,7,8-pentachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 40321764 2 Y 80245 0.5000 9032,3,7,8-Tetrachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 51207319 2 Y 80245 0.1000 9031,2,3,4,7,8,9-heptachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 55673897 2 Y 80245 0.0100 9032,3,4,7,8-pentachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 57117314 2 Y 80245 0.5000 9031,2,3,7,8-pentachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 57117416 2 Y 80245 0.0500 9031,2,3,6,7,8-hexachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 57117449 2 Y 80245 0.1000 9031,2,3,6,7,8-hexachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 57653857 2 Y 80245 0.1000 9032,3,7,8-TCDD TEQ Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 600 2 Y 80245 1.0000 9032,3,4,6,7,8-hexachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 60851345 2 Y 80245 0.1000 903Dibenzofurans (chlorinated) {PCDFs} Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 609 2 Y 80245 0.5000 903Dioxins, total, w/o individ. isomers reported Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 610 2 Y 80245 1.0000 903
Table 1. Point and Area HAP Table File: Used to Process the 1996 NTI Point and Non-point Source Emissions Data

(haptabl_point_area.txt) (continued)

A-22

1,2,3,4,6,7,8-heptachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 67562394 2 Y 80245 0.0100 9031,2,3,4,7,8-hexachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 70648269 2 Y 80245 0.1000 9031,2,3,7,8,9-hexachlorodibenzofuran Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 72918219 2 Y 80245 0.1000 903Dioxins/Furans as TEQ Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 701 2 Y 80245 1.0000 903Hexachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 34465468 2 Y 80245 0.1000 903Polychlorinated dibenzo-p-dioxin, total Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 623 2 Y 80245 1.0000 903Polychlorinated dibenzofurans, total Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 624 2 Y 80245 0.1000 903Total tetrachlorodibenzo-p-dioxin Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 41903575 2 Y 80245 1.0000 9031,2-Diphenylhydrazine Diphenylhydrazine, 1,2- 122667 0 N 92676 1.0000 71-Chloro-2,3-Epoxypropane Epichlorohydrin (l-Chloro-2,3-epoxypropane) 106898 9 N 43863 1.0000 941,2-Epoxybutane Epoxybutane, 1,2- 106887 1 N 80167 1.0000 8Ethyl Chloride Ethyl Chloride (Chloroethane) 75003 1 N 43812 1.0000 97Ethyl Acrylate Ethyl acrylate 140885 5 N 43438 1.0000 95Ethyl carbamate chloride Ethyl carbamate (Urethane) 51796 1 N 80170 1.0000 96Ethyl Benzene Ethylbenzene 100414 4 Y 45203 1.0000 98Ethylene Dibromide Ethylene dibromide (Dibromoethane) 106934 1 Y 43837 1.0000 99Ethylene Dichloride Ethylene dichloride (1,2-Dichloroethane) 107062 1 Y 43815 1.0000 100Ethylene Glycol Ethylene glycol 107211 9 N 43370 1.0000 101Ethylene Oxide Ethylene oxide 75218 1 Y 43601 1.0000 102Ethylene thiourea Ethylene thiourea 96457 7 N 80177 1.0000 103Ethyleneimine Ethyleneimine (Aziridine) 151564 7 N 80175 1.0000 104Ethylidene Dichloride Ethylidene dichloride (1,1-Dichloroethane) 75343 1 N 43813 1.0000 105Fine Mineral Fibers Fine mineral fibers, coarse PM 383 3 N 1.0000 106Glasswool (man-made fibers) Fine mineral fibers, coarse PM 613 3 N 1.0000 106Formaldehyde Formaldehyde 50000 5 Y 43502 1.0000 107Furfuryl alcohol Furfuryl alcohol - nonHAP 98000 N 1.0000Gasoline Gasoline - nonHAP 8006619 N 1.0000Ethylene Glycol Methyl Ether Glycol ethers, gas 100805 4 N 43367 1.0000 108Ethylene Glycol Methyl Ether Glycol ethers, gas 109864 4 N 43367 1.0000 108Ethylene Glycol Monomethyl Ether Acetate Glycol ethers, gas 110496 4 N 43367 1.0000 1081,2-Dimethoxyethane Glycol ethers, gas 110714 4 N 43367 1.0000 108Cellosolve Solvent Glycol ethers, gas 110805 4 N 43367 1.0000 108Cellosolve Acetate Glycol ethers, gas 111159 4 N 43367 1.0000 108Butyl Cellosolve Glycol ethers, gas 111762 4 N 43367 1.0000 108Diethylene Glycol Monomethyl Ether Glycol ethers, gas 111773 4 N 43367 1.0000 108Diethylene glycol monoethyl ether Glycol ethers, gas 111900 4 N 43367 1.0000 108Diethylene glycol dimethyl ether Glycol ethers, gas 111966 4 N 43367 1.0000 1082-Butoxyethyl Acetate Glycol ethers, gas 112072 4 N 43367 1.0000 108Carbitol Acetate Glycol ethers, gas 112152 4 N 43367 1.0000 1082-(Hexyloxy)Ethanol Glycol ethers, gas 112254 4 N 43367 1.0000 108Diethylene Glycol Monobutyl Ether Glycol ethers, gas 112345 4 N 43367 1.0000 108Methoxytriglycol Glycol ethers, gas 112356 4 N 43367 1.0000 108Triethylene glycol dimethyl ether Glycol ethers, gas 112492 4 N 43367 1.0000 108Ethoxytriglycol Glycol ethers, gas 112505 4 N 43367 1.0000 108N-Hexyl Carbitol Glycol ethers, gas 112594 4 N 43367 1.0000 108Phenyl Cellosolve Glycol ethers, gas 122996 4 N 43367 1.0000 108Butyl Carbitol Acetate Glycol ethers, gas 124174 4 N 43367 1.0000 108
Table 1. Point and Area HAP Table File: Used to Process the 1996 NTI Point and Non-point Source Emissions Data

(haptabl_point_area.txt) (continued)

A-23

Triglycol Monobutyl Ether Glycol ethers, gas 143226 4 N 43367 1.0000 108Glycol ethers Glycol ethers, gas 171 4 N 43367 1.0000 108Propyl Cellosolve Glycol ethers, gas 2807309 4 N 43367 1.0000 108Propylene Glycol Monomethyl Ether Glycol ethers, non HAP 107982 4 N 1.0000Propylene Glycol Methyl Ether Acetate Glycol ethers, non HAP 108656 4 N 1.0000Isopropyl Glycol Glycol ethers, non HAP 109591 4 N 1.00003-Ethoxy-1-Propanol Glycol ethers, non HAP 111353 4 N 1.0000Diethylene Glycol Glycol ethers, non HAP 111466 4 N 1.0000Triethylene Glycol Glycol ethers, non HAP 112276 4 N 1.00001-Ethoxy-2-Propanol Glycol ethers, non HAP 1569024 4 N 1.0000Dipropylene Glycol Monomethyl Ether Glycol ethers, non HAP 34590948 4 N 1.0000Diethylene Glycol Di(3-Aminopropyl) Ether Glycol ethers, non HAP 4246519 4 N 1.00001,1-Dimethoxyethane Glycol ethers, non HAP 534156 4 N 1.0000Propylene Glycol T-Butyl Ether Glycol ethers, non HAP 621 4 N 1.0000Nonyl Phenyl Polyethylene Glycol Ether Glycol ethers, non HAP 9016459 4 N 1.0000Glycols, Polyethylene, Mono(1,1,3,3-TetramethyGlycol ethers, non HAP 9036195 4 N 1.0000Glycols, Polyethylene, Polypropylene MonobutylGlycol ethers, non HAP 9038953 4 N 1.0000Heptachlor Heptachlor, gas 76448 4 N 80182 1.0000 109Hexachlorobenzene Hexachlorobenzene 118741 1 Y 80183 1.0000 110Hexachlorobutadiene Hexachlorobutadiene 87683 1 N 80184 1.0000 111Hexachlorocyclopentadiene Hexachlorocyclopentadiene 77474 1 N 80185 1.0000 112Hexachloroethane Hexachloroethane 67721 1 N 80186 1.0000 113Hexamethylene diisocyanate Hexamethylene-1,6-diisocyanate, gas 822060 1 N 1.0000 114Hexamethylphosphoramide Hexamethylphosphoramide 680319 0 N 1.0000 115Hexane Hexane 110543 9 Y 43231 1.0000 116Hydrazine Hydrazine 302012 7 Y 80188 1.0000 117Hydrazine monohydrate Hydrazine monohydrate - nonHAP 7803578 N 1.0000Hydrochloric acid Hydrochloric acid (Hydrogen chloride), fine PM 7647010 2 N 80189 1.0000 118Hydrogen fluoride Hydrogen fluoride (Hydrofluoric acid), fine PM 7664393 2 N 80190 1.0000 119Hydroquinone Hydroquinone 123319 5 N 80191 1.0000 120Isobutyraldehyde Isobutyraldehyde - nonHAP 78842 N 1.0000Isodecanol Isodecanol - nonHAP 25339177 N 1.0000Isophorone Isophorone 78591 7 N 80192 1.0000 121Isophorone diisocyanate Isophorone diisocyanate - nonHAP 4098719 N 1.0000Isovaleraldehyde Isovaleraldehyde - nonHAP 590863 N 1.0000Lead Arsenite Lead Compounds, coarse PM 10031137 3 Y 80393 0.1385 122LEAD NITRATE Lead Compounds, coarse PM 10099748 3 Y 80393 0.1627 122LEAD TITANATE Lead Compounds, coarse PM 12060003 3 Y 80393 0.1777 122LEAD TITANATE ZIRCON Lead Compounds, coarse PM 12626812 3 Y 80393 0.1777 122LEAD OXIDE Lead Compounds, coarse PM 1309600 3 Y 80393 0.2252 122LEAD TETROXIDE P 304 Lead Compounds, coarse PM 1314416 3 Y 80393 0.2357 122Lead Oxide Lead Compounds, coarse PM 1317368 3 Y 80393 0.2414 122LEAD MONO OXIDE Lead Compounds, coarse PM 13173681 3 Y 80393 0.2414 122LEAD FLUOROBORATE Lead Compounds, coarse PM 13814965 3 Y 80393 0.1415 122LEAD CHROMATE OXIDE Lead Compounds, coarse PM 18454121 3 Y 80393 0.1972 122Lead & Compounds Lead Compounds, coarse PM 195 3 Y 80393 0.2600 122LEAD CARBONATE Lead Compounds, coarse PM 598630 3 Y 80393 0.2016 122
Table 1. Point and Area HAP Table File: Used to Process the 1996 NTI Point and Non-point Source Emissions Data

(haptabl_point_area.txt) (continued)

A-24

Lead compounds (inorganic) Lead Compounds, coarse PM 602 3 Y 80393 0.2600 122Lead Oxide Lead Compounds, coarse PM 620 3 Y 80393 0.2414 122Lead Lead Compounds, coarse PM 7439921 3 Y 80393 0.2600 122LEAD SULFATE Lead Compounds, coarse PM 7446142 3 Y 80393 0.1776 122Lead chromate Lead Compounds, coarse PM 7758976 3 Y 80393 0.1667 122LEAD ARSENATE Lead Compounds, coarse PM 7784409 3 Y 80393 0.1552 122LEAD NEODECANOATE Lead Compounds, coarse PM 27253287 3 Y 80393 0.0980 122Lead acetate Lead Compounds, coarse PM 301042 3 Y 80393 0.1656 122Lead compounds (other than inorganic) Lead Compounds, coarse PM 603 3 Y 80393 0.2600 122LEAD NAPHTHENATE Lead Compounds, coarse PM 61790145 3 Y 80393 0.0970 122LEAD STEARATE Lead Compounds, coarse PM 7428480 3 Y 80393 0.0696 122Tetraethyl Lead Lead Compounds, coarse PM 78002 3 Y 80393 0.1666 122Alkylated lead Lead Compounds, coarse PM 88 3 Y 80393 0.2600 122Lead Arsenite Lead Compounds, fine PM 10031137 2 Y 80193 0.3941 122LEAD NITRATE Lead Compounds, fine PM 10099748 2 Y 80193 0.4629 122LEAD TITANATE Lead Compounds, fine PM 12060003 2 Y 80193 0.5059 122LEAD TITANATE ZIRCON Lead Compounds, fine PM 12626812 2 Y 80193 0.5059 122LEAD OXIDE Lead Compounds, fine PM 1309600 2 Y 80193 0.6410 122LEAD TETROXIDE P 304 Lead Compounds, fine PM 1314416 2 Y 80193 0.6710 122Lead Oxide Lead Compounds, fine PM 1317368 2 Y 80193 0.6869 122LEAD MONO OXIDE Lead Compounds, fine PM 13173681 2 Y 80193 0.6869 122LEAD FLUOROBORATE Lead Compounds, fine PM 13814965 2 Y 80193 0.4026 122LEAD CHROMATE OXIDE Lead Compounds, fine PM 18454121 2 Y 80193 0.5612 122Lead & Compounds Lead Compounds, fine PM 195 2 Y 80193 0.7400 122LEAD NEODECANOATE Lead Compounds, fine PM 27253287 2 Y 80193 0.2789 122Lead acetate Lead Compounds, fine PM 301042 2 Y 80193 0.4714 122LEAD CARBONATE Lead Compounds, fine PM 598630 2 Y 80193 0.5738 122Lead compounds (inorganic) Lead Compounds, fine PM 602 2 Y 80193 0.7400 122Lead compounds (other than inorganic) Lead Compounds, fine PM 603 2 Y 80193 0.7400 122LEAD NAPHTHENATE Lead Compounds, fine PM 61790145 2 Y 80193 0.2762 122Lead Oxide Lead Compounds, fine PM 620 2 Y 80193 0.6869 122LEAD STEARATE Lead Compounds, fine PM 7428480 2 Y 80193 0.1981 122Lead Lead Compounds, fine PM 7439921 2 Y 80193 0.7400 122LEAD SULFATE Lead Compounds, fine PM 7446142 2 Y 80193 0.5056 122Lead chromate Lead Compounds, fine PM 7758976 2 Y 80193 0.4744 122LEAD ARSENATE Lead Compounds, fine PM 7784409 2 Y 80193 0.4417 122Tetraethyl Lead Lead Compounds, fine PM 78002 2 Y 80193 0.4741 122Alkylated lead Lead Compounds, fine PM 88 2 Y 80193 0.7400 1221,2,3,4,5,6-Hexachlorocyclyhexane Lindane (all isomers), gas 58899 4 N 80194 1.0000 4Maleic Anhydride Maleic anhydride 108316 6 N 43603 1.0000 125MANGANESE NITRATE Manganese Compounds, coarse PM 10377669 3 Y 80396 0.1013 126Manganese Dioxide Manganese Compounds, coarse PM 1313139 3 Y 80396 0.2085 126Manganese Tetroxide Manganese Compounds, coarse PM 1317357 3 Y 80396 0.2377 126MANGANESE NAPTHENATE Manganese Compounds, coarse PM 1336932 3 Y 80396 0.0450 126Manganese & Compounds Manganese Compounds, coarse PM 198 3 Y 80396 0.3300 126Manganese Manganese Compounds, coarse PM 7439965 3 Y 80396 0.3300 126MANGANESE TALLATE Manganese Compounds, coarse PM 8030704 3 Y 80396 0.3300 126
Table 1. Point and Area HAP Table File: Used to Process the 1996 NTI Point and Non-point Source Emissions Data

(haptabl_point_area.txt) (continued)

A-25

Manganese sulfate Manganese Compounds, coarse PM 7785877 3 Y 80396 0.1201 126Manganese & Compounds Manganese Compounds, coarse PM 11 3 Y 80396 0.3300 126MANGANESE NITRATE Manganese Compounds, fine PM 10377669 2 Y 80196 0.2057 126Manganese Dioxide Manganese Compounds, fine PM 1313139 2 Y 80196 0.4234 126Manganese Tetroxide Manganese Compounds, fine PM 1317357 2 Y 80196 0.4826 126MANGANESE NAPTHENATE Manganese Compounds, fine PM 1336932 2 Y 80196 0.0913 126Manganese & Compounds Manganese Compounds, fine PM 198 2 Y 80196 0.6700 126Manganese Manganese Compounds, fine PM 7439965 2 Y 80196 0.6700 126MANGANESE TALLATE Manganese Compounds, fine PM 8030704 2 Y 80196 0.6700 126Manganese sulfate Manganese Compounds, fine PM 7785877 2 Y 80196 0.2437 126Manganese & Compounds Manganese Compounds, fine PM 11 2 Y 80196 0.6700 126Mercuric chloride Mercury Compounds, fine PM 7487947 2 Y 80197 0.7388 127Mercury & Compounds Mercury Compounds, gas 199 1 Y 80405 1.0000 127MERCURY (ORGANIC) Mercury Compounds, gas 22967926 1 Y 80405 1.0000 127MERCURY ACETATO PHEN Mercury Compounds, gas 62384 1 Y 80405 0.5957 127Mercury Mercury Compounds, gas 7439976 1 Y 80405 1.0000 127Mercury & Compounds Mercury Compounds, gas 12 1 Y 80405 1.0000 127Methacrylic acid Methacrylic acid - nonHAP 79414 N 1.0000Methanol Methanol 67561 1 N 43301 1.0000 128Methly Methly Isobutyl Carbinol Methly Isobutyl Carbinol - nonHAP 108112 N 1.0000Methoxychlor Methoxychlor, gas 72435 1 N 80199 1.0000 129Methyl acrylate Methyl acrylate - nonHAP 96333 N 1.0000Methyl bromide Methyl bromide (Bromomethane) 74839 1 N 80200 1.0000 130Methyl chloride Methyl chloride (Chloromethane) 74873 1 N 43801 1.0000 131Methyl Chloroform Methyl chloroform (1,1,1-Trichloroethane) 71556 1 N 43814 1.0000 132Methyl ethyl ketone Methyl ethyl ketone (2-Butanone) 78933 9 N 43552 1.0000 133Methylhydrazine Methyl hydrazine 60344 7 N 80205 1.0000 140Methyl iodide Methyl iodide (Iodomethane) 74884 1 N 80206 1.0000 134Methyl isobutyl ketone Methyl isobutyl ketone (Hexone) 108101 5 N 43560 1.0000 135Methyl isocyanate Methyl isocyanate 624839 5 N 80208 1.0000 136Methyl methacrylate Methyl methacrylate 80626 7 N 43441 1.0000 137Methyl tert-butyl ether Methyl tert butyl ether 1634044 1 Y 43376 1.0000 138Methylene chloride Methylene chloride (Dichloromethane) 75092 9 Y 43802 1.0000 1394,4'-Methylenebis(2-chloraniline) Methylenebis(2-chloroaniline), 4,4'- , gas 101144 7 N 80211 1.0000 294,4'-Methylenedianiline Methylenedianiline, 4,4'- , gas 101779 5 N 46111 1.0000 304,4'-Methylenediphenyl diisocyanate Methylenediphenyl diisocyanate, 4,4'- (MDI), gas 101688 5 N 45730 1.0000 31N,N-Dimethylaniline N,N-Diethyl aniline (N,N-Dimethylaniline) 121697 8 N 80155 1.0000 141N-Nitroso-N-methylurea N-Nitroso-N-methylurea 684935 N 1.0000 143N-Nitrosodimethylamine N-Nitrosodimethylamine 62759 0 N 80221 1.0000 144N-Nitrosomorpholine N-Nitrosomorpholine 59892 0 N 80222 1.0000 145Naphthalene Naphthalene, fine PM 91203 2 N 46702 0.5000 165Naphthalene Naphthalene, gas 91203 5 N 46701 0.5000 165NICKEL SULFATE.6H2O Nickel Compounds, coarse PM 10101970 3 Y 80316 0.0916 147Nickel subsulfide Nickel Compounds, coarse PM 12035722 3 Y 80316 0.1002 147NICKEL HYDROXIDE Nickel Compounds, coarse PM 12054487 3 Y 80316 0.2597 147NICKEL CARBIDE Nickel Compounds, coarse PM 12710360 3 Y 80316 0.1280 147NICKEL NITRATE Nickel Compounds, coarse PM 13138459 3 Y 80316 0.1317 147
Table 1. Point and Area HAP Table File: Used to Process the 1996 NTI Point and Non-point Source Emissions Data

(haptabl_point_area.txt) (continued)

A-26

Nickel oxide Nickel Compounds, coarse PM 1313991 3 Y 80316 0.3223 147NICKEL(111) OXIDE Nickel Compounds, coarse PM 1314063 3 Y 80316 0.2911 147NICKEL BROMIDE NIBR2 Nickel Compounds, coarse PM 13462889 3 Y 80316 0.1102 147Nickel carbonyl Nickel Compounds, coarse PM 13463393 3 Y 80316 0.1410 147NICKEL SULFAMATE Nickel Compounds, coarse PM 13770893 3 Y 80316 0.0959 147Nickel & Compounds Nickel Compounds, coarse PM 226 3 Y 80316 0.4100 147Nickel acetate Nickel Compounds, coarse PM 373024 3 Y 80316 0.1362 147NICKEL DIACETATE TET Nickel Compounds, coarse PM 6018899 3 Y 80316 0.0967 147Nickel Nickel Compounds, coarse PM 7440020 3 Y 80316 0.4100 147NICKEL CHLORIDE Nickel Compounds, coarse PM 7718549 3 Y 80316 0.1857 147NICKEL SULFATE Nickel Compounds, coarse PM 7786814 3 Y 80316 0.1556 147Nickel & Compounds Nickel Compounds, coarse PM 14 3 Y 80316 0.4100 147NICKEL SULFATE.6H2O Nickel Compounds, fine PM 10101970 2 Y 80216 0.1318 147Nickel subsulfide Nickel Compounds, fine PM 12035722 2 Y 80216 0.1442 147NICKEL HYDROXIDE Nickel Compounds, fine PM 12054487 2 Y 80216 0.3736 147NICKEL CARBIDE Nickel Compounds, fine PM 12710360 2 Y 80216 0.1841 147NICKEL NITRATE Nickel Compounds, fine PM 13138459 2 Y 80216 0.1896 147Nickel oxide Nickel Compounds, fine PM 1313991 2 Y 80216 0.4637 147NICKEL(111) OXIDE Nickel Compounds, fine PM 1314063 2 Y 80216 0.4189 147NICKEL BROMIDE NIBR2 Nickel Compounds, fine PM 13462889 2 Y 80216 0.1585 147NICKEL SULFAMATE Nickel Compounds, fine PM 13770893 2 Y 80216 0.1381 147Nickel & Compounds Nickel Compounds, fine PM 226 2 Y 80216 0.5900 147Nickel acetate Nickel Compounds, fine PM 373024 2 Y 80216 0.1959 147NICKEL DIACETATE TET Nickel Compounds, fine PM 6018899 2 Y 80216 0.1392 147Nickel Nickel Compounds, fine PM 7440020 2 Y 80216 0.5900 147NICKEL CHLORIDE Nickel Compounds, fine PM 7718549 2 Y 80216 0.2673 147NICKEL SULFATE Nickel Compounds, fine PM 7786814 2 Y 80216 0.2238 147Nickel carbonyl Nickel Compounds, fine PM 13463393 2 Y 80216 0.2029 147Nickel & Compounds Nickel Compounds, fine PM 14 2 Y 80216 0.5900 147Nitrobenzene Nitrobenzene 98953 4 N 45702 1.0000 1484-Nitrobiphenyl Nitrobiphenyl, 4- 92933 N 1.0000 354-Nitrophenol Nitrophenol, 4- 100027 4 N 80218 1.0000 362-Nitropropane Nitropropane, 2- 79469 4 N 80219 1.0000 25Anthracene POM, total (including total PAH) 120127 2 Y 80230 1.0000 165Dibenzo[a,i]pyrene POM, total (including total PAH) 189559 2 Y 80230 1.0000 165D[a,h]pyrene POM, total (including total PAH) 189640 2 Y 80230 1.0000 165D[a,e]pyrene POM, total (including total PAH) 192654 2 Y 80230 1.0000 165Benzo[e]pyrene POM, total (including total PAH) 192972 2 Y 80230 1.0000 165Perylene POM, total (including total PAH) 198550 2 Y 80230 1.0000 165B[j]fluoranthen POM, total (including total PAH) 205823 2 Y 80230 1.0000 165Acenaphthylene POM, total (including total PAH) 208968 2 Y 80230 1.0000 165D[a,j]acridine POM, total (including total PAH) 224420 2 Y 80230 1.0000 1651-Phenanthrene POM, total (including total PAH) 283 2 Y 80230 1.0000 1655-Methylchrysene POM, total (including total PAH) 3697243 2 Y 80230 1.0000 1653-Methylcholanthrene POM, total (including total PAH) 56495 2 Y 80230 1.0000 1657,12-Dimethylbenz[a]anthracene POM, total (including total PAH) 57976 2 Y 80230 1.0000 165Acenaphthalene POM, total (including total PAH) 78 2 Y 80230 1.0000 165
Table 1. Point and Area HAP Table File: Used to Process the 1996 NTI Point and Non-point Source Emissions Data

(haptabl_point_area.txt) (continued)

A-27

Acenaphthene POM, total (including total PAH) 83329 2 Y 80230 1.0000 1651-methylnaphthalene POM, total (including total PAH) 90120 2 Y 80230 1.0000 1652-Methylnaphthalene POM, total (including total PAH) 91576 2 Y 80230 1.0000 165Benzo[b+k]fluoranthene POM, total (including total PAH) 102 2 Y 80230 1.0000 165Benzo[g,h,i,]perylene POM, total (including total PAH) 191242 2 Y 80230 1.0000 165Indeno[1,2,3-c,d]pyrene POM, total (including total PAH) 193395 2 Y 80230 1.0000 165Benzo[b]fluoranthene POM, total (including total PAH) 205992 2 Y 80230 1.0000 165Benzo[k]fluoranthene POM, total (including total PAH) 207089 2 Y 80230 1.0000 165Chrysene POM, total (including total PAH) 218019 2 Y 80230 1.0000 165PAH, total POM, total (including total PAH) 234 2 Y 80230 1.0000 165Polycyclic Organic Matter POM, total (including total PAH) 246 2 Y 80230 1.0000 165Benzo[a]pyrene POM, total (including total PAH) 50328 2 Y 80230 1.0000 165Dibenzo[a,h]anthracene POM, total (including total PAH) 53703 2 Y 80230 1.0000 165Benz[a]anthracene POM, total (including total PAH) 56553 2 Y 80230 1.0000 16516-PAH POM, total (including total PAH) 40 2 Y 80230 1.0000 165Fluoranthene POM, total (including total PAH) 206440 2 Y 80230 1.0000 165Fluorene POM, total (including total PAH) 86737 2 Y 80230 1.0000 165Phenanthrene POM, total (including total PAH) 85018 2 Y 80230 1.0000 165Pyrene POM, total (including total PAH) 129000 2 Y 80230 1.0000 165Benzofluoranthenes POM, total (including total PAH) 56832736 2 Y 80230 1.0000 1652-Chloronaphthalene POM, total (including total PAH) 91587 2 Y 80230 1.0000 165Paraffin Paraffin - nonHAP 8002742 N 1.0000Parathion Parathion, gas 56382 7 N 80223 1.0000 156Pentachloronitrobenzene Pentachloronitrobenzene (Quintobenzene), gas 82688 1 N 80224 1.0000 157Pentachlorophenol Pentachlorophenol, gas 87865 1 N 80225 1.0000 158Phenol Phenol 108952 5 N 45300 1.0000 72p-Phenylenediamine Phenylenediamine, p- 106503 7 N 80227 1.0000 154Phosgene Phosgene 75445 9 N 80228 1.0000 160Phosphine Phosphine 7803512 N 80229 1.0000 161Phosphorus Phosphorus 7723140 2 N 80229 1.0000 162Phosphorus Oxychloride Phosphorus Compounds, non HAP 10025873 2 N 1.0000Triphenyl phosphite Phosphorus Compounds, non HAP 101020 2 N 1.0000PHOSPHOROUS ACID Phosphorus Compounds, non HAP 10294561 2 N 1.0000Triphenyl phosphate Phosphorus Compounds, non HAP 115866 2 N 1.0000Phosphorous nitride Phosphorus Compounds, non HAP 12136913 2 N 1.0000PHOSPHOROUS SALT Phosphorus Compounds, non HAP 13011546 2 N 1.0000PHOSPHORUS TRIOXIDE Phosphorus Compounds, non HAP 1314245 2 N 1.0000Phosphorus Pentoxide Phosphorus Compounds, non HAP 1314563 2 N 1.0000Phosphorus Pentasulfide Phosphorus Compounds, non HAP 1314803 2 N 1.0000PHOSPHOROTHIOIC ACID Phosphorus Compounds, non HAP 2921882 2 N 1.0000Phosphoric Acid Phosphorus Compounds, non HAP 7664382 2 N 1.0000Phosphorus Trichloride Phosphorus Compounds, non HAP 7719122 2 N 1.0000Zinc Phosphate Phosphorus Compounds, non HAP 7779900 2 N 1.0000Triorthocresyl phosphate Phosphorus Compounds, non HAP 78308 2 N 1.0000PHOSPHORIC ACID,RX P Phosphorus Compounds, non HAP 92203026 2 N 1.0000Phosphorus Compounds Phosphorus Compounds, non HAP 398 2 N 1.0000Phthalic anhydride Phthalic anhydride 85449 1 N 45601 1.0000 163
Table 1. Point and Area HAP Table File: Used to Process the 1996 NTI Point and Non-point Source Emissions Data

(haptabl_point_area.txt) (continued)

A-28

Polychlorinated biphenyls Polychlorinated biphenyls (Aroclors), fine PM 1336363 2 Y 80231 1.0000 1641,3-Propanesultone Propanesultone,1,3- 1120714 0 N 1.0000 12beta-Propiolactone Propiolactone, beta- 57578 1 N 1.0000 55Propionaldehyde Propionaldehyde 123386 5 Y 43504 1.0000 166Propoxur Propoxur (Baygon), gas 114261 5 N 80235 1.0000 167Propylene Dichloride Propylene dichloride (1,2-Dichloropropane) 78875 1 Y 43838 1.0000 168Propylene oxide Propylene oxide 75569 1 N 43602 1.0000 1691,2-Propylenimine Propylenimine (2-Methylaziridine), 1,2- 75558 7 N 80238 1.0000 9Quinoline Quinoline 91225 5 Y 80239 1.0000 170Quinone Quinone 106514 7 N 80240 1.0000 171Iodine-131 Radionuclides (including radon), gas 24267569 1 N 80241 1.0000 172Radionuclides (including radon) Radionuclides (including radon), gas 400 1 N 80241 1.0000 172Radionuclides Radionuclides (including radon), gas 605 1 N 80241 1.0000 172Radon and its decay products Radionuclides (including radon), gas 606 1 N 80241 1.0000 172SELENIUM OXIDE Selenium Compounds, coarse PM 12640890 3 N 80343 0.0712 173Selenium & Compounds Selenium Compounds, coarse PM 253 3 N 80343 0.1000 173SELENIUM OXIDE SEO2 Selenium Compounds, coarse PM 7446084 3 N 80343 0.0712 173Selenium sulfide Selenium Compounds, coarse PM 7446346 3 N 80343 0.0711 173Selenium Disulfide Selenium Compounds, coarse PM 7488564 3 N 80343 0.0552 173Selenium Selenium Compounds, coarse PM 7782492 3 N 80343 0.1000 173Selenium & Compounds Selenium Compounds, coarse PM 17 3 N 80343 0.1000 173SELENIUM OXIDE Selenium Compounds, fine PM 12640890 2 N 80242 0.6404 173Selenium & Compounds Selenium Compounds, fine PM 253 2 N 80242 0.9000 173SELENIUM OXIDE SEO2 Selenium Compounds, fine PM 7446084 2 N 80242 0.6404 173Selenium sulfide Selenium Compounds, fine PM 7446346 2 N 80242 0.6403 173Selenium Disulfide Selenium Compounds, fine PM 7488564 2 N 80242 0.4966 173Selenium Selenium Compounds, fine PM 7782492 2 N 80242 0.9000 173Selenium & Compounds Selenium Compounds, fine PM 17 2 N 80242 0.9000 173Styrene Styrene 100425 7 Y 45220 1.0000 174Styrene oxide Styrene oxide 96093 1 N 80244 1.0000 175Tert-dodecyl mercaptan Tert-dodecyl mercaptan - nonHAP 25103586 N 1.00001,1,2,2-Tetrachloroethane Tetrachloroethane, 1,1,2,2- 79345 1 Y 80246 1.0000 1Tetrachloroethylene Tetrachloroethylene (Perchloroethylene) 127184 9 Y 43817 1.0000 176Tetrahydrofuran Tetrahydrofuran, non HAP 109999 0 N 1.0000Titanium tetrachloride Titanium tetrachloride 7550450 1 N 80248 1.0000 177Toluene Toluene 108883 4 Y 45202 1.0000 108Toluene-2,4-diamine Toluene diamine-2,4 95807 7 N 80250 1.0000 1792,4-Toluene diisocyanate Toluene diisocyanate, 2,4- 584849 1 N 45731 1.0000 22o-Toluidine Toluidine, o- 95534 7 N 80252 1.0000 151Toxaphene Toxaphene (chlorinated camphene), fine PM 8001352 2 N 1.0000 1801,2,4-Trichlorobenzene Trichlorobenzene, 1,2,4- 120821 1 N 45830 1.0000 51,1,2-Trichloroethane Trichloroethane, 1,1,2- 79005 9 N 43820 1.0000 2Trichloroethylene Trichloroethylene 79016 9 Y 43824 1.0000 1812,4,5-Trichlorophenol Trichlorophenol, 2,4,5- 95954 1 N 1.0000 172,4,6-Trichlorophenol Trichlorophenol, 2,4,6- 88062 1 N 80256 1.0000 18Triethylamine Triethylamine 121448 1 N 1.0000 182Trifluralin Trifluralin, gas 1582098 7 N 80257 1.0000 183
Table 1. Point and Area HAP Table File: Used to Process the 1996 NTI Point and Non-point Source Emissions Data

(haptabl_point_area.txt) (continued)

A-29

2,2,4-Trimethylpentane Trimethylpentane, 2,2,4- 540841 1 N 43250 1.0000 15Tris(2-chloroethyl)phosphate Tris(2-chloroethyl)phosphate - nonHAP 115968 N 1.0000

Unknown-Silver - non HAP 7440224 N 1.0000Unknown-invalid CAS # 78133 N 1.0000

Vinyl acetate Vinyl acetate 108054 5 N 43453 1.0000 184Vinyl bromide Vinyl bromide 593602 9 N 80260 1.0000 185Vinyl chloride Vinyl chloride 75014 1 Y 43860 1.0000 186Vinylidene chloride Vinylidene chloride (1,1-Dichloroethylene) 75354 4 N 80262 1.0000 187Vinylidene chloride Vinylidene chloride (1,1-Dichloroethylene), Inert 75354 1 N 80307 1.0000 187p-Xylene Xylenes (mixed isomers) 106423 5 Y 45102 1.0000 188m-Xylene Xylenes (mixed isomers) 108383 5 Y 45102 1.0000 188Xylenes (mixture of o, m, and p isomers) Xylenes (mixed isomers) 1330207 5 Y 45102 1.0000 188o-Xylene Xylenes (mixed isomers) 95476 5 Y 45102 1.0000 188
A-30

Table 2. Precursor HAP Table File: Used to Process Point, Non-point and Mobile Precursor Inventory (haptabl_precursor.txt) (HAP and

nonHAP VOCs combined)

POLLDESC HAPDESC POLLCODE React Keep Saroad Factor NTI

Propene Acetaldehyde precursors-inert surrogate P33 1 Y 80301 0.5250Butene, 2- Acetaldehyde precursors-inert surrogate P10 1 Y 80301 1.5800Pentene, 2- Acetaldehyde precursors-inert surrogate P19 1 Y 80301 0.6300Hexene, 2- Acetaldehyde precursors-inert surrogate P13 1 Y 80301 0.5200Heptene, 2- Acetaldehyde precursors-inert surrogate P12 1 Y 80301 0.4500Octene, 2- Acetaldehyde precursors-inert surrogate P18 1 Y 80301 0.3900Nonene, 2- Acetaldehyde precursors-inert surrogate P17 1 Y 80301 0.6300Butene,2-, 2-methyl Acetaldehyde precursors-inert surrogate P16 1 Y 80301 0.9450Pentene, 2-, 3-methyl Acetaldehyde precursors-inert surrogate P23 1 Y 80301 0.7800Pentene, 2-, 4-methyl Acetaldehyde precursors-inert surrogate P26 1 Y 80301 0.5200Ethanol Acetaldehyde precursors-inert surrogate P28 1 Y 80301 0.0480Propene Acetaldehyde precursors-reactive surrogate P33 7 Y 80100 0.5250Butene, 2- Acetaldehyde precursors-reactive surrogate P10 7 Y 80100 1.5800Pentene, 2- Acetaldehyde precursors-reactive surrogate P19 7 Y 80100 0.6300Hexene, 2- Acetaldehyde precursors-reactive surrogate P13 7 Y 80100 0.5200Heptene, 2- Acetaldehyde precursors-reactive surrogate P12 7 Y 80100 0.4500Octene, 2- Acetaldehyde precursors-reactive surrogate P18 7 Y 80100 0.3900Nonene, 2- Acetaldehyde precursors-reactive surrogate P17 7 Y 80100 0.6300Butene,2-, 2-methyl Acetaldehyde precursors-reactive surrogate P16 7 Y 80100 0.9450Pentene, 2-, 3-methyl Acetaldehyde precursors-reactive surrogate P23 7 Y 80100 0.7800Pentene, 2-, 4-methyl Acetaldehyde precursors-reactive surrogate P26 7 Y 80100 0.5200Ethanol Acetaldehyde precursors-reactive surrogate P28 7 Y 80100 0.0480Butadiene, 1,3- Acrolein precusor - inert surrogate 106990 1 Y 80302 1.0000Toluene Cresol Precursors - inert surrogate 108883 1 N 80306 0.2880Toluene Cresol Precursors - reactive surrogate 108883 4 N 80506 0.2880Ethene Formaldehyde precursors-inert surrogate P29 1 Y 80303 0.5136Propene Formaldehyde precursors-inert surrogate P33 1 Y 80303 0.7100Butene, 1- Formaldehyde precursors-inert surrogate P01 1 Y 80303 0.5400Pentene, 1- Formaldehyde precursors-inert surrogate P07 1 Y 80303 0.4300Hexene, 1- Formaldehyde precursors-inert surrogate P04 1 Y 80303 0.3600Heptene, 1- Formaldehyde precursors-inert surrogate P03 1 Y 80303 0.3100Octene, 1- Formaldehyde precursors-inert surrogate P06 1 Y 80303 0.2700Nonene, 1- Formaldehyde precursors-inert surrogate P05 1 Y 80303 0.2400Decene, 1- Formaldehyde precursors-inert surrogate P02 1 Y 80303 0.2100Propene, 2-methyl (Isobutene) Formaldehyde precursors-inert surrogate P30 1 Y 80303 0.8640Butene, 1-, 2-methyl Formaldehyde precursors-inert surrogate P14 1 Y 80303 0.6880Butadiene, 1,3- Formaldehyde precursors-inert surrogate 106990 1 Y 80303 1.1200Butene, 1-, 3-methyl Formaldehyde precursors-inert surrogate P21 1 Y 80303 0.4300Pentene, 1-, 3-methyl Formaldehyde precursors-inert surrogate P22 1 Y 80303 0.3600Butene, 1-, 2,3-dimethyl Formaldehyde precursors-inert surrogate P08 1 Y 80303 0.5760Isoprene Formaldehyde precursors-inert surrogate P32 1 Y 80303 0.8844Butene, 1-, 2-ethyl Formaldehyde precursors-inert surrogate P11 1 Y 80303 0.5760Pentene, 1-, 2-methyl Formaldehyde precursors-inert surrogate P15 1 Y 80303 0.5760Pentene, 1-, 4-methyl Formaldehyde precursors-inert surrogate P25 1 Y 80303 0.3600Pentene, 1-, 2,4,4-trimethyl Formaldehyde precursors-inert surrogate P09 1 Y 80303 0.4320
Table 2. Precursor HAP Table File: Used to Process Point, Non-point and Mobile Precursor Inventory

(haptabl_precursor.txt) (HAP and nonHAP VOCs combined) (continued)

A-31

Acetaldehyde Formaldehyde precursors-inert surrogate 75070 1 Y 80303 0.3400MTBE Formaldehyde precursors-inert surrogate 1634044 1 Y 80303 0.0143Methanol Formaldehyde precursors-inert surrogate 67561 1 Y 80303 0.0282Ethene Formaldehyde precursors-reactive surrogate P29 6 Y 80180 0.5136Propene Formaldehyde precursors-reactive surrogate P33 6 Y 80180 0.7100Butene, 1- Formaldehyde precursors-reactive surrogate P01 6 Y 80180 0.5400Pentene, 1- Formaldehyde precursors-reactive surrogate P07 6 Y 80180 0.4300Hexene, 1- Formaldehyde precursors-reactive surrogate P04 6 Y 80180 0.3600Heptene, 1- Formaldehyde precursors-reactive surrogate P03 6 Y 80180 0.3100Octene, 1- Formaldehyde precursors-reactive surrogate P06 6 Y 80180 0.2700Nonene, 1- Formaldehyde precursors-reactive surrogate P05 6 Y 80180 0.2400Decene, 1- Formaldehyde precursors-reactive surrogate P02 6 Y 80180 0.2100Propene, 2-methyl (Isobutene) Formaldehyde precursors-reactive surrogate P30 6 Y 80180 0.8640Butene, 1-, 2-methyl Formaldehyde precursors-reactive surrogate P14 6 Y 80180 0.6880Butadiene, 1,3- Formaldehyde precursors-reactive surrogate 106990 6 Y 80180 1.1200Butene, 1-, 3-methyl Formaldehyde precursors-reactive surrogate P21 6 Y 80180 0.4300Pentene, 1-, 3-methyl Formaldehyde precursors-reactive surrogate P22 6 Y 80180 0.3600Butene, 1-, 2,3-dimethyl Formaldehyde precursors-reactive surrogate P08 6 Y 80180 0.5760Isoprene Formaldehyde precursors-reactive surrogate P32 6 Y 80180 0.8844Butene, 1-, 2-ethyl Formaldehyde precursors-reactive surrogate P11 6 Y 80180 0.5760Pentene, 1-, 2-methyl Formaldehyde precursors-reactive surrogate P15 6 Y 80180 0.5760Pentene, 1-, 4-methyl Formaldehyde precursors-reactive surrogate P25 6 Y 80180 0.3600Pentene, 1-, 2,4,4-trimethyl Formaldehyde precursors-reactive surrogate P09 6 Y 80180 0.4320Acetaldehyde Formaldehyde precursors-reactive surrogate 75070 6 Y 80180 0.3400MTBE Formaldehyde precursors-reactive surrogate 1634044 6 Y 80180 0.0143Methanol Formaldehyde precursors-reactive surrogate 67561 6 Y 80180 0.0282Butene, 1-, 2-methyl MEK precursors-inert surrogate P14 1 N 80304 0.8600Butane MEK precursors-inert surrogate P27 1 N 80304 0.0309Isopentane MEK precursors-inert surrogate P31 1 N 80304 0.0249Pentane, 3-methyl MEK precursors-inert surrogate P24 1 N 80304 0.0213Butene, 1-, 2-methyl MEK precursors-reactive surrogate P14 7 N 80204 0.8600Butane MEK precursors-reactive surrogate P27 7 N 80204 0.0309Isopentane MEK precursors-reactive surrogate P31 7 N 80204 0.0249Pentane, 3-methyl MEK precursors-reactive surrogate P24 7 N 80204 0.0213Methylene Chloride Phosgene precursors - inert surrogate 75092 1 N 80350 1.1600Tetrachloroethylene Phosgene precursors - inert surrogate 127184 1 N 80350 0.2816Trichloroethylene Phosgene precursors - inert surrogate 79016 1 N 80350 0.2988Vinylidene Chloride Phosgene precursors - inert surrogate 75354 1 N 80350 0.7446Vinylidene Chloride Phosgene precursors - reactive 4 surrogate 75354 4 N 80550 0.7446Methylene Chloride Phosgene precursors - reactive 9 surrogate 75092 9 N 80450 1.1600Tetrachloroethylene Phosgene precursors - reactive 9 surrogate 127184 9 N 80450 0.2816Trichloroethylene Phosgene precursors - reactive 9 surrogate 79016 9 N 80450 0.2988Butene, 1- Propionaldehyde precursors-inert surrogate P01 1 Y 80305 0.5200Pentene, 2- Propionaldehyde precursors-inert surrogate P19 1 Y 80305 0.8300Hexene, 3- Propionaldehyde precursors-inert surrogate P20 1 Y 80305 1.3800Butene, 1- Propionaldehyde precursors-reactive surrogate P01 7 Y 80234 0.5200Pentene, 2- Propionaldehyde precursors-reactive surrogate P19 7 Y 80234 0.8300
Table 2. Precursor HAP Table File: Used to Process Point, Non-point and Mobile Precursor Inventory

(haptabl_precursor.txt) (HAP and nonHAP VOCs combined) (continued)

A-32

Hexene, 3- Propionaldehyde precursors-reactive surrogate P20 7 Y 80234 1.3800
A-33

Table 3. Onroad Mobile HAP Table File: Used to Process 1996 NTI Onroad Mobile Source Emissions Data (haptabl_onroad.txt)

POLLDESC HAPDESC POLLCODE React Keep SaroadFactor NTI

16-PAH 16-PAH, fine PM 40 2 N 80232 1.0000 1657-PAH 7-PAH, fine PM 75 2 Y 80233 1.0000 165Acetaldehyde Acetaldehyde 75070 5 Y 43503 1.0000 37Acrolein Acrolein 107028 5 Y 43505 1.0000 41Arsenic & Compounds (inorganic including arsinArsenic Cmpds. (inorganic, incl. arsine), coarse PM 93 3 Y 80312 0.1000 48Arsenic & Compounds (inorganic including arsinArsenic Compounds (inorganic, incl. arsine), fine PM 93 2 Y 80112 0.9000 48Benzene Benzene (including benzene from gasoline) 71432 1 Y 45201 1.0000 501,3-Butadiene Butadiene, 1,3- 106990 7 Y 43218 1.0000 10Chromium & Compounds Chromium Compounds, coarse PM 136 3 Y 80341 0.1400 77Chromium & Compounds Chromium Compounds, fine PM 136 2 Y 80141 0.8600 77Diesel PM, coarse Diesel, coarse PM dpmcoarse 3 Y 80401 1.0000Diesel PM, fine Diesel, fine PM dpmfine 2 Y 80400 1.0000Diesel PM Diesel, coarse PM 80400 3 Y 80401 0.0800Diesel PM Diesel, fine PM 80400 2 Y 80400 0.9200Dioxins/Furans as TEQ Dioxins/Furans as 2,3,7,8TCCD TEQ, Lower Bound, Fine 701 2 Y 80412 1.0000 903Dioxins/Furans as TEQ Dioxins/Furans as 2,3,7,8TCCD TEQ, Upper Bound, Fine 701 2 Y 80245 1.0000 903Ethyl Benzene Ethylbenzene 100414 4 Y 45203 1.0000 98Formaldehyde Formaldehyde 50000 5 Y 43502 1.0000 107Hexane Hexane 110543 9 Y 43231 1.0000 116Lead & Compounds Lead Compounds, coarse PM 195 3 Y 80393 0.2400 122Lead & Compounds Lead Compounds, fine PM 195 2 Y 80193 0.7600 122Manganese & Compounds Manganese Compounds, coarse PM 198 3 Y 80396 0.3600 126Manganese & Compounds Manganese Compounds, fine PM 198 2 Y 80196 0.6400 126Mercury & Compounds Mercury Compounts, fine PM 199 2 Y 80197 1.0000 127Methyl tert-butyl ether Methyl tert butyl ether 1634044 1 Y 43376 1.0000 138Nickel & Compounds Nickel Compounds, coarse PM 226 3 Y 80316 0.1700 147Nickel & Compounds Nickel Compounds, fine PM 226 2 Y 80216 0.8300 14716-PAH POM, total (including total PAH) 40 2 Y 80230 1.0000 165Propionaldehyde Propionaldehyde 123386 5 Y 43504 1.0000 166Styrene Styrene 100425 7 Y 45220 1.0000 174Toluene Toluene 108883 4 Y 45202 1.0000 108Xylenes (mixture of o, m, and p isomers) Xylenes (mixed isomers) 1330207 5 Y 45102 1.0000 188
A-34

Table 4. Nonroad Mobile HAP Table File: Used to Process 1996 NTI Nonroad Mobile Source Emissions Data (haptabl_nonroad.txt)

POLLDESC HAPDESC POLLCODE React Keep SaroadFactor NTI

16-PAH 16-PAH, fine PM 40 2 N 80232 1.0000 1657-PAH 7-PAH, fine PM 75 2 Y 80233 1.0000 165Acetaldehyde Acetaldehyde 75070 5 Y 43503 1.0000 37Acrolein Acrolein 107028 5 Y 43505 1.0000 41Arsenic & Compounds (inorganic including arsinArsenic Cmpds. (inorganic, incl. arsine), coarse PM 93 3 Y 80312 0.1700 48Arsenic & Compounds (inorganic including arsinArsenic Compounds (inorganic, incl. arsine), fine PM 93 2 Y 80112 0.8300 48Benzene Benzene (including benzene from gasoline) 71432 1 Y 45201 1.0000 50Beryllium & Compounds Beryllium Compounds, coarse PM 109 3 Y 80318 0.6100 54Beryllium & Compounds Beryllium Compounds, fine PM 109 2 Y 80118 0.3900 541,3-Butadiene Butadiene, 1,3- 106990 7 Y 43218 1.0000 10Cadmium & Compounds Cadmium Compounds, coarse PM 125 3 Y 80324 0.6200 60Cadmium & Compounds Cadmium Compounds, fine PM 125 2 Y 80124 0.3800 60Chromium & Compounds Chromium Compounds, coarse PM 136 3 Y 80341 0.2000 77Chromium & Compounds Chromium Compounds, fine PM 136 2 Y 80141 0.8000 77Diesel PM, coarse Diesel, coarse PM dpmcoarse 3 Y 80401 1.0000Diesel PM, fine Diesel, fine PM dpmfine 2 Y 80400 1.0000Diesel PM Diesel, coarse PM 80400 3 Y 80401 0.0800Diesel PM Diesel, fine PM 80400 2 Y 80400 0.9200Ethyl Benzene Ethylbenzene 100414 4 Y 45203 1.0000 98Formaldehyde Formaldehyde 50000 5 Y 43502 1.0000 107Hexane Hexane 110543 9 Y 43231 1.0000 116Lead & Compounds Lead Compounds, coarse PM 195 3 Y 80393 0.1200 122Lead & Compounds Lead Compounds, fine PM 195 2 Y 80193 0.8800 122Manganese & Compounds Manganese Compounds, coarse PM 198 3 Y 80396 0.2100 126Manganese & Compounds Manganese Compounds, fine PM 198 2 Y 80196 0.7900 126Mercury & Compounds Mercury Compounts, fine PM 199 2 Y 80197 1.0000 127Methyl tert-butyl ether Methyl tert butyl ether 1634044 1 Y 43376 1.0000 138Nickel & Compounds Nickel Compounds, coarse PM 226 3 Y 80316 0.5100 147Nickel & Compounds Nickel Compounds, fine PM 226 2 Y 80216 0.4900 14716-PAH POM, total (including total PAH) 40 2 Y 80230 1.0000 165Propionaldehyde Propionaldehyde 123386 5 Y 43504 1.0000 166Selenium & Compounds Selenium Compounds, coarse PM 253 3 N 80343 0.1100 173Selenium & Compounds Selenium Compounds, fine PM 253 2 N 80242 0.8900 173Styrene Styrene 100425 7 Y 45220 1.0000 174Toluene Toluene 108883 4 Y 45202 1.0000 108Xylenes (mixture of o, m, and p isomers) Xylenes (mixed isomers) 1330207 5 Y 45102 1.0000 188
A-35

File Name: ctyflag

File Type: SAS®

Variables and Structure

Name Type* Description

FIPS A5 State and county FIPS codes.

C_flag N Urban or rural flag, 1 indicates the entire county is urban, 2 - the entire

county is rural, 9 - the county is mixed urban and rural

*Ax=character string of length x, N=numeric

Sample of File Contents

01001 2

01003 2

01005 2

01007 2

01009 2

01011 2

01013 2

01015 9

01017 2

01019 2

01021 2

01023 2

01025 2

01027 2

01029 2

01031 2

01033 9

01035 2

01037 2

01039 2

01041 2

01043 2

01045 2

01047 9

01049 2

01051 2

01053 2

01055 9

01057 2

01059 2

01061 2

01063 2

01065 2

01067 2

Figure 15. County-level Urban/Rural Flag File (ctyflag)
A-36

File Name: taff_hourly.txt

File Type: ASCII Text; Non-header data begins on line #3.

Variables and Structure

Name Type* Column Length DecimalsDescription

SCC_AMS C 1 10 SCC code or AMS code, SCC codes are preceded by 2

blank spaces at the beginning of the line. AMS codes

begin in space 1.

Hour_1 thru

Hour_24

N 13, 21,

29, etc.

8 each 5 Hourly emission allocation factors. The factors sum to 1.0

Desc_1 C 205 54 Level 1 description of the SCC or AMS (corresponding to

the 1-digit SCC)

Desc_2 C 259 54 Level 2 description (corresponding to the 3-digit SCC)

Desc_3 C 313 70 Level 3 description (corresponding to the 6-digit SCC)

Desc_4 C 383 70 Level 4 description (corresponding to the 8-digit SCC)

*C=character, N=numeric

Sample record from the SCC-based section of the file

10100101 0.03262 0.03126 0.03053 0.03042 0.03103 0.03269 0.03624 0.04057

0.04375 0.04559 0.04626 0.04650 0.04611 0.04563 0.04479 0.04462 0.04542 0.04622

0.04611 0.04628 0.04560 0.04280 0.03862 0.03420 External Combustion Boilers

Electric Generation

Anthracite Coal

Pulverized Coal

Sample records from the AMS-based section of the file

2201001000 0.01702 0.01258 0.01028 0.00922 0.01019 0.01632 0.03711 0.05684

0.05215 0.04945 0.04945 0.05665 0.05896 0.05877 0.06112 0.06741 0.07361 0.07018

0.05767 0.04766 0.03827 0.03438 0.02886 0.02301

Mobile Sources

Highway Vehicles - Gasoline

Light Duty Gasoline Vehicles (LDGV)

Total: All Road Types

2201060000 0.01702 0.01258 0.01028 0.00922 0.01019 0.01632 0.03711 0.05684

0.05215 0.04945 0.04945 0.05665 0.05896 0.05877 0.06112 0.06741 0.07361 0.07018

0.05767 0.04766 0.03827 0.03438 0.02886 0.02301

Mobile Sources

Highway Vehicles - Gasoline

Light Duty Gasoline Trucks1&2 (LDGT)

Total: All Road Types

Figure 16a. Temporal Allocation Factor File Used When Processing Data for ASPEN

(taff_hourly.txt)
A-37

File Name: taff_ISCfactors.txt

File Type: ASCII Text; Non-header data begins on line #3.

Variables and Structure

Name Type* Column Length Decimals Description

SCC_AMS C 1 10 SCC code or AMS code, SCC codes are preceded by 2

blank spaces at the beginning of the line. AMS codes

begin in space 1.

Daytype N 13 3 Day type (1=weekday, 2=Saturday, 3=Sunday)

Seatype N 15 3 Season type (1=spring, 2=summer, 3=fall, 4=winter)

Dayfrac N 16 7 5 Day type allocation factor

Seafrac N 23 7 5 Seasonal allocation factor

Hr1 - Hr24 N 42 7 5 Hourly emission allocation factors for the day type and

season.

*C=character, N=numeric

Sample of File Content

10100101 1 10.010990.24858NAPANAPANAPA

0.029190.028330.027380.027690.028570.030070.033930.041030.044900.046400.046560.046640.045770.045530.04

4580.043950.044180.044190.044430.046240.045850.042850.037480.03211

10100101 1 20.010990.22260NAPANAPANAPA

0.028220.027040.026410.026250.026800.029240.034370.039880.044140.046590.047920.048080.047690.047840.04

7530.047450.047370.046270.044620.044690.044530.040520.035000.02940

10100101 1 30.011000.19406NAPANAPANAPA

0.031590.030960.031110.031670.033640.037980.044060.047530.049190.049350.049350.048630.048480.047850.04

7060.047210.047850.049660.050290.049350.046420.040900.035530.03120

10100101 1 40.010990.33476NAPANAPANAPA

0.035720.034610.034060.033750.034220.035880.039350.043370.045820.047080.047080.047230.046760.046360.04

5890.045650.046760.048340.048730.048260.046760.045030.041640.03848

10100101 2 10.010980.24858NAPANAPANAPA

0.036970.034910.032860.031830.032860.032860.034910.039020.044150.048260.049290.050310.048260.048260.04

6210.046210.047230.047230.047230.048260.049290.047230.044150.03902

10100101 2 20.010980.22260NAPANAPANAPA

0.039100.036010.033960.032920.031890.032920.033960.037040.042180.046300.049390.050420.050420.049390.04

8350.048350.048350.048350.047330.046300.047330.045270.043210.03806

10100101 2 30.010960.19406NAPANAPANAPA

0.036970.034910.032860.031830.032860.032860.034910.039020.044150.048260.049290.050310.048260.048260.04

6210.046210.047230.047230.047230.048260.049290.047230.044150.03902

10100101 2 40.010980.33476NAPANAPANAPA

0.036890.033810.033810.033810.033810.033810.036890.039960.044060.048170.049190.049190.049190.046110.04

5090.045090.049190.052270.050210.048170.046110.044060.040990.03689

10100101 3 10.010980.24858NAPANAPANAPA

0.040010.037950.036920.036920.036920.036920.037950.041030.043090.045140.045140.046170.046170.045140.04

3090.042060.043090.044110.045140.048210.051290.049240.045140.04001

10100101 3 20.010970.22260NAPANAPANAPA

0.040010.036920.034880.034880.033850.032830.032830.034880.038980.042060.046170.048210.049240.049240.04

8210.048210.047180.047180.047180.047180.049240.049240.046170.04206

10100101 3 30.010950.19406NAPANAPANAPA

0.040010.037950.036920.036920.036920.036920.037950.041030.043090.045140.045140.046170.046170.045140.04

3090.042060.043090.044110.045140.048210.051290.049240.045140.04001

Figure 16b. Temporal Allocation Factor File Used When Processing Data for ISCST3

(taff_ISCfactors.txt)
A-38

File Name: scc2ams.txt

File Type: ASCII Text; Non-header data begins on line #2.

Variables and Structure

Name Type* Column Length Description

SCC C 1 8 SCC code

SCC_AMS C 11 10 SCC code or AMS code, SCC codes are preceded by 2 

blank spaces at the beginning of the line. AMS codes begin

in space 11.

Spatial C 24 2 Spatial surrogate code; required for area and mobile source

processing

Cat_name C 28 70 SCC category name, required for area and mobile source

processing

*C=character, N=numeric

Sample of File Contents

SCC_code(8),xx,SCC_AMS(10),xx,Spatial(2),xx,Cat_name(70)

101015 10101502 19 Geothermal Power

301 2301010000 3 Industrial Inorganic Chemical Manufacturing

302 2302000000 3 Miscellaneous Foods and Kindred Products

302002 2302000000 2 Roasted Coffee

302004 30200420 7 Food and Agricultural Products: Cotton Ginning

302007 30200771 3 Rice Milling

302009 30200903 3 Malt Beverages

302010 30201004 3 Distilled and Blended Liquors Production

302015 30201501 7 Raw Cane Sugar

302016 30201601 3 Beet Sugar

302019 30201999 3 Edible Fats and Oils, nec

302030 30203001 3 Dairy Products

302040 30204001 3 Cereal Breakfast Foods

303 2303000000 3 Misc. Primary Metal Products Manufacturing

303001 30300101 3 Primary Aluminum Production

303005 30400204 3 Copper Foundries

303023 30302301 3 Taconite Iron Ore Processing

304 30301542 3 Iron and Steel Forging

304003 30400330 3 Gray and Ductile Iron Foundries

304004 30400401 3 Secondary Lead Smelting

304007 30301501 3 Iron and Steel Foundries: Steel Foundries

30402200 30402201 3 Metal Heat Treating Manufacturing

305008 30500812 3 Ceramic Wall and Floor Tile Manufacturing

305014 30501404 3 Pressed & Blown Glass & Glassware Manufacturing

305016 30501601 3 Lime Manufacturing

305050 30505001 3 Asphalt Concrete Manufacturing

307 2307000000 3 Plywood/Particle Board Manufacturing

307007 30700715 3 Softwood Veneer and Plywood

307008 30700899 3 Sawmills and Planing Mills, general

307030 30703099 3 Wood Products, Nec

308 2308000000 3 Miscellaneous Plastics Products

Figure 17. SCC to AMS Cross-Reference File (scc2ams.txt)
A-39

File Name: sic2ams.txt

File Type: ASCII Text; Non-header data begins on line #2.

Variables and Structure

Name Type* Column Length Description

SIC C 1 4 SIC code

SCC_AMS C 7 10 SCC code or AMS code, SCC codes are preceded by 2 blank

spaces at the beginning of the line. AMS codes begin in

space 7.

Spatial C 20 2

Cat_name C 24 70

*C=character, N=numeric

Sample of File Contents

SIC_code(4),xx,SCC_AMS(10),xxx,Spatial(2),xx,Cat_name(70)

1311 2310000000 19 Crude Petroleum and Natural Gas

1446 2325000000 3 Industrial Sand

2011 2302000000 3 Meat Packing Plants

2013 2302000000 3 Sausages And Other Prepared Meats

2015 2302000000 3 Poultry Slaughtering and Processing

2016 2302000000 3 Poultry Dressing Plants

2020 30203001 3 Dairy Products

2022 2302000000 3 Cheese, Natural and Processed

2023 2302000000 3 Condensed and Evaporated milk

2033 2302000000 3 Canned Fruits and Vegetables

2034 2302000000 3 Dehydrated Fruits, Vegetables, and Soups

2035 2302000000 3 Pickles, Sauces, And Salad Dressings

2037 2302000000 3 Frozen fruits, Fruit Juices and Vegetables

2038 2302000000 3 Frozen Specialties, nec

2041 2302000000 3 Flour and Other Grain Mill Products

2043 30204001 3 Cereal Breakfast Foods

2044 30200771 3 Rice Milling

2045 2302050000 3 Prepared Flour Mixes And Doughs

2046 2302000000 3 Wet Corn Milling

2047 2302000000 3 Dog and Cat Food

2048 2805001000 3 Prepared Feeds Manufacturing

2061 30201501 3 Raw Cane Sugar

2062 30201501 3 Cane Sugar Refining

2063 30201601 3 Beet Sugar

2066 2302000000 3 Chocolate And Cocoa Products

2077 2302000000 3 Animal And Marine Fats And Oils

2079 30201999 3 Edible Fats and Oils, nec

2082 30200903 3 Malt Beverages

2083 30200708 3 Malt

2085 30201004 3 Distilled and Blended Liquors Production

2086 2302000000 3 Bottled and Canned Soft Drinks

2087 2302000000 3 Flavoring Extracts and Syrups Production

2090 2302000000 3 Miscellaneous Foods and Kindred Products

Figure 18. SIC to SCC or AMS Cross-Reference File (sic2ams.txt)
A-40

File Name: mact2scc.txtFile Type: ASCII Text; Non-header data begins on line #1.Variables and Structure

Name Type* Column Length Decimals Description

MACTCAT C 1 7 MACT category codeMACTdesc C 10 70 MACT category description (not used; for descriptive purposes)SCC C 83 8 SCC code (not used; for descriptive purposes)SCCdesc C 93 80 SCC description (not used; for descriptive purposes)SCC_AMS C 177 10 SCC code or AMS code, SCC codes are preceded by 2 blank spaces at the

beginning of the line. AMS codes begin in space 174

*C=character, N=numeric

Sample of File ContentsNote: Column placements have been adjusted to accommodate page width.0101 Engine Test Facilities 204001 Aircraft Engine Testing 204001100101 Engine Test Facilities 204003 Turbine 204001100101 Engine Test Facilities 204004 Reciprocating Engine 204001100101 Engine Test Facilities 204800 Equipment Leaks 204001100101 Engine Test Facilities 20400110 Jet A Fuel 204001100101 Engine Test Facilities 20400112 JP-4 Fuel 204001100101 Engine Test Facilities 20400199 Other Not Classified 204001100101 Engine Test Facilities 20400301 Natural Gas 204001100101 Engine Test Facilities 20400302 Diesel/Kerosene 204001100101 Engine Test Facilities 20400303 Distillate Oil 204001100101 Engine Test Facilities 20400304 Landfill Gas 204001100101 Engine Test Facilities 20400305 Kerosene/Naphtha 204001100101 Engine Test Facilities 20400399 Other Not Classified 204001100101 Engine Test Facilities 20400401 Gasoline 20400110

Figure 19. MACT Category to SCC or AMS Cross-Reference File (mact2scc.txt)
A-41

File Name: gfegas_bymactXX_YY

File Type: ASCII Text; Non-header data begins on line #3.

Variables and File Structure

Name Type* Column Length Decimals Description

STATE C 1 2 State FIPS code

COUNTY C 4 3 County FIPS code

MACT C 8 7 MACT category code

GF N 16 9 4 Growth factor

*C = character, N = numeric.

Sample of File Contents

Growth Factor by State, County, and MACT for 2007

State (2) 1x County (3) 1x MACT (7) 1x GF2007(9.4)

00 000 0201 0.8900

00 000 0302 0.6382

00 000 0303 0.6382

00 000 0409 1.0000

00 000 0412 1.0000

00 000 0414 1.0000

00 000 0415 1.0000

00 000 0705 1.0000

00 000 0802 1.0000

00 000 1609 1.0564

00 000 1631 1.0900

00 000 1704 1.0564

00 000 1801 1.0000

00 000 1802 1.0000

01 000 0101 0.5897

01 000 0202 1.2857

01 000 0203 1.1493

01 000 0204 1.1493

01 000 0205 1.2373

01 000 0207 1.1493

01 000 0208 1.2857

01 000 0304 1.2901

01 000 0305 1.2901

01 000 0308 1.0085

01 000 0309 1.0085

01 000 0310 1.2901

01 000 0401 1.2500

01 000 0402 1.6600

01 000 0403 0.9722

01 000 0406 1.1873

01 000 0407 1.1873

01 000 0408 1.2671

Figure 20a. MACT-based Growth Factor File to Grow from Year XX to Year YY

(gfegas_bymactXX_YY.txt)
A-42

File Name: gfegas_bysicXX_YY

File Type: ASCII Text; Non-header data begins on line #3.

Variables and File Structure

Name Type* Column Length Decimals Description

STATE C 1 2 State FIPS code

COUNTY C 4 3 County FIPS code

SIC C 8 4 SIC code

GF N 13 9 4 Growth factor

*C = character, N = numeric.

Sample of File Contents

Growth Factor by State, County, and SIC for 2007

State (2) 1x County (3) 1x SIC (4) 1x GF2007(9.4)

00 000 88 1.0000

00 000 GEOP 1.0982

00 000 ZERO 1.0000

01 000 01 1.2110

01 000 02 1.2110

01 000 07 1.0177

01 000 08 1.1992

01 000 09 1.1992

01 000 10 1.2500

01 000 12 1.1170

01 000 13 1.2384

01 000 14 1.1070

01 000 15 1.0271

01 000 16 1.0271

01 000 17 1.0271

01 000 20 1.3472

01 000 21 0.9359

01 000 22 1.2664

01 000 23 1.1302

01 000 24 1.4240

01 000 25 1.4993

01 000 26 1.3643

01 000 27 1.0271

01 000 28 1.2586

01 000 29 1.1402

01 000 30 1.1919

01 000 31 1.2609

01 000 32 1.2366

01 000 33 1.2901

01 000 34 1.2936

01 000 35 0.5897

01 000 36 0.7049

Figure 20b. SIC-based Growth Factor File to Grow from Year XX to Year YY

(gfegas_bysicXX_YY.txt)
A-43

File Name: ptscc2sic.txt

File Type: ASCII Text; Non-header data begins on line #1.

Variables and File Structure

Name Type* Column Length Description

SCC Name C 1 40 Source Category Code (SCC) name (for descriptive purposes; not

read by PtGrowCntl)

SCC C 41 8 SCC

SIC C 50 4 Standard Industrial Code (SIC)

SIC Name C 55 35 SIC name (for descriptive purposes; not read by PtGrowCntl)

*C = character, N = numeric.

Sample of File Contents

External Comb Boilers-Utilities-Coal 10100201 4911 Svcs-Electric

External Comb Boilers-Utilities-Coal 10100202 4911 Svcs-Electric

External Comb Boilers-Utilities-Coal 10100203 4911 Svcs-Electric

External Comb Boilers-Utilities-Coal 10100204 4911 Svcs-Electric

External Comb Boilers-Utilities-Coal 10100212 4911 Svcs-Electric

External Comb Boilers-Utilities-Coal 10100222 4911 Svcs-Electric

External Comb Boilers-Utilities-Coal 10100223 4911 Svcs-Electric

External Comb Boilers-Utilities-Coal 10100224 4911 Svcs-Electric

External Comb Boilers-Utilities-Coal 10100226 4911 Svcs-Electric

External Comb Boilers-Utilities-Coal 10100301 4911 Svcs-Electric

External Comb Boilers-Utilities-Coal 10100302 4911 Svcs-Electric

External Comb Boilers-Utilities-Coal 10100303 4911 Svcs-Electric

External Comb Boilers-Utilities-Coal 10100306 4911 Svcs-Electric

External Comb Boilers-Utilities-Oil 10100401 4911 Svcs-Electric

External Comb Boilers-Utilities-Oil 10100404 4911 Svcs-Electric

External Comb Boilers-Utilities-Oil 10100501 4911 Svcs-Electric

External Comb Boilers-Utilities-Gas 10100601 4911 Svcs-Electric

External Comb Boilers-Utilities-Gas 10100604 4911 Svcs-Electric

External Comb Boilers-Industrial-Coal 10200104 2271 Woven Carpets and Rugs

External Comb Boilers-Industrial-Coal 10200201 1094 Uranium/Radium Ores

External Comb Boilers-Industrial-Coal 10200202 1011 Iron Ores

External Comb Boilers-Industrial-Coal 10200203 2046 Wet Corn Milling

External Comb Boilers-Industrial-Coal 10200204 1011 Iron Ores

External Comb Boilers-Industrial-Coal 10200205 1429 Crushed/Broken Stone,NEC

External Comb Boilers-Industrial-Bit Coa10200210 2047 Pet Food

External Comb Boilers-Industrial-Coal 10200212 2046 Wet Corn Milling

External Comb Boilers-Industrial-Coal 10200217 2075 Soybean Oil Mills

External Comb Boilers-Industrial-Coal 10200219 2111 Cigarettes

External Comb Boilers-Industrial-Coal 10200221 2063 Beet Sugar

External Comb Boilers-Industrial-Coal 10200222 2062 Cane Sugar Refining

External Comb Boilers-Industrial-Coal 10200224 2063 Beet Sugar

Figure 21 SCC to SIC Cross-Reference File (ptscc2sic.txt)
A-44

File Name: MACT_gen.txt

File Type: ASCII Text; Non-header data begins on line #2.

Variables and File Structure

Name Type* Column Length DecimalsDescription

MACTcode C 1 7 MACT category code, right justified

MACTXeff N 9 6 2 Control efficiency to be applied to existing emission sources

MACTNeff N 16 6 2 Control efficiency to be applied to new emission sources

MACTrate N 23 6 2 Percentage of future emission attributed to new sources

Cdate D 30 4 Expected deadline for affected emission sources to comply

with standards; reductions are prorated when cdate falls

during the projected year

Apply C 41 1 Application control flag: set to 1 if controls are to be applied,

set to 0 if control are not to be applied

MACT_src C 43 1 Source control flag: set to M to apply controls only to major

sources, set to B to apply controls to both major and area

sources

MACT name C 45 39 MACT category name (for descriptive purposes, not read by

PtGrowCntl)

*C = character, N = numeric, D = date in DD/MM/YYYY format.

Sample of File Contents

MACT MCTXEf MCTNEf MCTrte Compl-date Apply? MACT_src MACTname

0101 0.00 0.00 0.00 05/31/2005 1 M Engine Test Facilities

0105 25.50 25.50 0.00 02/28/2007 1 M Stationary Reciprocating Internal

Combu

0107 61.02 61.02 0.00 02/28/2007 1 M Industrial/Commercial/ Institutional

Bo

0108 7.20 7.20 0.00 08/30/2006 1 M Stationary Combustion Turbines

Figure 22a. General MACT Reduction Information File (MACT_gen.txt)
A-45

File Name: MACT_spec.txt

File Type: ASCII Text; Non-header data begins on line #2.

Variables and File Structure

Name Type* Column Length Decimals Description

MACTcode C 1 7 MACT category code

NTI_HAP C 9 3 HAP identification code

SAROAD C 13 5 Not currently used: Pollutant code assigned by

PtModelProc

SCC8 C 20 8 8-digit SCC

SCC6 C 29 6 6-digit SCC

EffXspec N 37 6 2 Control efficiency to be applied to existing emission

sources

EffNspec N 44 6 2 Control efficiency to be applied to new emission sources

SnewRate N 51 6 2 Percentage of future emissions attributed to new sources

Apply C 58 1 Application control flag: set to 1 if controls are to be

applied, set to 0 not to apply controls

SApp_Src C 60 1 Source control flag: set to M to apply controls only to

major sources, set to B to apply controls to both major

and area sources

PollName C 62 30 Pollutant name (for descriptive purposes, not read by

PtGrowCntl)

ProcName C 93 33 Process name (for descriptive purposes, not read by

PtGrowCntl)

MACTname C 141 90 MACT category name (for descriptive purposes, not read

by PtGrowCntl)

*C = character, N = numeric.

Sample of File Contents

MACT NTI_HAP SAROAD SCC8 SCC6 EffXsp EffNsp SnewRate Apply? MACT_src

0105 37 26.83 26.83 0.00 1 M

0105 41 23.95 23.95 0.00 1 M

0105 107 25.46 25.46 0.00 1 M

0105 128 26.36 26.36 0.00 1 M

Figure 22b. Specific MACT Reduction Information File (MACT_spec.txt)
A-46

File Name: User_Control.txt

File Type: ASCII Text; Non-header data begins on line #2.

Variables and File Structure

Name Type* Column Length DecimalsDescription

ACT_ID C 1 25 Facility-level activity identification code

MACTcode C 27 7 MACT category code

SCC C 35 8 SCC code

SIC C 44 4 SIC code

NTI_HAP C 49 3 HAP identification code

SAROAD C 53 5 Not currently used; Pollutant code assigned by PtModelProc

E_Eff N 59 6 2 Control efficiency to be applied to existing emission sources

N_Eff N 66 6 2 Control efficiency to be applied to new, modified, or

reconstructed emission sources

N_Rate N 73 6 2 Percentage of future emissions attributed to new sources

Apply C 80 1 Application control flag: set to 1 if controls are to be applied,

set to 0 not to apply controls

U_Src C 82 1 Source type: set to M for major sources, A for area source,

and B for both types of sources

CntyCode C 84 4 County code: used to apply reduction information to specific

counties

U_Replace C 89 1 Replacement code: set to R to replace MACT-based

controls, set to A to add to MACT-based controls 

*C = character, N = numeric.

No sample file is currently provided as a part of EMS-HAP

Figure 23. User-defined Reduction Information File (User_Controls.txt)
A-47

File Name: popflg96.txt

File Type: ASCII Text; Non-header data begins on line #3.

Variables and Structure

Name Type* Column Length Description

STCOUNTY C 4 5 State/county FIPS code

CNTYNAME C 13 42 County name (not used; for descriptive purposes only)

POPFLG96 C 56 2 Urban/Rural flag

CNTYCODE C 59 5 County Code

STABBR C 71 2 2-character state abbreviation

*C=character

Sample of File Contents

STCTY CNTYNAME POPFLG96 CntyCode STABBR

02068 Denali Borough R R AK

02232 Skagway-Hoonah-Angoon Census Area R R AK

02282 Yakutat Borough R R AK

01007 Bibb R R AL

01011 Bullock R R AL

01013 Butler R R AL

01019 Cherokee R R AL

01021 Chilton R R AL

01023 Choctaw R R AL

01025 Clarke R R AL

01027 Clay R R AL

01029 Cleburne R R AL

01035 Conecuh R R AL

01037 Coosa R R AL

01039 Covington R R AL

01041 Crenshaw R R AL

01043 Cullman R R AL

01049 DeKalb R R AL

01053 Escambia R R AL

01057 Fayette R R AL

01059 Franklin R R AL

01061 Geneva R R AL

01063 Greene R R AL

01065 Hale R R AL

01067 Henry R R AL

01071 Jackson R R AL

01075 Lamar R R AL

01079 Lawrence R R AL

01087 Macon R R AL

01091 Marengo R R AL

01093 Marion R R AL

Figure 24. County-level Urban/Rural Designations and County Code Assignment File

(popflg96.txt)
A-48

File Name: MACT_grp.txt

File Type: ASCII Text; Non-header data begins on line #1.

Variables and File Structure

Name Type* Column Length Description

MACTcode C 1 7 MACT category code

MACT_grp C 9 1 Source group

*C=character, N=numeric

Sample of File Contents

0101 6

0102 6

0103 6

0104 6

0105 6

0106 6

0201 4

0202 5

0203 4

0204 4

0205 2

0206 7

0207 6

0301 6

0302 1

0303 6

0304 4

0305 6

0306 7

0307 7

0308 6

0309 6

0310 4

0401 6

0402 6

0403 6

0404 6

0405 6

0406 6

0407 6

0408 6

0409 5

0410 4

0411 6

0412 4

0501 4

0502 5

0503 2

Figure 25. Source Group Assignment by MACT Category File (MACT_grp.txt)
A-49

File Name: SCC6_grp.txt

File Type: ASCII Text; Non-header data begins on line #1.

Variables and File Structure

Name Type* Column Length Description

SCC C 1 6 6-digit SCC code

ADD_grp C 10 1 Source group

SCCrank N 12 2 Hierarchy rank of source group assignment

*C=character, N=numeric

Sample of File Contents

301001 0 5

301003 0 5

301005 0 5

301006 0 5

301007 0 5

301008 0 5

301009 0 5

301010 0 5

301014 0 5

301015 0 5

301018 0 5

301019 0 5

301020 0 5

301021 0 5

301023 0 5

301024 0 5

301025 0 5

301026 0 5

301027 0 5

301030 0 5

301031 0 5

301032 0 5

301033 0 5

301034 0 5

301035 0 5

301040 0 5

301050 0 5

301060 0 5

301070 0 5

301091 0 5

301099 0 5

301100 0 5

301120 0 5

301121 0 5

301125 0 5

301126 0 5

Figure 26. Source Group Assignment by SCC Code File (SCC6_grp.txt)
A-50

File Name: SIC_grp.txt

File Type: ASCII Text; Non-header data begins on line #1.

Variables and File Structure

Name Type* Column Length Description

SIC C 1 4 SIC code

ADD_grp C 8 1 Source group

SCCrank N 10 2 Hierarchy rank of source group assignment

*C=character, N=numeric

Sample of File Contents

2011 0 5

2013 0 5

2015 0 5

2020 0 5

2021 0 5

2022 0 5

2023 0 5

2024 0 5

2026 0 5

2032 0 5

2033 0 5

2034 0 5

2035 0 5

2037 0 5

2038 0 5

2041 0 5

2043 0 5

2044 0 5

2045 0 5

2046 0 5

2047 0 5

2048 0 5

2051 0 5

2052 0 5

2062 0 5

2063 0 5

2064 0 5

2066 0 5

2067 0 5

2074 0 5

2075 0 5

2076 0 5

2077 0 5

2079 0 5

2080 0 5

2082 0 5

Figure 27. Source Group Assignment by SIC Code File (SIC_grp.txt)
A-51

File Name: indecay.txt

File Type: ASCII Text; Non-header data begins on line #1.

Variables and Structure

Name Type* Column Length/ format Description

Reactivity class N 1 1 Ranges from 1 to 9

Time block N 3 1 Ranges from 1 to 8

Decay

coefficients

C 5 60 Coefficients for stability classes A

through F.

*C=character, N=numeric

Sample File Contents

1 1 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00

1 2 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00

1 3 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00

1 4 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00

1 5 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00

1 6 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00

1 7 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00

1 8 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.000E+00

4 1 9.870E-07 9.870E-07 9.870E-07 9.870E-07 9.870E-07 9.870E-07

4 2 9.870E-07 9.870E-07 9.870E-07 9.870E-07 9.870E-07 9.870E-07

4 3 1.180E-05 7.890E-06 3.950E-06 1.970E-06 9.870E-07 9.870E-07

4 4 7.890E-05 5.920E-05 3.950E-05 1.970E-05 9.870E-07 9.870E-07

4 5 6.710E-05 5.130E-05 3.550E-05 1.970E-05 9.870E-07 9.870E-07

4 6 2.370E-05 1.780E-05 1.180E-05 7.890E-06 9.870E-07 9.870E-07

4 7 1.970E-06 1.970E-06 1.970E-06 9.870E-07 9.870E-07 9.870E-07

4 8 9.870E-07 9.870E-07 9.870E-07 9.870E-07 9.870E-07 9.870E-07

5 1 2.470E-06 2.470E-06 2.470E-06 2.470E-06 2.470E-06 2.470E-06

5 2 2.470E-06 2.470E-06 2.470E-06 2.470E-06 2.470E-06 2.470E-06

5 3 2.960E-05 1.970E-05 9.870E-06 4.930E-06 2.470E-06 2.470E-06

5 4 1.970E-04 1.480E-04 9.870E-05 4.930E-05 2.470E-06 2.470E-06

5 5 1.680E-04 1.280E-04 8.880E-05 4.930E-05 2.470E-06 2.470E-06

5 6 5.920E-05 4.440E-05 2.960E-05 1.970E-05 2.470E-06 2.470E-06

5 7 4.930E-06 4.930E-06 4.930E-06 2.470E-06 2.470E-06 2.470E-06

5 8 2.470E-06 2.470E-06 2.470E-06 2.470E-06 2.470E-06 2.470E-06

6 1 4.930E-06 4.930E-06 4.930E-06 4.930E-06 4.930E-06 4.930E-06

6 2 4.930E-06 4.930E-06 4.930E-06 4.930E-06 4.930E-06 4.930E-06

6 3 5.920E-05 3.950E-05 1.970E-05 9.870E-06 4.930E-06 4.930E-06

6 4 3.950E-04 2.960E-04 1.970E-04 9.870E-05 4.930E-06 4.930E-06

6 5 3.350E-04 2.570E-04 1.780E-04 9.870E-05 4.930E-06 4.930E-06

6 6 1.180E-04 8.880E-05 5.920E-05 3.950E-05 4.930E-06 4.930E-06

6 7 9.870E-06 9.870E-06 9.870E-06 4.930E-06 4.930E-06 4.930E-06

6 8 4.930E-06 4.930E-06 4.930E-06 4.930E-06 4.930E-06 4.930E-06

7 1 5.010E-04 5.010E-04 5.010E-04 5.010E-04 5.010E-04 5.010E-04

7 2 3.210E-05 3.210E-05 3.210E-05 2.540E-04 5.010E-04 5.010E-04

7 3 9.000E-05 6.040E-05 3.080E-05 5.610E-05 5.010E-04 5.010E-04

7 4 5.930E-04 4.450E-04 2.970E-04 1.490E-04 8.140E-06 8.140E-06

7 5 5.040E-04 3.860E-04 2.670E-04 1.490E-04 8.140E-06 8.140E-06

7 6 1.790E-04 1.340E-04 9.000E-05 6.340E-04 8.140E-06 8.140E-06

7 7 3.950E-05 3.950E-05 3.950E-05 2.540E-04 5.010E-04 5.010E-04

7 8 5.010E-04 5.010E-04 5.010E-04 5.010E-04 5.010E-04 5.010E-04

8 1 1.230E-05 1.230E-05 1.230E-05 1.230E-05 1.230E-05 1.230E-05

8 2 1.230E-05 1.230E-05 1.230E-05 1.230E-05 1.230E-05 1.230E-05

8 3 1.480E-04 9.870E-05 4.930E-05 2.470E-05 1.230E-05 1.230E-05

8 4 9.870E-04 7.400E-04 4.930E-04 2.470E-04 1.230E-05 1.230E-05

8 5 8.390E-04 6.410E-04 4.440E-04 2.470E-04 1.230E-05 1.230E-05

8 6 2.960E-04 2.220E-04 1.480E-04 9.870E-05 1.230E-05 1.230E-05

8 7 2.470E-05 2.470E-05 2.470E-05 1.230E-05 1.230E-05 1.230E-05

8 8 1.230E-05 1.230E-05 1.230E-05 1.230E-05 1.230E-05 1.230E-05

9 1 4.940E-07 4.940E-07 4.940E-07 4.940E-07 4.940E-07 4.940E-07

9 2 4.940E-07 4.940E-07 4.940E-07 4.940E-07 4.940E-07 4.940E-07

9 3 5.900E-06 3.950E-06 1.980E-06 9.850E-07 4.940E-07 4.940E-07

Figure 28. Decay Rate File (indecay.txt)
A-52

File Name: defpart.txt

File Type: ASCII Text; Non-header data begins on line #2.

Variables and File Structure

Input data is separated by a minimum of one blank; column positions and length are variable and are determined when file

is read.

Name Type* Description

SAROAD C SAROAD code

NUMCAT N Number of particle size categories 

PDIA1 - PDIA(NUMCAT) N Particle size distribution parameter: diameter (microns)

PFRA1 - PFRA(NUMCAT) N Particle size distribution parameter: mass fraction

PDEN1 -PDEN(NUMCAT) N Particle size distribution parameter: density (grams/cm3

)

PLIQ1 - PLIQ(NUMCAT) N Particle size distribution parameter: liquid scavenging coefficient (1/(sec-mm/hr))

PICE1 - PICE(NUMCAT) N Particle size distribution parameter: ice scavenging coefficient (1/(sec-mm/hr))

*C = character, N = numeric.

Sample File Contents

SAROAD, # of sizes, list of size distributions, list of mass fractions, list of

densities, liq scaven, ice scaven

80124 1 1.575 1.0 1.0 0.000013

80141 1 1.575 1.0 1.0 0.000013

80193 1 1.575 1.0 1.0 0.000013

80324 1 6.925 1.0 1.0 0.000052

80341 1 6.925 1.0 1.0 0.000052

80393 1 6.925 1.0 1.0 0.000052

80400 1 1.575 1.0 1.0 0.000013

80401 1 6.925 1.0 1.0 0.000052

Figure 29. Particle Size Distribution File by SAROAD Code (defpart.txt)
A-53

File Name: sccpart.txt

File Type: ASCII Text; Non-header data begins on line #1.

Variables and File Structure

Input data is separated by a minimum of one blank; column positions and length are variable and are determined when file

is read.

Name Type* Description

SAROAD C SAROAD code

SCC C SCC code

NUMCAT N Number of particle size categories 

PDIA1 - PDIA10 N Particle size distribution parameter: diameter (microns)

PFRA1 - PFRA10 N Particle size distribution parameter: mass fraction

PDEN1 -PDEN10 N Particle size distribution parameter: density (grams/cm3

)

PLIQ1 - PLIQ10 N Particle size distribution parameter: liquid scavenging coefficient (1/(sec-mm/hr))

PICE1 - PICE10 N Particle size distribution parameter: ice scavenging coefficient (1/(sec-mm/hr))

*C = character, N = numeric.

No sample file is currently provided as a part of EMS-HAP

Figure 30. Particle Size Distribution File by SAROAD Code and SCC (sccpart.txt)
A-54

File Name: defgas.txt

File Type: ASCII Text; Non-header data begins on line #2.

Variables and File Structure

Input data is separated by a minimum of one blank; column positions and length are variable and are determined when file

is read.

Name Type* Description

SAROAD C SAROAD code

DIFF N Gas deposition parameter: molecular diffusivity (cm2/sec)

ALPHA N Gas deposition parameter: solubility enhancement factor

RX N Gas deposition parameter: reactivity parameter

RSUBM N Gas deposition parameter: mesophyll resistence term (sec/cm)

HENRY N Gas deposition parameter: Henry’s Law coefficient

LIQSCAV N Gas deposition parameter: liquid scavenging coefficient (1/(sec-mm/hr))

*C = character, N = numeric.

Sample File Contents

SAROAD, diffusivity, alphas, reactivity, mesophyll resistance, Henry's Law coeff,

liquid scavenging.

43218 0.1013 1.0 10.0 6.0882e5 8.4975

43502 0.1720 1.0 10.0 9.4118e-1 1.3136e-5

43505 0.1094 1.0 10.0 2.8941e3 4.0394e-2

43817 0.07492 1.0 10.0 7.8529e4 1.0961

43860 0.1099 1.0 10.0 2.3588e5 3.2923

45201 0.08962 1.0 10.0 1.6382e4 2.2865e-1

Figure 31. Gas Deposition Parameter File by SAROAD Code(defgas.txt)
A-55

File Name: hstn-elev.txt

File Type: ASCII Text; Non-header data begins on line #2.

Variables and File Structure

Name Type* Column Length Decimal Description

COL N 1 3 Model domain grid cell column number

ROW N 4 3 Model domain grid cell row number

ELEV N 7 4 Elevation (meters)

*C = character, N = numeric.

Sample of File Contents

col(3), row(3), elevation(4) June 20, 2000

1 1 80

1 2 81

1 3 76

1 4 82

1 5 79

1 6 85

1 7 82

1 8 88

1 9 93

1 10 95

1 11 89

1 12 92

1 13 93

1 14 95

1 15 97

1 16 98

1 17 98

1 18 105

1 19 106

1 20 110

1 21 112

1 22 114

1 23 115

1 24 114

1 25 115

1 26 113

1 27 115

Figure 32. Terrain Elevation File by Grid Cell (hstn-elev.txt)
A-56

File Name: surrxref.txt

File Type: ASCII Text; Non-header data begins on line #3.

Variables and Structure

Name Type* Column Length Description

AMS C 1 10 AMS code

S_sur N 14 2 Numeric code representing the spatial surrogate that should be used 

Desc C 18 200 Description of the AMS category

*C=character, N=numeric

Sample record 

2101000000 4 Electric Utility Stationary Source Fuel Combust

2101001000 4 Electric Utility Anthracite Coal

2101002000 4 Electric Utility Bituminous/Subbituminous Coal

2101003000 4 Electric Utility Lignite Coal

2101004000 4 Electric Utility Distillate Oil

2101004001 4 Distillate Oil All Boiler Types

2101005000 4 Electric Utility Residual Oil

2101006000 4 Electric Utility Natural Gas

2101006001 4 Natural Gas All Boiler Types

2101006002 4 Natural Gas All I.C. Engine Types

Figure 33. Spatial Surrogate Assignment File (surrxref.txt)
A-57

File Name: mact2ams.txt

File Type: ASCII Text; Non-header data begins on line #2.

Variables and File Structure

Name Type* Column Length Decimals Description

MACT C 1 7 MACT category code

AMS C 9 10 AMS code or point source SIC code that gives the best fit

to temporal allocation data

Surr N 20 2 Spatial surrogate for spatial allocation

Descript C 23 50 Category description

*

C = character, N = numeric.

Sample of File Contents

0105 20100101 6 Stationary IC Engines

0106 2100000000 3 Stationary Turbines

0406 2305000000 3 Refractories Manufacturing

0501 2310000000 19 Oil & Nat. Gas Production

0601 2501060050 2 Gas Dispensing, Gasoline Distribution Stage I

1609 2461000000 6 Commercial Sterilization

1636 2305000000 3 Friction Products

1802 2601000000 19 Municipal Waste Combustors

Figure 34. MACT Category to AMS or SCC Code Cross-Reference File (mact2ams.txt)
A-58

File Names: SAFE# (where # is a one or 2-digit number representing the code for the spatial

surrogate)

File Type: SAS®

Variables and Structure

Name Type* Description

Cell A11 State (2-digit) and county (3-digit) FIPS codes, followed by the 6-digit

Census tract code, with leading zeros where appropriate

StCounty A5 State and county FIPS code

Uflag_l A1 Urban/rural flag. Urban = 1, Rural = 2. Assignments of urban and rural

codes were made using 1990 Census data.

LandLon N Longitude of the tract centroid (not used)

LandLat N Latitude of the tract centroid (not used)

Ntract N Number of tracts in the county

SAF#

 (where # = 1, 2, etc.)

N Spatial allocation factor, defined as the fraction of county level activity that

is assigned to each tract. This variable totals to 1 for each county.

 *Ax=character string of length x, N=numeric

Sample record

01001020100 01001 2 -86.4864 32.4742 11 0.108108108108

01001020200 01001 2 -86.4722 32.4714 11 0.175675675676

01001020300 01001 2 -86.4586 32.4743 11 0.105405405405

01001020400 01001 2 -86.4436 32.4677 11 0.213513513514

01001020500 01001 2 -86.4272 32.4498 11 0.0351351351351

01001020600 01001 2 -86.4764 32.4405 11 0.186486486486

01001020700 01001 2 -86.4505 32.4485 11 0.0459459459459

01001020800 01001 2 -86.4991 32.5216 11 0.0297297297297

01001020900 01001 2 -86.5106 32.6392 11 0.0297297297297

01001021000 01001 2 -86.7494 32.6103 11 0.0108108108108

01001021100 01001 2 -86.7037 32.466 11 0.0594594594595

01003010100 01003 2 -87.7774 31.0673 21 0.0083005679336

01003010200 01003 2 -87.6795 30.9541 21 0.0096111839231

01003010300 01003 2 -87.8298 30.8221 21 0.039755351682

01003010400 01003 2 -87.6968 30.7591 21 0

01003010500 01003 2 -87.7774 30.8902 21 0.0878112712975

01003010600 01003 2 -87.7749 30.8617 21 0.0550458715596

01003010701 01003 2 -87.8959 30.6742 21 0.000873743993

01003010702 01003 2 -87.8941 30.6402 21 0.0777632153779

01003010703 01003 2 -87.8382 30.6291 21 0.0419397116645

01003010800 01003 2 -87.9003 30.5946 21 0.0174748798602

01003010901 01003 2 -87.6802 30.589 21 0.0048055919616

01003010902 01003 2 -87.7264 30.5495 21 0.047619047619

01003011000 01003 2 -87.708 30.4906 21 0.0091743119266

01003011100 01003 2 -87.8475 30.5028 21 0.0275229357798

Figure 35. Spatial Allocation Factor to Census Tract File (SAFE#)
A-59

File Names: HSAF# (where # is a one or 2-digit number representing the code for the spatial

surrogate)

File Type: SAS®

Variables and Structure

Name Type* Description

FIPS N State and county FIPS code

Col N Modeling domain grid column number

Row N Modeling domain grid row number

HSAFn N Spatial allocation factor, defined as the fraction of county level activity that is assigned to

each grid cell in the specified county

Ncells N number of grid cells in that county in the domain. Not used by EMS-HAP

Uflag_l A1 Not used by EMS-HAP

 *Ax=character string of length x, N=numeric

Sample record

48167 103 1 . 647 1

48167 103 2 0.0006537249 647 1

48201 21 81 0.0000552426 4866 1

Figure 36. Spatial Allocation Factor to Grid Cell File (HSAF#)
A-60

File Name: am_grp.txt

File Type: ASCII Text; Non-header data begins on line #8.

Variables and File Structure

Name Type* Column Length Decimals Description

SrceCatName C 1 90 Category description

SrceCatCode C 91 4 Source category identification code

Bin_U N 96 2 Source Group to be used for urban sources

Bin_R N 99 2 Source Group to be used for rural sources

*C = character, N = numeric.

Sample of File Contents

Acrylic Fibers/Modacrylic Fiber Production 9001 01 01

Adhesives and Sealants 9002 01 01

Aerospace Industries 9003 01 01

Agricultural Chemicals and Pesticides 9004 01 01

Agricultural Production 9005 01 01

Air and Gas Compressors 9006 01 01

Air and Water Resource and Solid Waste Management 9007 01 01

Alkalies And Chlorine 9008 01 01

Aluminum Die-Castings 9009 01 01

Aluminum Extruded Products 9010 01 01

Aluminum Foundries 9011 01 01

Aluminum Foundries (Castings) 9012 01 01

Aluminum Rolling and Drawing, nec 9013 01 01

Aluminum Sheet, Plate, and Foil manufacturing 9014 01 01

Amino and Phenolic Resins Production 9015 01 01

Ammunition, Except for Small Arms 9016 01 01

Analytical Instruments 9017 01 01

Animal And Marine Fats And Oils 9018 01 01

Animal Cremation 9019 01 01

Apparel and Accessories, nec 9020 01 01

Architectural Metal Work 9021 01 01

Asbestos Products Manufacturing 9022 01 01

Asphalt Concrete Manufacturing 9023 01 01

Asphalt Paving: Cutback Asphalt 9024 01 01

Asphalt Paving: Cutback and Emulsified 9025 01 01

Figure 37. Area and Mobile Source Group and Category Code Assignment File (am_grp.txt)
A-61

File Name: area_sic.txtFile Type: ASCII Text; Non-header data begins on line #3.Variables and File Structure

Name Type* Column Length Decimals Description

SrceCatName C 1 90 Category descriptionSIC C 91 4 SIC codeSICdesc C 95 50 SIC description*C = character, N = numeric.

Sample of File Contents (first two rows are headers)* Area category and sic file:* Category description c(90), sic c(4), 1x, SIC description c(50)Acrylic Fibers/Modacrylic Fiber Production 28 Organic fibers, noncellulosicAerospace Industries 37 AircraftAgricultural Production 01 Agricultural production - cropsAgricultural Field Burning: Open, Propane, Stack Burning 01 Agricultural production - cropsAmino and Phenolic Resins Production 28 Plastics materials and resinsAsphalt Concrete Manufacturing 29 Asphalt paving mixtures and blocksAsphalt Paving: Cutback Asphalt 16 Highway and street constructionAsphalt Paving: Cutback and Emulsified 16 Highway and street constructionAsphalt Roofing Manufacturing 29 Asphalt felts and coatingsAutobody Refinishing Paint Application 75 Auto repair shopsAviation Gas Distribution 45 Air transportationAviation Gasoline Distribution: Stage I & II 45 Air transportationBoat Manufacturing 37 Boat building and repairing

Figure 38. Non-point source Category to SIC Cross-Reference File (area_sic.txt)
A-62

File Name: area_cntl.txt

File Type: ASCII Text; Non-header data begins on line #2.

Variables and File Structure

Name Type* Column Length Decimals Description

Cat_Name C 1 90 Category description

MACT C 92 7 MACT category code

NTI_HAP C 100 3 HAP identification code

E_eff N 104 6 2 Control efficiency to be applied to existing emission sources

N_eff N 111 6 2 Control efficiency to be applied to new, modified, or

reconstructed emission sources

N_rate N 118 6 2 Percentage of future emissions attributed to new sources

CntyCode C 125 5 County code: used to apply reduction information to specific

counties

R_code C 131 1 Replacement code: set to R to replace MACT-based controls,

set to A to add to MACT-based controls 

Apply C 133 1 Application control flag: set to 1 if controls are to be applied,

set to 0 not to apply controls

*C = character, N = numeric.

No sample file is currently provided as a part of EMS-HAP

Figure 39. Non-point and Mobile Source Reduction Information File (area_cntl.txt)
APPENDIX B

EMS-HAP Sample Batch Files
B-ii

Table Of Contents

Program Name List of Figures Corresponding to Sample Batch Files Page

AirportProc Figure 1. Sample of AirportProc Batch File for Processing Data

for ASPEN

B-1

Figure 2. Sample of AirportProc Batch File for Processing Data

for ISCST3

B-2

PtDataProc Figure 3. Sample of PtDataProc Batch File for Processing Data

for ASPEN

B-4

Figure 4. Sample of PtDataProc Batch File for Processing Data

for ISCST3

B-7

PtModelProc Figure 5. Sample of PtModelProc Batch File for Processing

Data for ASPEN

B-10

Figure 6. Sample of PtModelProc Batch File for Processing

Data for ISCST3

B-11

PtTemporal Figure 7. Sample of PtTemporal Batch File for Processing Data

for ASPEN

B-12

Figure 8. Sample of PtTemporal Batch File for Processing Data

for ISCST3

B-13

PtGrowCntl Figure 9. Sample of PtGrowCntl Batch File for Processing Data

for ASPEN

B-14

Figure 10. Sample of PtGrowCntl Batch File for Processing

Data for ISCST3

B-16

PtFinal_ASPEN Figure 11. Sample of PtFinal_ASPEN Batch File for Processing

Data for ASPEN

B-18

PtFinal_ISCST3 Figure 12. Sample of PtFinal_ISCST3 Batch File for Processing

Data for ISCST3

B-20
Program Name List of Figures Corresponding to Sample Batch Files Page

B-iii

AreaPrep Figure 13. Sample of AreaPrep Batch File B-23

MobilePrep Figure 14. Sample of MobilePrep Batch File B-24

AMProc Figure 15. Sample of AMProc Batch File for Processing Data

for ASPEN

B-25

Figure 16. Sample of AMProc Batch File for Processing Data

for ISCST3

B-28

AMFinalFormat Figure 17. Sample of AMFinalFormat Batch File for Processing

Data for ISCST3

B-31
B-1

# AirportProc program of EMSHAP when processing data for ASPEN

# For this run, we do not concatenate the point source data set with the allocated aircraft emissions

# Provide the model for which this data is being processed (ASPEN or ISCST3)

setenv MODEL ASPEN

# Define all directories

# path for the point source data set

setenv POINT /data/work14/ecr/EMSHAP/areamobile/newmobile/

# path for the mobile source data set

setenv MOBILE /data/work14/ecr/EMSHAP/areamobile/newmobile/

# path for reference data sets

setenv REFDIR /data/work14/ecr/EMSHAP/reffiles/

# Define all input files

# Point source inventory

setenv INPOINT AAAAA

# Mobile source inventory 

setenv INMOBIL mv030900

# Airport allocation reference file

setenv AIRALLC apt_allc

# Define output files

# Point source inventory

setenv OUTPOINT pt0328ap

# Mobile source inventory 

setenv OUTMOBIL mv0328ap

# Set add2pt to 1 in order to add allocated airport emission records to the point source inventory.

# set it to 0 to create output file containing only airport emissions.

setenv ADD2PT 0

# Set add2mb to 1 in order to add unallocated airport emission records to the mobile source inventory

# without the allocated airport emission records. 

# Set it to 0 to create output file containing only unallocated airport emissions.

setenv ADD2MB 1

cp -p /data/work14/ecr/EMSHAP/point/Programs/AirportProc.sas AirportProc_032800.sas

sas AirportProc_032800.sas -work /data/work15/dyl/

Figure 1. Sample of AirportProc Batch File for Processing Data for ASPEN
B-2

# AirportProc program of EMSHAP when processing data for ISCST3

# For this run, we do not concatenate the point source data set with the allocated aircraft emissions

# Provide the model for which this data is being processed (ASPEN or ISCST3)

setenv MODEL ISC

# Define all directories

# path for the point source data set

setenv POINT /data/work14/ecr/EMSHAP/areamobile/newmobile/

# path for the mobile source data set

setenv MOBILE /data/work14/ecr/EMSHAP/areamobile/newmobile/

# path for reference data sets

setenv REFDIR /data/work14/ecr/EMSHAP/reffiles/

# Define all input files

# Point source inventory

setenv INPOINT AAAAA

# Mobile source inventory 

setenv INMOBIL mv030900

# Airport allocation reference file

setenv AIRALLC apt_allc

# Airport parameters file for modeling as ISC area sources

setenv ISCAREA ISC_airport_parameters

# Define default ISCST3 Airport release parameters for airports not in ISCAREA

# Length (meters) of X side of rectangle for ISCST3 area sources

setenv DEFXLEN 1000

# Length (meters) of Y side of rectangle for ISCST3 area sources

setenv DEFYLEN 1000

# Orientation angle (degrees from north) of rectangle for ISCST3 area sources

setenv DEFANGLE 0

# Release Height (meters) above ground for ISCST3 area sources

setenv DEFRELHT 2

# Initial vertical dimension (meters) of plume for ISCST3 area sources

setenv DEFINPLM 0

Figure 2. Sample of AirportProc Batch File for Processing Data for ISCST3
B-3

# Define output files

# Point source inventory

setenv OUTPOINT pt0328ap

# Mobile source inventory 

setenv OUTMOBIL mv0328ap

# Set add2pt to 1 in order to add allocated airport emission records to the point source inventory.

# set it to 0 to create output file containing only airport emissions.

setenv ADD2PT 0

# Set add2mb to 1 in order to add unallocated airport emission records to the mobile source inventory

# without the allocated airport emission records. 

# Set it to 0 to create output file containing only unallocated airport emissions.

setenv ADD2MB 1

cp -p /data/work14/ecr/EMSHAP/point/Programs/AirportProc.sas AirportProc_032800.sas

sas AirportProc_032800.sas -work /data/work15/dyl/

Figure 2. Sample of AirportProc Batch File for Processing Data for ISCST3 (continued)
B-4

# Point Source Processing: The Data Quality Assurance Program (PtDataProc) for ASPEN data processing

#Provide the model for which this data is being processed (ASPEN or ISC)

setenv MODEL ASPEN

# Defaults locations and stack parameters; windows file

# Provide directory paths:

# path for the SAS output data set

setenv IN_DATA /data/work14/ecr/EMSHAP/point/nata4-point/

# path for the SAS output data set

setenv OUTDATA /data/work14/ecr/EMSHAP/point/nata4-point/

# path for reference SAS data sets 

setenv REFFILE /data/work14/ecr/EMSHAP/reffiles/

# path for reference text files

setenv REFTEXT /data/work14/ecr/EMSHAP/reffiles/

# path for include program to determine a valid FIPS, the lat/lon from UTM, and FIPS from lat/lon (validFIP, # 

 ll2utm, and latlon2FIPS)

setenv INC_DIR /data/work14/ecr/EMSHAP/point/Programs/

# path for ancillary files used by the include program to determine the FIPS from lat/lon

# this directory must contain three data sets named bound6 and counties and cntyctr2

setenv MAP_DIR /data/work14/ecr/EMSHAP/reffiles/

# path for output text file of records without latitude/longitude data

setenv OUTTEXT /data/work14/ecr/EMSHAP/point/nata4-point/

# Provide input and output SAS data set names

# input SAS data set name

setenv INSAS preprocc

# output SAS data set name

setenv OUTSAS dataset

# output SAS data set name created from Windowing portion of the data processing

setenv FINAL dataproc

# Select the procedures to be included in data processing

# Set value to 1 for yes and 0 for no

# Provide name of necessary reference files and other information

# Default invalid or missing locations: set value of DoLocate to 1 for yes and 0 for no

setenv DOLOCATE 1

Figure 3. Sample of PtDataProc Batch File for Processing Data for ASPEN
B-5

# If defaulting locations, provide names of the text files containing the 

# county centroids by zip code, county FIPS, and state FIPS and postal abbr.

setenv ZIP zipcodes

setenv CNTYCENT cty_cntr

setenv STCENT st_cntr

# Also provide name of SAS dataset containing the random array of tracts, with radius

# greater than 0.5 miles, for each county to be used to assign default locations

setenv TRACTS trctarry

# Also provide name of SAS dataset containing tract information, 

# specifically the location of the tract centroid

setenv TRCTINFO tractinf

# Default stack parameters: set value of DoStack to 1 for yes and 0 for no

 setenv DOSTACK 1

# To default stack parameters by SCC: set value of DoSCC to 1 for yes and 0 for no

setenv DOSCCDEF 1

# If defaulting stack parameters by SCC, provide the name of the SCC correspondence file

setenv SCCDEFLT def_scc

# To default stack parameters by SIC: set value of DoSIC to 1 for yes and 0 for no

setenv DOSICDEF 1

# If defaulting stack parameters by SIC, provide the name of SIC correspondence file

setenv SICDEFLT def_sic

# If defaulting stack parameters, provide valid ranges and global defaults for each parameter

# Stack Height range

setenv DLOWHT 0.003 

setenv DHIHT 381 

# Stack Velocity range

setenv DLOWVEL 0.003 

setenv DHIVEL 198

# Stack Temperature Range 

setenv DLOWTEMP 273

setenv DHITEMP 1505

Figure 3. Sample of PtDataProc Batch File for Processing Data for ASPEN (continued)
B-6

# Stack Diameter range

setenv DLOWDIA 0.0762

setenv DHIDIA 15.24

# Global Defaults

setenv DFLTHT 10

setenv DFLTVEL 1

setenv DFLTTEMP 295

setenv DFLTDIA 1

# Window inventory data set by selecting variables and removing records with zero emssions

# To select variables: set value of DoSetVar to 1 for yes(or true) and 0 for no (or false)

setenv DOSETVAR 1

# To select variables in addition to the required variables: set value of 

# UseList to 1 for yes(or true) and 0 for no (or false) and provide the name of the file

setenv USELIST 1

setenv VARLIST varlist_061801

# To window by zero emissions and valid locations: set value of DoWindow to 1 for yes(or true) 

# and 0 for no (or false)

setenv DOWINDOW 1

# If windowing inventory, provide names of data sets to store the records with zero emissions 

# and the records without lat/lon values. 

setenv NOLOCATE nolatlon

setenv ZEROEMIS zeroemis

cp /vail2aspen/dyntel/EMSHAP/PROGRAMS/PtDataProc_JUN19.sas PtDataProc_JUL17.sas

sas PtDataProc_JUL17 -work /data/work14/dyntel/POINT96/

Figure 3. Sample of PtDataProc Batch File for Processing Data for ASPEN (continued)
B-7

# Point Source Processing: The Data Quality Assurance Program (PtDataProc) for ISCST3 data processing

# Defaults locations and stack parameters; windows file

#Provide the model for which this data is being processed (ASPEN or ISC)

setenv MODEL ISC

# Provide directory paths:

# path for the SAS output data set

setenv IN_DATA /data/work14/ecr/EMSHAP/point/nata4-point/

# path for the SAS output data set

setenv OUTDATA /data/work14/ecr/EMSHAP/point/nata4-point/

# path for reference text files

setenv REFTEXT /data/work14/ecr/EMSHAP/reffiles/

# path for include program to determine the UTM from lat/lon and visa versa (ll2utm and utm2ll)

setenv INC_DIR /data/work14/ecr/EMSHAP/point/Programs/

# path for output text file of records without latitude/longitude data

setenv OUTTEXT /data/work14/ecr/EMSHAP/point/nata4-point/

# Provide input and output SAS data set names

# input SAS data set name

setenv INSAS preprocc

# output SAS data set name

setenv OUTSAS dataset

# output SAS data set name created from Windowing portion of the data processing

setenv FINAL dataproc

# Select the procedures to be included in data processing; Set value to 1 for yes and 0 for no

# Provide name of necessary reference files and other information

# Default invalid or missing locations: set value of DoLocate to 1 for yes and 0 for no

setenv DOLOCATE 1

# UTM zone of ISCST3 model domain

setenv REF_ZONE 11

Figure 4. Sample of PtDataProc Batch File for Processing Data for ISCST3
B-8

# Default stack parameters: set value of DoStack to 1 for yes and 0 for no

 setenv DOSTACK 1

# To default stack parameters by SCC: set value of DoSCC to 1 for yes and 0 for no

setenv DOSCCDEF 1

# If defaulting stack parameters by SCC, provide the name of the SCC correspondence file

setenv SCCDEFLT def_scc

# To default stack parameters by SIC: set value of DoSIC to 1 for yes and 0 for no

setenv DOSICDEF 1

# If defaulting stack parameters by SIC, provide the name of SIC correspondence file

setenv SICDEFLT def_sic

# If defaulting stack parameters, provide valid ranges and global defaults for each parameter

# Stack Height range

setenv DLOWHT 0.003 

setenv DHIHT 381 

 Stack Velocity range

setenv DLOWVEL 0.003 

setenv DHIVEL 198

# Stack Temperature Range 

setenv DLOWTEMP 273

setenv DHITEMP 1505

# Stack Diameter Range

setenv DLOWDIA 0.0762

setenv DHIDIA 15.24 

# Set global defaults

setenv DFLTHT 10

setenv DFLTVEL 1

setenv DFLTTEMP 295

setenv DFLTDIA 1

Figure 4. Sample of PtDataProc Batch File for Processing Data for ISCST3 (continued)
B-9

# Window inventory data set by selecting variables and removing records with zero emissions

# To select variables: set value of DoSetVar to 1 for yes and 0 for no

setenv DOSETVAR 1

# To select variables in addition to the required variables: set value of 

# UseList to 1 for yes and 0 for no and provide the name of the file

setenv USELIST 1

setenv VARLIST varlist2

# To window by zero emissions and valid locations: set value of DoWindow to 1 for 

# yes and 0 for no

setenv DOWINDOW 1

# If windowing inventory, provide names of data sets to store the records with zero 

# emissions and the records without lat/lon values. Also provide the name of the 

# emissions variable to be used 

setenv NOLOCATE nolatlon

setenv ZEROEMIS zeroemis

setenv EMISVAR emis

cp -p /data/work14/ecr/EMSHAP/point/Programs/ptdataproc.sas ptdataproc_061600.sas

sas ptdataproc_061600.sas -work /data/work15/dyl/

Figure 4. Sample of PtDataProc Batch File for Processing Data for ISCST3 (continued)
B-10

# Point Source Processing - The Model Specific Program (PtModelProc) for processing data for ASPEN

# Provide the model for which this data is being processed (ASPEN or ISC)

setenv MODEL ASPEN

# Provide directory paths:

# path for the SAS input data set

setenv IN_DATA /data/work14/ecr/EMSHAP/point/nata4-point/

# path for the SAS output data set

setenv OUTDATA /data/work14/ecr/EMSHAP/point/nata4-point/

# path for the reference SAS data sets

setenv REFSAS /data/work14/ecr/EMSHAP/reffiles/

# path for the reference text files

setenv REFTEXT /data/work14/ecr/EMSHAP/reffiles/

# Provide input and output SAS data set names

# input SAS data set name

setenv INSAS dataproc

# output SAS data set name

setenv OUTSAS PtAspen

# Provide name of the HAP TABLE text files 

# These files contain the correspondance between the pollutant code used in the inventory

# and SAROAD code, the NTI HAP code, pollutant descriptions, keep flag and factor variable 

# File for nonroad emissions (that is, the airports that are being processed as point sources)

setenv MOBHAPS haptabl_nonroad

# File for point emissions (all point sources other than airports)

setenv PTHAPS haptabl_point_area

# name of the SAS data set containing the urban/rural flags by county (value is 1 or 0 if

# all tracts within the county are the same and value is 9 for non-uniform counties)

setenv CTYFLAG ctyflag

# name of the SAS data set containing the census tract information, including 

# urban/rural flags, state and county FIP codes, tract location, and tract radius

setenv TRCTINF tractinf

cp -p PtModelProc.sas PtModelProc_011300.sas

sas PtModelProc_011300.sas -work /data/work15/dyl/

Figure 5. Sample of PtModelProc Batch File for Processing Data for ASPEN
B-11

# Point Source Processing - The Model Specific Program (PtModelProc) for processing data for ISCST3

# Provide the model for which this data is being processed (ASPEN or ISC)

setenv MODEL ISC

# Provide directory paths:

# path for the SAS input data set

setenv IN_DATA /data/work14/ecr/EMSHAP/point/nata4-point/

# path for the SAS output data set

setenv OUTDATA /data/work14/ecr/EMSHAP/point/nata4-point/

# path for the reference text files

setenv REFTEXT /data/work14/ecr/EMSHAP/reffiles/

# Provide input and output SAS data set names

# input SAS data set name

setenv INSAS dataproc

# output SAS data set name

setenv OUTSAS PtISC

# Provide name of the HAP TABLE text files 

# These files contain the correspondence between the pollutant code used in the inventory

# and SAROAD code, the NTI HAP code, pollutant descriptions, keep flag and factor variable 

# File for nonroad emissions (that is, the airports that are being processed as point sources)

setenv MOBHAPS haptabl_nonroad

# File for point emissions (all point sources other than airports)

setenv PTHAPS haptabl_point_area

cp -p PtModelProc.sas PtModelProc_011300.sas

sas PtModelProc_011300.sas -work /data/work15/dyl/

Figure 6. Sample of PtModelProc Batch File for Processing Data for ISCST3
B-12

# Point Source Processing - The Temporal Allocation Progam (PtTemporal) for processing data for ASPEN

# Provide the model for which this data is being processed (ASPEN or ISC)

setenv MODEL ASPEN

# Provide directory paths:

# path for the SAS input data set

setenv IN_DATA /data/work14/ecr/EMSHAP/point/nata4-point/

# path for the SAS output data set

setenv OUTDATA /data/work14/ecr/EMSHAP/point/nata4-point/

# path for the reference text files

setenv REFFILE /data/work14/ecr/EMSHAP/reffiles/

# Provide input and output SAS data set names

# input SAS data set name

setenv INSAS PtAspen

# output SAS® data set name

setenv OUTSAS Temporal

# Provide name of Temporal Allocation File (TAF)

setenv TAF taff_hourly

# Provide name of the SCC_AMS correspondance texts:

# name of SCC to SCC_AMS correspondance file

setenv SCCLINK scc2ams

# name of SIC to SCC_AMS correspondance file

setenv SICLINK sic2ams

# name of MACT category code to SCC_AMS correspondance file

setenv MACTLINK mact2scc

cp -p /data/work14/ecr/EMSHAP/Point/Programs/PtTemporal.sas PtTemporal_062000.sas

sas PtTemporal_062000.sas -work /data/work15/dyl/

Figure 7. Sample of PtTemporal Batch File for Processing Data for ASPEN
B-13

# Point Source Processing - The Temporal Allocation Progam (PtTemporal) for processing data for ISCST3

# Provide the model for which this data is being processed (ASPEN or ISC)

setenv MODEL ISC

# Provide directory paths:

# path for the SAS input data set

setenv IN_DATA /data/work14/ecr/EMSHAP/point/nata4-point/

# path for the SAS output data set

setenv OUTDATA /data/work14/ecr/EMSHAP/point/nata4-point/

# path for the reference text files

setenv REFFILE /data/work14/ecr/EMSHAP/reffiles/

# Provide input and output SAS data set names

# input SAS data set name

setenv INSAS PtISC

# output SAS® data set name

setenv OUTSAS Temporal

# Provide name of Temporal Allocation File (TAF)

setenv TAF taff-ISCfactors062001

# Provide name of the SCC_AMS correspondance texts:

# name of SCC to SCC_AMS correspondance file

setenv SCCLINK scc2ams

# name of SIC to SCC_AMS correspondance file

setenv SICLINK sic2ams

# name of MACT category code to SCC_AMS correspondance file

setenv MACTLINK mact2scc

cp -p /data/work14/ecr/EMSHAP/Point/Programs/PtTemporal.sas PtTemporal_062000.sas

sas PtTemporal_062000.sas -work /data/work15/dyl/

Figure 8. Sample of PtTemporal Batch File for Processing Data for ISCST3
B-14

#Point Source Processing - The Growth and Control Program (PtGrowCntl)

# Model for which EMS-HAP is being run: ASPEN or ISC

setenv MODEL ASPEN

#Provide directory paths:

# path for the SAS input datasets

setenv IN_DATA /vail2aspen/dyntel/EMSHAP/TEST_EMSHAP/PTGROW/

# path for the SAS output datasets

setenv OUTDATA /vail2aspen/dyntel/EMSHAP/TEST_EMSHAP/PTGROW/

# path for the SAS reference datasets

setenv REFSAS /vail2aspen/dyntel/EMSHAP/ANCILLARY/

# path for the reference text files

setenv REFTEXT /vail2aspen/dyntel/EMSHAP/ANCILLARY/

#Provide input and output SAS data set names:

# input SAS data set name

setenv INSAS txbenz_gcinp

# output SAS data set name

setenv OUTSAS ptgrow_asp

########################################### BEGIN G&C

# GROWth option FLAG (MACT, USER, or BOTH)

# MACT - apply MACT controls only

# SIC - apply SIC controls only

# BOTH - apply both MACT and SIC controls

# NONE - Do Not apply Growth

setenv GROWFLAG BOTH

# Growth factor file by State/MACT

setenv GFMACT gfegas_bymact96_07

# Growth option flag (0 no assignment of alternate SIC, 1 assign alternate SIC)

setenv SICFLAG 1

# If assigning alternate/missing SIC codes, provide name of text SCC to SIC correspondence file

setenv SCC2SIC ptscc2sic

# Growth factor file by State/SIC

setenv GFSIC gfegas_bysic96_07

Figure 9. Sample of PtGrowCntl Batch File for Processing Data for ASPEN
B-15

############### BEGIN CONTROL #####################################

# Control option flag (MACT, USER, or BOTH)

# MACT - apply MACT controls only

# USER - apply user-defined controls only

# BOTH - apply both MACT and user-defined controls

# NONE - Do Not Controls 

setenv CNTLFLAG BOTH

# If CNTLFLAG IS MACT or BOTH

# The general MACT controls specification file

setenv MACTGEN MACT_gen_062501

# Growth and control options (0 no MACT specific file, 1 use MACT specific file)

setenv SPECMACT 1

# The pollutant specific MACT controls specification file

setenv SPECFILE MACT_spec_062501

# If CNTLFLAG IS USER or BOTH

# The user-defined controls specification file

setenv USERFILE user_controls_050401

# Provide name of county code assignment file in order to assign controls by county

setenv CNTYUR popflg96_010501

# Specify the growth year corresponding to the growth factors used to project the emissions

setenv GROWYEAR 2007

# Choose whether to apply reductions based on FISCAL (Oct 1 to Sept 30) or CALENDAR (Jan 1 to Dec 31)

setenv YEARTYPE calendar

cp -p /vail2aspen/dyntel/EMSHAP/PROGRAMS/PtGrowCntl_AUG31.sas PtGrowCntl_AUG31.sas

sas PtGrowCntl_AUG31.sas -work /vail2aspen/dyntel/EMSHAP/TEST_EMSHAP/PTGROW/tmp/

Figure 9. Sample of PtGrowCntl Batch File for Processing Data for ASPEN (continued)
B-16

#Point Source Processing - The Growth and Control Program (PtGrowCntl)

# Model for which EMS-HAP is being run: ASPEN or ISC

setenv MODEL ISC

#Provide directory paths:

# path for the SAS input datasets

setenv IN_DATA /vail2aspen/dyntel/EMSHAP/TEST_EMSHAP/PTGROW/ISC/

# path for the SAS output datasets

setenv OUTDATA /vail2aspen/dyntel/EMSHAP/TEST_EMSHAP/PTGROW/ISC/

# path for the SAS reference datasets

setenv REFSAS /vail2aspen/dyntel/EMSHAP/ANCILLARY/

# path for the reference text files

setenv REFTEXT /vail2aspen/dyntel/EMSHAP/ANCILLARY/

#Provide input and output SAS data set names:

# input SAS data set name

setenv INSAS txbenz_gcinp

# input SAS data set name

setenv OUTSAS ptgrow_isc

########################################### BEGIN G&C

# GROWth option FLAG (MACT, USER, or BOTH)

# MACT - apply MACT controls only

# SIC - apply SIC controls only

# BOTH - apply both MACT and SIC controls

# NONE - Do Not apply Growth

setenv GROWFLAG BOTH

# Growth factor file by State/MACT

setenv GFMACT gfegas_bymact96_07

# Growth option flag (0 no assignment of alternate SIC, 1 assign alternate SIC)

setenv SICFLAG 1

# If assigning alternate/missing SIC codes, provide name of text SCC to SIC correspondence file

setenv SCC2SIC ptscc2sic

# Growth factor file by State/SIC

setenv GFSIC gfegas_bysic96_07

Figure 10. Sample of PtGrowCntl Batch File for Processing Data for ISCST3
B-17

############### BEGIN CONTROL #####################################

# Control option flag (MACT, USER, or BOTH)

# MACT - apply MACT controls only

# USER - apply user-defined controls only

# BOTH - apply both MACT and user-defined controls

# NONE - Do Not Controls 

setenv CNTLFLAG BOTH

# If CNTLFLAG IS MACT or BOTH

# The general MACT controls specification file

setenv MACTGEN MACT_gen_062501

# Growth and control options (0 no MACT specific file, 1 use MACT specific file)

setenv SPECMACT 1

# The pollutant specific MACT controls specification file

setenv SPECFILE MACT_spec_062501

# If CNTLFLAG IS USER or BOTH

# The user-defined controls specification file

setenv USERFILE user_controls_050401

# Provide name of county code assignment file in order to assign controls by county

setenv CNTYUR popflg96_010501

# Specify the growth year corresponding to the growth factors used to project the emissions

setenv GROWYEAR 2007

# Choose whether to apply reductions based on FISCAL (Oct 1 to Sept 30) or CALENDAR (Jan 1 to Dec 31)

setenv YEARTYPE calendar

cp -p /vail2aspen/dyntel/EMSHAP/PROGRAMS/PtGrowCntl_AUG31.sas PtGrowCntl_AUG31.sas

sas PtGrowCntl_AUG31.sas -work /vail2aspen/dyntel/EMSHAP/TEST_EMSHAP/PTGROW/ISC/tmp/

Figure 10. Sample of PtGrowCntl Batch File for Processing Data for ISCST3 (continued)
B-18

# Point Source Processing - The ASPEN Final Format Program (PtFinal_ASPEN)

# Assigns source groups for ASPEN 

# Produces ASPEN-formatted text files

# Provide the model for which this data is being processed (most be set to ASPEN)

setenv MODEL ASPEN

# Provide directory paths:

# path for the SAS input dataset

setenv IN_DATA /data/work14/ecr/EMSHAP/point/nata4-point/

# path for the SAS output dataset

setenv OUTDATA /data/work14/ecr/EMSHAP/point/nata4-point/

# path for the reference text files

setenv REFFILES /data/work14/ecr/EMSHAP/reffiles/

# path for the output files for input into ASPEN

setenv OUTFILES /data/work14/ecr/EMSHAP/ASPENemis/nata4-point/

# path for the single ASCII output file

setenv ASCIIFILE /data/work14/ecr/EMSHAP/ASPENemis/nata4-point/

# Provide input and output SAS data set names

# input SAS data set name

setenv INSAS temporal

# output SAS® dataset name

setenv OUTSAS pt062000

# Select the procedure to be used to assign source groups

# Assign source groups by source type (major or area): set value of DoSource to 1 for yes

# (or true) and 0 for no (or false)

setenv DOSOURCE 1

# Assign source groups by MACT categories: set value of DoMACT to 1 for yes

# (or true) and 0 for no (or false)

setenv DOMACT 0

# If using MACT categories, provide name of the text file containing the group assignments

setenv MACTGRP MACT_grp

Figure 11. Sample of PtFinal_ASPEN Batch File for Processing Data for ASPEN
B-19

# Assign source groups by SCCs: set value of DoSCC to 1 for yes (or true)

# and 0 for no (or false)

setenv DOSCC 0

# If using SCCs, provide the name of the text file containing the group assignments

setenv SCCGRP SCC6_grp

# Assign source groups by SIC: set value of DoSIC to 1 for yes (or true) and 

# 0 for no (or false)

setenv DOSIC 0

# If using SICs, provide the name of the text file containing the group assignments

setenv SICGRP SIC_grp

# Provide a default group assignment (value between 0 and 9) for those source 

# not assignment by your selected procedure

setenv DFLTGRP 1

# Select the creation of ASPEN-formatted text files

# Set value of DoWrite to 1 for yes (or true) and 0 for no (or false)

setenv DOWRITE 1

# Provide the file name of the text file containing the decay rates for each reactivity class, extension must be .txt

setenv DECAY indecay

# Provide a file identifier to be included in the name of the ASPEN-formatted text files and ASPEN file header

# Limit of 10 characters is recommended. Additional characters will be truncated from file header, not file name

setenv OUTCODE PT.pt196.US.D062000

# Specify the source type, set value of Itype to 0 for point sources and 3 for pseudo point sources

setenv ITYPE 0

# Provide an identifying run name to be included in the ASPEN file header 

# Limit of 25 characters is recommended. Additional characters will be truncated from the file header

setenv RUNID ‘06/20 run of 06/00 NTI’

# Select the creation of the single ASCII-formatted file

# Set value of DoASCII to 1 for yes (or true) and 0 for no (or false)

setenv DOASCII 1

# Provide the file name of the output ASCII file 

setenv ASCII PT.pt196.US.D062000

cp -p /data/work14/ecr/EMSHAP/point/Programs/PtFinal_ASPEN.sas PtFinal_ASPEN_062000.sas

sas PtFinal_ASPEN_062000.sas -work /data/work15/dyl/

Figure 11. Sample of PtFinal_ASPEN Batch File for Processing Data for ASPEN

(continued)
B-20

#Point Source Processing - Final Format - For ISCST3 data Processing 

# Assigns source groups for ISCST3

# Produces ISCST3 - formatted text files

# Provide the model for which the data is being processed (must be ISC)

setenv MODEL ISC

# Provide 1-character model-run identifier. This ensures that ISCST3 

# contains unique source ID's when all EMS-HAP output are fed into it.

setenv RUN_ID A

# Provide directory paths:

# path for the SAS input dataset

setenv IN_DATA /vail2aspen/dyntel/EMSHAP/ISC/point/

# path for the SAS output dataset

setenv OUTDATA /vail2aspen/dyntel/EMSHAP/ISC/point/ISCemis/

# path for the reference text files

setenv REFFILES /vail2aspen/dyntel/EMSHAP/ANCILLARY/

# path for the output files for input into ASPEN or ISC

setenv OUTFILES /vail2aspen/dyntel/EMSHAP/ISC/point/ISCemis/

# Provide input and output SAS data set names

# input SAS data set name

setenv INSAS temporal

# output SAS dataset name

setenv OUTSAS iscpoint

# Select the procedure to be used to assign source groups

# Set value to 1 for yes (or true) and 0 for no (or false)

# Assign source groups by source type (major or area): set value of DoSource to 1 for yes

# (or true) and 0 for no (or false)

setenv DOSOURCE 1

# Assign source groups by MACT categories: set value of DoMACT to 1 for yes

# (or true) and 0 for no (or false)

setenv DOMACT 0

# If using MACT categories, provide name of the text file containing the group assignments

setenv MACTGRP MACT_grp

Figure 12. Sample of PtFinal_ISCST3 Batch File for Processing Data for ISCST3
B-21

# Assign source groups by SCCs: set value of DoSCC to 1 for yes (or true)

# and 0 for no (or false)

setenv DOSCC 0

# If using SCCs, provide the name of the text file containing the group assignments

setenv SCCGRP SCC6_grp

# Assign source groups by SIC: set value of DoSIC to 1 for yes (or true) and 

# 0 for no (or false)

setenv DOSIC 0

# If using SICs, provide the name of the text file containing the group assignments

setenv SICGRP SIC_grp

# Provide a default group assignment (value between 00 and 99) for those source 

# not assignment by your selected procedure

setenv DFLTGRP 01

# Provide ancillary file that contains default particle distributions: 

# SAROAD, # of sizes, list of size distributions, list of mass fractions, list of densities, and liquid scaveng.

setenv DEFPART defpart

# SCC-specific particle distribution file -put "NONE" if it doesn't exist

setenv SCCPART NONE

# Set to yes to call the macro that writes the gas deposition include files

setenv GASDEPO YES

# Provide ancillary file that contains default gas deposition parameters: 

# SAROAD, diffusivity, alphas, Reac, Rsubm, Henry's coefficient

setenv DEFGAS defgas

# Set to yes(1) if you want to use scavenging coefficients that may be included in DEFPART and DEFGAS files

setenv SCAVENG 1

# gridcell elevation data

setenv ELEVDAT hstn-elev

# default elevation in meters (used only if ELEVDAT does not exist)

setenv DEFELEV 100

# Set to yes to call the macro that writes the building dimension include files

setenv USEBLDG YES

Figure 12. Sample of PtFinal_ISCST3 Batch File for Processing Data for ISCST3

(continued)
B-22

# Provide Southwest corner UTM coordinates (X_ORIG,YORIG) and number of 1x1 km columns and rows

setenv X_ORIG 214000

setenv Y_ORIG 3250000

setenv CELLSIZE 1000

setenv MAXCOL 106

setenv MAXROW 92

# Part of run-stream for ISC input

setenv OUTNAME ISC

# Write particle distrubution include files: 1 = particle data by source,

# 2 = particle data by pollutant

setenv PARTMETH 2

cp -p /vail2aspen/dyntel/EMSHAP/PROGRAMS/PtFinal_ISCST3_SEP05.sas PtFinal_ISCST3_SEP18.sas

sas PtFinal_ISCST3_SEP18.sas -work /vail2aspen/dyntel/EMSHAP/ISC/point/

Figure 12. Sample of PtFinal_ISCST3 Batch File for Processing Data for ISCST3

(continued)
B-23

# The Area Source AMProc Preparation Program (AreaPrep)

# Run Title

setenv RUNID '1996 NTI Area Source Inventory June 2000' 

# SAS input file containing area source inventory

setenv AREADATA areadata

# SAS output file containing processed area source inventory

setenv OUTDATA areaprep

# Input file directory

setenv INPFILES /data/work14/ecr/EMSHAP/areamobile/nata4-area/

# Ancillary files directory

setenv REFFILES /data/work14/ecr/EMSHAP/reffiles/

# Output file directory

setenv OUTFILES /data/work14/ecr/EMSHAP/areamobile/nata4-area/

# Name of Temporal Allocation Factor File

setenv TAFFILE taff_hourly

# Name of Spatial Surrogate reference file

setenv SURRXREF surrxref

# Name of SIC to AMS cross-reference file

setenv SIC2AMS sic2ams

# Name of SCC to AMS cross-reference file

setenv SCC2AMS scc2ams

# Name of MACT to AMS cross-reference file

setenv MACT2AMS mact2ams

cp -p /data/work14/ecr/EMSHAP/areamobile/programs/AreaPrep.sas AreaPrep_060900.sas

sas AreaPrep_060900.sas -work /data/home/mls

Figure 13. Sample of AreaPrep Batch File
B-24

# The Mobile Source AMProc Preparation Program (MobilePrep) 

# Run identification for titles 

setenv TITLE ‘1996 NTI Mobile Inventory March 2000 version’

# Input files directory 

setenv INPFILES /data/work14/ecr/EMSHAP/areamobile/newmobile/

# Input emissions file name prefix 

setenv INEMIS mv0309ap

# Output files directory 

setenv OUTFILES /data/work14/ecr/EMSHAP/areamobile/newmobile/

# Output emissions file name prefix (limited to 6 characters if using SAS version 6)

setenv OUTEMIS mv0309

# Temporary work directory 

setenv WORKDIR /data/work15

cp -p /data/EMSHAP/areamobile/programs/MobilePrep.sas MobilePrep030900.sas

sas MobilePrep030900.sas

Figure 14. Sample of MobilePrep Batch File
B-25

# AMProc batch file -Growth and Control

#Provide model for which the data is being processed (ASPEN or ISC)

setenv MODEL ASPEN

# AMProc RUN IDENTIFICATION INFORMATION. Run identification for titles

setenv RUNID 'New 1996 NTI Benz AREA G and C Test'

# Description of emissions file

setenv EMISLABL 'New 1996 AREA Benz G and C (SEP 2001)'

# Date identifying this run

setenv RUNDATE 090401

# Emissions type (AR for non-point, MV for mobile)

setenv EMISTYPE AR

# Label for output files

setenv USRLABEL test_aspenGCbenz

# FILE DIRECTORIES

# Ancillary files directory

setenv INPFILES /vail2aspen/dyntel/EMSHAP/ANCILLARY/

# Input emissions file directory

setenv INPEMISS /vail2aspen/dyntel/EMSHAP/TEST_EMSHAP/AMPROC/

# Output files directory

setenv OUTFILES /vail2aspen/dyntel/EMSHAP/TEST_EMSHAP/AMPROC/ASPENemis/ 

# INPUT FILES

# Input emissions file name prefix

setenv EMISFILE areaprepbenzTX_test 

############################## has different spatsurr than ISC input

# SAF file name prefix

setenv SAFFILE SAFe

# Default SAF

setenv DEFLTSAF 20

# TAF file name prefix

setenv TAFFILE taff_hourly

# Decay rates file name prefix

setenv INDECAY indecay

# Pollutant xref file name prefix

setenv HAPTABLE haptabl_point_area_073101

Figure 15. Sample of AMProc Batch File for Processing Data for ASPEN
B-26

# Spatial surrogate xref file name prefix

setenv SURRXREF surrxref

# Emissions bins file name prefix nata_am_bins531

setenv EMISBINS am_grp_060601

# County urban/rural flag xref file name prefix

setenv CNTYUR popflg96_010501

########################################### BEGIN G&C

# GROWTH and CONTROL

# option 0 - do not run growth and control

# option 1 - run growth and control in addition to all other fucntions

# option 2 - run only growth and control, input data file must be temporally and spatially allocated

setenv GCFLAG 1

# GROWTH option flag (MACT, USER, or BOTH)

# MACT - apply MACT growth factors

# SIC - apply SIC growth factors

# BOTH - apply both MACT and SIC growth factors

# NONE - apply no growth factors

setenv GROWFLAG BOTH

# Growth factor file by State/MACT

setenv GFMACT gfegas_bymact96_07

# Growth option flag (0 no assignment of alternate SIC, 1 assign alternate SIC)

setenv SICFLAG 1

# Source category name to SIC cross reference file

setenv SICXREF area_sic_060601

# Growth factor file by State/SIC

setenv GFSIC gfegas_bysic96_07

############### BEGIN CONTROL #####################################

# Control option flag (MACT, USER, or BOTH)

# MACT - apply MACT controls only

# USER - apply user-defined controls only

# BOTH - apply both MACT and user-defined controls

# NONE - apply no controls

setenv CNTLFLAG BOTH

# The general MACT controls specification file

setenv MACTGEN MACT_gen_062501

# Growth and control options (0 no MACT specific file, 1 use MACT specific file)

setenv SPECMACT 1

# The pollutant specific MACT controls specification file

setenv SPECFILE MACT_spec_062501

Figure 15. Sample of AMProc Batch File for Processing Data for ASPEN (continued)
B-27

# The user-defined controls specification file

setenv USERFILE area_cntl_user_042501

# The projection year

setenv GROWYEAR 2007

# Choose whether to apply reductions based on FISCAL (Oct 1 to Sept 30) or CALENDAR (Jan 1 to Dec 31)

setenv YEARTYPE calendar

# Option to reassign emissions groups (1 rebin, 2 don't) (only used if GROWCNTL > 0 and = 1)

setenv REBIN 0

########################################### END G&C

# QA and OUTPUT FILES

# SaveFile = 1 to save large SAS emissions file

setenv SAVEFILE 1

# Lsubsetp = 1 to subset to a pollutant

setenv LSUBSETP 0

# The pollutant code for subsetting to

setenv SUBSETP 98

# Lsubsetg = 1 to subset to a state

setenv LSUBSETG 0

# The 2-character state abbreviation for subsetting to

setenv SUBSETG US

# Lcptime = 1 to print out module run times

setenv LCPTIMES 1

# Ldbg = 1 to turn on debugging prints

setenv LDBG 0

# The cell for debug prints (state|county|tract)

setenv ONECELL 41019010098

# Assign temporary work space directory

setenv WORK2 /vail2aspen/dyntel/EMSHAP/TEST_EMSHAP/AMPROC/tmp/

cp /vail2aspen/dyntel/EMSHAP/PROGRAMS/AMProc_SEP04.sas AMProc_SEP04.sas

time sas AMProc_SEP04 -work /vail2aspen/dyntel/EMSHAP/TEST_EMSHAP/AMPROC

Figure 15. Sample of AMProc Batch File for Processing Data for ASPEN (continued)
B-28

# AMProc batch file --- Growth only ISCST3

#Provide model for which the data is being processed (ASPEN or ISC)

setenv MODEL ISC

# AMProc RUN IDENTIFICATION INFORMATION

# Run identification for titles

setenv RUNID 'EMS-HAP 1996 c0 NTI AREA - Test'

# Description of emissions file

setenv EMISLABL '1996 NATA AREA c0 (SEP 2001)'

# Emissions type (AR for non-point, MV for mobile)

setenv EMISTYPE AR

# Label for output files

setenv USRLABEL BENZar_c0

# FILE DIRECTORIES

# Ancillary files directory

setenv INPFILES /vail2aspen/dyntel/EMSHAP/ANCILLARY/

# Input emissions file directory

setenv INPEMISS /vail2aspen/dyntel/EMSHAP/TEST_EMSHAP/AMPROC/ISC/

# Output files directory

setenv OUTFILES /vail2aspen/dyntel/EMSHAP/TEST_EMSHAP/AMPROC/ISC/ISCemis/ 

# INPUT FILES

# Input emissions file name prefix

setenv EMISFILE areaprep_isctest

# SAF file name prefix

setenv SAFFILE hsaf

# Default SAF

setenv DEFLTSAF 20

# TAF file name prefix

setenv TAFFILE taff-ISCfactors062001

# Decay rates file name prefix

setenv INDECAY indecay

# Pollutant xref file name prefix

setenv HAPTABLE haptabl_point_area_073101

# Spatial surrogate xref file name prefix

setenv SURRXREF surrxref_houston

Figure 16. Sample of AMProc Batch File for Processing Data for ISCST3
B-29

# Emissions bins file name prefix nata_am_bins531

setenv EMISBINS am_grp_060601

# County urban/rural flag xref file name prefix

setenv CNTYUR popflg96_010501

########################################### BEGIN GROWTH&CONTROL

# option 0 - do not run growth and control

# option 1 - run growth and control in addition to all other functions

# option 2 - run only growth and control, input data file must be temporally and spatially allocated

setenv GCFLAG 1

# Growth option flag (0 no growth, 1 apply growth)

# GROWTH option flag (MACT, USER, BOTH, or NONE)

# MACT - apply MACT growth factors

# SIC - apply SIC growth factors

# BOTH - apply both MACT and SIC growth factors

# NONE - apply no growth factors

setenv GROWFLAG BOTH

# Growth factor file by State/MACT

setenv GFMACT gfegas_bymact96_07

# Growth option flag (0 no assignment of alternate SIC, 1 assign alternate SIC)

setenv SICFLAG 1

# Source category name to SIC cross reference file

setenv SICXREF area_sic_060601

# Growth factor file by State/SIC

setenv GFSIC gfegas_bysic96_07

############### BEGIN CONTROL #####################################

# Control option flag (MACT, USER, BOTH, or NONE)

# MACT - apply MACT controls only 

# USER - apply user-defined controls only

# BOTH - apply both MACT and user-defined controls

# NONE - apply no controls

setenv CNTLFLAG NONE

# The general MACT controls specification file

setenv MACTGEN MACT_gen_062501

# Growth and control options (0 no MACT specific file, 1 use MACT specific file)

setenv SPECMACT 1

# The pollutant specific MACT controls specification file

setenv SPECFILE MACT_spec_062501

Figure 16. Sample of AMProc Batch File for Processing Data for ISCST3 (continued)
B-30

# The user-defined controls specification file

setenv USERFILE area_cntl_user_042501

# The projection year

setenv GROWYEAR 2007

# Choose whether to apply reductions based on FISCAL (Oct 1 to Sept 30) or CALENDAR (Jan 1 to Dec 31)

setenv YEARTYPE calendar

# Option to reassign emissions groups (1 rebin, 2 don't) (only used if GROWCNTL > 0 and = 1)

setenv REBIN 0

########################################### END G&C

# QA and OUTPUT FILES

# Lsubsetp = 1 to subset to a pollutant

setenv LSUBSETP 0

# The pollutant code for subsetting to

setenv SUBSETP 98

# Lsubsetg = 1 to subset to a state

setenv LSUBSETG 0

# The 2-character state abbreviation for subsetting to

setenv SUBSETG US

# Lcptime = 1 to print out module run times

setenv LCPTIMES 1

# Ldbg = 1 to turn on debugging prints

setenv LDBG 0

# The cell for debug prints (3-character column|2-character row)

setenv cell 00101

# Assign temporary work space directory

setenv WORK2 /vail2aspen/dyntel/EMSHAP/TEST_EMSHAP/AMPROC/ISC/tmp/

# Assign UTM-X origin of the modeling grid in meters

setenv XORIG 214000

# Assign UTM-Y origin of the modeling grid in meters

setenv YORIG 3250000

# Assign the size (length) of each gridcell in meters

setenv CELLSIZE 1000

# Assign the prefix of the output SAS dataset

setenv ISCOUT isc_c0ar

cp /vail2aspen/dyntel/EMSHAP/PROGRAMS/AMProc_SEP04.sas AMProc_SEP04c0.sas

time sas AMProc_SEP04c0 -work /vail2aspen/dyntel/EMSHAP/TEST_EMSHAP/AMPROC/ISC/ISCemis/

Figure 16. Sample of AMProc Batch File for Processing Data for ISCST3 (continued)
B-31

# AREA/MOBILE Source Processing - Final Format 

# Produces ISC -formatted text files

# Provide 1-character model-run identifier. This ensures that ISCST3

# contains unique source ID's when all EMS-HAP output are fed into it.

setenv RUN_ID B

# Provide directory paths:

# path for the SAS input dataset

setenv IN_DATA /vail2aspen/dyntel/EMSHAP/ISC/area/ISCareaemis/

# path for the SAS output dataset

setenv OUTDATA /vail2aspen/dyntel/EMSHAP/ISC/area/ISCareaemis/

# path for the reference text files

setenv REFFILES /vail2aspen/dyntel/EMSHAP/ANCILLARY/

# path for the output files for input into ISC

setenv OUTFILES /vail2aspen/dyntel/EMSHAP/ISC/area/ISCareaemis/

# Provide input and output SAS data set names

# input SAS data set name

setenv INSAS iscarea

# output SAS dataset name

setenv OUTSAS areagrid091801

# Provide ancillary file that contains default particle distributions: 

# SAROAD, # of sizes, list of size distributions, list of mass fractions, list of densities, and liquid scavenging 

setenv DEFPART defpart

# Set to yes to call the macro that writes the gas deposition include files

setenv GASDEPO YES

# Provide ancillary file that contains default gas deposition parameters:

# SAROAD, diffusivity, alphas, Rx, Rsubm, Henry's coefficient

setenv DEFGAS defgas

# Set to yes(1) if you want to use scavenging coefficients that may be included in DEFPART and DEFGAS files

setenv SCAVENG 1

# gridcell elevation data

setenv ELEVDAT hstn-elev

# default elevation in meters (used only if ELEVDAT does not exist)

setenv DEFELEV 100

Figure 17. Sample of AMFinalFormat Batch File for Processing Data for ISCST3
B-32

# Provide Southwest corner UTM coordinates (X_ORIG,YORIG) and number of 1x1 km columns and rows

setenv X_ORIG 214000

setenv Y_ORIG 3250000

setenv CELLSIZE 1000

setenv MAXCOL 106

setenv MAXROW 92

# area source release heights in meters

setenv ARELHGT 2

# initial vertical dimension of the area source plume in meters

setenv AINPLUM 1

cp -p /vail2aspen/dyntel/EMSHAP/PROGRAMS/AMFinalFormat_SEP05.sas

AMFinalFormat_area_SEP18.sas

sas AMFinalFormat_area_SEP18.sas -work /vail2aspen/dyntel/EMSHAP/ISC/area/tmp/

Figure 17. Sample of AMFinalFormat Batch File for Processing Data for ISCST3

(continued)
APPENDIX C

Preparing the July 2001 Version of the 1996 NTI Point

Source Inventory for EMS-HAP
C-i

Table of Contents

C.1 Description of Point Sources Preprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-1

C.2 Output Files Used in EMS-HAP Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-1
C-1

C.1 Description of Point Sources Preprocessor

The Point Sources Preprocessor is designed to read the modeler’s version of the July 2001

version of the 1996 National Toxics Inventory (NTI), and to produce a file suitable for

processing through the first point source processing program (PtDataProc) of EMS-HAP. To

produce a suitable file, the Point Sources Preprocessor performs the following three functions: 

• Excludes emission records from Alaska and Hawaii

• Converts stack parameters from English units to metric units; calculates stack velocity

from stack diameter and stack flow rate data when stack velocity is missing

• Creates variables SITE_ID and EMRELPID required by EMS-HAP

Emission records from Alaska and Hawaii are excluded based on the state and county FIPS code

(codes 02000 through 02999 for Alaska and code 15000 through 15999 for Hawaii).

The stack diameter and stack height are converted to meters. The stack temperature is converted

to Kelvin. The stack velocity is converted to meters/sec. If the stack velocity is missing and data

for the stack diameter and stack flow rate are present, then the stack velocity (in meters/sec) can

be calculated using the following equation:

StackVel = (FlowRate * 0.028317)/((StackDia**2) * 3.14159 * 60 / 4) eq. C-1

Two essential variables for the processing of data through EMS-HAP are created based on

information in the inventory. The SITE_ID, originally designed to identify unique sites, is

created by concatenating the 1996 NTI FIPS and SITE_ID fields, separated by a hyphen. The

EMRELPID, designed to identify unique emission release points, is created by concatenating the

1996 NTI EMISUNITID, EMISPROCID, and EMISRELPID fields, each separated by a hyphen. 

By creating these variables in this way, each record in the point source inventory can be

identified by the SITE_ID, POLLCODE, and EMRELPID.

C.2 Output Files Used in EMS-HAP Processing

The output file produced by the Point Source Preprocessor is a SAS® data set containing the data

variables listed in Table C-1. This table includes the variable format and whether or not the data

variable is mandatory for processing through the programs of EMS-HAP.

In addition to the required variable listed above, each record within the output data from the

Point Source Preprocessor must be uniquely identified by the combination of the site ID

(SITE_ID), pollutant code (POLLCODE), and emission release point ID (EMRELPID). Further, 

all stack parameters within a group of records identified by the FIPS code (FIPS), site ID

(SITE_ID), and emission release point ID (EMRELPID) must be the same.
C-2

Table C-1. Description of Variables Contained in the Point Source Preprocessor Output

File using the 1996 NTI

Variable Name Data Description 

(Required units or values are in parentheses)

Format* Required

CNTL_EFF baseline control efficiency, expressed as a percentage N Yes

DEFAULT_DIA_FLAG description of basis for default stack diameter in 1996

NTI

A20 No

DEFAULT_FLWRT_FLAG description of basis for default flowrate in 1996 NTI A20 No

DEFAULT_HGT_FLAG description of basis for default stack height in 1996

NTI

A20 No

DEFAULT_TEMP_FLAG description of basis for default stack temperature in

1996 NTI

A20 No

DEFAULT_VEL_FLAG description of basis for default stack velocity in 1996

NTI

A20 No

EMIS pollutant emissions value (tons/year) N Yes

EMISPROCID emission process identification code A6 No

EMISRELPID emission release point identification code A6 No

EMISSIONTYPE emission type A2 No

EMISUNITID emission unit identification code A6 No

EMRELPID code identifying a unique emission point within a site A50 Yes

EMRELPTY physical configuration code of release point

(01=fugitive; 02=vertical stack; 03=horizontal stack,

04=goose neck, 05=vertical with rain cap,

06=downward-facing vent)

A4 Yes

FIPS 5-digit FIPS code (state and county combined) A5 Yes

FLOWRATE stack flowrate N No

MACTCODE process or site-level MACT code A7 Yes

MACT_CODE_ASSIGNMENT description of basis for MACT code assignment A12 No

NTI_SITE_ID secondary site identification code A20 No

NTI_UNIQUE_ID secondary site identification code A40 No

POLLCODE unique pollutant code A10 Yes

SCC EPA source category code identifying the process A10 Yes
Table C-1. Description of Variables Contained in the Point Source Preprocessor Output

File using the 1996 NTI (continued)

Variable Name Data Description 

(Required units or values are in parentheses)

Format* Required

C-3

SIC Standard Industrial Classification (SIC) code for the site A4 Yes

SITENAME Unique site name A50 No

SITE_ID code identifying a unique site (concatenation of

inventory site id and FIPs code)

A25 Yes

SRC_TYPE description of the emission source at the site (‘major’ or

‘area’) 

A15 Yes

STACKDIA diameter of stack (meters) N Yes

STACKHT height of stack (meters) N Yes

STACKVEL velocity of exhaust gas stream (meters per second) N Yes

STKTEMP temperature of exhaust gas stream (Kelvin) N Yes

UTM_Z universal transverse mercator (UTM) zone N Yes

X longitude (decimal degrees or degrees, minutes, seconds

with no separating characters) or UTM easting (meters

or kilometers)

N Yes

XY_TYPE type of coordinate system used (LAT/LON or UTM) A7 Yes

Y latitude (decimal degrees or degrees, minutes, seconds

with no separating characters) or UTM northing (meters

or kilometers)

N Yes

ZIP_CODE zip code of site A12 Yes

* Ax = character string of length x, N = numeric 
APPENDIX D

Preparation of ASPEN-input Files for the 1996 Base

Year Using EMS-HAP
D-ii

APPENDIX D PREPARATION OF ASPEN-INPUT FILES FOR THE 1996 BASE YEAR

USING EMS-HAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-1

D.1 How We Prepared the Emission Inventories for Input Into EMS-HAP . . . . . . . . . . D-2

D.1.1 We used the 1996 NTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-2

D.1.2 We used the 1996 NET inventory, speciated for particular VOCs . . . . . . . . . . D-3

D.1.3 We used a rulemaking inventory and the 1996 NET inventory for diesel PM . D-6

D.2 How We Ran EMS-HAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-7

D.2.1 We ran it for the direct emissions of HAPs and diesel PM . . . . . . . . . . . . . . . D-7

D.2.2 We ran it for the HAP precursors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-8

D.3 The Ancillary Files We Used . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-9

D.4 How We Developed the Airport Allocation Ancillary File (apt_allc) . . . . . . . . . . . D-13

D.4.1 We assembled airport location data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-13

D.4.2 We developed airport allocation factors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-13

D.5 How We Selected HAPs, Grouped/Partitioned Them, and Determined Their 

Characteristics (HAP Table for HAPs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-14

D.5.1 We assigned reactivity and particulate size classes . . . . . . . . . . . . . . . . . . . . D-14

D.5.2 We grouped HAP species belonging to HAP compound classes . . . . . . . . . . D-18

D.6 How We Selected the HAP Precursors, Grouped/Partitioned Them, and Determined

Their Characteristics (HAP Table for Precursors) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-24

D.7 How We Developed the Temporal Allocation Factors File (taff_hourly.txt) . . . . . D-26

D.8 How We Assigned Spatial Surrogates for Non-point and Mobile Source CategoriesD-35

D.9 How We Developed the Surrogate Assignment / Temporal Allocation Cross-Reference

Files (scc2ams.txt, sic2ams.txt, andmact2scc.txt) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-44

D.10 How We Developed the Spatial Allocation Factors for the Spatial Surrogates . . . D-45

D.11 Program Options and Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-53

D.11.1 AirportProc program options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-53

D.11.2 PtDataProc program options and parameters . . . . . . . . . . . . . . . . . . . . . . . . D-53

D.11.3 PtFinal_ASPEN program options and parameters . . . . . . . . . . . . . . . . . . . . D-55

D.11.4 AMProc program options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-56

D.12 Pollutants in the ASPEN-Input Files for the 1996 Base Year EMS-HAP Run . . . D-57
List of Tables

D-iii

Table D-1. Non-HAP VOC Species Used for Modeling Secondary HAP Formation . . . . . . D-4

Table D-2. Source of Speciation Data for Mobile Source Categories . . . . . . . . . . . . . . . . . . D-5

Table D-3. Summary Speciation Protocol for Non-HAP Precursor Species . . . . . . . . . . . . . D-6

Table D-4. Ancillary Files Used in EMS-HAP for the 1996 Base Year Run . . . . . . . . . . . . D-10

Table D-5. Decay Coefficients by Reactivity Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-15

Table D-6. Average Particulate Size Class Allocation Factors . . . . . . . . . . . . . . . . . . . . . . . D-17

Table D-7. Gas and Particulate Allocations for Mercury Compounds . . . . . . . . . . . . . . . . . D-17

Table D-8. 7-PAH and 16-PAH Subgroups, and Additional Individual POM Compounds 

with Available Health Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-20

Table D-9. Grouping Scheme for Total POM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-21

Table D-10. Species, Groups and Subgroups of Dioxins Reported in the 1996 NTI . . . . . . D-23

Table D-11. Scaling Factors for HAP Precursors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-25

Table D-12. Additions to the ORD Temporal Profile Database . . . . . . . . . . . . . . . . . . . . . . D-29

Table D-13. Temporal Allocation of Some Non-point Source Categories in EMS-HAP . . D-30

Table D-14. Temporal Allocation of Mobile Source Categories in EMS-HAP . . . . . . . . . . D-31

Table D-15. Spatial Allocation of Some Non-point Source Categories in EMS-HAP as compared

to Other Emission Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-36

Table D-16. Surrogates Used for Spatial Allocation of the 1996 NTI Non-point Source 

Inventory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-37

Table D-17. Surrogates Used for Spatial Allocation of the 1996 Diesel PM Inventory . . . . D-41

Table D-18. Spatial Allocation of Mobile Source Categories in EMS-HAP as Compared

to Other Emission Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-42

Table D-19. Spatial Allocation Factors Developed for EMS-HAP . . . . . . . . . . . . . . . . . . . D-46

Table D-20. Surrogate Data Available for Puerto Rico and the Virgin Islands . . . . . . . . . . D-49

Table D-21. Methodology for Puerto Rico/Virgin Islands Spatial Allocation Factors . . . . . D-49

Table D-22. Program Options Used to Execute AirportProc . . . . . . . . . . . . . . . . . . . . . . . . D-53

Table D-23. Program Options and Parameters Used for PtDataProc . . . . . . . . . . . . . . . . . . D-54

Table D-24. Program Options and Parameters Used for PtFinal_ASPEN . . . . . . . . . . . . . . D-55

Table D-25. Program Options Used to Execute AMProc . . . . . . . . . . . . . . . . . . . . . . . . . . . D-56

Table D-26. List of Pollutants in ASPEN-ready input files . . . . . . . . . . . . . . . . . . . . . . . . . D-58

 
List of Figures

D-iv

Figure D-1. Composite Temporal Emission Profile for On-road Motor Vehicles . . . . . . . . D-33

Figure D-2. Temporal Profiles for Diesel Highway Vehicles and Non-road Engines . . . . . D-34

Figure D-3. Nationwide Tract-level Emission Densities Using Three Different Treatments 

of SAF19. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-51

Figure D-4. The Effect of the Three Different Treatments of SAF19 on State-level Mean

Concentrations Estimates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-52
D-1

Appendix D

Preparation of ASPEN-input Files for the 1996 Base

Year Using EMS-HAP

This appendix describes how we processed inventories containing 1996 emission data through

EMS-HAP to create the ASPEN-input files for a national scale air toxics assessment.

We created ASPEN-input files for the direct emissions of hazardous air pollutants (HAPs), direct

emissions of diesel particulate matter (PM), and pollutants that will react in the atmosphere to

produce HAPs.

The 1990 Clean Air Act (Section 112) lists a number of HAPs and provides a process to add and

delete pollutants from the list. There are currently 188 HAPs.1 The pollutants that will produce

HAPs are referred to as HAP precursors and the transformation as secondary HAP formation. 

The HAP precursors are volatile organic compounds (VOC’s) which may or may not be HAPs

themselves. We refer to those VOC’s which are not HAPs as “non-HAP” VOC’s.

Section D.1 discusses the emission inventories we used, and how we prepared them for EMSHAP. Section D.2 describes the run stream for the EMS-HAP programs we ran. Sections D.3

through D.10 present the ancillary input files we used, and discusses how we created the key

ones for EMS-HAP (e.g., the spatial and temporal allocation factor files.) Section D.11 presents

the program options we selected. Section D.12 lists the pollutants in the ASPEN-input files

resulting from our run of EMS-HAP. 
D-2

D.1 How We Prepared the Emission Inventories for Input Into EMS-HAP

We prepared two point, two non-point (formerly denoted as “area”) and three mobile source

inventories for input into EMS-HAP, as shown below. Note we use the term “non-point

inventory” to describe what was formerly referred to as the area source inventory so as not to

conflict with the term “area source” which is also used to describe a type of stationary source

based on its size as defined in the Clean Air Act. 

Point

Source

Inventory

Non-point

Source

Inventory

Mobile

Source

Inventory

Directly emitted HAPs XXX

HAP precursors XXX

Diesel PM X

The emission data for directly emitted HAPs were obtained from the February 2000 (mobile),

July 2001 (point) and June 2001 (non-point) versions of the 1996 National Toxics Inventory

(NTI).2 HAP precursor emission data were obtained from two separate sources: (1) non-HAP

VOC’s came from Version 3 of 1996 National Emissions Trends (NET)3 inventory, speciated for

specific organic compounds; (2) data for HAPs that are precursors to other HAPs came from the

1996 NTI (same versions as specified above). The diesel PM data came from two sources: (1)

data for the continental U.S. were from inventories developed as part of the rulemaking for

Heavy-Duty Engine and Vehicle Standards and Highway Diesel Fuel Sulfur Control

Requirements; (2) data for Puerto Rico and Virgin Islands were derived from Version 3 of the

NET’s mobile source particulate matter (PM-10) inventory. 

The next subsections provide more details on the sources of data we used and how we prepared

the data for EMS-HAP.

D.1.1 We used the 1996 NTI 

The emission data for directly emitted HAPs were obtained from the 1996 National Toxics

Inventory (NTI).2

 We received point and non-point during the summer of 2001, and mobile

source files in 2000.

We received the 1996 NTI point source inventory modeler’s version as a single flat text file (i.e.,

it did not need to be linked). The 1996 NTI contains data from the 50 States, the District of

Columbia, Puerto Rico and the Virgin Islands. We developed a preprocessing program to read

this file and to create the variables necessary for processing through EMS-HAP. This

preprocessing program is described in Appendix C. The point source inventory file produced by

executing our preprocessing program met all of the data criteria required by EMS-HAP.
D-3

We received the 1996 NTI non-point and mobile source inventory modeler’s versions as flat text

files as well. We received the non-point source inventory as a single file containing data from

the 50 States, the District of Columbia, Puerto Rico and the Virgin Islands. We received the

mobile source inventory as 53 files, one for each State, the District of Columbia, Puerto Rico and

the Virgin Islands. We developed preprocessing programs to read these non-point and mobile

source text files and produce SAS® files that met the criteria required by EMS-HAP. 

The 1996 NTI point, non-point and mobile source documentation is in six volumes4:

& Documentation for the 1996 Base Year National Toxics Inventory for Point Sources

& Documentation for the 1996 Base Year National Toxics Inventory for Aircraft Sources

& Documentation for the 1996 Base Year National Toxics Inventory for Area Sources

(Note that since that documentation was prepared, the term “non-point” has been used to

describe this county-level, nonmobile inventory in place of the term “area” as is discussed in the

beginning of D.1, above)

& Documentation for the 1996 Base Year National Toxics Inventory for Commercial

Marine Vessel and Locomotive Mobile Sources

& Documentation for the 1996 Base Year National Toxics Inventory for Nonroad Vehicle

and Equipment Mobile Sources

& Documentation for the 1996 Base Year National Toxics Inventory for Onroad Sources

These can be accessed on the EPA web site at http://www.epa.gov/ttn/chief/nti/index.html.

D.1.2 We used the 1996 NET inventory, speciated for particular VOCs

We received point, non-point and mobile source emission data for 33 non-HAP VOC species

resulting from a speciation of the Version 3 1996 NET inventory. Table D-1 provides a list of

these and also shows which HAPs they form through secondary transformation. We received

this data for the continental U.S. and the District of Columbia. The NET inventory does not

contain data for Puerto Rico nor the Virgin Islands. Emissions for these territories were derived

via extrapolation of emissions estimates from surrogate U.S. locations. This was the same

approach as was used for the non-point and mobile source components of the 1996 NTI. No

speciated point source VOC’s were obtained for Puerto Rico and the Virgin Islands.
D-4

Table D-1. Non-HAP VOC Species Used for Modeling Secondary HAP Formation

HAP Formed from VOC Species

formaldehyde acetaldehyde propionaldehyde MEK

ethene X

propene X X

1-butene X X

1-pentene X

1-hexene X

1-heptene X

1-octene X

1-nonene X

1-decene X

isobutene (2methylpropene) X

2-methyl-1-butene X X

3-methyl-1-butene X

3-methyl-1-pentene X

2,3-dimethyl-1-butene X

isoprene X

2-ethyl-1-butene X

2-methyl-1-pentene X

4-methyl-1-pentene X

2,4,4-trimethyl-1-pentene X

2-butene X

2-pentene X X

2-hexene X

2-heptene X

2-octene X

2-nonene X

2-methyl-2-butene X

3-methyl-2-pentene X

4-methyl-2-pentene X

ethanol X

3-hexene X

butane X

isopentane X

3-methylpentane X

Except for a few mobile source categories, the VOC data were speciated using the SPECIATE5

database. Based on the 1990 inventory used for the Cumulative Exposure Project (CEP), most of

the anthropogenic precursors come from mobile sources. Therefore, most of the efforts in this

study to speciate anthropogenic emissions were for mobile sources. We asked staff from the
D-5

Office of Transportation and Air Quality (OTAQ), formerly called the Office of Mobile Sources

(OMS), for speciation data applicable to 1996 mobile source emissions. OTAQ staff indicated

that there was a paucity of speciation data applicable to most 1996 mobile source emissions. 

They provided recommendations and/or data to use for speciating the various types of mobile

sources. Table D-2 summarizes their recommendations.6

Table D-2. Source of Speciation Data for Mobile Source Categories

Mobile Source Category AMS code Speciation Profile to Obtain those non-HAP VOC

species that are precursors to HAP formation

Light Duty Gasoline Vehicles (LDGV) A2201001 EXHAUST PROFILE BASED ON SPECIATE 1313

NONEXHAUST PROFILE BASED ON SPECIATE 1305

Speciate exhaust and nonexhaust emissions separately by 

applying the above profiles directly to each of these rather

than summing exhaust and nonexhaust emissions and

applying a composite profile.

Light Duty Gasoline Trucks (LDGT) A2201060

Heavy Duty Gasoline Vehicles

(HDGV)

A2201070

Motorcycles (MC) A2201080

Light Duty Diesel Vehicles (LDDV) A2230001 Use HDDV profile

Light Duty Diesel Trucks (LDDT) A2230060 Use HDDV profile

Heavy Duty Diesel Vehicles (HDDV) A2230070 Create HDDV profile from emission data collected from the

California Air Resources Board diesel exhaust toxicity test

program.7

 Data supplied by Rich Cook, OTAQ, 9/29/99. 

Instructions:

Develop a composite profile from the hot and cold start

fractions by weighting cold start 1/7 and hot start 6/7.

All Off-highway Vehicle: Gasoline,

2-Stroke

A2260000 Create 2-stroke gasoline profile from unpublished test data on

two types of two stroke engines from Peter Gabele, EPA

Office of Research and Development, supplied by Rich

Cook, OTAQ, 9/29/99

All Off-highway Vehicle: Gasoline,

4-Stroke

A2265000 Create 4-stroke gasoline profiles from emission data collected

by EPA’s Office of Research and Development on four stroke

lawn mower engines.8

 Data supplied by Rich Cook, OTAQ

9/29/99. 

All Off-highway Vehicle: Diesel A2270000 Use HDDV profile

All Aircraft Types and Operations A2275000 Use SPECIATE profile for commercial aircraft 

Marine Vessels, Commercial A2280000 Use HDDV profile

Railroads-Diesel A2285002 Use HDDV profile

In some cases, the speciation data available in the SPECIATE database were not consistent with

the species needed to model secondary HAP formation. We developed a protocol presented in

Table D-3, to address these situations.
D-6

Table D-3. Summary Speciation Protocol for Non-HAP Precursor Species

If the speciation information Then For example

Specifically lists the desired

precursor 

Use that value Use the value for 1-pentene

Contains the cis or trans isomers of

the same compound listed

Use those values Use the values for “cis-2-pentene

and “trans-2-pentene” for 2-pentene

(sum the cis and trans isomers)

Contains a group that is limited in

scope and that has one or more

precursors desired

Divide the value for the group by

number of precursors in Table D1 that are in the group, less the

number of precursors that are

already in the profile. Use the

result for all precursors that

belong in the group other than

those that are already listed in the

profile.

If the profile contains a group

called “C-5 ene” and has no

specific “C-5 enes” from Table D1, then divide the “C-5 ene by five

and use the resulting value for: 1-

pentene, 2-pentene, 2-methyl-2-

butene, 2-methyl-1-butene, and 3-

methyl-1-butene.

Contains a broad group that can

represent several precursors desired,

but also a large number of chemicals

that are not precursors

Do not use that value Do not use “C5H10"

In order to prepare the speciated VOC emission data for processing through EMS-HAP, we

developed and ran several preprocessing programs. These programs read the VOC data, create

all the necessary variables, and ensure that the data meet the criteria required by EMS-HAP. 

D.1.3 We used a rulemaking inventory and the 1996 NET inventory for diesel PM

The diesel PM emissions data for the continental United States were derived from 1996 baseyear inventories developed as part of the rulemaking on Heavy-Duty Engine and Vehicle

Standards and Highway Diesel Fuel Sulfur Control Requirements (June 2, 2000; 65 FR 35430). 

These inventories are based on Federal Highway estimates of vehicle operation, estimates of the

distribution of fuel type and weight classes of vehicles from the EPA’s OTAQ, and adjusted

MOBILE5b emission factors to simulate projected results from MOBILE6. The nonroad

emissions, with the exception of aircraft, commercial marine, and locomotive emissions, were

from OTAQ’s June 2000 draft NONROAD model.9

Note that we did not use the final 1996 base-year inventory developed for the rulemaking. In

addition to including only the exhaust (no brake and tire wear) component of the emissions, the

inventory we used did not include OTAQ’s latest information on adjustments to account for onhighway emissions modifications. Further, both the onroad and nonroad diesel PM inventories

we used reflect changes in methods and data sources since the release of versions we used for the

1996 NET and 1996 NTI. Time did not allow for estimates of other HAPs from diesel vehicles
D-7

and equipment to be revised accordingly, but an exploratory analysis indicated that the effect on

estimates of other HAPs would not have been large.

We received the diesel PM data as two text files (one for onroad and one for nonroad), each

containing estimates of diesel-fine PM (PM-2.5) and diesel-coarse PM (PM-2.5 to PM-10) by

county and by source category.

The 1996 NET PM-10 data were used to estimate mobile source diesel PM emissions for Puerto

Rico and Virgin Islands. As discussed earlier, the NET does not contain data for these territories. 

Thus, similar to the non-HAP precursors, diesel PM emissions were derived via extrapolation of

emissions estimates from surrogate U.S. locations. We concatenated the U.S. data with the

territorial data prior to running EMS-HAP. Because we received only diesel PM-10 estimates for

Puerto Rico and the Virgin Islands, we used EMS-HAP to partition them into coarse and fine

diesel PM (see Section D.5.1).

Note that the diesel PM inventories included estimates from only mobile sources. In addition,

the diesel PM data for onroad vehicles for the continental U.S. and District of Columbia were

restricted to their exhaust PM; NET estimates of PM from diesel vehicles include all PM

attributable to the vehicles including brake and tire wear (but not road dust). Therefore, the

PR/VI estimates included brake and tire wear.

D.2 How We Ran EMS-HAP

Section D.12 contains a list of the pollutants we modeled in EMS-HAP. The list includes the

direct emissions of HAPs and diesel PM, and emissions of pollutants that are precursors to

HAPs. Section D.2.1 describes the EMS-HAP run stream for the direct emissions of HAPs and

diesel PM. Section D.2.2 describes it for the precursors.

D.2.1 We ran it for the direct emissions of HAPs and diesel PM

We used EMS-HAP to model direct emissions of pollutants on the list of 33 HAPs in the Urban

Air Toxics Strategy.10 We also modeled additional HAPs (not on the list) requested by EPA’s

OTAQ, and diesel PM. Note that diesel PM is not a listed HAP.

Aircraft Emissions Processing

We processed the 1996 NTI mobile source emissions through a preprocessing program to format

them as required by AirportProc. We then processed the output through the AirportProc

program. We did not process any point source emissions through AirportProc as we chose not to

append the aircraft point sources to the non-aircraft point sources. We ran the point source

output from AirportProc (i.e., the point source aircraft inventory) through the point source

processing programs in the following order: PtDataProc, PtModelProc, PtTemporal, and

PtFinal_ASPEN. 
D-8

Because aircraft emissions do not contain diesel PM, we did not process this inventory through

AirportProc nor the subsequent point source programs.

Point Source Processing

We processed the 1996 NTI point source inventory through the preprocessing program

(discussed in Appendix C) to read in the point source emission data and format it as required by

PtDataProc. We then processed the point source emissions through the point source processing

programs in the following order: PtDataProc, PtModelProc, PtTemporal, and PtFinal_ASPEN. 

We did not have diesel PM emissions from point sources.

Mobile Source Processing

We processed the mobile source output file from AirportProc through MobilePrep. We then

separately processed the nonroad and onroad mobile source data through AMProc. Separate

processing was necessary because the coarse-fine particulate matter splits for some of the metals

in these two inventories are different; therefore, we had to use two different HAP tables (see

Section D.5). Due of the size of the onroad mobile file, we split it into three parts and ran each

part separately through AMProc.

We processed the diesel PM emissions inventory separately from the HAPs. We first processed

this inventory through a preprocessing program (to prepare it for MobilePrep). We ran

MobilePrep and then processed the total (onroad and nonroad together) mobile source output

inventory through AMProc. We were able to process onroad and nonroad together because the

same HAP table file (see Section D.5) applies to both onroad and nonroad diesel PM.

Non-point Source Processing

We processed the 1996 NTI non-point source inventory through a preprocessing program to read

in the non-point source emission data and format it as required by AreaPrep. Due to the size of

the non-point source file, we split it into two parts and then ran each separately through AMProc.

D.2.2 We ran it for the precursors to HAPs

The EPA’s Cumulative Exposure Project (CEP)11 which selected the year 1990 as its focus,

identified thirteen HAPs for which secondary formation may account for a significant portion of

ambient concentrations. Of these HAPs, we modeled formaldehyde, acetaldehyde,

propionaldehyde and acrolein. The precursors to formaldehyde include both HAPs and non-HAP

VOC’s.

We used EMS-HAP to process data from two separate emission inventories in order to prepare

ASPEN input files for the HAP precursors. For the non-HAP VOC’s, we used data from the

1996 NET inventory, speciated for the particular VOC’s we needed (as discussed previously in
D-9

Section D.1.2). For the precursors which are HAPs, we used the 1996 NTI. Table D-25, which

lists all of the pollutants we modeled in EMS-HAP, also contains entries for the precursors we

modeled. Note that because 1,3 butadiene, which was modeled as a directly emitted HAP, is the

only precursor for acrolein, Table D-25 does not have a separate entry for “acrolein, precursor.”

Aircraft Emissions Processing for Precursors

We merged the mobile NTI emissions with the speciated mobile NET emissions in a preprocessor and ran that through AirportProc. We then fed the output precursor aircraft emissions

inventory to the point source processing programs in the following order: PtDataProc,

PtModelProc, PtTemporal, and PtFinal_ASPEN. We used the precursor HAP table (see

Section D.6) in PtModelProc.

Point Source Emissions Processing for Precursors

We ran the speciated NET point source inventory through a preprocessing program and then ran

it through PtDataProc and PtModelProc, using the precursor HAP table file (see Section D.6). 

We ran the 1996 NTI through PtDataProc and PtModelProc, also using the precursor HAP table

file. We then merged the output of the two separate runs of PtModelProc and ran the resulting

precursor inventory through PtTemporal, and PtFinal_ASPEN.

Mobile Source Processing for Precursors

We processed the precursor output (containing both NET and NTI data) from AirportProc

through MobilePrep. We processed the nonroad and onroad mobile precursor data together

through AMProc. We were able to process these together because both used the same HAP table

file (the precursor HAP table).

Non-point Source Processing for Precursors

We merged the non-point NTI emissions that are precursors with speciated non-point NET

emissions and ran the resulting precursor inventory through AreaPrep and AMProc.

D.3 The Ancillary Files We Used

Each EMS-HAP program (except for MobilePrep) requires a variety of ancillary input files. The

ancillary files we used to prepare 1996 base year ASPEN input files are provided as a part of

EMS-HAP. Table D-4 lists the ancillary files for each program we ran. There are additional

ancillary files for EMS-HAP (e.g., MACT_gen.txt and MACT_spec.txt, which can be used in

PtGrowCntl) that are not in Table D-4 because we did not use them for the base year run.

Appendix A contains a complete listing of EMS-HAP’s ancillary files.
D-10

Some of the ancillary files used for non-point and mobile source processing are the same as those

used for point source processing. File formats, descriptions, and sample data for each of these

files are provided in Appendix A; Tables 1 through 4 in Appendix A list the entire contents of all

of the HAP table files.

Table D-4. Ancillary Files Used in EMS-HAP for the 1996 Base Year Run

EMS-HAP

Program

Batch File

Keyword

File Name 

(SAS files are shown

without their

extension)

Data Source and Appendix D section

which provides more information

Aircraft Emissions Processing

AirportProc

AIRALLC apt_allc based on data compiled by Gregory Rigamer

and Associates12 and the FAA13 See D.4

Point Source Processing

PtDataProc and its “include” programs validFIP and latlon2fip

ZIP zipcodes developed from a SAS® map data set

CNTYCENT cty_cntr developed from a geographic information

systems (GIS) database

STCENT st_cntr developed from a SAS® map data set

N/A* counties SAS® map data set

N/A* bound6 developed from a SAS® map data set

N/A* cntyctr2 developed from a GIS database

TRACTS trctarry developed by creating random arrays of the 

tracts within each county from tractinf file 

TRCTINFO tractinf urban/rural designations, tract radius and

centroid data from 1990-based designations

made in the CEP14,15

SCCDEFLT def_scc.txt developed by averaging stack parameter data

for each SCC from June 2000 version of the

1996 point source NTI

SICDEFLT def_sic.txt developed by averaging stack parameter data

for each SIC from June 2000 version of the

1996 point source NTI

VARLIST varlist.txt based on our preference
Table D-4. Ancillary Files Used in EMS-HAP for the 1996 Base Year Run

(continued)

EMS-HAP

Program

Batch File

Keyword

File Name 

(SAS files are shown

without their

extension)

Data Source and Appendix D section

which provides more information

D-11

Point Source Processing.... continued

PtModelProc

MOBHAPS haptabl_nonroad.txt

(direct emissions) 

haptabl_precusor.txt

(precursor emissions)

reactivity and particulate size class

information based on the analytical

framework developed in the CEP16 See D.5

and D.6

PTHAPS haptabl_point_area.txt

(direct emissions)

haptabl_precusor.txt

(precursor emissions)

reactivity and particulate size class

information based on the analytical

framework developed in the CEP16 See D.5

and D.6

CTYFLAG ctyflag developed from trctinf file

TRCTINF tractinf same file as TRCTINFO under PtDataProc

PtTemporal

TAF taff_hourly.txt Primarily from temporal allocation database

developed by EPA’s Office of Research and

Development (ORD) See D.7

SCCLINK scc2ams.txt based on EPA’s FIRE database17 See D.8-D.9 

SICLINK sic2ams.txt based on SIC definitions18 See D.8 and D.9

MACTLINK mact2scc.txt based on MACT category definitions19 See

D.8 and D.9

PtFinal_ASPEN

DECAY indecay.txt derived from the CEP16

Non-point Source Processing

AreaPrep

TAFFILE taff_hourly.txt same as TAF in PtTemporal

SCC2AMS scc2ams.txt same as SCCLINK in PtTemporal

SIC2AMS sic2ams.txt same as SICLINK in PtTemporal

SURRXREF surrxref.txt developed using CEP, EMS-95 and OTAQ

recommendations See D.8

SIC2AMS sic2ams.txt same as SICLINK in PtTemporal
Table D-4. Ancillary Files Used in EMS-HAP for the 1996 Base Year Run

(continued)

EMS-HAP

Program

Batch File

Keyword

File Name 

(SAS files are shown

without their

extension)

Data Source and Appendix D section

which provides more information

D-12

Non-point Source Processing.... continued

MACT2AMS mact2scc.txt same as MACTLINK in PtTemporal

SURRXREF surrxref.txt developed using CEP, EMS-95 and OTAQ

recommendations See D.8

Non-point and Mobile Source Processing

AMProc

SAFFILE saf1, saf2, ... spatial allocation factors primarily from the

CEP. Tract-level urban/rural dispersion

parameters from the CEP. Urban/rural county

designations from 1990 and 1996 census

data20 See D.10

TAFFILE taff_hourly.txt same as TAF under PtTemporal

SURRXREF surrxref.txt same as SURRXREF under AMProc

HAPTABLE haptabl_point_area.txt

(direct emissions, nonpoint), haptabl_onroad.txt

(direct emissions,

onroad),

haptabl_nonroad.txt

(direct emissions,

nonroad),

haptabl_precursor.txt

(precursor emissions)

same as MOBHAPS and PTHAPS under

PtModelProc

EMISBINS am_grp.txt based on our selection: we grouped all ‘area

and other sources’** into group 1, all nonroad

mobile (including aircraft, commercial marine

and locomotives) into group 3 and all onroad

mobile into group 2.

CNTYUR popflg96.txt based on 1990 and 1996 Census data20

DECAY indecay.txt same as DECAY under PtFinal_ASPEN

* not applicable because PtDataProc requires the filenames given for these ancillary files

** ‘area and other’ includes both area sources based on Clean Air Act definition. ‘Other’ stationary sources are sources that may

be more appropriately addressed by other programs rather than through regulations developed under certain air toxics provisions

(sections 112 or 129) in the Clean Air Act. Examples of other stationary sources include wildfires and prescribed burning whose

emissions are being addressed through the burning policy agreed to by EPA and USDA.
D-13

D.4 How We Developed the Airport Allocation Ancillary File (apt_allc)

The 1996 NTI and most other emissions inventories include emissions from airport takeoffs and

landings as county-level totals in the mobile source inventory. EMS-HAP uses an airport

allocation file (apt_allc) to apportion the county-level emissions to specific airport locations. 

This file provides detailed location data (latitude and longitude) for all known airports in the

U.S., Puerto Rico and the Virgin Islands, as well as allocation factors for situations where more

than one airport is located in a particular county.

D.4.1 We assembled airport location data

We used data compiled by Gregory Rigamer and Associates to provide latitudes and longitudes

for about 18,000 airports in the U.S., Puerto Rico and the Virgin Islands.12 This database

includes both commercial and noncommercial airports. We made a few changes to this database

to correct errors we discovered when we initially ran the location quality assurance routine in

PtDataProc. These changes are listed below:

1. We changed the latitude and longitude of the Four Season’s Airport in Reading, New York to

be consistent with the range of coordinates in Shuler county (the original coordinates were not

within Shuler county). The coordinates were changed from 42.40617750 latitude/ -77.96083611

longitude to 42.300278 latitude/ -76.876667 longitude.

2. We changed the county FIPS code of the Dahlgren Naval Surface Warfare Center from 199

(York County) to 099 (King George County) to be consistent with the locational coordinates. 

D.4.2 We developed airport allocation factors

In developing allocation factors, we relied primarily on an FAA emplanement data set, which

provides information on the number of passengers carried in 1996 at approximately 2000

commercial airports in the U.S., Puerto Rico and the Virgin Islands.13

We developed an allocation factor to address situations where there are multiple airports in a

given county (since the inventory contains emission data at the county level). Where multiple

commercial airports were located in the same county, we assumed that the fraction of emissions

attributable to each airport in the county is the same as the fraction of passengers served by that

airport:

Allocation factor for airport A =

Passengers served by airport A

Total passengers served in the county

We did not identify a source of activity data for noncommercial airports. In cases where

commercial and noncommercial airports were located in the same county, we assumed that all of

the emissions emanated from the commercial airports. We assumed this because commercial
D-14

airports tend to have both general aviation and commercial activity. For counties which contain

no commercial airports and multiple noncommercial airports, we divided any emissions equally

among the noncommercial airports.

We merged the location and emplanement databases using the common airport designation code.

Note that the resulting file does not include Alaska airports. 

D.5 How We Selected HAPs, Grouped/Partitioned Them, and Determined Their 

Characteristics (HAP Table for HAPs)

For modeling the direct emissions of HAPs, we used three separate versions of the HAP table

pertaining to: (1) point and non-point sources, (2) onroad mobile sources, and (3) nonroad

mobile sources. Appendix A contains a complete listing of each of these files (Tables 1, 3 and

4). These versions of the HAP table differ in two ways: 1) the apportionment of metal HAPs

among the fine and coarse particulate size classes, and 2) the apportionment of mercury among

fine particulate and non-reactive gas classes. 

D.5.1 We assigned reactivity and particulate size classes

Reactivity and particulate size class information for each pollutant are assigned through the same

variable (REACT). The versions of the HAP tables supplied in Appendix A contain the REACT

variable and SAROAD codes for those HAPs selected for modeling and for a substantial number

of other pollutants reported in the 1996 NTI but not selected. The treatment of HAP reactivity in

EMS-HAP is based on the analytical framework developed in EPA’s CEP.16 The reactivity and

particulate size class definitions and most assignments of chemical species to reactivity classes

were also taken from the CEP project. Those assignments that were not taken from the CEP

were because (1) the pollutant was not addressed in the CEP, (2) we had different degrees of

inventory information for determining coarse/fine particulate size class allocation, or (3) we

received recommendations from the EPA’s Emission Measurement Center.21

As discussed in Chapter 4, ASPEN uses the following reactivity and particulate size classes:

• Non-reactive or very low reactivity (REACT=1)

• low reactivity (REACT=9)

• medium low reactivity (REACT=4)

• medium reactivity (REACT=5)

• medium high reactivity (REACT= 6)

• high reactivity (REACT=8)

• very high reactivity (REACT=7)

• fine: particles with aerodynamic diameter less than 2.5 )m- (REACT=2)

• coarse: particles with aerodynamic diameter between 2.5 and 10 )m- (REACT=3)

 

For each reactivity class, the decay coefficients vary by time block (3-hour period) throughout a

day and stability class. The decay coefficients are zero for all time blocks and stability classes
D-15

for reactivity classes 1, 2 and 3. The decay coefficients for the other reactivity classes are

provided in Table D-5 and can be found in the indecay.txt ancillary file provided with the EMSHAP code. They are also presented in Appendix C of the ASPEN User’s Guide22, however, this

reference has an error in reactivity class 7 for time blocks 2, 3, 7, and 8 in stability class D. We

used the corrected values to prepare the 1996 ASPEN modeling files, and it is the corrected

values that are contained in Table D-5 and in the ancillary file provided with EMS-HAP. Figure

28 in Appendix A contains the format and sample file contents for indecay.txt. 

Table D-5. Decay Coefficients by Reactivity Class

Reactivity Class 4 - Medium-low reactivity

Stability Class A B C D E F

Time Block 1 9.87E-7 9.87E-7 9.87E-7 9.87E-7 9.87E-7 9.87E-7

Time Block 2 9.87E-7 9.87E-7 9.87E-7 9.87E-7 9.87E-7 9.87E-7

Time Block 3 1.18E-5 7.89E-6 3.95E-6 1.97E-6 9.87E-7 9.87E-7

Time Block 4 7.89E-5 5.92E-5 3.95E-5 1.97E-5 9.87E-7 9.87E-7

Time Block 5 6.71E-5 5.13E-5 3.55E-5 1.97E-5 9.87E-7 9.87E-7

Time Block 6 2.37E-5 1.78E-5 1.18E-5 7.89E-6 9.87E-7 9.87E-7

Time Block 7 1.97E-6 1.97E-6 1.97E-6 9.87E-7 9.87E-7 9.87E-7

Time Block 8 9.87E-7 9.87E-7 9.87E-7 9.87E-7 9.87E-7 9.87E-7

Reactivity Class 5 - Medium reactivity

Stability Class A B C D E F

Time Block 1 2.47E-6 2.47E-6 2.47E-6 2.47E-6 2.47E-6 2.47E-6

Time Block 2 2.47E-6 2.47E-6 2.47E-6 2.47E-6 2.47E-6 2.47E-6

Time Block 3 2.96E-5 1.97E-5 9.87E-6 4.93E-6 2.47E-6 2.47E-6

Time Block 4 1.97E-4 1.48E-4 9.87E-5 4.93E-5 2.47E-6 2.47E-6

Time Block 5 1.68E-4 1.28E-4 8.88E-5 4.93E-5 2.47E-6 2.47E-6

Time Block 6 5.92E-5 4.44E-5 2.96E-5 1.97E-5 2.47E-6 2.47E-6

Time Block 7 4.93E-6 4.93E-6 4.93E-6 2.47E-6 2.47E-6 2.47E-6

Time Block 8 2.47E-6 2.47E-6 2.47E-6 2.47E-6 2.47E-6 2.47E-6

Reactivity Class 6 - Medium-high reactivity

Stability Class A B C D E F

Time Block 1 4.93E-6 4.93E-6 4.93E-6 4.93E-6 4.93E-6 4.93E-6

Time Block 2 4.93E-6 4.93E-6 4.93E-6 4.93E-6 4.93E-6 4.93E-6

Time Block 3 5.92E-5 3.95E-5 1.97E-5 9.87E-6 4.93E-6 4.93E-6

Time Block 4 3.95E-4 2.96E-4 1.97E-4 9.87E-5 4.93E-6 4.93E-6

Time Block 5 3.35E-4 2.57E-4 1.78E-4 9.87E-5 4.93E-6 4.93E-6

Time Block 6 1.18E-4 8.88E-5 5.92E-5 3.95E-5 4.93E-6 4.93E-6

Time Block 7 9.87E-6 9.87E-6 9.87E-6 4.93E-6 4.93E-6 4.93E-6

Time Block 8 4.93E-6 4.93E-6 4.93E-6 4.93E-6 4.93E-6 4.93E-6
Table D-5. Decay Coefficients by Reactivity Class

(continued)

D-16

Reactivity Class 7 - Very high reactivity

Stability Class A B C D E F

Time Block 1 5.01E-4 5.01E-4 5.01E-4 5.01E-4 5.01E-4 5.01E-4

Time Block 2 3.21E-5 3.21E-5 3.21E-5 2.54E-4 5.01E-4 5.01E-4

Time Block 3 9.00E-5 6.04E-5 3.08E-5 5.61E-5 5.01E-4 5.01E-4

Time Block 4 5.93E-4 4.45E-4 2.97E-4 1.49E-4 8.14E-6 8.14E-6

Time Block 5 5.04E-4 3.86E-4 2.67E-4 1.49E-4 8.14E-6 8.14E-6

Time Block 6 1.79E-4 1.34E-4 9.00E-5 6.34E-4 8.14E-6 8.14E-6

Time Block 7 3.95E-5 3.95E-5 3.95E-5 2.54E-4 5.01E-4 5.01E-4

Time Block 8 5.01E-4 5.01E-4 5.01E-4 5.01E-4 5.01E-4 5.01E-4

Reactivity Class 8 - High reactivity

Stability Class A B C D E F

Time Block 1 1.23E-5 1.23E-5 1.23E-5 1.23E-5 1.23E-5 1.23E-5

Time Block 2 1.23E-5 1.23E-5 1.23E-5 1.23E-5 1.23E-5 1.23E-5

Time Block 3 1.48E-4 9.87E-5 4.93E-5 2.47E-5 1.23E-5 1.23E-5

Time Block 4 9.87E-4 7.40E-4 4.93E-4 2.47E-4 1.23E-5 1.23E-5

Time Block 5 8.39E-4 6.41E-4 4.44E-4 2.47E-4 1.23E-5 1.23E-5

Time Block 6 2.96E-4 2.22E-4 1.48E-4 9.87E-5 1.23E-5 1.23E-5

Time Block 7 2.47E-5 2.47E-5 2.47E-5 1.23E-5 1.23E-5 1.23E-5

Time Block 8 1.23E-5 1.23E-5 1.23E-5 1.23E-5 1.23E-5 1.23E-5

Reactivity Class 9 - Low reactivity

Stability Class A B C D E F

Time Block 1 4.94E-7 4.94E-7 4.94E-7 4.94E-7 4.94E-7 4.94E-7

Time Block 2 4.94E-7 4.94E-7 4.94E-7 4.94E-7 4.94E-7 4.94E-7

Time Block 3 5.90E-6 3.95E-6 1.98E-6 9.85E-7 4.94E-7 4.94E-7

Time Block 4 3.94E-5 2.96E-5 1.97E-5 9.85E-6 4.94E-7 4.94E-7

Time Block 5 3.36E-5 2.57E-5 1.78E-5 9.85E-6 4.94E-7 4.94E-7

Time Block 6 1.19E-5 8.90E-6 5.90E-6 3.95E-6 4.94E-7 4.94E-7

Time Block 7 9.85E-7 9.85E-7 9.85E-7 4.94E-7 4.94E-7 4.94E-7

Time Block 8 4.94E-7 4.94E-7 4.94E-7 4.94E-7 4.94E-7 4.94E-7
D-17

Tables D-6 and D-7 show how we assigned particulate size class allocation factors to metal

compound classes. Except for diesel PM and mercury compounds, we computed allocation

factors for the metal compound classes based on averages from the CEP’s 1990 emission

inventory.23 Diesel PM emissions splits were only used for Puerto Rico and Virgin Islands since

we received the data already speciated into coarse and fine diesel for the continental U.S. The

diesel PM splits in the onroad and nonroad HAP tables were based on recommendations from 

EPA’s Office of Transportation Air Quality (OTAQ).24, 25

Table D-6. Average Particulate Size Class Allocation Factors

Onroad Nonroad Stationary (Point and

Non-point)

coarse % fine % coarse % fine % coarse % fine %

Antimony 31 69 63 37 45 55

Arsenic 10 90 17 83 41 59

Beryllium ----- ----- 61 39 32 68

Cadmium ------ ------ 62 38 24 76

Chromium 14 86 20 80 29 71

Cobalt 19 81 10 90 20 80

Lead 24 76 12 88 26 74

Manganese 36 64 21 79 33 67

Nickel 17 83 51 49 41 59

Selenium 0 100 11 89 10 90

Diesel PM 8 92 8 92 ------ ------

Table D-7. Gas and Particulate Allocations for Mercury Compounds

Reported as... Onroad Nonroad Stationary (Point and Nonpoint)

coarse % fine % gas % coarse % fine % gas % coarse % fine % gas %

Mercury & 0 100 0 0 100 0 0 0 100

Mercuric _____ _____ _____ _____ _____ _____ 0 100 0

Other Mercury

Species

(including

“elemental”

mercury)

_____ _____ _____ _____ _____ _____ 0 0 100
D-18

As seen in Table D-7, we allocated mercury compound emissions to gaseous (reactivity class 1)

and fine particulate classes (reactivity class 2). Elemental mercury emissions were assigned to

the gaseous mercury group because elemental mercury deposits relatively slowly; and, mercuric

chloride emissions were assigned to the fine particulate group because this species deposits at a

moderate rate.26 All mercury emissions from mobile sources were assigned to particulate

mercury group because the EPA’s OTAQ indicated that the factors used to estimate these

emissions originated from particulate measurements. All other species of mercury in the

stationary source (point and non-point) inventories, including the broad compound class

‘mercury & compounds,’ were assigned to the gaseous group.

Based on recommendations from EPA’s Emission Measurement Center21:

& All dioxins were assigned to the fine particulate class (reactivity class 2).

& All species grouped into 7-PAH or total POM were assigned to the fine particulate class

(class 2).

& Cyanide compounds were assigned to fine (class 2), coarse (class 3) and gaseous (class

1) groups in HAP table, depending on the particular cyanide species reported in the

inventory.

& Naphthalene was split 50/50 among fine and reactivity class 1, although when assigned

to total POM, it was modeled as all fine particulate.

D.5.2 We grouped HAP species belonging to HAP compound classes

The 1996 NTI contains approximately 400 different individual species representing the 188

HAPs. Many of the species (e.g., lead oxide) belong to compound classes. Grouping of these

species is necessary for many reasons. One reason is that the species belonging to HAP groups

may not be geographically consistent. For example, individual lead oxide emissions may have

been reported in some counties, whereas other counties aggregated their lead oxide emissions

into a group called “lead & compounds.” Grouping allows for pollutants with similar

characteristics to be modeled together for purposes of efficiency. Proper grouping is essential for

assuring that the most accurate deposition and decay characteristics are assigned to HAPs

provided in the emission inventory. 

You can see how we grouped those pollutants selected for modeling and other pollutants not

selected, but in the NTI, by looking at the first two columns of the HAP tables (see Appendix A,

Table 1). The following subsections summarize this information.

HAPs listed with their isomers

All HAPs that are listed in Section 112 of the Clean Air Act as both individual species and

compound classes including their isomers (e.g., xylenes, cresols) were modeled as a group that

included all individual isomers. For example, we aggregated emissions of o-xylene, p-xylene,

and m-xylene into the “xylene, including all isomers” group.
D-19

Grouping of Metal HAPs

With the exception of mercury compounds (discussed later), each metal HAP class was prepared

and modeled as two HAP groups: a fine particulate group of the metal HAP class (e.g.,

chromium compounds, fine particulate) and a coarse particulate group of the metal HAP class

(e.g., chromium compounds, coarse particulate). Because the inventory did not contain

information on the particulate size class of the metal species, we used the particulate size class

allocation factors shown in Table D-6, which were discussed earlier in Section D.5.1. Note that

these allocation factors are specific to the type of source (e.g., nonroad, onroad, and point and

non-point). Fine and coarse HAP groups account for differences in deposition characteristics

between fine and coarse particulate HAPs. However, they do not necessarily account for the

differences in toxicological characteristics among individual species in the metal group. Such

differences generally could not be accounted for due to the lack of speciated data for a great

number of sources. Because metals consisted of a fine and a coarse particulate group, the

resulting modeled concentrations were summed subsequent to ASPEN modeling to provide a

single concentration for each metal group. 

We also applied a mass reduction factor, computed as the mass ratio of the moles of the metal in

the chemical compound to the entire chemical compound. We applied this factor to each specific

metal compound reported to adjust the mass emissions to the metal portion of the compound.

Such an adjustment is desirable in allowing comparison of the modeled concentrations to

monitored concentrations, because monitors generally measure only the metal portion of metal

compounds. In addition, the health data are often associated only with the absorbed mass of the

metal. For metals reported as diverse groups or compound classes, such as “alkylated lead,” it

was assumed that the reported mass of the pollutant included only the metal portion; therefore, a

factor of 1.0 was used.

The compound class “mercury compounds” was also prepared and modeled as two different

HAP groups, and summed up to a single ambient mercury concentration after ASPEN modeling. 

However, unlike the other metal compound classes grouped into fine and coarse particulate

groups, the two different HAP groups were gaseous mercury and fine particulate mercury, with

the splits described in Section D.5.1 (Table D-7).

Grouping of Polycyclic Organic Matter (POM)

The grouping of POM provided a challenge due to the general lack of speciated data, the large

number of POM congeners and groups of congeners reported, and the uncertainty in the

definitions used. For example, the reported groups include 7-PAH, 16-PAH, “PAH, total” and

“total POM”. The well-defined subgroups 7-PAH and 16-PAH, as shown in the first two

columns of Table D-8, have been used by EPA in the CAA 112(c)(6) emission inventory.27 The

groups “PAH, total” and “total POM” are less defined.
D-20

Table D-8. 7-PAH and 16-PAH Subgroups, 

and Additional Individual POM Compounds with Available Health Data

7-PAH 16-PAH POM Compounds (in addition

to 7 and 16-PAH) for which we

have cancer assessments

Benz(a)anthracene Benz(a)anthracene Carbazole

Dibenz[a,h]acridine

Dibenz[a,j]acridine

7H-Dibenzo[c,g]carbazole

Dibenzo[a,e]pyrene

Dibenzo[a,i]pyrene

Dibenzo[a,l]pyrene

Acenaphthene 7,12-Dimethylbenz[a]anthracene

Acenaphthylene 1,6-Dinitropyrene

Anthracene 1,8-Dinitropyrene

Benzo(ghi)perylene 3-Methylcholanthrene

Fluoranthene 5-Methylchrysene

Fluorene 5-Nitroacenaphthene

Naphthalene 6-Nitrochrysene

Phenanthrene 2-Nitrofluorene

Pyrene 2-Nitrofluorene

1-Nitropyrene

4-Nitropyrene
D-21

For processing the 1996 NTI, we chose to group POM species in two ways: (1) as 7-PAH, and

(2) as total POM. Modeling POM using these two groups allows us to bound the health risks for

POM. Table D-9 shows the HAP species reported in the inventory that were grouped as total

POM. As shown in the second column of this table, we excluded 7-PAH. This is because all 16-

PAH estimates already included the 7-PAH. If it had been included, it would have been doublecounted. We also excluded the dioxin/chlorinated furan species and subgroups because these

were grouped under the dioxins pollutant grouping (discussed later). Furthermore, we excluded

the individual species that are listed separately as HAPs other than naphthalene. Although they

structurally fit within the POM group, they are generally not reported or assessed as POM. This

is because they are typically emitted separately rather than as part of POM mixtures and have

health benchmarks that are distinct from POM mixture components.

Table D-9. Grouping Scheme for Total POM

Included in the Total POM group Excluded from the total POM group

d 16-PAH

d Individual POM species (e.g., benzo-apyrene, 1-methylnaphthalene, chrysene)

d Naphthalene 

d “PAH, total” 

d Total POM 

d 7-PAH

d Individual POM species that are listed

separately as HAP (e.g., 2-

acetylaminofluorene) other than

naphthalene

d Dioxin/ chlorinated furan species and

subgroups (e.g., pentachlorodibenzofuran)

Note that if the same stack contained emission estimates from more than one item in the first

column of the above table, then emissions from these items were summed together. For

example, if the same stack contained a “PAH, total” “POM,” and naphthalene emissions, all

three were summed together. 

The limitations resulting from the POM grouping scheme can be qualified based on the

assumptions made. For 7-PAH, the assumption was that if only “PAH, total” or “POM” were

reported from the stack, none of those groups contained any species that are part of 7-PAH. Thus

modeled 7-PAH concentrations may underestimate the actual concentrations/exposure estimates

in those cases where species in the 7-PAH group were included in the reported group. For total

POM, the modeling could overestimate the ambient concentration exposure estimates where all

species of POM are not mutually exclusive.
D-22

Grouping of dioxins and chlorinated furans

Dioxin and chlorinated furan congeners (typically denoted by the single term “dioxin” or

“dioxins”) are included in the CAA HAP list as 2,3,7,8 TCDD, and as part of the group “POM,”

but tend to be reported as dioxins. Individual congeners can have greatly varying toxicities. To

address this, an additional pollutant group that reflects the toxic equivalent quantity (TEQ) of the

individual species of dioxins and chlorinated furans is often used.28 This group is called 2,3,7,8-

TCDD TEQ. For risk characterization purposes, the ideal way to group the dioxins and

chlorinated furans would be to use this 2,3,7,8-TCDD TEQ convention.

We used the FACTOR variable in the HAP table to convert individual species of dioxins and

chlorinated furans into 2,3,7,8-TCDD TEQ. We set this variable to the appropriate toxic

equivalency factor (TEF) to the emissions of the individual species. We used the I-TEFs from

the early 90's because these are the factors built into the 1996 NTI for estimating TEQ. EMSHAP multiplies the emissions by the TEF, thereby converting them to 2,3,7,8-TCDD TEQ. 

Difficulties arise in handling those pollutant subgroups that cannot be directly converted to TEQ

because the amount of the individual species they contain is not known. Table D-10 shows the

specific subgroups in the NTI that cannot be directly converted into 2,3,7,8-TCDD TEQ. To

address the uncertainty resulting from the unspeciated reporting of dioxin and chlorinated furan

HAP groups in the inventory, we chose to create two separate pollutant groups to model dioxins.

One group reflects an upper bound estimate of TEQ, and the second reflects a lower bound

estimate. Where specific congeners in the NTI were known, we used the appropriate TEF, and

included the congener in both the upper and lower bound TEQ group. Where specific congener

identities were not known we used the maximum value of the TEF for the mixture for the upper

bound group, and zero for the lower bound group.
D-23

Table D-10. Species, Groups and Subgroups of Dioxins Reported in the 1996 NTI

Could be converted to TEQ (or is already TEQ) Could not be converted to TEQ

• 2,3,7,8-Tetrachlorodibenzo-p-dioxin 

• 1,2,3,7,8,9-hexachlorodibenzo-p-dioxin 

• Pentachlorodibenzo-p-dioxin (estimates by EPA’s

Emission Measurement Center that 1,2,3,7,8-

Pentachlorodibenzo dioxin constitutes ~ 10% of

total Pentachlorodibenzo dioxins29)

• Pentachlorodibenzofuran (estimates by EPA’s

Emission Measurement Center that

1,2,3,7,8-pentachlorodibenzofuran constitutes ~9%

of total Pentachlorodibenzo furans and that

2,3,4,7,8-pentachlorodibenzofuran constitutes ~9%

of total Pentachlorodibenzo furans29) 

• Octachlorodibenzo-p-dioxin 

• Octachlorodibenzo furan 

• 1,2,3,4,7,8-hexachlorodibenzo-p-dioxin 

• 1,2,3,7,8-Pentachlorodibenzo-p-dioxin 

• 2,3,7,8-Tetrachlorodibenzo furan 

• 1,2,3,4,7,8,9-heptachlorodibenzofuran 

• 2,3,4,7,8-pentachlorodibenzofuran 

• 1,2,3,7,8-pentachlorodibenzofuran 

• 1,2,3,6,7,8-hexachlorodibenzo furan 

• 1,2,3,6,7,8-hexachlorodibenzo-p-dioxin 

• 2,3,7,8-TCDD TEQ 

• 2,3,4,6,7,8-hexachlorodibenzo furan

• 1,2,3,4,6,7,8-heptachlorodibenzofuran

• 1,2,3,4,7,8-hexachlorodibenzo furan

• 1,2,3,7,8,9-hexachlorodibenzo furan 

• Dioxins/Furans as TEQ 

• Dioxins 

• 1,2,3,4,6,7,8-heptachlorodibenzo-p-diox

in

• Dibenzofurans (chlorinated) {PCDFs}

• Dioxins, total, w/o individual. isomers

reported

• Hexachlorodibenzo-p-dioxin 

• Polychlorinated dibenzo-p-dioxin, total 

• Polychlorinated dibenzofurans, total 

 
D-24

D.6 How We Selected the HAP Precursors, Grouped/Partitioned Them, and Determined

Their Characteristics (HAP Table for Precursors)

The CEP identified HAPs for which secondary formation may account for a significant portion of

ambient concentrations. We’ve prepared the HAP table to allow ASPEN modeling of the

secondary formation of formaldehyde, acetaldehyde, propionaldehyde, acrolein, methyl ethyl

ketone, phosgene and cresol. Table D-11 shows the precursors for these HAPs. Appendix A,

Table 2, shows a complete listing of the precursor HAP table we used for preparing the ASPEN

input files for a 1996 national-scale assessment. You will see (by looking at the KEEP variable)

that we prepared ASPEN for modeling formaldehyde, acetaldehyde, propionaldehyde and

acrolein.

The treatment of secondary HAP formation in EMS-HAP is based on the analytical framework

developed in EPA’s CEP.30 The approach makes use of pollutant decay calculations performed

in ASPEN. Each precursor species is modeled in ASPEN with and without reactive decay. The

difference between the precursor concentrations modeled with no decay and with reactive decay

reflects the amount of the precursor species converted to secondary pollutants and other products,

such as carbon dioxide. Because any given pollutant may transform into a number of other

species, some of which are HAPs and some of which are not, a molar yield factor is applied to

the difference to account for the typical HAP yield when a molecule of precursor degrades. 

Because of the proportional relationship between emissions and modeled concentrations, the

molar yield factor, adjusted by a molecular weight factor to convert from moles to mass, can be

applied to precursor mass emissions in EMS-HAP. 

We can also apply a reaction rate factor to adjust the reactivities of species which are precursors

to the same HAP to the same reactivity class. This allows us to group a large number of species

that are precursors to the same HAP into a single precursor group. We developed the precursor

HAP table to perform this grouping process for all precursors except for phosgene and acrolein,

since they do not have a large number of precursors. Note that in Table D-11, the reaction rate

factor for these species is 1.

Table D-11 shows the molar yield factor, the molecular weight adjustment factor and the reaction

rate factor for each species. The molar yields and reaction rates were those used in the CEP.30

The overall scaling factor (the three factors multiplied together) is the FACTOR variable in the

precursor HAP table. 
D-25

Table D-11. Scaling Factors for HAP Precursors

HAP Precursors

Molar

yield

Reaction

rate

factor

Molecular

weight

factor

Overall

scaling

factor

Formaldehyde Ethene 1.6 0.3 1.07 0.51

Propene 1 1 0.71 0.71

1-butene 1 1 0.54 0.54

1-pentene 1 1 0.43 0.43

1-hexene 1 1 0.36 0.36

1-heptene 1 1 0.31 0.31

1-octene 1 1 0.27 0.27

1-nonene 1 1 0.24 0.24

1-decene 1 1 0.21 0.21

Isobutene (or 2-methylpropene) 1 1.6 0.54 0.86

2-methyl-1-butene 1 1.6 0.43 0.69

1,3-butadiene 1 2 0.56 1.11

3-methyl-1-butene 1 1 0.43 0.43

3-methyl-1-pentene 1 1 0.36 0.36

2,3-dimethyl-1-butene 1 1.6 0.36 0.57

Isoprene 0.67 3 0.44 0.89

2-ethyl-1-butene 1 1.6 0.36 0.57

2-methyl-1-pentene 1 1.6 0.36 0.57

4-methyl-1-pentene 1 1 0.36 0.36

2,4,4-trimethyl-1-pentene 1 1.6 0.27 0.43

Acetaldehyde 1 0.5 0.68 0.34

Methyl-t-butyl ether 0.42 0.1 0.34 0.01

Methanol 1 0.03 0.94 0.03

Acetaldehyde Propene 1 0.5 1.05 0.52

2-butene 2 1 0.79 1.57

2-pentene 1 1 0.63 0.63

2-hexene 1 1 0.52 0.52

2-heptene 1 1 0.45 0.45

2-octene 1 1 0.39 0.39

2-nonene 1 1 0.63 0.63

2-methyl-2-butene 1 1.5 0.63 0.94

3-methyl-2-pentene 1 1.5 0.52 0.79

4-methyl-2-pentene 1 1 0.52 0.52

Ethanol 1 0.05 0.96 0.05

Propionaldehyde 1-butene 1 0.5 1.04 0.52

2-pentene 1 1 0.83 0.83

3-hexene 2 1 0.69 1.38

Methyl ethyl ketone 2-methyl-1-butene 1 1 0.86 0.86

Butane 1 0.03 1.03 0.03

Isopentane 1 0.03 0.83 0.03

3-methylpentane 1 0.03 0.71 0.02

Acrolein 1,3-butadiene 1 1 1.04 1.04

Cresol Toluene 1 1 1.20 1.20

Phosgene Methylene chloride 1 1 1.16 1.16

Trichloroethylene 1 1 0.83 0.83

Tetrachloroethylene 1 1 0.64 0.64

Vinylidene chloride 1 1 1.02 1.02
D-26

The structure of the precursor HAP table used in processing both point and non-point precursor

inventories is the same as the HAP table (for direct emission of HAPs) discussed in Section D.5.

A general discussion of the HAP table is also contained in Section 4.2.3. A full listing of the

precursor HAP table is provided in Appendix A, Table 2. The precursor HAP table includes two

sets of records for each precursor to be modeled. One set reflects the reactivity class that is

appropriate to the precursor, and the other reflects the reactivity class of 1 (non-reactive or inert). 

The only exception to this is the precursor for acrolein, which is 1,3 butadiene. Because 1,3

butadiene is already in the HAP tables for the direct emissions of HAPs, the precursor HAP table

contains only non-reactive 1,3 butadiene.

Note that the reactive and inert precursor species have separate SAROAD codes. For example,

for formaldehyde precursor there is a set of records for formaldehyde precursor reactive

(reactivity class 6, SAROAD=80180), and a set for formaldehyde precursor, inert (reactivity

class 1, SAROAD=80303). The number of records in the set depends on how many specific

VOCs or HAPs having the same reactivity class are involved in the formation of the HAP. For

formaldehyde precursor, for example, there are twenty-two species. As stated earlier, the 

FACTOR variable for each species was set to the overall scaling factor in Table D-11. 

Where one pollutant is a precursor of two HAPs, as in the case of 1-butene (which is a precursor

of formaldehyde and propionaldehyde), four records are needed in HAP table, two for each HAP

that the precursor produces.

D.7 How We Developed the Temporal Allocation Factors File (taff_hourly.txt)

EMS-HAP uses the same ancillary input file, taff_hourly.txt, to temporally allocate annual

emissions from point, non-point and mobile sources. This file contains temporal allocation

factors (TAFs) that provide the hourly variation of emissions in an annually-averaged day based

on the source category. Local time zones are used. There are 24 TAFs for each source category;

each TAF represents an activity level for each hour in the day. These activities sum to 1. In

developing the temporal profiles for EMS-HAP, we reviewed available temporal allocation data

developed under previous modeling efforts. These included:

& A temporal allocation database maintained by EPA’s Office of Research and

Development (ORD). This database was originally developed for regional emission

modeling studies under the National Acid Precipitation Assessment Program (NAPAP),31

and was updated to improve allocation factors for some sources in 1995.32

& Temporal allocation profiles used in EMS-95 for regional and local ozone modeling.33

& Temporal allocation profiles used in the emission processing system (EPS) for the Urban

Airshed Model (UAM) of ozone.34 These factors were also used in the CEP.
D-27

We used the database developed by ORD as a starting point, because it is the most complete

database and its development is documented in an EPA report.31

We made some changes and additions to the data as follows:

1. The ORD temporal database actually contains hourly temporal allocation factors for specific

seasons and day-of-week classes (weekday, Saturday, and Sunday). In the EMS-HAP TAF

file, we consolidated the seasonal and day-of-week information to produce a set of factors

that reflect hourly emissions activity on an annual average. To do this, we averaged the

hourly activity factors for different days and seasons, weighted by weekly and seasonal

activity patterns. Equation D-1 was used:

HFn = 13 x i=1-4 [(WHFn/ i x WDFi x 5) + (SaHFn/ i x SaDFi) + (SuHFn/i x SuDFi)] x SFi

where (eq. D-1)

HFn = average fraction of daily emissions occurring in hour “n” 

subscript i ranges from 1 to 4, denoting the season

WHFn/i = fraction of daily emissions in hour “n” on weekdays in season “i”

WDFi

 = fraction of emissions in season “i” occurring on a typical weekday

SaHFn/i = fraction of daily emissions in hour “n” on Saturdays in season “i”

SaDFi

 = fraction of emissions in season “i” occurring on a typical Saturday

SuHFn/i = fraction of daily emissions in hour “n” on Sundays in season “i”

SuDFi

 = fraction of emissions in season “i” occurring on a typical Sunday

SFi

 = fraction of annual emissions occurring in season “i”

5 = 5 weekdays per week

13 = 13 weeks per average season
D-28

2. For highway gasoline vehicles, the NTI emissions inventory provides aggregated emissions

estimates for the entire category, while the ORD database treats different road classes

separately. In order to handle the aggregated highway vehicle category in the NTI, we

developed a composite temporal profile by taking the average of three separate ORD profiles

for rural, urban, and interstate roadways. The following equation was used:

HFn/composite = (HFn / interstate + HFn / urban + HFn / rural) / 3 (eq. D-2)

where

n = hour of the day

HFn = fraction of daily emissions occurring in hour n

3. Light duty diesel vehicles were not specifically addressed in the ORD temporal database. We 

assumed that they have a similar profile to heavy-duty diesels. (A second option would have

been to use the gasoline vehicle profile. However, the diesel and gasoline profiles were

believed to be fundamentally different because of increased evaporative emissions from

gasoline vehicles in the afternoon.)

4. EPA’s Office of Transportation and Air Quality (OTAQ) provided new information that we

used to develop a new temporal profile for commercial aircraft landings and takeoffs.35

5. For source categories in the emissions inventories processed, which were not in the ORD

database, but were in the speciated NET inventory, we assigned profiles from similar

categories. Table D-12 shows the new profiles we assigned. Note that we chose not to assign

a profile for Industrial Equipment, Other Oil Field Equipment. As a result, AMProc assigned

this source category a uniform temporal profile (the default).

All highway and nonroad profiles were reviewed with OTAQ prior to the selection of temporal

profiles for EMS-HAP. A few of the non-point and all of the mobile source profiles selected for

EMS-HAP are summarized in Tables D-13 and D-14 respectively. Figure D-1 shows the ORD

temporal profiles for the three separate roadway classes, and the composite profile developed for

gasoline highway vehicles in EMS-HAP. Figure D-2 shows temporal profiles used in EMS-HAP

for diesel highway vehicles and nonroad vehicles.
D-29

Table D-12. Additions to the ORD Temporal Profile Database

New Existing ExistingAMS code Description AMS w/ TAF 2260004016 2-stroke, Lawn and Garden Equipment, Rotary Tillers < 6 HP (Commercial) 2260004015 2260004021 2-stroke, Lawn and Garden Equipment, Chain Saws < 6 HP (Commercial) 2260004020 2260004026 2-stroke, Lawn and Garden Equipment,Trimmers/Edgers/Brush Cutters (Commercial) 2260004025 2260004031 2-stroke, Lawn and Garden Equipment, Leafblowers/Vacuums (Commercial) 2260004030 2260004071 2-stroke, Lawn and Garden Equipment, Turf Equipment (Commercial) 2260004070 2265003070 4-stroke, industrial equipment, (AC/Refrigerator) 2265003060 2265004011 4-stroke, lawn & garden equipment, Lawn Mowers (Commercial) 2265004010 2265004016 4-stroke, lawn & garden equipment, Rotary Tillers < 6 HP (Commercial) 2265004015 2265004026 4-stroke, lawn & garden equipment, Trimmers/Edgers/Brush Cutters (Commercial) 2265004025 2265004031 4-stroke, lawn & garden equipment Leafblowers/Vacuums (Commercial) 2265004030 2265004041 4-stroke, lawn & garden equipment, Rear Engine Riding Mowers (Commercial) 2265004040 2265004046 4-stroke, lawn & garden equipment, Front Mowers (Commercial) 2265004045 2265004051 4-stroke, lawn & garden equipment, Shredders < 6 HP (Commercial) 2265004050 2265004056 4-stroke, lawn & garden equipment, Lawn and Garden Tractors (Commercial) 2265004055 2265004066 4-stroke, lawn & garden equipment, Chippers/Stump Grinders (Commercial) 2265004065 2265004071 4-stroke, lawn & garden equipment, Turf Equipment (Commercial) 2265004070 2265004076 4-stroke, lawn & garden equipment, Other Lawn and Garden Equipment (Commercial) 2265004075 2265005060 4-Stroke, Farm Equipment (Irrigation Sets) 2265005050 2265010010 4-stroke, industrial equipment, other oil field equipment No data on this AM2270003070 industrial equipment (AC/Refrigeration) 2270003060 2270004036 lawn & garden equipment, Snowblowers (Commercial) 2270004035 2270004041 lawn & garden equipment, Rear Engine Riding Mowers (Commercial) 2270004040 2270004046 lawn & garden equipment, Front Mowers (Commercial) 2270004045 2270004056 lawn & garden equipment, Lawn and Garden Tractors (Commercial) 2270004055 (Commer2270004066 lawn & garden equipment, Chippers/Stump Grinders (Commercial) 2270004065 2270004071 lawn & garden equipment, Turf Equipment (Commercial) 2270004070 2270005060 Agricultural equipment (Other Agricultural Equipment) 2270005055 2270010010 Industrial Equipment, Other Oil Field Equipment No data on this AM
D-30

Table D-13. Temporal Allocation of Some Non-point Source Categories in EMS-HAP

NTI Non-point Source Category AMS code EMS-95 Hourly

Profile

 CEP Hourly Profile NAPAP Temporal

Profile

Code Brief description Code Brief description

Instl/Comm. Heating: Distillate Oil 21-03-004 25 8-hour day, with

ramped beginningand end

37 very low 3-6a,

moderate 6-9a and6-9p, peak 9a-6p

~2.5%/hr 11pm-7am,5.5%/hr 7am-4pm,4.4%/hr 4-11pm

Instl/Comm. Heating: Residual Oil 21-03-005Instl/Comm. Heating: Natural Gas 21-03-006Residential Heating: Anthracite Coal 21-04-001 25 see above 33 bimodal -

morning/evening

Roughly sinusoidal,peaking at ~6.3%/hr at6am, lowest at ~2%/hr a5pm

Residential Heat.: Bituminous/Lignite 21-04-002Residential Heating: Distillate Oil 21-04-004Residential Heating: Natural Gas 21-04-006Res. Heat.: Wood/Wood Residue 21-04-008Surface Coatings: Architectural 24-01-001 25 see above 12 flat 6a to 6p flat 6a-8p, 0 at night Autobody Refinishing Painting 24-01-005 25 see above 12 see above flat 7a-4p, 0 at night Surface Coatings: Traffic Markings 24-01-008 25 see above 12 see above uniform 24 hours Industrial Maintenance Coatings 24-01-100 25 see above 16 low 6-9a, high 9amidnight ~6.9%/hr 7am-6pm, ~1.9%/hr at night Dry Cleaning (Petroleum Solvent) 24-20-000 25 see above 16 see above flat 7a-6p, 0 at night Asphalt Paving: Cutback Asphalt 24-61-021 25 see above 12 see above same as industrial

maintenance coatings

Pesticide Application 24-61-000 25 see above 40 3a-6p, peak 6anoon Consumer Products Usage 24-60-000 25 see above 16 see above Aviation Gas Distribution: Stage I&II 25-61-000 24 uniform 24-hour 24 uniform 24-hour uniform 24-hour Gasoline Distribution Stage II 25-01-060-100 na na na na na Open Burning: Scrap Tires 28-30-000 25 see above 54 6a-midnight, peak

9a-9p

flat 5a-8p, 0 at night 

Landfills, all types 26-20-000 24 uniform 24-hour 54 see above uniform 24-hour Structure Fires 28-10-030 24 uniform 24-hour 24 uniform 24-hour uniform 24-hour Hospital Sterilizers 28-50-000-100 25 see above na na uniform 24-hour Human Cremation na na na na na na Animal Cremation na na na na na na Food & Agricultural: Cotton Ginning na na na na na na na - not available
D-31

Table D-14. Temporal Allocation of Mobile Source Categories in EMS-HAP

NTI MobileSourceCategory

Subcategories,whereapplicablea

AMS code

EMS-95 Hourly Profile CEP Hourly Profile NAPAP Temporal Allocation

File

Code Description Code Description

Light Duty Gasoline Vehicles(LDGV)

A2201001 not

appl.

VMT and emissionfactor both undergoallocation, with thecombined resultreflected in the finalemission file

not

appl.

Exhaust and evaporativeare allocated separately

Composite of evaporative andexhaust (varies depending onroad-type)

Avcoro

Light Duty Gasoline Trucks (LDGT)

A2201060

Heavy Duty Gasoline Vehicles(HDGV)

A2201070

Motorcycles (MC) A2201080Light Duty Diesel Vehicles(LDDV)

A2230001 not addressed NA

Light Duty Diesel Trucks(LDDT)

A2230060 not addressed sa

Heavy Duty Diesel Vehicles(HDDV)

A2230070 Near uniform 6am-6pm, with

break at noon, low at night

sa

AllOff-highwayVehicle:Gasoline,2-Stroke

All A2260000 25 8-hour day, with

ramped start and end

See detailed list below Ramps up 6-9am, uniform from

9-am-6pm

NA

Recreational A2260001 37 very low 3-6am, moderate

6-9am & 6-9pm, peak9am-6pm

Construction A2260002 61 24 hours, higher activity

6-9am & 6-9pm, highest6am-6pm

Industrial A2260003 62 Similar to profile 61, less

pronounced peak

Lawn & garden A2260004 63 Highest 9am-6pm, less 6-

9pm

Farm equipment A2260005 64 Highest 9am-9pm, less 6-

9am, very little 9pmmidnight

Lightcommercial

A2260006 24 Uniform 24 hours

Logging A2260007 63 Highest 9am-6pm, less 6-

9pm

Airport service A2260008 24 Uniform 24 hours
NTI Mobile

SourceCategory

Subcategories,whereapplicablea

AMS code

EMS-95 Hourly Profile CEP Hourly Profile NAPAP Temporal Allocation

File

Code Description Code Description

D-32

AllOff-highwayVehicle:Gasoline,4-Stroke

Same as for2-stroke engines

A2265000 25 See above Same as for 2-stroke engines Same as for 2-stroke engines Sa

AllOff-highwayVehicle:Diesel

Same as for2-stroke engines

A2270000 25 See above Same as for 2-stroke engines High activity 6am-6pm, low

activity 6pm-midnight

NA

All Aircraft Types andOperations

A2275000 25 See above 24 Uniform 24 hours Varies depending on aircraft

type, commercial is uniformlyhigh 6am-midnight with verylow activity midnight-6am

Netakma

Marine Vessels, Commercial A2280 24 Uniform 24 hours not

appl.

CEP included pleasurecraft, only

Varies depending on fuel, dieselis uniformly high 6am-6pm,dropping to 1/3 that level from6pm-6am

NA

Railroads-Diesel A2285002 20 Uniform 3am-11pm 65 Similar to profile 62, less

pronounced peak

Roughly the same as dieselships

NA

aFor some of the NTI emission categories, the temporal allocation factors used in EMS-95 and the CEP varied among different subcate

occurs, the subcategories are listed individually.
D-33

0 3 6 9 12 15 18 21 24

Hour of the day

0

0.01

0.020.030.040.050.060.070.08

Fraction of activity Composite Rural Urban

Interstate

Figure D-1. Composite temporal emission profile for on-road motor vehicles
D-34

0 3 6 9 12 15 18 21 24

Hour of the day

0

0.01

0.020.030.040.050.060.070.080.09

0.1

Fraction of activity

Diesel highway vehicles

0 3 6 9 12 1

Hour of the da

0

0.01

0.020.030.040.050.060.070.08

Fraction of activity

Commercial Aircr

0 3 6 9 12 15 18 21 24

Hour of the day

0

0.01

0.020.030.040.050.060.070.080.09

0.1

Fraction of activity Diesel Gasoline

Off-Highway Vehicles and Equipment

0 3 6 9 12 

Hour of the da

0.020.030.040.050.060.07

Fraction of activity Railroa

Marine vessels

Railroads and marine 

Figure D-2. Temporal profiles for diesel highway vehicles and non-road engines
D-35

D.8 How We Assigned Spatial Surrogates for Non-point and Mobile Source Categories

This section discusses how we selected spatial surrogates. We selected from the list of available

surrogates presented in Chapter 9, Section 1.1 and again in Table D-19. We discuss the

availability of surrogate data in Section D.11. This section discusses our selections within the

available choices. 

As discussed in Chapters 9 and 11, EMS-HAP uses four files for spatial surrogate assignment. In

addition to the three cross-reference files, scc2ams.txt, sic2ams.txt and mact2scc.txt, EMS-HAP

uses a file named surrxref.text, which links AMS codes to surrogate assignments. For mobile

sources, this is the only file used to assign surrogates. For non-point sources, surrxref.txt is used

only when a surrogate was not already assigned by MACT, SIC, or SCC codes. (AMS is at the

bottom of the assignment hierarchy for non-point sources.)

To select spatial surrogates for the various emission categories in the non-point source

component of the 1996 NTI, we drew on spatial surrogate assignments used in previous

modeling efforts. In particular, we reviewed the assignments used in the CEP and in the EMS-95

emission modeling system. The assignments used in CEP are generally the same as those used in

the Emission Processing System (EPS) for the Urban Airshed Model (UAM-V). EMS-95 is also

used with UAM-V, and has been used extensively in regional ozone modeling. We also

examined the development of the non-point source estimates in the 1996 NTI. Where they

included county-level estimates allocated from national and state level estimates, we examined

the methodology used to allocate to the county level. In addition, we drew upon our own

judgement.

For mobile source emissions categories, we obtained recommendations on spatial allocation from

EPA’s Office of Transportation and Air Quality (OTAQ). 

Table D-15 compares the spatial surrogates used in EMS-HAP, the CEP, and EMS-95 for some

of the non-point source categories in the NTI. Table D-16 shows the surrogates we chose for all

of the non-point sources in the 1996 NTI, and the code by which they were matched to

surrogates. Table D-17 shows the surrogates we chose for the sources in the 1996 diesel PM

inventory. Table D-18 compares spatial surrogates used in EMS-HAP, the CEP, and EMS-95 for

onroad and nonroad mobile source categories in the 1996 NTI.
D-36

Table D-15. Spatial Allocation of Some Non-point Source Categories in EMS-HAP as Compared to Othe

NTI Non-point Source Category AMS code EMS-95 Spatial Profile CEP Spatial Profile 

Code Description Code Description 

Institutional/Commercial Heating: Distillate Oil Combustion 21-03-004 8 Population 2 Commercial land Institutional/Commercial Heating:: Residual Oil Combustion 21-03-005 8 Population 2 Commercial land Institutional/Commercial Heating:: Natural Gas Combustion 21-03-006 8 Population 2 Commercial land Residential Heating: Anthracite Coal 21-04-001 4 Housing 20 Population Residential Heating: Bituminous and Lignite Coal 21-04-002 4 Housing 20 Population Residential Heating: Distillate Oil 21-04-004 4 Housing 20 Population Residential Heating: Natural Gas 21-04-006 4 Housing 20 Population Residential Heating: Wood/Wood Residue 21-04-008 8 Population 20 Population Surface Coatings: Architectural 24-01-001 8 Population 20 Population Surface Coatings: Traffic Markings 24-01-008 8 Population 3 Industrial land Industrial Maintenance Coatings 24-01-100 8 Population 3 Industrial land Dry Cleaning (Petroleum Solvent) 24-20-000 8 Population 3 Industrial land Asphalt Paving: Cutback Asphalt 24-61-021 8 Population 22 All roadways Consumer Products Usage 24-60-000 8 Population 20 Population Aviation Gasoline Distribution: Stage I & II 25-61-000 8 Population 22 Roadway miles Gasoline Distribution Stage II 25-01-060 na na na na Open Burning: Scrap Tires 28-30-000 5 Inverse housing 19 Inverse population

density

Landfills, all types 26-20-000 5 Inverse housing or

Population

19 Inverse population

density

Structure Fires 28-10-030 4 Housing 20 Population Hospital Sterilizers 28-50-000 8 Population na na Human Cremation na na na na na Animal Cremation na na na na na Food and Agricultural Products: Cotton Ginning na na na na na na = not available
D-37

Table D-16. Surrogates Used for Spatial Allocation of the 1996 NTI Non-point Source Inv

Surrogate

name 

(and code) Definition Emissions inventory categories

Population (20) U.S. Census category: 1990 residential population Business Services (SIC), Consumer Products Usage (AMS), Fuel Use (AMS), Grocery Stores (

Breakage (AMS), Paper Hanging (SIC), Perchloroethylene Dry Cleaning (AMS), Residential H(AMS), Surface Coatings: Architectural (AMS), Swimming Pools (AMS), Water Supply (SIC

Residential land(1)

USGS land use categories: Residential, plus onethird of mixed urban and built-up land plus onethird of other urban and built-up land Residential Open Burning (AMS)

Inverse populationdensity (18)

Inverse of: census tract population (category 20)divided by census tract area. Tracts with zeropopulation assigned a SAF of zero.

Construction (AMS)

Inverse populationdensity (19)

Inverse of: census tract population (category 20)divided by census tract area. Tracts with zeropopulation assigned tract population of one.

Air and Water Resource and Solid Waste Mgmt. (SIC), Correctional Institutions (SIC), Crude (SIC), Geothermal Power (SCC), Hazardous TSDF (SCC), Hazardous Waste Incineration (SCCHeating: POTW Gas (AMS), Landfills (excluding Gas Flares) (AMS), Medical Waste Incinera(AMS), Municipal Waste Combustors (MACT), Oil and Natural Gas Production (MACT), OpPublicly Owned Treatment Works (POTWs) (AMS), Refuse Systems (SIC), Sewerage Systems Technology (SIC), Treatment, Storage, Disposal Facilities (AMS),

Roadway miles(22)

Total miles of all roadway types in each censustract, as reported in TIGER/Line

Asphalt Paving: Cutback and Emulsified (AMS), Motor Vehicle Fires (AMS), Surface Coating

Farm land (7) USGS land use category: cropland and pasture Food and Agricultural Products: Cotton Gin (SCC)Farmland plusorchard land (29)

USGS land use categories: cropland and pasture,plus orchards, groves, vineyards, nurseries, andornamental horticultural areas

Agricultural Field Burning: Open, propane, (AMS), Agricultural Production (AMS), Paved RoApplication (AMS), Soil Dust (AMS), Unpaved Road Dust (AMS)

Forest land (13) USGS land use categories: deciduous forest plus

evergreen forest plus mixed forest land

Open Burning: Forest and Wildfires (AMS), Open Burning: Prescribed Burnings (AMS)

Utility land (4) USGS land use category: transportation,

communications, and utilities

Aviation Gas Distribution (AMS)

Commercial landplus industrialland (6)

Sum of commercial land and industrial land, asdefined below

Blankbooks and Looseleaf Binders (SIC), Book Printing (SIC), Bookbinding And Related Wo(AMS), Commercial Printing (SIC), Commercial Sterilization Facilities (MACT), Graphic ArtCleaners (SCC), Jewelers' Materials & Lapidary Work (SIC), Non-halogenated solvent cleaninOperations (SCC), Platemaking Services (SIC), Printing/Publishing (Surface Coating) (SCC), Internal Combustion Engines - D (MACT)

Commercial land(2)

USGS land use categories: Commercial andservices, plus one-half of industrial andcommercial complexes, plus one-third of mixedurban and built-up land plus one-third of otherurban and built-up land

Animal Cremation (SCC), Autobody Refinishing Paint Application (AMS), Commercial PhysiCommercial: Asphalt Roofing (AMS), Dental Equipmient and Supplies (SIC), Dental PreparatCleaning (Petroleum Solvent) (SCC), Engineering Services (SIC), Gas Dispensing (MACT), G(MACT), Gasoline Distribution Stage II (AMS), Gasoline Trucks in Transit (SIC), General LabHospital Sterilizers (AMS), Human Cremation (SCC), Institutional/Commercial Heating (AMSNoncommercial Research Organizations (SIC), Top & Body Repair & Paint Shops (SIC)
Surrogate

name 

(and code) Definition Emissions inventory categories

D-38

Industrial land (3) USGS land use categories: industrial, plus onehalf of industrial and commercial complexes, plus

one-third of mixed urban and built-up land, plusone-third of other urban and built-up land

Adhesives and Sealants (SIC), Aerospace Industries (AMS), Agricultural Chemicals and PesticCompressors (SIC), Alkalies And Chlorine (SIC), Aluminum (SIC), Analytical Instruments (SIAnd Oils (SIC), Apparel and Accessories (SIC), Appliances & Heat Equipment Coating (SIC), Asbestos Products Mfg. (SIC), Asphalt Concrete Mfg. (SCC), Asphalt Roofing Mfg. (SCC), A(SIC), Automotive and Apparel Trimmings (SIC), Automotive stampings (SIC), Ball and RolleSugar (SIC), Biological Products (SIC), Blowers and Fans (SIC), Boat Building and Repairing Nuts, Rivets and Washers (SIC), Bottled and Canned Soft Drinks (SIC), Brass, Bronze, CoppeBrick and Structural Clay Tile (SIC), Brooms and Brushes (SIC), Building Paper and Building Caskets (SIC), Cane Sugar Refining (SIC), Canned Fruits and Vegetables (SIC), Carbon Black Products (SIC), Carburetors, Pistons, Rings and Valves Mfg. (SIC), Cathode Ray Television PCement, Hydraulic (SIC), Ceramic Wall and Floor Tile Mfg. (SIC), Cereal Breakfast Foods (SIProcessed (SIC), Chemical Preparations (SIC), Chemicals and Allied Products (SIC), ChocolatChromium Metal Plating (AMS), Cigarettes (SIC), Clay Refractories (not subject to Refracto (Shapes (SIC), Commercial Laundry Equipment (SIC), Commercial Lighting Fixtures (SIC), Co(SIC), Concrete, Gypsum, And Plaster Products (SIC), Condensed and Evaporated milk (SIC), (SIC), Conveyors and Conveying Equipment Mfg. (SIC), Copper Foundries (SIC), Copper RolCultured Marble Mfg. (AMS), Custom Compound Purchased Resins (SIC), Cutlery (SIC), Cut Cutlery (SIC), Cyclic Crude and Intermediate Production (SIC), Dehydrated Fruits, VegetablesSubstances (SIC), Distilled and Blended Liquors Production (SIC), Drapery Hardware and Bli

Fats and Oils (SIC), Electric Lamps (SIC), Electrical Equipment and Supplies (SIC), Electrical Electrical Industrial Apparatus (SIC), Cyanide Chemicals Production (AMS), Dehydrated FruiDiagnostic Substances (SIC), Distilled and Blended Liquors Production (SIC), Dog and Cat FoBlinds and Shades (SIC), Drum and Barrel Reclamation (AMS), Edible Fats and Oils (SIC), EElectromedical Equipment Mfg. (SIC), Electrometallurgical Products Mfg. (SIC), Electronic & (SIC), Elevators and Moving Stairways (SIC), Engine Electric Equipment (SIC), EnvironmentExplosives & Blasting Agents (SIC), Extraction Solvent (AMS), Fabricated Metal Products MFittings (SIC), Fabricated Plate Work (Boiler Shops) (SIC), Fabricated Rubber Products (SIC), (SIC), Farm Machinery and Equipment Mfg. (SIC), Fasteners, Buttons, Needles, and Pins (SICFiber Cans, Drums, and Similar Products (SIC), Flat Glass (SIC), Flavoring Extracts and SyrupPolyurethane Foam Fabrication (AMS), Flour and Other Grain Mill Products (SIC), Fluid Met
Surrogate

name 

(and code) Definition Emissions inventory categories

D-39

Industrial land (3) USGS land use categories: industrial, plus onehalf of industrial and commercial complexes, plus

one-third of mixed urban and built-up land, plusone-third of other urban and built-up land

Fluid Power Pumps and Motors (SIC), Fluorescent Lamp Recycling (SCC), Food Preparations Machinery Mfg. (SIC), Footwear Cut Stock (SIC), Friction Products (MACT), Frozen SpecialtJuices and Vegetables (SIC), Fumed Silica Production (SCC), Furniture and Fixtures Mfg. (SICDevices Mfg. (SIC), General Industrial Machinery Mfg. (SIC), Glass Containers (SIC), Gray anGum and Wood Chemical Mfg. (SIC), Gypsum Products (SIC), Hand and Edge Tools Mfg. (SElectroplating (AMS), Hardware Mfg. (SIC), Hardwood (SIC), Hats, Caps, And Millinery (SICElectric (SIC), Hoists, Cranes, and Monorails (SIC), Hose and Belting and Gaskets and Packin(SIC), Household Furniture (SIC), Hydrochloric Acid Production (AMS), Hydrogen Fluoride PBoilers (AMS), Industrial Gases Mfg. (SIC), Industrial Inorganic Chemicals (SIC), Industrial MOrganic Chemicals Mfg. (SIC), Industrial Sand (SIC), Inorganic Pigments Mfg. (SIC), Instrum(SIC), Internal Combustion Engine Mfg. (SIC), Iron and Steel (SIC), Lawn and Garden EquipmGoods Mfg. (SIC), Leather Tanning and Finishing (not subject (SIC), Lighting Equipment (SICOils and Greases (SIC), Macaroni And Spaghetti (SIC), Machine Tools, Metal Forming Types Recording Media Mfg. (SIC), Malleable Iron Foundries (SIC), Malt Beverages (SIC), Mfg. IndCargo Handling (SIC), Marking Devices (SIC), Measuring and Controlling Devices (SIC), MeMechanical Rubber Goods Mfg. (SIC), Medical, Dental, and Hospital Equipment, S (SIC), Me(SIC), Men's Footwear, Except Athletic (SIC), Men's and Boys' Shirts (SIC), Metal Barrels, DrMetal Doors, Sash, and Trim (SIC), Metal Forgings and Stampings (SIC), Metal Heat Treating Furniture (SIC), Metal Sanitary Ware Mfg. (SIC), Metal Stampings Mfg. (SIC), Metal Valves Metal Cans (Surface Coating) (AMS), Metal coating and allied services (3479) (SIC), MetalwoMillwork (SIC), Mineral Wool (SIC), Mineral Wool Mfg. (SCC), Minerals, Ground or Treated Machinery Mfg. (SIC), Misc. Fabricated Metal Products (SIC), Misc. Foods and Kindred Prod(SIC), Misc. Mfg. Coating (SIC), Misc. Metal Work (SIC), Misc. Organic Chemical Processes (SIC), Misc. Primary Metal Products (SIC), Mobile Homes (SIC), Motor and Generators Mfg. Transmissions and Storage (AMS), Nitrogenous Fertilizers (SIC), Nonclay Refractories (SIC), Devices (SIC), Nonferrous Metals (SIC) Nonmetallic Mineral Products Mfg. (SIC), Office Furand Gas Field Machinery Mfg. (SIC), Oil and Gas Support (SCC), On-Site Waste Incineration (SIC), Optical Instruments and Lenses (SIC), Ordnance and Accessories Mfg. (SIC), Organic FPaints, Coatings, and Adhesives (SIC), Paper Coating (AMS), Paper Industries Machinery (SICOther Webs (Surface Coating) (AMS), Partitions and Fixtures, Except Wood (SIC), Pens and MPetroleum Refining (SIC), Pharmaceutical Preparations Manufacturing (SIC), Pharmaceuticals Fertilizers (SIC), Photographic Equipment and Supplies Manufa (SIC), Pickles, Sauces, And SParts and Products (Surface Coatin (AMS), Plastics Products (SIC), Plumbing Fixture Fittings Plywood/Particle Board Manufacturing (SCC), Polishes and Sanitation Goods Manufacturin (SProduction (AMS), Polyvinyl Chloride and Copolymers (SCC), Porcelain Electrical Supplies ((SIC), Poultry Slaughtering and Processing (SIC), Power Driven Handtools (SIC), Power TransPre-recorded Records and Tapes (SIC), Prefabricated Metal Buildings (SIC), Prefabricated Wo(SIC), Prepared Feeds Manufacturing (SIC), Prepared Flour Mixes And Doughs (SIC), Pressed (SIC), Primary Aluminum Production (SCC), Primary Batteries (SIC), Primary Metal Products Nonferrous Metals Production (SIC), Printing Ink (SIC), Printing, Coating, and Dyeing of FabMachinery Manufacturing (SIC), Process Control Instruments (SIC), Products of Purchased Gl
Surrogate

name 

(and code) Definition Emissions inventory categories

D-40

Industrial land (3) USGS land use categories: industrial, plus onehalf of industrial and commercial complexes, plus

one-third of mixed urban and built-up land, plusone-third of other urban and built-up land

Public Building and Related Furniture (SIC), Pulp mills (2611) (SIC), Pumps and Pumping EqRadio and Television Communications Equip. (SIC), Railroad Equipment Manufacturing (SICReconstituted Wood Products (SIC), Refractories Manufacturing (MACT), Refrigeration and HReinforced Plastic Composites Production (AMS), Relays and Industrial Controls (SIC), ResidRice Milling (SIC), Rolling Mill Machinery (SIC), Rubber and Plastic Footwear (SIC), Rubber (SIC),Sanitary Food Containers (SIC), Sausages And Other Prepared Meats (SIC), Saw Blades and Planing Mills, general (SIC), Scales and Balances, excluding Laboratory (SIC), Screw MaSearch and Navigation Equipment (SIC), Secondary Lead Smelting (SCC), Secondary NonferrSemiconductors and Related Devices (SIC), Service Industry Machinery (SIC), Sheet Metal WRepairing (SIC), Silverware and Plated Ware (SIC), Small Arms (SIC), Small Arms AmmunitiToilet Goods (SIC), Softwood Drying Kilns (AMS), Softwood Veneer and Plywood (SIC), Soi(AMS), Special Dies, Tools, Jigs and Fixtures (SIC), Special Industry Machinery Mfg. (SIC), SGears (SIC), Spills, Dumping, MSW Handling (AMS), Stationary Turbines (MACT), Steel PicPipe and Tubes Mfg. (SIC), Steel Springs, Except Wire (SIC), Steel Wire and Related Products Mfg. (SIC), Structural Wood Members (SIC), Surface Active Agents Mfg. (SIC), Surface Coat(AMS), Surgical Appliances and Supplies (SIC), Switchgear and Switchboard Apparatus (SICTaconite Iron Ore Processing (SCC), Tank Transit (AMS), Tanks and Tank Components Mfg. Apparatus (SIC), Textile Machinery (SIC), Textile Products (AMS), Tire Cord and Fabric (SICToilet Preparations Mfg. (SIC), Toys and Sporting Goods (SIC), Transformers, Except ElectronCampers Mfg. (SIC), Turbines And Turbine Generator Sets (SIC), Typewriters Computer StorPlastics (SIC), Upholstered Household Furniture (SIC), Valves And Pipe Fittings (SIC), Vitreo(SIC), Vitreous Plumbing Fixtures (SIC), Waste Disposal: Open Burning (AMS), Welding App(SIC), Wire Springs (SIC), Women's Footwear, Except Athletic (SIC), Women's, Misses', and Preserving (SIC), Wood Products (SIC), Woodworking Machinery (SIC), X-ray Apparatus An
D-41

Table D-17. Surrogates Used for Spatial Allocation of the 1996 Diesel PM Inventory

Surrogate name 

(and code) Definition Diesel PM inventory source 

Industrial land (3) USGS land use categories: industrial, plus one-half of industrial and

commercial complexes, plus one-third of mixed urban and built-upland, plus one-third of other urban and built-up land

Industrial Equipment

Commercial land plus industrialland (6)

Sum of commercial land and industrial land, as defined below Lawn and Garden Equipment, Commercial Equipment

Forest land (13) USGS land use categories: deciduous forest plus evergreen forest

plus mixed forest land

Logging Equipment

Water (15) US Census category: water area Commercial Marine Vessels, Pleasure CraftMining and quarry land (17) USGS land use categories: strip mines, quarries, and gravel pits Underground Mining EquipmentInverse population density (18) Inverse of: census tract population (category 20) divided by census

tract area. Tracts with zero population assigned a SAF of zero.

Construction and Mining Equipment, Airport Ground S

Railway miles (21) Total railway miles, as reported in TIGER/Line Railroads, Railway MaintenanceRoadway miles (22) Total miles of all roadway types in each census tract, as reported in

TIGER/Line

HDDV Rural Total: Interstate, Other Principal Arterial, Collector, Minor Collector, Local; HDDV Urban Total: Expressways, Other Principal Arterial, Minor Arterial, C

25% Population & 75% roadwaymiles (25)

Surrogate based on population fraction and roadway mile fractions,respectively weighted by 25% and 75%, for each of four roadwaytypes

LDDT & LDDV Rural Total: Interstate, Other PrincipaMajor Collector, Minor Collector, Local; LDDT & LDDOther Freeways and Expressways, Other Principal ArterLocal

Tract area (26) The area of census tracts (including land and water) Recreational EquipmentUrban – Inverse populationdensityRural – farmland (27)

Inverse population density (18) for urban counties; farmland (7) forrural counties

All Off-highway Diesel

Sum of farmland and orchardland (29)

Sum of farmland and orchard land, as defined above Agricultural Equipment
D-42

Table D-18. Spatial Allocation of Mobile Source Categories in EMS-HAP as Compared to Other Em

NTI MobileSource Category

Subcategories,where applicablea

AMS code

EMS-95 Spatial Profile CEP Spatial Profile 

Code Description Code Description

Light Duty Gasoline Vehicles (LDGV) A2201001 not

appl.

Roadway links(vehicle-milestraveled)

30 1⁄2 Roadway miles + 1⁄2 Population (3/4

Pop

Light Duty Gasoline Trucks (LDGT) A2201060 (3/4

Pop

Heavy Duty Gasoline Vehicles(HDGV)

A2201070 (3/4

Pop

Motorcycles (MC) A2201080 (3/4

Pop

Light Duty Diesel Vehicles (LDDV) A2230001 (3/4

Pop

Light Duty Diesel Trucks (LDDT) A2230060 (3/4

Pop

Heavy Duty Diesel Vehicles (HDDV) A2230070 RoNonroad: Gasoline,2-stroke

All A2260000 8 Population 19 Inverse population density cenRecreational A2260001 8 Population 19 Inverse population densityConstruction A2260002 8 Population 18 Inverse population densityIndustrial A2260003 8 Population 3 Industrial landLawn & garden A2260004 4 Housing 1 Residential landLight commercial A2260006 8 Population 2 Commercial landLogging A2260007 6 1/Population 13 Forest landAirport service A2260008 2 Airports 19 Inverse population density
NTI Mobile

Source Category

Subcategories,where applicablea

AMS code

EMS-95 Spatial Profile CEP Spatial Profile 

Code Description Code Description

D-43

All Off-highwayVehicle: Gasoline,4-Stroke

All A2265000 8 Population 19 Inverse population density Rur

Urb

Recreational A2265001 8 Population 19 Inverse population densityConstruction A2265002 8 Population 18 Inverse population densityIndustrial A2265003 8 Population 3 Industrial landLawn & garden A2265004 4 Housing 1 Residential landFarm equipment A2265005 8 Population 7 Crop landLight commercial A2265006 8 Population 2 Commercial landLogging A2265007 6 1/Population 13 Forest landAirport service A2265008 2 Airports 19 Inverse population density

All Off-highwayVehicle: Diesel

All A2270000 8 Population 19 Inverse population density Rur

useUrbpop

Recreational A2270001 8 Population 19 Inverse population densityConstruction A2270002 8 Population 18 Inverse population densityIndustrial A2270003 8 Population 3 Industrial landLawn & garden A2270004 4 Housing 1 Residential landFarm equipment A2270005 8 Population 7 Crop landLight commercial A2270006 8 Population 2 Commercial landLogging A2270007 6 1/Population 13 Forest landAirport service A2270008 2 Airports 19 Inverse population density

All Aircraft Types and Operations A2275000 2 Airports 18 Inverse population density trea

loceac

Marine Vessels, Commercial A2280000 9 Ports 15 Water WaRailroads-Diesel A2285002 10 Railroads 21 Railway miles Rai

aFor some of the NTI emission categories, the spatial allocation surrogates used in EMS-95 and the CEP varied among different subcat

occurs, the subcategories are listed individually.
D-44

D.9 How We Developed the Surrogate Assignment/ Temporal Allocation Cross-Reference

Files (scc2ams.txt, sic2ams.txt, and mact2scc.txt)

EMS-HAP uses the above-mentioned cross-reference files for assigning spatial surrogates to

non-point sources and for assigning temporal profiles to both point and non-point sources. They

are not used for mobile source categories because these categories are indexed only by AMS

codes which can be linked directly to spatial surrogate and temporal profile data. EMS-HAP

uses these cross-reference files to assign temporal profiles for point source records when they

don’t have a standard 8-digit SCC, but rather, have an alternative code such as a shortened SCC,

SIC or MACT (see Section 5.1.1 for details). They are also used to assign temporal profiles (see

Section 9.1.3) and spatial surrogates (see Section 8.1.2) for non-point sources when emissions

are indexed by MACT, SIC or SCC codes.

The cross-reference file named scc2ams.txt links generic 1-digit, 3-digit, and 6-digit SCCs to the

8-digit SCC and 10-digit AMS codes used in the TAF file. It also contains a spatial surrogate

assignment which is used to assign surrogates for non-point sources not having a MACT or SIC

code (SCC follows the MACT and SIC codes in the hierarchy of spatial surrogate assignments). 

To produce this file, we reviewed the definition of the shortened SCC, as given in EPA’s Factor

Information Retrieval (FIRE) data base.17 For non-point sources, we also reviewed the definition

of the emission category in the documentation for the 1996 NTI. We then selected the most

appropriate 8-digit SCC to represent the category using SCC definitions from FIRE. We also

used the SCC definitions to select the most appropriate spatial surrogate to represent the category

(see Section D.8).

The cross-reference file named sic2ams.txt links SIC codes to SCC and AMS codes

(sic2ams.txt). It also contains a spatial surrogate assignment which is used to assign surrogates

for non-point sources with an SIC code but not a MACT code (SIC follows the MACT code in

the hierarchy of spatial surrogate assignments). To produce this file, we drew on detailed SIC

definitions published by the Office of Management and Budget.18 We also used the SIC

definition to select the most appropriate spatial surrogate to represent the category (see Section

D.8).

The cross-reference file named mact2scc.txt links MACT codes to SCC and AMS codes

(mact2scc.txt). It also contains a spatial surrogate assignment which is used to assign surrogates

for non-point sources having this code. We produced this file by reviewing MACT category

definitions from the EPA source category listing document. The MACT category definitions17

were compared with SCC and AMS category definitions from FIRE. We also used the MACT

category definition to select the most appropriate spatial allocation surrogate (see Section D.8).
D-45

D.10 How We Developed the Spatial Allocation Factors 

The spatial allocation factors (SAFs) in EMS-HAP for allocating county level emissions to the

census tract were primarily obtained from the developers of the CEP. They computed SAFs from

tract-level land use and population data. We denote land use and population as “spatial

surrogates.” We assume that the spatial distribution of county-level emissions categories within

a county’s census tracts is proportional to the spatial distribution of these land use and population

surrogates within the county’s census tracts. The developers of the CEP used population data

from the 1990 U.S. census (see www.census.gov),36 roadway data from the 1990 Topologically

Integrated Geographic Encoding and Referencing (TIGER®/Line) files37 and land use data

compiled by the United States Geological Survey between the middle of the 1970's through the

middle of the 1980's.38 They calculated SAFs from this data using the following equation:

SAFcounty, i, j = Ai, j / Acounty, j (eq. D-3)

where

SAFcounty, i, j = the spatial allocation factor for surrogate j and census tract i within

a county. (For any spatial surrogate, the values for all of the tracts

in a given county will sum to 1.0.)

Ai, j = land use, population, or other activity data for surrogate j in tract i 

Acounty, j = total land use, population, or other activity data for surrogate j in

the county that contains tract i

Table D-19 shows the surrogates and corresponding sets of SAFs we developed for EMS-HAP. 

Note that we did not use all of the surrogates listed in the table for preparing the 1996 ASPENinput files. We did not use SAF8, SAF9, SAF12, SAF14, SAF17 or SAF24. The assignment of

surrogates to non-point and mobile source categories in the 1996 NTI is discussed in Section D.8. 

As you can see, most of the SAFs developed for EMS-HAP came directly from the CEP. We

did, however, make some changes to their SAFs. These changes are discussed below the table.
D-46

Table D-19. Spatial Allocation Factors Developed for EMS-HAP

Code

for set

of SAFs

Surrogate Definition Origin of

Data

How we developed the

set of SAFs

SAF1 Residential

land

USGS land use categories: Residential, plus one-third of

mixed urban and built-up land plus one-third of other

urban and built-up land 

mid-70's

to 80's

from CEPa,b

SAF2 Commercial

land

USGS land use categories: Commercial and services, plus

one-half of industrial and commercial complexes, plus

one-third of mixed urban and built-up land plus one-third

of other urban and built-up land

mid-70's

to 80's

from CEPa,b

SAF3 Industrial

land

USGS land use categories: industrial, plus one-half of

industrial and commercial complexes, plus one-third of

mixed urban and built-up land, plus one-third of other

urban and built-up land

mid-70's

to 80's

from CEPa,b

SAF4 Utility land USGS land use category: “transportation, communications,

and utilities”

mid-70's

to 80's

from CEPa,b

SAF6 Sum of

commercial

land and

industrial

land

Sum of commercial land and industrial land, as defined

above

mid-70's

to 80's

land use data from

developers of CEPa,b,

SAF computed from

equation D-3

SAF7 Farm land USGS land use category: “cropland and pasture” mid-70's

to 80's

from CEPa,b

SAF8 Orchard land USGS land use category: “orchards, groves, vineyards,

nurseries, and ornamental horticultural areas”

mid-70's

to 80's

from CEPa,b

SAF9 Confined

feeding

USGS land use category "confined feeding" mid-70's

to 80's

from CEPa,b

SAF10 Farm land &

confined

feeding

USGS land use categories "cropland and pasture" plus

"confined feeding"

mid-70's

to 80's

from CEPa,b

SAF12 Rangeland USGS land use categories: “herbaceous rangeland” plus

“scrub and brush” plus “mixed rangeland” 

mid-70's

to 80's

from CEPa,b

SAF13 Forest land USGS land use categories: “deciduous forest” plus

“evergreen forest” plus “mixed forest land” 

mid-70's

to 80's

from CEPa,b

SAF14 Rangeland &

forest land

Sum of rangeland and forest land, as defined above mid-70's

to 80's

from CEPa,b

SAF15 Water US Census category: water area 1990 from CEPa,b

SAF17 Mining &

quarry land

USGS land use category: “strip mines, quarries, and gravel

pits”

mid-70's

to 80's

from CEPa,b

SAF18 Inverse

population

density

Inverse of: census tract population (defined above) divided

by census tract area. Tracts with zero population assigned

spatial factors of zero.

1990 from CEPa,b
Code

for set

of SAFs

Surrogate Definition Origin of

Data

How we developed the

set of SAFs

D-47

SAF19 Inverse

population

density

Inverse of: census tract population (as defined above)

divided by census tract land area. Tracts with zero

population assigned tract population of one.

1990 population and land

area data from CEPb

,

SAF computed from D3 (see item 5, below)

SAF20 Population U.S. Census category: 1990 residential population 1990 from CEPa,b

SAF21 Railway

miles

Total railway miles, as reported in TIGER/Line 1993 from CEPa,b

SAF22 Roadway

miles

Total miles of all roadway types in each census tract, as

reported in TIGER/Line 

1993 from CEPa,b

SAF24 50%

Population &

50% roadway

miles

Surrogate based equally on population fraction and on

roadway mile fractions for each of four roadway types

1990-93 0.5*SAF20 +

0.5*SAF22

SAF25 25%

Population &

75% roadway

miles

Surrogate based on population fraction and roadway mile

fractions, respectively weighted by 25% and 75%, for each

of four roadway types

1990-93 0.25*SAF20 +

0.75*SAF22

SAF26 Tract area The area of census tracts (including land and water) 1990 tract areas computed

from CEP tract radiib

data SAF computed

from D-3

SAF27 Urban –

Inverse

population

density

Rural –

farmland

Inverse population density (18) for urbanc

 counties;

farmland (7) for ruralc

 counties

1990,

mid-70's

to 80's

SAF 18 from CEP,

SAF 7 from CEP,

urban/rural county

designations from 1990

and 1996 census data

SAF28 Urban –

population

Rural – tract

area

Population (20) for urbanc

 counties; tract area for (26) 

ruralc

 counties

1990 SAF 20 from CEP,

SAF 26 from CEP,

urban/rural county

designations from 1990

and 1996 census data

SAF29 Sum of

farmland and

orchard land

Sum of farmland and orchard land, as defined above mid-70's

to 80's

land use data from

developers of CEPa,b,

SAF computed from

equation D-3 a

 except that we made changes to SAFs in Halifax and South Boston, Virginia counties, see item 4, below

b

 except for census tracts in the Virgin Islands and Puerto Rico (these areas were not modeled in the CEP); see

item 3 below

c

 county-level urban rural designation was made using 1990 and 1996 census tract data20

The following list discusses the additional surrogates (and resulting SAFs) we added and the

changes we made to the those SAFs used in the CEP. 
D-48

1. We added spatial allocation factors based on a tract area spatial surrogate (SAF26). 

We computed the tract area for each census tract based on the tract radius. These radii were

originally computed from tract area values supplied by the developers of the CEP. We used

equation D-3, using tract area as the activity. 

We developed the tract area SAFs to implement the recommendations of the EPA’s Office of

Transportation and Air Quality(OTAQ).39,40 They suggested (as shown in Table D-18) we use

this surrogate for allocating the mobile source category of nonroad gasoline, 2-stroke engines and

nonroad gasoline 4-stroke engines (rural counties only).

2. We added “composite” spatial allocation factors which use more than type of land use or

population data.

SAF6, SAF10, SAF24, SAF25, SAF27 and SAF28 combine more than one type of data. Of

these SAFs, we developed SAF6, SAF24, SAF25, SAF27 and SAF28. SAF6, for example,

combines commercial and industrial land data. SAF27 uses inverse population density data for

urban counties and farmland for rural counties. We used 1990 and 1996 census data to establish

the county-level urban/rural designation.20

We developed the SAFs for the composite surrogates because we felt the composite surrogates

provided a better approach for allocating some of our non-point and mobile source categories;

and, the data was readily available. For example, we felt that halogenated solvents were used at

both industrial and commercial facilities. To develop a set of industrial and commercial land

SAFs (SAF6) we added industrial and commercial land data for each tract, and used equation D3. The EPA’s OTAQ recommended two composite surrogates (see SAF27 and SAF28) that use

different types of data depending on whether the tract is an urban or rural county.39,40 They

recommended (as shown in Table D-18) SAF27 for nonroad diesel engines and SAF28 for

nonroad gasoline 4-stroke engines.

3. We added Puerto Rico and Virgin Islands spatial allocation factors since these areas were not

modeled in the CEP. 

We developed Puerto Rico and Virgin Islands land use and population data by processing

geographic information system (GIS) coverages obtained from the Region 2 web site at

www.epa.gov/region2/gis/atlas. Table D-20 lists the data we obtained from the website. We

used equation D-3 for developing SAFs from the land use and population data. 

Some land use categories we used for the continental U.S. (forest land, for example) were not

available for these islands. Therefore, we derived spatial allocation factors from the most

closely-matched available data. Table D-21 shows the SAFs we used in this situation.
D-49

Table D-20. Surrogate Data Available for Puerto Rico and the Virgin Islands

Puerto Rico Virgin Islands

Population Population

Roadway miles Roadway miles

Tract area Tract area

Commercial land

Farm land

Industrial land

Residential land

Railroad miles

Water

Table D-21. Methodology for Puerto Rico/Virgin Islands Spatial Allocation Factors

When the continental U.S. used

.....(surrogate code in parenthesis)

Puerto Rico used..... Virgin Island used ....

residential land (1) residential land population 

commercial land (2) commercial land population 

industrial land (3) industrial land population 

utility land (4) inverse population density inverse population density

commercial and industrial land (6) commercial and industrial land population 

farm land (7) farm land tract area 

water (15) water population 

urban counties: inverse population

density

rural counties: farmland (27)

urban counties: inverse

population density

rural counties: farmland 

urban counties: inverse

population density

rural counties: tract area

farm land and orchard land (29) farmland tract area

In addition, For Puerto Rico and the Virgin Islands, surrogates 18 and 19 used tract area (based

on the radius of the tract) rather than land area in the calculation of inverse population density. 

The difference between the two is that land area does not include water area.
D-50

4. In 1993, the census no longer treated South Boston as a county, and therefore we had to make

adjustments to the CEP SAFs

The single tract formerly in South Boston City, Virginia was, in 1996, considered part of Halifax

county, Virginia. Because South Boston was no longer a county, there were no non-point source

or mobile source emission estimates for it from the 1996 NTI or NET inventories. In order to

make sure that EMS-HAP allocated Halifax county emissions to the South Boston tract we

needed to change the SAFs supplied to us by the CEP. The change was to associate the South

Boston tract with Halifax county. Note that this recalculation only affected Halifax county and

South Boston SAFs.

5. We changed the way zero population tracts were treated using the inverse population density

surrogate 19

As seen in Table D-18, there are two inverse population density surrogates (SAF18 and SAF19)

in EMS-HAP. They differ in how they treat zero population tracts. There are nearly 10,000 zero

population census tracts, and they vary in size. (In fact, about 300 of these have zero tract areas). 

We changed the treatment of zero population tracts only for the SAFs associated with surrogate

19. We refer to these SAFs as “SAF19.” In the former SAF19 used for the CEP, zero population

tracts were given the maximum inverse population density of all tracts in the county. Note that

this value was assigned to these zero population tracts regardless of their size.

We changed the use of the maximum inverse population density for zero population tracts

because we noticed that in some areas, particularly in Denver County, Colorado, there are a large

number of zero population tracts. For example, out of the 182 tracts in Denver County, 30

contain zero population. The use of former SAF19 results in high SAF values for these 30 tracts,

which in turn produces high emission densities for these tracts. These tracts were also located

near one another so that even though the ASPEN model does not account for the impact of these

emissions for the resident tract41, the small tracts nearby were affected.

We chose to recompute the inverse population density using a population of one person for zero

population tracts rather than assign them the maximum inverse population density. We refer to

this treatment as “new SAF19." We tested the effect of new SAF19 by choosing a particular

pollutant in which emissions are dominated by a single source category. The pollutant is diesel

PM, and the category is nonroad diesel engines. We modeled this pollutant through EMS-HAP

and ASPEN (using a draft diesel PM inventory based on the 1996 NET). We also tested a

variation of new SAF19 which we call “tract area SAF19.” For this tract area SAF19 we used

the tract area of each tract rather than the land area of each tract to calculate inverse population

density. Note that the developers of the CEP used land area for former SAF19. The difference in

the two areas is that water area is not included in land area, but it is included in tract area. We

tested tract area SAF19 for two reasons. First was to show the effect of changes in 19 on

modeling results. Second was that we actually used this tract area SAF19 for allocating those

categories matched to surrogate 19 for Puerto Rico and Virgin Islands (see item 3 in this section).
D-51

For the purposes of the test we allocated county-level diesel PM emissions from nonroad diesel

engines to the three different treatments (former, new, tract area) of SAF19. Note that this

category normally uses SAF27 (see Table D-16); we used SAF19 only for the test. We kept all

other mobile source categories allocated as in Table D-16.

Figure D-3 shows the differences in tract-level emission densities (emissions per tract area)

resulting from the two approaches. Note that the tracts with zero tract area are not included in

this figure because the emission density is infinite for these tracts. As seen in the figure, the new

SAF19 resulted in substantially lower emission densities for a large number of tracts.

We also ran the ASPEN model to see the effect on ambient concentrations. We looked at the

State mean, because this statistic is sensitive to outliers. Figure D-4 shows the results. In

Colorado, the mean concentration was reduced using new SAF19, which alleviates the concerns

mentioned earlier raised from the former SAF19.

Figure D-3. Nationwide Tract-level Emission Densities Using Three Different Treatments

of SAF19
D-52

Figure D-4. The Effect of the Three Different Treatments of SAF19 on State-level Mean Concentration
D-53

D.11 Program Options and Parameters

This section presents the options used to run EMS-HAP for the base year 1996 run. Several of

the EMS-HAP programs contain options for determining which specific functions to run and

choices of how to run them. In addition, the data quality assurance program, PtDataProc,

requires you to enter parameters for the default stack parameter assignments. This section

summarizes the options and parameters we selected for the 1996 base year ASPEN input files. 

We only present programs we ran that have options.

D.11.1 AirportProc program options

Aircraft emissions were extracted from the mobile source inventory and stored in a file separate

from the point source inventory as indicated by the setting of the program options given in Table

D-22. The allocated aircraft emissions inventory was then processed through the remaining

EMS-HAP programs independent of the rest of the point source inventory.

Table D-22. Program Options Used to Execute AirportProc

Keyword Description Value

ADD2PT 1=append records to output point source inventory file and

0=create an output file containing only allocated aircraft emission records

0

ADD2MB 1=append records to output mobile source inventory file and

0=create an output file containing only unallocated aircraft emission

records

1

D.11.2 PtDataProc program options and parameters

Location Data Quality Assurance

When the 1996 NTI and the 1996 NET speciated point source inventories were processed

through PtDataProc, point source locations were converted to latitude and longitude in decimal

degrees and all location quality checks and defaulting procedures were performed.

Quality Assurance of Stack Parameters

Missing or out-of-range stack parameters were defaulted using SCC and SIC defaults. We

defined the out-of-range boundaries for each parameter as shown in Table D-23. Any out-ofrange stack parameters that could not be defaulted by SCC or SIC defaults (i.e., if there was no

SCC or SIC code on the record, or the code did not match those in the SCC/SIC default files) 
D-54

were defaulted to the range maximum or minimum value, depending on the value of the stack

parameter. For example, a stack height greater than 381 meters was defaulted to 381 meters. 

Any missing stack parameters that could not be defaulted by SCC or SIC were defaulted to the

global default values in Table D-23. Because we did not use SCC-based defaults for aircraft

emissions, these were defaulted using the global defaults.

Table D-23. Program Options and Parameters Used for PtDataProc

Keyword Description Value

DOLOCATE 1= quality assure location data; 0 = don’t quality assure them 1

DOSTACK 1= quality assure stack parameters; 0 = don’t quality assure them. 1

SCCDEFLT SCC to default stack parameters correspondence text file prefix (def_scc.txt) 1

SICDEFLT SIC to default stack parameters correspondence text file prefix (def_sic.txt) 1

DOSETVAR 1=retain only those non-essential variables from inventory specified by the

user, based on the value of USELIST and VARLIST

0=retain all variables

1

USELIST 1= use ancillary file (keyword VARLIST) to provide additional non-essential

variables to retain in inventory 

0 = don’t retain any non-essential variables from the inventory 

1

DOWINDOW 1= remove all records with zero emissions values or records without latitude

and longitude values

0 = don’t remove records with zero emissions or without latitude and

longitude values (note that values without latitude and longitude values will

still be removed if you perform the data quality assurance of location data

function)

1

DLOWHT Minimum range value for valid stack height (in meters) 0.003

DHIHT Maximum range value for valid stack height (in meters) 381

DLOWDIA Minimum range value for valid stack diameter (in meters) 0.0762

DHIDIA Maximum range value for valid stack diameter (in meters) 15.24

DLOWVEL Minimum range value for valid stack velocity (in meters/second) 0.003

DHIVEL Maximum range value for valid stack velocity (in meters/second) 198

DLOWTEMP Minimum range value for valid stack temperatures (in Kelvin) 273

DHITTEMP Maximum range value for valid stack temperatures (in Kelvin) 1505

DFLTHT Default stack height (in meters) 10

DELTVEL Default stack exit gas velocity (in meters/second) 1

DFLTTEMP Default stack exit gas temperature (in Kelvin) 295

DEFLTDIA Default stack diameter (in meters) 1
D-55

D.11.3 PtFinal_ASPEN program options and parameters

When the 1996 NTI and the 1996 NET speciated point source inventories were processed

through PtFinal_ASPEN, ASPEN source groups were assigned by the source type only (see

Table 7-1 in Section 7.1.1). Assignments were not made by MACT category, 6-digit SCC, or

SIC. The default ASPEN source group was group 1, although no records contained a missing

source type and, therefore, the default ASPEN source group was not used. The ASPEN source

type designation (ITYPE) was set to 0. The ASPEN input emission files were created and the

data were also written to an ASCII text file. Table D-24 summarizes the program options and

parameters we specified in the PtFinal_ASPEN batch file.

Table D-24. Program Options and Parameters Used for PtFinal_ASPEN

Keyword Description Value

DOSOURCE 1= assign source group by source type 1

DOMACT 1= assign source group by MACT category code 0

DOSCC 1= assign source group by SCC code 0

DOSIC 1= assign source group by SIC code 0

DOWRITE 1= create ASPEN input emission files 1

DOASCII 1= create single ASCII text output file 1

DFLTGRP Default source group (0 through 9) 1

ITYPE Source type (0 for point sources and 3 for pseudo point sources) 0
D-56

D.11.4 AMProc program options

When the 1996 NTI and the 1996 NET speciated non-point and mobile source inventories were

processed through AMProc, the program options in Table D-25 were specified.

Table D-25. Program Options Used to Execute AMProc

Keyword Description Value

SAVEFILE 1= save large SAS®-formatted file with all emissions information on source

category level basis for each census tract 0=don’t save large SAS® file

1

GROWFLAG MACT=project emissions due to economic growth by MACT code and geographic

region only;

SIC=project emissions due to economic growth two-digit SIC and geographic

region only;

BOTH=project emissions due to economic growth both by MACT code and

geographic region and by two-digit SIC and geographic region;

NONE = does not project emissions due to economic growth

0

SICFLAG 1=use SCC to SIC cross-reference file to assign SIC where missing in inventory;

0=don’t assign SIC where missing

0

CNTLFLAG MACT=project emissions using MACT-based emission reduction information only; 

USER=project emissions using user-defined emission reduction information only; 

BOTH=projects emissions using both MACT-based and user-defined emission

reduction information

NONE=does not project emissions using emissions reductions

NONE

SPECMACT 1=Use process and/or pollutant specific MACT emission reduction information;

0=don’t use process and/or pollutant specific MACT emission reduction

information

0

REBIN 1= reassign emission groups during growth and control processing; 

0 = don’t reassign them

0

LSUBSETP 1= process only one pollutant; 0 = don’t process only one pollutant 0

SUBSETP NTI pollutant code to which to subset

LSUBSETG 1= process only one state; 0 = don’t process only one state 0

SUBSETG 2-character state postal code abbreviation of state to which to subset US

LCPTIMES 1= print component CPU times; 0 = don’t print component CPU times 1

LDBG 1= printout of diagnostic information; 0 = don’t 0

LONECELL 1= printout diagnostics for a selected single cell (tract); 0=don’t 0

ONECELL Selected single cell
D-57

D.12 Pollutants in the ASPEN-Input Files for the 1996 Base Year EMS-HAP Run

Using the methodology discussed in D.1 through D.11, we created point, non-point and mobile

source ASPEN emission files containing the pollutants listed in Table D-26 below. Pollutants in

the same reactivity class within the same point, non-point or mobile source run were written to

the same ASPEN emission file. For example, nonroad mobile source direct HAP emissions for

all fine metals (e.g., arsenic compounds, fine; beryllium compounds, fine; cadmium compounds,

fine; etc.) are contained in the file MV.ofnat.US.D050900.r2.inp, which represents reactivity

class 2.
D-58

Table D-26. List of Pollutants in ASPEN-ready input files

Pollutant SAROAD

 in EMS-HAP

Pollutant SAROAD 

in EMS-HAP

Pollutant 

acetaldehyde 43503 diesel PM, fine {for mobile sources 80400 methyl tert-butyl ethe

acetaldehyde, precursor 80100 diesel PM, coarse {for mobile sources 80401 methylene chloride acetaldehyde precursor, 80301 dioxins/chlorinated furans, lower bound 80412 nickel compounds, fiacrolein 43505 dioxins/chlorinated furans, upper bound 80245 nickel compounds, coacrylonitrile 43704 ethyl benzene 45203 polychlorinated biphearsenic compounds, fine 80112 ethylene dibromide 43837 polycylic organic maarsenic compounds, coarse 80312 ethylene dichloride 43815 7-PAH benzene 45201 ethylene oxide 43601 propionaldehyde beryllium compounds, fine 80118 formaldehyde 43502 propionaldehyde, preberyllium compounds, 80318 formaldehyde, precursor 80180 propionaldehyde, pre1,3 butadiene 43218 formaldehyde, precursor, inert 80303 propylene dichloride 1,3 butadiene, inert 80302 hexachlorobenzene 80183 quinoline cadmium compounds, fine 80124 hexane 43231 styrene cadmium compounds, 80324 hydrazine 80188 1,1,2,2-tetrachloroethcarbon tetrachloride 43804 lead compounds, fine 80193 tetrachloroethylene (pchloroform 43803 lead compounds, coarse 80393 toluene chromium compounds, 80141 manganese compounds, fine 80196 trichloroethylene chromium compounds, 80341 manganese compounds, coarse 80396 vinyl chloride coke oven emissions 80411 mercury compounds, fine 80197 xylenes 1,3-dichloropropene 80152 mercury compounds, gas 80405
D-59

REFERENCES FOR APPENDIX D

1. U.S. Environmental Protection Agency. Unified Air Toxics Website: The Pollutants. 

http://www.epa.gov/ttn/atw/pollsour.html (accessed May 2002)

2. Driver, L.; Pope, A.; Billings, R.; Wilson, D. “The 1996 National Toxics Inventory and Its

Role in Evaluating the EPA’s Progress in Reducing Hazardous Air Pollutants in Ambient

Air”, Presented at the 92nd Annual Meeting of the Air & Waste Management Association, St.

Louis, Missouri, 1999; paper 91-501.

3. “National Air Pollutant Emission Trends Procedures Document, 1900-1996,” EPA-454/R-98-

008, U.S. Environmental Protection Agency. May 1998.

4. U.S. Environmental Protection Agency. Emission Inventory Guidance.

http://www.epa.gov/ttn/chief/nti/index.html (accessed May 2002)

5. U.S. Environmental Protection Agency. Clearinghouse for Inventories and Emission

factors. Software. http://www.epa.gov/ttn/chief/software/speciate/index.html

6. Electronic Mail. From Rich Cook, U.S. Environmental Protection Agency, Office of

Transportaion and Air Quality to Madeleine Strum, U.S. Environmental Protection

Agency, Office of Air Quality Planning and Standards, September 30, 1999.

7. College of Engineering - Center for Environmental Research and Technology,

University of California. 1998. Evaluation of Factor that Affect Diesel Exhaust

Toxicity. Submitted to California Air Resources Board, Contract No. 94-312.

8. Gabele, P. 1997. Exhaust Emissions from Four-Stroke Lawn Mower Engines. J.

Air & Waste. Manage. Assoc. 47:945-952.

9. U.S. Environmental Protection Agency. Nonroad Vehicle & Emission Modeling. 

http://www.epa.gov/otaq/nonrdmdl.html (accessed May 2001)

10. U.S. Environmental Protection Agency. Integrated Urban Air Toxics Strategy PO

Data System. http://www.epa.gov/ttn/atw/urban/urbanpg.html (accessed May

2002) 
D-60

11. Rosenbaum, A.S.; Ligocki, M.P.; Wei, Y.H. “Modeling Cumulative Outdoor

Concentrations of Hazardous Air Pollutants, Volume 1: Text”; SYSAPP-99-96-

33r2, Prepared for the U.S. Environmental Protection Agency, Office of Policy,

Planning, and Evaluation, by Systems Applications International, Inc., San

Rafael, CA. 1998, p. 2-8.

12. FAA 5010 Database. g.c.r. and associates. http://www.gcr1.com/ (accessed

1999).

13. Statistical Handbook of Aviation, 1996. Federal Aviation Administration, U.S.

Department of Transportation, Washington, DC.

14. Rosenbaum, A.S.; Ligocki, M.P.; Wei, Y.H. “Modeling Cumulative Outdoor

Concentrations of Hazardous Air Pollutants, Volume 1: Text”; SYSAPP-99-

96/33r2, Prepared for U.S. Environmental Protection Agency, Office of Policy,

Planning and Evaluation, by Systems Applications International, Inc., San

Rafael, CA. 1998, pp. 5-3 to 5-4

15. User’s Guide, Assessment System for Population Exposure Nationwide

(ASPEN) Model, Volume 1 - User Instructions”; SYSAPP-98/25r1, Prepared for

U.S. Environmental Protection Agency, Office of Air Quality Planning and

Standards, by Systems Applications International, Inc., San Rafael, CA, under

subcontract to EC/R Incorporated. 1998, p. 23.

16. Rosenbaum, A.S.; Ligocki, M.P.; Wei, Y.H. “Modeling Cumulative Outdoor

Concentrations of Hazardous Air Pollutants, Volume 1: Text”; SYSAPP-99-

96/33r2, Prepared for U.S. Environmental Protection Agency, Office of Policy,

Planning and Evaluation, by Systems Applications International, Inc., San

Rafael, CA. 1998, pp. 3-12, 5-9 to 5-10. 

17. Factor Information Retrieval (FIRE) data system (version 6.22). U.S.

Environmental Protection Agency, Research Triangle Park, NC. October 1999.

http://www.epa.gov/ttnchie1/fire.htm.

18. Standard Industrial Classification Manual. Executive Office of the President,

Office of Management and Budget, Washington, DC. 1987.

19. “Initial List of Categories of Sources Under Section 112(c)(1) of the Clean Air Act

Amendments of 1990.” Federal Register. 57:(137). Pp. 31576-31592.
D-61

20. Electronic Mail. From Laurel Driver, U.S. Environmental Protection Agency,

Office of Air Quality Planning and Standards (OAQPS) to Madeleine Strum

(OAQPS), August 13, 1999.

21. Personal Communication with Robin Segall and Rima Dishakjian, both from the

U.S. Environmental Protection Agency’s Emissions Measurement Center, JulyAugust, 1999.

22. User’s Guide: Assessment System for Population Exposure Nationwide (ASPEN,

Version 1.1) Model. EPA-454-R-00-017, U.S. Environmental Protection Agency,

Research Triangle Part, NC. March 2000, Appendix C, page C-7.

23. Rosenbaum, A.S.; Ligocki, M.P.; Wei, Y.H. “Modeling Cumulative Outdoor

Concentrations of Hazardous Air Pollutants, Volume 1: Text”; SYSAPP-99-

96/33r2, Prepared for U.S. Environmental Protection Agency, Office of Policy,

Planning and Evaluation, by Systems Applications International, Inc., San

Rafael, CA. 1998, pp. 4-11.

24. Electronic Mail. From Joseph Somers, U.S. Environmental Protection Agency,

Office of Mobile Sources (OMS) to Chad Bailey (OMS), Pamela Brodowicz

(OMS), Rich Cook (OMS), Betsy McCabe (OMS) and Madeleine Strum

(OAQPS), August 12, 1999.

25. EPA-AA-AQAB-94-2 Draft Users Guides to PART5: A Program for Calculating

Particle Emissions from Motor Vehicles, February 1995. Table 4, page 66.

26. EPA-452/R-97-005 Mercury Study Report to Congress, Volume III: Fate and

Transport of Mercury in the Environment, December 1997, p. ES-5.

27. 1990 Emissions Inventory of Section 112(c)(6) pollutants; polycylic organic

matter (POM) 2,3,7,8-Tetrachlorodibenzo-p-dioxin, 2,3,7,8-Tetrachlorodibenzo

furan, polychlorinated biphenyl compounds (PCB’s), mercury, and alkylated lead,

Final Report; U.S. Environmental Protection Agency, Research Triangle Park,

N.C., 1998.

28. Ven den Berg, M.; Birnbaum, L.; Bosveld, A.; et.al. “Toxicity Equivalence Factors

(TEFs) for PCBs, PCDDs, PCDFs for Humans and Wildlife”, Environ. Health

Persp. 1998, 106(12), 775-792.

29. Electronic Mail. From Robin Segall, U.S. Environmental Protection Agency,

OAQPS Air to Madeleine Strum (OAQPS), September 1, 1999.
D-62

30. Rosenbaum, A.S.; Ligocki, M.P.; Wei, Y.H. “Modeling Cumulative Outdoor

Concentrations of Hazardous Air Pollutants, Volume 1: Text”; SYSAPP-99-

96/33r2, Prepared for U.S. Environmental Protection Agency, Office of Policy,

Planning and Evaluation, by Systems Applications International, Inc., San

Rafael, CA. 1998, pp. 4-11.

31. Fratt, D.B.; Mudgett, D.F.; Walters, R.A. The 1985 NAPAP Emissions Inventory:

Development of Temporal Allocation Factors. EPA-600/7-89-010d, U.S.

Environmental Protection Agency, Research Triangle Park, NC. April 1990.

32. Moody, T.; Winkler, J.D.; Wilson, T.; Kirsteter, S. The Devlopment and

Improvement of Temporal Allocation Factor Files. EPA-600/R-95-004. U.S.

Environmental Protection Agency, Research Triangle Park, NC. January 1995.

33. Janssen, Mark. EMS-95 User’s Guide. Lake Michigan Air Directors (LADCo).

(http://www.ladco.org/emis.guide/ems95.html). August 1998.

34. Causley, M.C.; Fieber, J.L.; Jiminez, M.; Gardner, L. User’s Guide for the Urban

Airshed Model, Volume IV: User’s Manual for the Emissions Preprocessor

System, U.S. Environmental Protection Agency, Research Triangle Park, NC,

1990; EPA-450/4-90-007D.

35. Federal Aviation Administration APO Data System. http://www.apo.data.faa.gov 

(accessed June 7, 1999).

36. United States Census Bureau Home Page. http://www.census.gov (accessed February

1999).

37. United States Census Bureau. http://www.census.gov/geo/www/tiger/t92top.html

(accessed February 1999).

38. Land Use and Land Cover Digital Date From 1:250,000- and 1:100,000-Scale

Maps, Data Users Guide 4. U.S. Department of the Interior, U.S. Geological

Survey, Reston, VA, 1990.

39. Email from Chad Bailey, U.S. U.S. Environmental Protection Agency, Office of

Transportaion and Air Quality (OTAQ) to Rich Cook (OTAQ) and Pamela

Brodowicz (OTAQ), June 8, 1999.
D-63

40. Email from Chad Bailey, U.S. Environmental Protection Agency, Office of

Transportaion and Air Quality (OTAQ) to Madeleine Strum, U.S. Environmental

Protection Agency, Office of Air Quality Planning and Standards, July 21, 1999.

41. User’s Guide: Assessment System for Population Exposure Nationwide (ASPEN,

Version 1.1) Model. EPA-454-R-00-017, U.S. Environmental Protection Agency,

Research Triangle Park, NC. March 2000, Page 3-11.
APPENDIX E

Preparation of the Source Pathway Section 

of the ISCST3 Run Stream 

for the 1996 Base Year Using EMS-HAP 
Table of Contents

E-ii

APPENDIX E PREPARATION OF THE SOURCE PATHWAY SECTION OF THE ISCST3

RUN STREAM FOR THE 1996 BASE YEAR USING EMS-HAP . . . . . . . . . . . . . . . . . . . . . E-1

E.1 How We Prepared the Houston Domain Emission Inventories for Input 

Into EMS-HAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-2

E.1.1 How We Prepared the Houston Domain Point Source Inventory for Input into

EMS-HAP Point Source Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-2

E.1.2 How We Prepared the Houston Domain Non-point and Mobile Source Inventories

for Input into EMS-HAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-7

E.2 How We Ran EMS-HAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-8

E.2.1 Aircraft Emissions Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-8

E.2.2 Point Source Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-9

E.2.3 Mobile Source Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-9

E.2.4 Non-Point Source Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-9

E.3 The Ancillary Files We Used . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-9

E.4 How We Developed the Airport ISCST3 Area Source Parameters Ancillary File

(ISC_airport_parameters.txt) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-13

E.5 How We Selected HAPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-13

E.6 How We Developed the Temporal Allocation Factor Files (taff_ISCfactors.txt) . . . E-14

E.7 How We Assigned Spatial Surrogates for Non-point and Mobile Source Categories E-17

E.8 How We Developed the Spatial Allocation Factors . . . . . . . . . . . . . . . . . . . . . . . . . . E-18

E.9 How We Created the Deposition Files for Particles and Gases . . . . . . . . . . . . . . . . . E-20

E.10 Program Options and Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-22

E.10.1 AirportProc program options and parameters . . . . . . . . . . . . . . . . . . . . . . . . E-22

E.10.2 PtDataProc program options and parameters . . . . . . . . . . . . . . . . . . . . . . . . . E-23

E.10.3 PtFinal_ISCST3 program options and parameters . . . . . . . . . . . . . . . . . . . . . E-24

E.10.4 AMProc program options and parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . E-26

E.10.5 AMFinalFormat program options and parameters . . . . . . . . . . . . . . . . . . . . . E-27

E.11 Pollutant-specific Files Created for the 1996 Base Year EMS-HAP Run of the Houston

Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-29
List of Tables

E-iii

Table E-1. Texas Counties Encompassing the Houston Domain . . . . . . . . . . . . . . . . . . . . . . . E-3

Table E-2. Corrected Location Coordinates of Point Sources in Houston Domain . . . . . . . . . E-4

Table E-3. Necessary Point Source Inventory Variables Assigned by Landfills2point . . . . . . E-6

Table E-4. Assignment of ISCST3 Area Source Variables for Processing Landfill Emission

Sources as ISCST3 Area Sources with the Point Source Inventory . . . . . . . . . . . . . . . . . . E-7

Table E-5. Ancillary Files Used in EMS-HAP for the 1996 Base Year Run for the Houston

Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-10

Table E-6. Assignment of ISCST3 Area Source Variables for Houston Area Airports . . . . . E-13

Table E-7. Non-point and Nonroad Source Categories Assigned to New Surrogates for ISCST3

Modeling of the Houston Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-17

Table E-8. Additional Spatial Allocation Factors Developed for Processing Houston Domain

Data for ISCST3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-19

Table E-9. Particle Size Distribution and Precipitation Scavenging Coefficients for Houston

Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-21

Table E-10. Gas Deposition Parameters for Houston Domain . . . . . . . . . . . . . . . . . . . . . . . . E-22

Table E-11. Program Options and Parameters Used for AirportProc . . . . . . . . . . . . . . . . . . . E-22

Table E-12. Program Options and Parameters Used for PtDataProc . . . . . . . . . . . . . . . . . . . E-23

Table E-13. Program Options and Parameters Used for PtFinal_ISCST3 . . . . . . . . . . . . . . . E-25

Table E-14. Program Options and Parameters Used for AMProc . . . . . . . . . . . . . . . . . . . . . E-26

Table E-15. Program Options and Parameters Used for AMFinalFormat . . . . . . . . . . . . . . . E-28

Table E-16. List of Pollutants for which Run Stream Files Were Created . . . . . . . . . . . . . . . E-29
List of Figures

E-iv

Figure E-1. Plots of Onroad Temporal Allocation Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . E-15

Figure E-2. Plots of Nonroad Temporal Allocation Patterns . . . . . . . . . . . . . . . . . . . . . . . . . E-16

Figure E-3. Distribution of Spatial Surrogate 30 for Light Duty Gasoline Vehicles . . . . . . . E-20
E-1

Appendix E

Preparation of the Source Pathway Section of the

ISCST3 Run Stream for the 1996 Base Year Using

EMS-HAP

This appendix describes how we processed inventories, containing 1996 emission data, to create

the source (SO) pathway section of the ISCST3 run stream for an air toxics assessment of a

modeling domain encompassing Houston, Texas. The emission inventories were processed

through some preconditioning programs and EMS-HAP.

The 1990 Clean Air Act (Section 112) lists a number of hazardous air pollutants (HAPs) and

provides a process to add and delete pollutants from the list. There are currently 188 HAPs.2

The EPA’s Integrated Urban Air Toxics Strategy3

 refers to 33 “urban” HAPs. We created

ISCST3 SO run stream files for the direct emissions of 15 HAPs and direct emissions of diesel

particulate matter (PM).

Section E.1 discusses the emission inventories we used, and how we preconditioned them for

EMS-HAP processing. Section E.2 describes how we ran the EMS-HAP programs to create the

SO pathway section for the ISCST3 run stream. Sections E.3 through E.9 present the ancillary

input files we used, and discusses how we created the key ancillary files for EMS-HAP (e.g., the

spatial and temporal allocation factor files). Section E.10 presents the EMS-HAP program

options we selected. Section E.11 lists the pollutants in the ISCST3 run stream files resulting

from our run of EMS-HAP.

The Houston domain in our study is 92 km x 106 km in area, with a southwest corner in Fort

Bend county at (UTMX = 214000, UTMY = 3250000) in UTM zone 15. A spatial surrogate

map in Section E.8 shows the entire domain with county borders and major highways

superimposed.
E-2

E.1 How We Prepared the Houston Domain Emission Inventories for Input Into EMSHAP

We prepared point, non-point, and mobile source inventories for input into EMS-HAP for the

Houston domain. Note we use the term “non-point inventory” to describe what was formerly

referred to as the area source inventory so as not to conflict with the term “area source” which is

also used to describe a type of stationary source based on its size as defined in the Clean Air Act. 

The emissions data for directly emitted HAPs were obtained from the February 2000 (mobile),

July 2001 (point) and June 2001 (non-point) versions of the 1996 National Toxics Inventory

(NTI)3

. The diesel PM inventories were developed as part of the rulemaking for Heavy-Duty

Engine and Vehicle Standards and Highway Diesel fuel Sulfur Control Requirements. No HAP

precursor emission data were processed for input into ISCST3. The actual inventory files we

began with were output inventory files (SAS® format) from EMS-HAP pre-processing steps and

EMS-HAP programs that had been previously run for preparation of the ASPEN input files as

discussed in Appendix D.

E.1.1 How We Prepared the Houston Domain Point Source Inventory for Input into EMSHAP Point Source Programs

EMS-HAP point source processing programs are used for preparing emission sources that have

known locations for input into the dispersion model. Prior to running EMS-HAP point source

programs for ISCST3, we had to prepare the input emissions data. We used the point source

output from PtDataProc (run for ASPEN), the non-point output from AreaPrep (also run for

ASPEN) and the mobile inventory that had been prepared for input into EMS-HAP for the

ASPEN run.

We performed the following three tasks to prepare these inventories for input into EMS-HAP’s

point source processing programs:

(1) We extracted the Houston Domain point source data and corrected erroneous or missing

geographic coordinates;

(2) We extracted the Houston Domain landfill emissions from the non-point inventory and

prepared them for EMS-HAP’s point source processing programs, where they are modeled as

ISCST3-area sources with known locations; and,

(3) We concatenated Houston-domain point sources from the 1996 point source NTI (from task

1) with the landfill ISCST3 area sources (from task 2) and aircraft emission ISCST3 area sources

from EMS-HAP’s AirportProc program.

These three preparation tasks are described in greater detail in the subsections below.
E-3

We extracted the Houston Domain point source data and corrected erroneous or missing

point source locational coordinates

With the aid of the Texas Natural Resource Conservation Commission (TNRCC), we performed

a quality check of the location data for point sources located within eight counties that

encompass the Houston domain. These counties are shown in Table E-1.

Table E-1. Texas Counties Encompassing the Houston Domain

County Name County FIPS

Chambers 071

Galveston 167

Brazoria 039

Fort Bend 157

Waller 473

Montgomery 339

Liberty 291

Harris 201

We extracted the data for these counties from the output of the PtDataProc program used to

prepare data for the ASPEN model (see Appendix D, Sections D.2.1, D.3, and D.11.2). We

analyzed the records where the LFLAG was set to ‘county’, indicating that the location of the site

was defaulted. PtDataProc defaults site locations because of incorrect or missing location

coordinates, either in UTM (northing, easting, or zone) or in latitude and longitude. We visually

inspected the inventory coordinates of the defaulted sites; and in many cases, it was readily

apparent which inventory coordinate was erroneous. We sent TNRCC a list of the remaining

sites where visual inspection of the inventory coordinates did not lead to confident assignment of

site location. TNRCC supplied the correct coordinates for these remaining sites. All corrected

location coordinates, obtained by TNRCC or by visual inspection, are summarized in Table E-2. 

The last four sites in Table E-2 were corrected by visual inspection of the inventory coordinates. 

These changes to the inventory were implemented through a program written specifically for the

conditioning of the NTI point source inventory to the Houston area called

HOUSTON_ISCpreproc. The program was also used to concatenate the landfill and aircraft

emissions with the other point sources.
E-4

Table E-2. Corrected Location Coordinates of Point Sources in Houston Domain

Corrected Point Source Inventory Location

Variables

Site Name ACT-ID XY_TYPE UTM_Z X Y

Simpson Paper 48201-12359 ‘UTM’ 15 285900 3289700

Champion International 48201-12405 ‘UTM’ 15 296363 3307528

BASF Corporation 48039-12765 ‘UTM’ 15 266202 3210415

Ethyl Corporation 48201-50029 ‘UTM’ 15 290143 3291068

Ethyl Corporation 48201-50027 ‘UTM’ 15 290143 3291068

Hoescht Celanese 48201-12733 ‘UTM’ 15 300334 3278837

Occidental Chemical 48201-12749 ‘UTM’ 15 298400 3290970

Texaco Chemical Company 48339-12759 ‘UTM’ 15 270737 3355860

Rolling Environmental Services 48201-15980 ‘UTM’ 15 297414 3290047

Huntsman Petrochemical Corporation 48201-53638 NC NC NC 3275.68

Ethyl Corporation 48201-50000 NC NC NC 3292.29

Exxon Comp USA 48201-50253 NC 15 NC NC

Citgo Pipeline Company 48201-47361 NC 15 NC NC

where NC = no change

We extracted landfill emissions for the Houston Domain from the non-point inventory and

prepared them for EMS-HAP’s point source processing programs to be modeled as ISCST3-

area sources with known locations

ISCST3 area sources (which should not be confused with “area source” as defined by the Clean

Air Act) are used to model low level or ground level emission releases with no plume rise. 

ISCST3 area sources are created in two very different ways by EMS-HAP. The first type of

ISCST3 area source is gridded (discussed in E.1.2); the second type is not gridded because it is a

source with unique areal data.

Landfills were prepared to be modeled as ISCST3 area sources of the second type by finding

their exact locations and sizes, and allocating the county-level emissions in the NTI’s non-point

inventory to these exact landfill locations. Note that had these emissions been inventoried with

known locations (i.e., as point sources), most of these steps would not have been necessary. It

would only have been necessary to provide the additional variables, such as areal dimensions,

which are needed to process these emissions as ISCST3 area sources.
E-5

To assign locations to the county-level landfill emissions data, we first removed all records from

the non-point inventory with category names of ‘MUNICIPAL LANDFILLS’ and ‘MAJOR BIN

MUNICIPAL LANDFILLS.’ We used a program, HOUSTON_areaPREprep1 written

specifically for preconditioning the NTI non-point inventory to the Houston area. The input

inventory to this program was the output of the EMS-HAP program AreaPrep, which was used

for the National (ASPEN) run.

Landfill location data were obtained from the TNRCC. We received a spreadsheet describing the

location (by latitude and longitude and by county) and land area (in acres) of each landfill in

Texas. We selected the landfills in the Houston domain by county and converted the land area

from acres to square meters. Because the counties contained more than one landfill, we

calculated an allocation factor as the ratio between the area of a specific landfill and the total area

of all landfills in the county. This was done in a program written specifically for the processing

of the landfill data. This program, landfills2point, merges the landfill area data with the countylevel landfill emissions data from the NTI non-point source inventory. Emissions are

apportioned to each landfill within that county using the allocation factor calculated earlier. For

Harris county, only open landfills were used for apportioning county-level emissions; however,

both open and closed landfills were used in all surrounding counties because some of these

counties contained county-level landfill emissions but only closed (no open) landfills. For Harris

county, we assumed that the emissions from open landfills were much more significant than

emissions from closed landfills. In a more ideal emission inventory, landfill emissions would be

provided at actual landfill locations in the point source inventory rather than aggregated to the

county level in the non-point inventory.

We also created, using the landfills2point program, the point source inventory variables (see

Table 3-6 for variable descriptions) necessary to process the landfill emissions data using the

EMS-HAP point source programs. Table E-3 summarizes the variables and their assigned

values.
E-6

Table E-3. Necessary Point Source Inventory Variables Assigned by landfills2point

Variable Name Values assigned

ACT_ID from 7-digit code unique to each landfill; first 3 digits begin with ‘500'

EMIS from allocation factor and county-level emissions, where allocation factor is based on

landfill area (tons/year)

EMRELPID concatenation of ACT_ID and ‘-0' for “Major Bin Municipal Landfills” (from cat_name

variable in county-level inventory -see Table 9-3), or concatenation of ACT_ID and ‘-1'

for “Municipal Landfills”

EMRELPTY assigned ‘01' to represent fugitive source

FIPS 5-digit concatenation of state and corrected county variables. The county variable

provided in the landfills data set does not provide county FIPS; county FIPS were

obtained by comparing coordinates with maps

MACTCODE obtained from non-point source inventory

POLLCODE obtained from non-point source inventory

SCC obtained from non-point source inventory

SIC obtained from non-point source inventory

SITE_ID same as ACT_ID

SRC_TYPE set equal to ‘area’ for Municipal Landfills, and ‘major’ for Major Bin Municipal Landfills

STACKDIA initialized as missing (zero)

STACKHT initialized as missing (zero)

STACKVEL initialized as missing (zero)

STKTEMP initialized as missing (zero)

UTM_Z initialized as zero

X set to longitude of landfill

XY_TYPE set to ‘LATLON’

Y set to latitude of landfill

ZIP_CODE initialized as missing

Required point source inventory variables not assigned by landfills2point (e.g., CNTL_EFF) are

automatically assigned values of missing when landfills are concatenated with the point source

inventory in the preconditioning program HOUSTON_ISCpreproc (discussed below).

Additional point source variables are required by EMS-HAP’s point source processing programs
E-7

in order to process the landfills as ISCST3 area sources. These variables, and the values we

assigned,5 are summarized in Table E-4.

Table E-4. Assignment of ISCST3 Area Source Variables for Processing Landfill Emission

Sources as ISCST3 Area Sources with the Point Source Inventory

Variable

Name

Data Description 

(Required units or values are in parentheses)

Value5

AANGLE Orientation angle of rectangle for ISCST3 area sources (degrees from North) 0

AINPLUM Initial vertical dimension of plume for ISCST3 area source (meters) 0

ARELHGT Release height above ground for ISCST3 area sources (meters) 2

AXLEN Length of X side of rectangle for ISCST3 area sources (meters) sqrt(area)

AYLEN Length of Y side of rectangle for ISCST3 area sources (meters) sqrt(area)

ISCTYPE ISCST3 source code (iscpoint, iscvolume, or iscarea) ‘iscarea’

Note that while EMS-HAP point source programs require the presence of all variables in Table

E-3, many of them are not used for processing ISCST3 area sources (landfills). For example,

ISCST3 area sources do not use stack parameters; EMS-HAP point source programs simply carry

along this extraneous information with the remainder of the point source inventory.

We concatenated Houston-domain point sources from the 1996 point source NTI with the

landfill ISCST3 area sources and aircraft emission ISCST3 area sources from EMS-HAP’s

AirportProc program

The point source inventory pre-conditioning program HOUSTON_ISCpreproc extracted the

counties composing the Houston domain from the NTI point source inventory. In addition, this

program concatenated the resulting inventory with the prepared landfill emissions produced by

the program landfills2point (discussed in the above subsection), and the airport emissions

produced by the EMS-HAP program AirportProc, which we ran with ISCST3 as the model

option.

The resulting point source inventory was input into PtDataProc.

E.1.2 How We Prepared the Houston Domain Non-Point and Mobile Source Inventories

for Input into EMS-HAP

The non-point and mobile source inventories are provided as county-level emissions. If we can

determine exact locations of these county level emissions, then we model them as ISCST3 area

sources with specific dimensions, and prepare them for ISCST3 with EMS-HAP’s point source

processing programs. In our study, we did this for landfills and airports, as discussed in E.1.1. 

All other county level emissions from the non-point and mobile source inventories were allocated
E-8

through spatial surrogates and modeled as gridded ISCST3 area sources using EMS-HAP’s nonpoint and mobile source processing programs (AreaPrep, MobilePrep, AMProc, and

AMFinalFormat). We chose 1x1 km grid cells (see Section E-8) for the Houston domain. The

choice of this grid size is based on previous modeling experience and is a compromise between

the spatial resolution of the surrogate data and computer resources available.

We performed the following four tasks to prepare the inventories for input into EMS-HAP’s nonpoint and mobile source processing programs:

1) We removed landfill emission records from the non-point inventory (discussed in E.1.1) using

the preconditioning program HOUSTON_areaPREprep1.

2) We extracted the counties in the Houston domain from the non-point inventory; the

preconditioning program in step 1 also accomplished this task.

3) We removed the aircraft emissions from the mobile source inventory (discussed in E.1.1)

using the EMS-HAP program AirportProc.

4) We extracted the counties in the Houston domain (Table E-1) from the mobile source

inventory using the preconditioning program MOBILE_pre-PREP. The input to MOBILE_prePREP was the county-level mobile output (i.e., all mobile emissions except for the allocated

aircraft emissions) from AirportProc.

E.2 How We Ran EMS-HAP

Table E-16 in Section E.11 contains a list of the pollutants we modeled with EMS-HAP. The list

includes the direct emissions of HAPs and diesel PM. Sections E.2.1 through E.2.4 describe how

we processed the aircraft, point source, mobile source, and non-point source inventories through

EMS-HAP for the Houston domain.

E.2.1 Aircraft Emissions Processing

We used the same AirportProc input emissions for ISCST3 as we did for ASPEN processing (see

Section D.2). 

Similar to EMS-HAP for ASPEN, we did not input any point source emissions into the

AirportProc program. Instead, to save resources, we extracted Houston domain airport and point

source emissions from the national AirportProc (output) and point source inventories,

respectively, and then concatenated them in the pre-conditioning program

HOUSTON_ISCpreproc. AirportProc also assigned ISCST3 area source parameters to the

aircraft emissions (see E.4 for parameter values). Aircraft emissions (and landfills) have specific

coordinates, so, while they are ISCST3 area sources, they are processed through EMS-HAP’s

point source programs.

E.2.2 Point Source Processing

We used the point source output file from the preconditioning program HOUSTON_ISCpreproc

(see E.1.1) as input for the point source processing programs in the following order: PtDataProc,
E-9

PtModelProc, PtTemporal, and PtFinal_ISCST3.

PtFinal_ISCST3 produced the necessary SO pathway section of the ISCST3 run stream,

including the various include files pertaining to ISCST3 point, area and volume sources that have

known locations (non-gridded) as discussed in Chapter 8 of the User’s Guide.

E.2.3 Mobile Source Processing

The output from MOBILE_pre-PREP (see E.1.2) was run through EMS-HAP’s MobilePrep

program. Then, a second preconditioning program, Mobile_addDPM, was used to concatenate

the diesel PM emissions inventory to the mobile source inventory. Two sets of Houston domain

mobile emissions (including diesel PM) are output from Mobile_addDPM, an onroad, and a

nonroad mobile source inventory. We then separately processed the nonroad and onroad mobile

source data through AMProc and AMFinalFormat. Separate processing was necessary because

the coarse-fine particulate matter splits for some of the metals in these two inventories are

different, thereby requiring the utilization of two different HAP tables (see Section D.5).

AMFinalFormat created the necessary include files for the gridded mobile sources and a text file

with source group information. It did not create the SO Pathway section (as is discussed in

Chapter 12). We pasted the text file with the source group information to the SO Pathway

Section created from PtFinal_ISCST3 and added the appropriate include file references.

E.2.4 Non-point Source Processing

We processed the non-point source output file from the preconditioning program

HOUSTON_areaPREprep1 (discussed in E.1.1 and E.1.2), which contains all non-point sources

except for the landfills, through AMProc and then AMFinalFormat.

AMFinalFormat created the necessary include files for the gridded non-point sources and a text

file with source group information. It did not create the SO Pathway section (as is discussed in

Chapter 12). We pasted the text file with the source group information to the SO Pathway

Section created from PtFinal_ISCST3 and added the appropriate include file references.

E.3 The Ancillary Files We Used

Each EMS-HAP program (except for MobilePrep) requires a variety of ancillary input files. The

ancillary files we used to prepare the ISCST3 SO files are provided as a part of EMS-HAP. 

Table E-5 lists the ancillary input files for each program we ran. Some of the ancillary files used

for non-point and mobile source processing are the same as those used for point source

processing. Many of the ancillary files are the same as those used in the ASPEN processing (see

Appendix D). File formats, descriptions, and sample data for each of these files are provided in

Appendix A. Tables 1 through 4 in Appendix A list the full contents of all of the HAP table files

used in the ASPEN processing. The HAP table files used in the ISCST3 processing differ from

the HAP table files used in the ASPEN processing only in the value of the ‘keep’ variable (see
E-10

section 4.2.3) because fewer pollutants were modeled in the ISCST3 urban study.

Table E-5. Ancillary Files Used in EMS-HAP for the 1996 Base Year Run for the Houston

Domain

EMS-HAP

Program

Batch File

Keyword

File Name 

(SAS® files are shown

without an extension)

Data Source, and where applicable,

Appendix E or Appendix D section which

provides more information

Aircraft Emissions Processing

AirportProc

AIRALLC apt_allc Based on data compiled by Gregory Rigamer

and Associates6

 and the FAA.7 See D.4

ISCAREA ISC_airport_parameters Dimensions were estimated from map of

Houston area and plume release heights were

recommended by PES.5

 See E.4

Point Source Processing

PtDataProc and its “include” programs: utm2ll and ll2utm

SCCDEFLT def_scc.txt Developed from averaging stack parameter data

for each SCC from June 2000 version of the

1996 point source NTI

SICDEFLT def_sic.txt Developed from averaging stack parameter data

for each SIC from June 2000 version of the

1996 point source NTI

VARLIST varlist.txt Based on our preference

PtModelProc

MOBHAPS haptabl_nonroad.txt

(direct emissions)

Same file used for ASPEN except for value of

“keep” variable. See D.5

PTHAPS haptabl_point_area.txt

(direct emissions)

Same file used for ASPEN except for value of

“keep” variable. See D.5
Table E-5. Ancillary Files Used in EMS-HAP for the 1996 Base Year Run for the Houston

Domain (continued)

EMS-HAP

Program

Batch File

Keyword

File Name 

(SAS® files are shown

without an extension)

Data Source, and where applicable,

Appendix E or Appendix D section which

provides more information

E-11

PtTemporal

TAF taff_ISCfactors.txt Primarily from temporal allocation database

developed by EPA’s Office of Research and

Development (ORD). See E.7

SCCLINK scc2ams.txt Based on EPA’s FIRE database8

. See D.8 and

D.9

SICLINK sic2ams.txt Based on SIC definitions published by the

Office of Management and Budget9

. See D.8

and D.9

MACTLINK mact2scc.txt Based on MACT category definitions10. See

D.8 and D.9

PtFinal_ISCST3

DEFPART defpart.txt Pollutant-level particle size and liquid

scavenging data based on particulate size class. 

See E.9

SCCPART sccpart.txt Discussed in Section 8.2.4 but not

developed/used for Houston domain run; format

is provided in Appendix A

DEFGAS defgas.txt Pollutant-level gas deposition parameters

obtained from previous ISCST3 modeling of

these pollutants. See E.9

ELEVDAT hstn-elev.dat Based on USGS Digital Elevation Model terrain

data. See E.10.3

Non-point Source Processing

AreaPrep

TAFFILE taff_ISCfactors.txt Same as TAF in PtTemporal

SCC2AMS scc2ams.txt Same as SCCLINK in PtTemporal

SIC2AMS sic2ams.txt Same as SICLINK in PtTemporal

MACT2AMS mact2scc.txt Same as MACTLINK in PtTemporal

SURRXREF surrxref.txt Developed using ASPEN assignments and

additional surrogate information See E.7
Table E-5. Ancillary Files Used in EMS-HAP for the 1996 Base Year Run for the Houston

Domain (continued)

EMS-HAP

Program

Batch File

Keyword

File Name 

(SAS® files are shown

without an extension)

Data Source, and where applicable,

Appendix E or Appendix D section which

provides more information

E-12

Non-point and Mobile Source Processing

AMProc

SAFFILE hsaf1, hsaf2, ... Spatial allocation factors derived primarily

ASPEN spatial surrogate files, also used data

from TNRCC.11 See E.8

TAFFILE taff_ISCfactors.txt Same as TAF under PtTemporal

SURRXREF surrxref.txt Same as SURRXREF under AMProc

HAPTABLE haptabl_point_area.txt

(direct emissions, nonpoint) ,

haptabl_onroad.txt

(direct emissions,

onroad),

haptabl_nonroad.txt

(direct emissions,

nonroad)

Same as MOBHAPS and PTHAPS under

PtModelProc

EMISBINS am_grp.txt Based on our selection: we grouped all ‘area and

other sources’* into group 1, all nonroad mobile

(including aircraft, commercial marine and

locomotives) into group 3 and all onroad mobile

into group 2.

CNTYUR popflg96.txt Based on 1990 and 1996 Census data12; used to

assign groups (from EMISBINS file) based on

whether county is rural or urban.

AMFinalFormat

DEFPART defpart.txt Same as DEFPART in PtFinal_ISCST3

DEFGAS defgas.txt Same as DEFGAS in PtFinal_ISCST3

ELEVDAT hstn-elev.dat Same as ELEVDAT in PtFinal_ISCST3

* ‘area and other’ includes both area sources based on Clean Air Act definition. ‘Other’ stationary sources are sources that may

be more appropriately addressed by other programs rather than through regulations developed under certain air toxics provisions

(sections 112 or 129) in the Clean Air Act. Examples of other stationary sources include wildfires and prescribed burning whose

emissions are being addressed through the burning policy agreed to by EPA and USDA.
E-13

E.4 How We Developed the Airport ISCST3 Area Source Parameters Ancillary File

(ISC_airport_parameters.txt)

Airport dimensions, AXLEN, AYLEN, and AANGLE were estimated from a map of the

Houston metropolitan area. Release height and initial vertical dimension parameters ARELHGT

and AINPLUM respectively, were assumed based on typical values for elevated area source

releases.5

 The airport-specific values assigned to the required ISCST3 area source variables is

summarized in Table E-6.

Table E-6. Assignment of ISCST3 Area Source Variables for Houston Area Airports

Assigned Value5

Variable

Name

Data Description 

(Required units or values are in parentheses)

George Bush

Intercontinental

Airport

William P. Hobby

Airport

AANGLE Orientation angle of rectangular for ISCST3 area

sources (degrees from North)

0 0

AINPLUM Initial vertical dimension of plume for ISCST3 area

source (meters)

2 2

ARELHGT Release height above ground for ISCST3 area sources

(meters)

2 2

AXLEN Length of X side of rectangle for ISCST3 area sources

(meters)

5100 2000

AYLEN Length of Y side of rectangle for ISCST3 area sources

(meters)

5300 3000

ISCTYPE ISCST3 source type (iscpoint, iscvolume, or iscarea) ‘iscarea’ ‘iscarea’

E.5 How We Selected HAPs

For modeling the direct emissions of HAPs, we used three separate versions of the HAP table

pertaining to: (1) point and non-point sources, (2) onroad mobile sources, and (3) nonroad mobile

sources. The HAP tables used when processing data for ISCST3 and for ASPEN were nearly the

same. You can find the details of the development of these tables in Appendix D, Section D.5. 

Appendix A (Tables A-1, A-3, and A-4) contains a complete listing of each of these files. The

assignment of the KEEP variable, which determines which pollutants were selected for

modeling, was the only change when processing data for the Houston domain. Pollutants that

were modeled are shown in Table E-16 (section E.11).
E-14

E.6 How We Developed the Temporal Allocation Factor Files (taff_ISCfactors.txt)

EMS-HAP uses the same ancillary input file, taff-ISCfactors.txt, to temporally allocate point,

non-point, and mobile sources. This file contains temporal allocation factors (TAFs) based on

the source category. These factors provide the hourly variation of emissions for each season

(winter, spring, summer, and fall) and day type (weekday, Saturday, and Sunday). For each

source category, there are 24 hourly factors for each of the 4 seasonal factors and 3 day type

factors. As with the TAF file developed for processing data for the ASPEN model, we used the

database developed by ORD13 as a starting point, because it is the most complete database. As

discussed in D.7, this database was originally developed for regional emission modeling studies

under the National Acid Precipitation Assessment Program (NAPAP); its development is

documented in an EPA report.14

The ORD temporal database for point and non-point sources is currently in the format required

for processing data for ISCST3. We made some changes and additions to the data for processing

mobile sources as follows:

1. Similar to the process used in developing the TAF file for processing data for ASPEN, the

aggregated highway vehicle TAFs were developed by taking the average of three separate

ORD profiles for rural non-interstate, urban non-interstate, and interstate roadways (see

Equation D-2 in Section D.7 for more details).

2. Light duty diesel vehicles were not specifically addressed in the ORD temporal database. As

done in the TAF file used for processing data for ASPEN, Light Duty Diesel Vehicles and

Light Duty Diesel Trucks were assigned a similar profile as Heavy Duty Diesel Vehicles.

3. Motorcycle TAFs were changed from uniform (ASPEN) to the Light Duty Gasoline Vehicles

(LDGV) profile because we felt that motorcycle emissions would better approximate the

diurnal variation of the LDGV profile.

4. For airports, the TAF file used for processing data for ASPEN contained 3 primary nonuniform TAF profiles: 1) one for general and commercial aircraft (see Figure D-2), based on

commercial aircraft landings and takeoffs15; 2) a flatter profile for military aircraft, and 3) for

other aircraft type (i.e., Air Taxi), a uniformly high profile from 6am to midnight with very

low activity between midnight and 6am. For ISCST3 TAFs, we considered using ORD13

TAFs, which contain day-of-week and seasonal factors. However, for airports, all ORD13

hourly profiles were of the third type just mentioned; that is, all ORD13 aircraft TAFs had a

uniformly high profile from 6am to midnight with very low activity between midnight and

6am. We felt that the ASPEN TAFs used for commercial aircraft15 (see Figure D-2) were

more realistic; therefore, for aircraft in the ISCST3 TAF file, we used the hourly ASPEN

TAFs and assigned no seasonal or day-of-week variation. The end result is that the ISCST3

commercial aircraft TAF has the same hourly shape as the ASPEN TAF in Figure D-2 for

every season and day-of-week type. We could have preserved the NAPAP seasonal

weightings (there were no day-of-week variations for any of the aircraft TAFs in the ORD
E-15

file); this would have resulted in 4% greater emissions in spring and summer and 8% fewer

emissions in the winter.

5. For the broad nonroad diesel engine mobile category, we used the non-uniform profile from

the TAF file developed for processing data for ASPEN.

Plots of TAF profiles for the mobile onroad, and for many of the mobile nonroad source

categories, are provided in Figures E-1 and E-2. Unlike the TAF profiles used for processing

data for ASPEN, provided in Figures D-1 and D-2 (see Section D.7), these temporal profiles

often possess seasonal and day-of-week variation in addition to diurnal variation.

Figure E-1. Plots of Onroad Temporal Allocation Patterns
E-16

Figure E-2. Plots of Nonroad Temporal Allocation Patterns
E-17

E.7 How We Assigned Spatial Surrogates for Non-point and Mobile Source Categories

We assigned non-point and mobile source spatial surrogates for ISCST3 in a similar fashion to 

ASPEN (see Sections D.8 and D.9), with two exceptions: 1) we reassigned source categories

from inverse population density surrogates, and 2) we created new surrogates for onroad mobile

sources.

As discussed in Sections E.8 and E.10, EMS-HAP uses a file to link AMS and SCC codes to

spatial surrogates. After investigating preliminary Houston domain benzene emission density

maps of non-point and nonroad mobile emissions, we concluded that the assignment of dominant

AMS and SCC codes to spatial surrogates based on inverse population density was not correct. 

Table E-7 provides the source categories and new surrogate assignments for spatial surrogates

reassigned from inverse population density surrogates to other more suitable surrogates for

ISCST3. We reassigned three categories to new surrogates created for Rural Areas (code 53),

Commercial Aviation (code 60), and Onshore Oil and Gas Production (code 66).

Table E-7. Non-point and Nonroad Mobile Source Categories Assigned to New Surrogates 

for ISCST3 Modeling of the Houston Domain

Category Name Assigned to Inverse

Population Surrogate for ASPEN Modeling

Code Used

to Obtain

Spatial

Surrogates

Surrogate Code Used

for Houston Domain

Surrogate Name

INSTITUTIONAL/COMMERCIAL

HEATING: POTW DIGESTER

2103010000 53 Rural Area

ALL OFF-HIGHWAY VEHICLE: DIESEL 2270000000 20 Population

OFF-HIGHWAY DIESEL, CONSTRUCTION

AND MINING EQUIPMENT

2270002000 20 Population

OFF-HIGHWAY DIESEL, AIRPORT

GROUND SUPPORT EQUIPMENT

2270008000 60 Commercial Aviation

PUBLICLY OWNED TREATMENT WORKS 2630000000 6 Commercial and

Industrial Land

OPEN BURNING: SCRAP TIRES 2830000000 6 Commercial and

Industrial Land

MEDICAL WASTE INCINERATION 50200504 3 Industrial Land

HAZARDOUS WASTE INCINERATION 50300501 3 Industrial Land

ONSHORE OIL AND GAS PRODUCTION 2310000000 66 Onshore Oil and Gas

Production
E-18

The onroad mobile categories previously assigned to the surrogates for Roadway Miles (code 22)

and Roadway Miles/Population (codes 24 and 25) were reassigned to 9 new vehicle class

surrogates. These new surrogates (codes 30 through 38) are based on a county-level weighting of

the roadway miles data based on the roadway types used by a specific vehicle class. These new

surrogates are discussed in more detail in the next section.

E.8 How We Developed the Spatial Allocation Factors

When processing data for ASPEN, the spatial allocation factors (SAFs) are developed and used

for allocating county-level emissions to census tracts. To process data for ISCST3, the countylevel emissions are allocated to 1 by 1 km grid cells. We started with the SAFs used to process

data for ASPEN (see Table D-18 in Section D.10) and assigned these SAFs to 1x1 km grid cells

using the Geographic Information System (GIS) data. New spatial allocation factors for use in

the Houston domain were also developed for several categories, and are listed in Table E-8. 

Table D-18 lists the ASPEN-based spatial surrogates; these same surrogate names and codes are

apportioned to 1x1 km spatial surrogates for the Houston, TX domain.

We developed the new onroad spatial surrogates (codes 30 through 38 in Table E-8) using

county-level, Census Feature Class Code (CFCC)-specific TIGER data from the Bureau of

Census15, and a DOT BTS (Department of Transportation Bureau of Transportation Statistics)

vehicle split fraction table.16 For example, for code 30, light duty gasoline vehicles (LDGV), the

surrogate for row i and column j in a county is based on the following formula:

SAF30county, i,j = sum(Acounty,i,j,k * LDGVk)|k (eq. E-1)

where

SAF30county, i,j = the spatial allocation factor for LDGV at row i and column j within

a county. (For any spatial surrogate, the values for all of the cells in

a given county will sum to 1.0 if the entire county is gridded)

Acounty,i,j,k = TIGER cfcc-specific roadway fraction k at row i and column j

within each county. For example, the sum of all interstate roadway

fractions “Acounty,i,j,interstate”, for each county, is 1.0 if the entire county

is gridded, and possibly less than 1.0 if only part of the county is

gridded.

LDGVk = DOT BTS vehicle split (cfcc-specific) LDGV surrogate; sums to

1.0 over all cfcc-types (i.e., interstate, major arterial, local roads...)

sum(...)|k = sum of all elements by variable k (cfcc type here)

Columns and rows simply index the southwest corner of the UTMX and UTMY (respectively)

coordinates for each grid cell in the domain. Variables XORIG and YORIG in the AMProc

batch file (see Table E-14) provide the SW corner of the first row and column. Each successive
E-19

column has a UTMX position to the east of the previous column; each sucessive row has a

UTMY position to the north of the previous row.

Figure E-3, a plot of surrogate code 30 for LDGV, shows that most of the onroad mobile

emissions are now assigned to the major roads. Major roadways superimposed as white lines,

monitor observations as numbered stars, and county names and boundaries are provided for

reference. For each source category, county-level emissions are allocated to 1 by 1 km grid cells

by multiplying the surrogate value by the county-level emissions for that source category. Harris

county resides completely within our domain; therefore, the sum of all 1 by 1 km surrogates is

1.0 (meaning 100% of county-level emissions are allocated) for each SAF in Harris county.

The three new non-point and nonroad mobile source surrogates (53, 60, and 66) in Table E-8

were provided by TNRCC11; these three surrogates are based on USGS information. These three

spatial surrogates were originally 2x2 km grid surrogates; we partitioned them (with equal

weighting), into four individual 1x1 km surrogates of equal value.

Table E-8. Additional Spatial Allocation Factors Developed for Processing Houston

Domain Data for ISCST3

Code for

set of

SAFs

Surrogate Definition Origin of data

30 Light Duty Gasoline Vehicles 1990 -TIGER Line data16 and 1996 DOT BTS vehicle splits17

31 Light Duty Gasoline Trucks 1 1990 -TIGER Line data16 and 1996 DOT BTS vehicle splits17

32 Light Duty Gasoline Trucks 2 1990 -TIGER Line data16 and 1996 DOT BTS vehicle splits17

33 Heavy Duty Gasoline Vehicles 1990 -TIGER Line data16 and 1996 DOT BTS vehicle splits17

34 Motorcycles 1990 -TIGER Line data16 and 1996 DOT BTS vehicle splits17

35 Light Duty Diesel Vehicles 1990 -TIGER Line data16 and 1996 DOT BTS vehicle splits17

36 Light Duty Diesel Trucks 1990 -TIGER Line data16 and 1996 DOT BTS vehicle splits17

37 Heavy Duty Diesel Vehicles 1990 -TIGER Line data16 and 1996 DOT BTS vehicle splits17

53 Rural Area 1990 -TNRCC11; uses USGS land use/land cover data

60 Commercial Aviation 1990 -TNRCC11; uses digitized USGS general highway maps,

weighted by activity

66 Onshore Oil and Gas Production 1990 -TNRCC11; uses digitized oil and gas maps of Texas
E-20

Figure E-3. Distribution of Spatial Surrogate 30: Light Duty Gasoline Vehicles

E.9 How We Created the Deposition Files for Particles and Gases

When processing data for the Houston domain through EMS-HAP, we used the ancillary files

defpart.txt and defgas.txt to assign pollutant-level particle sizes and gas deposition parameters. 

We assigned size distributions for particulate toxics based on their particulate size classification

for ASPEN modeling as fine or coarse particulates (see D.5.) For pollutants we modeled as

coarse particulates in ASPEN, we assigned a single particulate size 6.925 microns, which is the

mass mean diameter between 2.5 and 10 microns. For pollutants we modeled as fine particulates

in ASPEN, we assigned a single particulate size of 1.575 microns, the mass mean diameter

between 0 and 2.5 microns.

The formula for mass mean diameter is computed based on Equation 1-54 in the ISC2 Model
E-21

User’s Guide18:

mean mass diameter (d) = ([d1

3

+d1

2

d2+d1d2

2

+d2

3

]/4)1/3 (eq. E-2)

where

d1 = lower bound diameter. Equal to 0:m for fine particulates, and

2.5:m for coarse particulates

d2 = upper bound diameter. Equal to 2.5:m for fine particulates, and

10:m for coarse particulates

We used an aerodynamic density of 1 (g/cm3

) for all particulates. The precipitation scavenging

coefficients are based on Figure 1-11 of the ISCST3 User’s Guide19. Values of the particulate

parameters we used are summarized in Table E-9.

Table E-9. Particle Size Distributions and Precipitation Scavenging Coefficients for 

Houston Domain

Pollutant SAROAD Mean Particle

Diameter (:g)

Mean Particle

Density (g/cm3)

Precipitation Scavenging

Coefficient (hr/s-mm )

Cadmium, fine 80124 1.575 1.0 0.000013

Cadmium, coarse 80324 6.925 1.0 0.000052

Chromium, fine 80141 1.575 1.0 0.000013

Chromium, coarse 80341 6.925 1.0 0.000052

Diesel PM, fine 80400 1.575 1.0 0.000013

Diesel PM, coarse 80401 6.925 1.0 0.000052

Lead, fine 80193 1.575 1.0 0.000013

Lead, coarse 80393 6.925 1.0 0.000052

We used the gas deposition parameters given in Table E-10. These were obtained from the EPA

report “Dispersion Modeling of Toxics Pollutants in Urban Areas.”20 Mesophyll Resistance were

obtained by dividing Henry’s Law constant by a factor21 of 0.34. Chemical scavenging

coefficients, necessary for estimating wet deposition, were not available for the gaseous

pollutants. Dry deposition parameters for 1,3-dichloropropene were also not available.
E-22

Table E-10. Gas Deposition Parameters for Houston Domain

Pollutant SAROAD Diffusivity

(cm2

/sec)

Alpha Reactivity

Parameter

Mesophyll

Resistance

(s/cm)*

Henry’s

Law

coefficient

Henry’s

Law constant

(Pa-m3

/mol)**

Acrolein 43505 0.1094 1.0 10.0 2,894 0.0404 98.4

Benzene 45201 0.0896 1.0 10.0 16,382 0.2287 557

1,3-Butadiene 43218 0.1013 1.0 10.0 608,820 8.4975 20,700

Formaldehyde 43502 0.1720 1.0 10.0 0.9412 1.314 x10-5 0.032

Tetrachloroethylene 43817 0.07492 1.0 10.0 78,529 1.0961 2,670

Vinyl Chloride 43860 0.1099 1.0 10.0 235,880 3.2923 8,020

* Mesophyll Resistance = (H/0.034)

** Henry’s Law Coefficient = H/(R*293), where R=ideal gas constant (8.314 Pa-m3/K-mol)

E.10 Program Options and Parameters

This section presents the options used to run EMS-HAP for the Houston domain. Several of the

EMS-HAP programs contain options for determining which specific functions to perform and

choices of how to run those functions. In addition, the data quality assurance program,

PtDataProc requires you to enter parameters for the default stack parameter assignments. This

section summarizes the options and parameters we selected for the ISCST3 input files. We only

present programs we ran that have options.

E.10.1 AirportProc program options and parameters

Aircraft emissions were extracted from the mobile source inventory and stored in a file separate

from the point source inventory as indicated by the setting of the program options given in

Table E-11. The allocated aircraft emissions inventory was then added to the point source using

the pre-processing program HOUSTON_ISCpreproc (discussed in E.1.1).

Table E-11. Program Options and Parameters Used for AirportProc

Keyword Description Value

MODEL ISC = run EMS-HAP for ISCST3 model and

ASPEN = run EMS-HAP for ASPEN model

ISC

ADD2PT 1=append records to output point source inventory file and

0=create an output file containing only allocated aircraft emission records

0

ADD2MB 1=append records to output mobile source inventory file and

0=create an output file containing only unallocated aircraft emission records

1
E-23

E.10.2 PtDataProc program options and parameters

When the 1996 NTI point source inventories were processed through PtDataProc, point source

locations were converted to UTM coordinates. When processing data for ISCST3, no location

defaulting procedures are performed; however, EMS-HAP performs quality checks and assigns

values to the variable LLPROB (see section 3.1.1) when converting inventory location units to

UTM coordinates.

Missing or out-of-range stack parameters were defaulted using SCC and SIC defaults. We

defined the out-of-range boundaries for each parameter as shown in Table E-12. Any out-ofrange stack parameters that could not be defaulted by SCC or SIC defaults (i.e., if there was no

SCC or SIC code on the record, or the code did not match those in the SCC/SIC default files) 

were defaulted to the range maximum or minimum value, depending on the value of the stack

parameter. For example, a stack height greater than 381 meters was defaulted to 381 meters. 

Any missing stack parameters that could not be defaulted by SCC or SIC were defaulted to the

global default values in Table E-12.

Table E-12. Program Options and Parameters Used for PtDataProc

Keyword Description Value

MODEL ISC = run EMS-HAP for ISCST3 model and

ASPEN = run EMS-HAP for ASPEN model

ISC

REF_ZONE UTM zone for ISCST3 model domain 15

DOLOCATE 1 =quality assure location data; 0 =don’t quality assure them 1

DOSTACK 1 =quality assure stack parameters; 0 =don’t quality assure them 1

DOSCCDEF SCC to default stack parameters correspondence text file prefix (def_scc.txt) 1

DOSICDEF SIC to default stack parameters correspondence text file prefix (def_sic.txt) 1

DOSETVAR 1 =retain only those non-essential variables from inventory specified by the user,

based on the value of USELIST and VARLIST

0 =retain all variables

1

USELIST 1 =use ancillary file (keyword VARLIST) to provide additional non-essential

variables to retain in inventory 

0 =don’t retain any non-essential variables from the inventory 

1

DOWINDOW 1 =remove all records with zero emissions values or without UTM coordinates

0 =don’t remove records with zero emissions or without latitude and longitude

values (note that values without latitude and longitude values will still be removed if

you perform the data quality assurance of location data function)

1

DLOWHT Minimum range value for valid stack height (in meters) 0.003

DHIHT Maximum range value for valid stack height (in meters) 381
E-24

DLOWDIA Minimum range value for valid stack diameter (in meters) 0.0762

DHIDIA Maximum range value for valid stack diameter (in meters) 15.24

DLOWVEL Minimum range value for valid stack velocity (in meters/second) 0.003

DHIVEL Maximum range value for valid stack velocity (in meters/second) 198

DLOWTEMP Minimum range value for valid stack temperatures (in Kelvin) 273

DHITEMP Maximum range value for valid stack temperatures (in Kelvin) 1505

DFLTHT Default stack height (in meters) 10

DELTVEL Default stack exit gas velocity (in meters/second) 1

DFLTTEMP Default stack exit gas temperature (in Kelvin) 295

DFLTDIA Default stack diameter (in meters) 1

E.10.3 PtFinal_ISCST3 program options and parameters

When the 1996 NTI point source inventories were processed through PtFinal_ISCST3, source

groups were assigned by the source type only (see Table 8-1 in Section 8.1.1). Assignments were

not made by MACT category, 6-digit SCC, or SIC. The default source group was group 1;

however, no records contained a missing source type so this default source group was never

applied. We used a pollutant-level particle size distribution file (see Section E.9). We used

scavenging coefficients included in the pollutant-level particle size distribution file but not in the

gas deposition file (see Section E.9). We used a gridded elevation file (see Figure A-32 for file

format) that covered the entire Houston domain. This terrain elevation data is made available

through the U.S. Geological Survey (USGS) web site22. We set a default elevation of 100 meters,

but it was never applied because we used the aforementioned gridded elevation file.

The Houston domain in our study is 92 km x 106 km in area, with a southwest corner in Fort

Bend county at (UTMX = 214000, UTMY = 3250000) in UTM zone 15. The spatial surrogate

map in Section E.8 (Figure E-3) shows the entire domain with county borders and major

highways superimposed.

With the PtFinal_ISCST3 program options we specified in Table E-13, EMS-HAP created, for

each pollutant in the inventory (see Table E-16 in Section E.11), an ISCST3 SO run stream file

and include files that contain: 

• emission factors and source locations and parameters

• emission source data

• particle size distribution parameters

• gas deposition parameters

• building dimensions data
E-25

Table E-13. Program Options and Parameters Used for PtFinal_ISCST3

Keyword Description Value

MODEL ISC = run EMS-HAP for ISCST3 model and

ASPEN = run EMS-HAP for ASPEN model

ISC

DOSOURCE 0 =do not assign source group by source type; 1 =assign source group by

source type

1

DOMACT 1 =do not assign source group by MACT category; 1 =assign source group by

MACT category

0

DOSCC 0 =do not assign source group by SCC; 1 =assign source group by SCC 0

DOSIC 0 =do not assign source group by SIC; 1 =assign source group by SIC 0

DFLTGRP Default source group (01 through 99) 01

DEFPART Pollutant-level particle distribution text file prefix; 

put ‘NONE’ if no file is to be used

defpart

SCCPART SCC-level particle distribution text file prefix; 

put ‘NONE’ if no file is to be used

NONE

GASDEPO YES=create gas deposition include files YES

DEFGAS Default pollutant-level gas deposition data text file prefix; 

put ‘NONE’ if no file is to be used

defgas

SCAVENG 0 =scavenging coefficients are not included in DEFPART or DEFGAS files;

1 =scavenging coefficients may be included in DEFPART or DEFGAS files

1

ELEVDAT Gridded terrain elevation data text file prefix; 

put ‘NONE’ if no file is to be used

hstn-elev

DEFELEV Default source elevation (in meters); used only if ELEVDAT=’NONE’ 100

RUN_ID Run identification code used to insure unique ISCST3 source ID’s A

USEBLDG YES =write building dimension include files YES

PARTMETH 0 =do not create particle distribution include files;

1 =create particle distribution include files by SCC;

2 =create particle distribution include files by pollutant

2

X_ORIG UTM easting coordinate of the SW corner of modeling grid origin (meters) 214000

Y_ORIG UTM northing coordinate of the SW corner of modeling grid origin (meters) 3250000

CELLSIZE Width of each grid cell (meters) 1000

MAXCOL Total number of columns in the modeling grid 106

MAXROW Total number of rows in the modeling grid 92
E-26

E.10.4 AMProc program options and parameters

When the 1996 NTI non-point and mobile source Houston TX ISCST3 inventories were

processed through AMProc, the program options and parameters in Table E-14 were specified.

Table E-14. Program Options and Parameters Used for AMProc

Keyword Description Value

MODEL ISC = run EMS-HAP for ISCST3 model and

ASPEN = run EMS-HAP for ASPEN model

ISC

GCFLAG 0 =don’t perform growth and control calculations; 

1 =perform growth and control calculations; 

2 =run growth and control only, using a temporally and spatially allocated emissions

file 

(Because the growth and control calculation were not made, keywords

GROWFLAG, SICFLAG, CNTLFLAG, SPECMACT, GROWYEAR, and REBIN

had no effect on run)

0

XORIG UTM easting coordinate of the SW corner of modeling grid origin (meters) 214000

YORIG UTM northing coordinate of the SW corner of modeling grid origin (meters) 3250000

CELLSIZE Width of each grid cell (meters) 1000

LSUBSETP 0 =don’t process only one pollutant; 1 =process only one pollutant

(Because all pollutants were processed, keyword SUBSETP had no effect on run)

0

LSUBSETG 0=don’t process only one state; 1 =process only one state

(Because all states were processed, keyword SUBSTG had no effect on run)

0

LCPTIMES 1 =print component CPU times; 0=don’t print component CPU times 1

LDBG 0 =don’t print out diagnostic information; 1 =print out of information 0

LONECELL 0 =don’t print out diagnostics for selected single cell; 1 =print out diagnostics

(Because no single cell diagnostics were printed, keyword ONECELL had no effect

on run)

0
E-27

E.10.5 AMFinalFormat program options and parameters

We processed the 1996 NTI non-point source, onroad mobile source, and nonroad mobile source

inventories through AMFinalFormat to produce the source pathway section of the ISCST3 run

stream. We used a pollutant-level particle size distribution file (see Section E.9). We used

scavenging coefficients included in the pollutant-level particle size distribution file but not in the

gas deposition file (see Section E.9). We used a gridded elevation file (see Figure A-32 for file

format) that covered the entire Houston domain. This terrain elevation data is made available

through the U.S. Geological Survey (USGS) web site21. We set a default elevation of 100 meters,

but it was never applied because we used the aforementioned gridded elevation file.

The Houston domain in our study is 92 km x 106 km in area, with a southwest corner in Fort

Bend county at (UTMX = 214000, UTMY = 3250000) in UTM zone 15. The spatial surrogate

map in Section E.8 (Figure E-3) shows the entire domain with county borders and major

highways superimposed.

With the AMFinalFormat program options we specified in Table E-15, EMS-HAP created, for

each pollutant in the inventory (see Table E-16 in Section E.11), include files that contain:

• emission factors and source locations and parameters

• emission source data

• particle size distribution parameters

• gas deposition parameters

As discussed in Section 12.1.10, for each pollutant, AMFinalFormat also produces a file listing

the source groups for all sources in the emissions inventory. The user adds this source group

information, as well as the additional statements to call the include files created from

AMFinalFormat, to the existing SO pathway section of the ISCST3 run stream file created from

PtFinal_ISCST3.
E-28

Table E-15. Program Options and Parameters Used for AMFinalFormat

Keyword Description Value

DEFPART Pollutant-level particle distribution text file prefix; 

put ‘NONE’ if no file is to be used

defpart

GASDEPO YES =create gas deposition include files YES

DEFGAS Default pollutant-level gas deposition data text file prefix; 

put ‘NONE’ if no file is to be used

defgas

SCAVENG 0 =scavenging coefficients are not included in DEFPART or DEFGAS files;

1 =scavenging coefficients are included in DEFPART or DEFGAS files

1

ELEVDAT Gridded terrain elevation data text file prefix; 

put ‘NONE’ if no file is to be used

hstn-elev

DEFELEV Default source elevation (in meters); used only if ELEVDAT=’NONE’ 100

RUN_ID Run identification code used to insure unique ISCST3 source ID’s B for non-point

N for onroad

F for nonroad

ARELHGT Release height above ground (meters) 2

AANGLE Orientation angle of grid cell rectangular (degrees from North) 0

AINPLUM Initial vertical dimension of plume (meters) 1

X_ORIG UTM easting coordinate of the SW corner of modeling grid origin (meters) 214000

Y_ORIG UTM northing coordinate of the SW corner of modeling grid origin (meters) 3250000

CELLSIZE Width of each grid cell (meters) 1000

MAXCOL Total number of columns in the modeling grid 106

MAXROW Total number of rows in the modeling grid 92
E-29

E.11 Pollutant-specific Files Created for the 1996 Base Year EMS-HAP Run of the

Houston Domain

Using the methodology discussed in E.1 through E.10, we created an SO pathway section of the

ISCST3 run stream file that includes point, non-point, and mobile source include files for each of

the pollutants listed in Table E-16 below.

Table E-16. List of Pollutants for which Run Stream Files Were Created

Pollutant SAROAD in EMS-HAP

acrolein 43505

benzene 45201

1,3 butadiene 43218

cadmium compounds, fine 80124

cadmium compounds, coarse 80324

chromium compounds, fine 80141

chromium compounds, coarse 80341

1,3-dichloropropene 80152

diesel PM, fine {for mobile sources only} 80400

diesel PM, coarse {for mobile sources only} 80401

formaldehyde 43502

lead compounds, fine 80193

lead compounds, coarse 80393

tetrachloroethylene (perc.) 43817

vinyl chloride 43860
E-30

REFERENCES FOR APPENDIX E

1. User's Guide for the Industrial Source Complex (ISC3) Dispersion Models: Volume I - User

Instructions. EPA-454-/D-95-003a, U.S. Environmental Protection Agency, Research

Triangle Park, NC. 1995d.

2. U.S. Environmental Protection Agency. Unified Air Toxics Website: The Pollutants.

http://www.epa.gov/ttn/uatw/pollsour.html

3. U.S. Environmental Protection Agency. Integrated Urban Air Toxics Strategy PO Data

System. http://www.epa.gov/ttn/uatw/urban/urbanpg.html

4. Driver, L.; Pope, A.; Billings, R.; Wilson, D. “The 1996 National Toxics Inventory and Its

Role in Evaluating the EPA’s Progress in Reducing Hazardous Air Pollutants in Ambient

Air”, Presented at the 92nd Annual Meeting of the Air & Waste Management Association, St.

Louis, Missouri, 1999; paper 91-501.

5. Personal Communication from Roger Brode, Pacific Environmental Services, October 2000.

6. FAA 5010 Database. g.c.r. and associates. http//www.gcr1.com .

7. Statistical Handbook of Aviation, 1996. Federal Aviation Administration, U.S. Department of

Transportation, Washington, DC.

8. Factor Information Retrieval (FIRE) data system (version 6.22). U.S. Environmental

Protection Agency, Research Triangle Park, NC. October 1999.

http://www.epa.gov/ttnchie1/fire.htm.

9. Standard Industrial Classification Manual. Executive Office of the President, Office of

Management and Budget, Washington, DC. 1987.

10. “Initial List of Categories of Sources Under Section 112(c)(1) of the Clean Air Act

Amendments of 1990.” Federal Register. 57:(137). Pp. 31576-31592.

11. Appendix to the Houston Attainment State Implementation Plan, Adopted: May 6, 1998,

Rule Log No. 1997-184-SIP-AI, TNRCC. Provided by Jim MacKay.

12. Electronic Mail. From Laurel Driver, U.S. Environmental Protection Agency, Office of Air

Quality Planning and Standards (OAQPS) to Madeleine Strum (OAQPS), August 13, 1999.
E-31

13. Moody, T.; Winkler, J.D.; Wilson, T.; Kirsteter, S. The Devlopment and Improvement of

Temporal Allocation Factor Files. EPA-600/R-95-004. U.S. Environmental Protection

Agency, Research Triangle Park, NC. January 1995.

14. Fratt, D.B.; Mudgett, D.F.; Walters, R.A. The 1985 NAPAP Emissions Inventory:

Development of Temporal Allocation Factors. EPA-600/7-89-010d, U.S. Environmental

Protection Agency, Research Triangle Park, NC. April 1990.

15. Federal Aviation Administration APO Data System. http://www.apo.data.faa.gov (accessed

June 7, 1999).

16. United States Census Bureau: 1990 TIGER. 

http://www.census.gov/geo/www/tiger/index.html

17. Houston area vehicle split fractions table -1996 United State Department of Transportation

(DOT) Bureau of Transportation Statistics (BTS).

18. U.S. Environmental Protection Agency. User’s Guide for the Industrial Source Complex

(ISC2) Dispersion Models, Volume II - Description of Model Algorithms. EPA-450/4-92-

008b, Research Triangle Park, 1992.

19. U.S. Environmental Protection Agency. User’s Guide for the Industrial Source Complex

(ISC3) Dispersion Models, Volume II - Description of Model Algorithms. EPA-454/B-95-

003b, Research Triangle Park, 1995.

20. U.S. Environmental Protection Agency. Dispersion Modeling of Toxic Pollutants in Urban

Areas: Guidance, Methodology and Applications. EPA-454/R-99-021, Research Triangle

Park, 1999.

21. Wesely, M.L., P.V. Doskey., and J.D. Shannon, 2002. Deposition Parameterizations for the

Industrial Source Complex (ISC3) Model, Draft, ANL/ER/TM-nn, DOE/xx-nnnn,

Environmental Research Division, Argonne National Laboratory, Argonne, IL.

22. USGS Digital Elevation Model (DEM) terrain data. 

http://edcwww.cr.usgs.gov/doc/edchome/ndcdb/ndcdb.html
TECHNICAL REPORT DATA

(Please read Instructions on reverse before completing)

1. REPORT NO.

EPA 454/B-02-001 2. 3. RECIPIENT'S ACCESSION NO.

4. TITLE AND SUBTITLE

User's Guide for the Emissions Modeling System for

Hazardous Air Pollutants (EMS-HAP) Version 2.0

5. REPORT DATE

August 2002

6. PERFORMING ORGANIZATION CODE

7. AUTHOR(S) Diane Linderman,(EC/R, Inc.); Richard Mason

(DynCorp Systems and Solutions LLC) and Madeleine

Strum (EPA)

8. PERFORMING ORGANIZATION REPORT NO.

9. PERFORMING ORGANIZATION NAME AND ADDRESS 10. PROGRAM ELEMENT NO.

11. CONTRACT/GRANT NO.

EPA Contract Nos. 68D98006

(EC/R) and IAG47939482-01

(DynCorp)

12. SPONSORING AGENCY NAME AND ADDRESS

U.S. Environmental Protection Agency

Office of Air Quality Planning and Standards

Emissions, Monitoring & Analysis Division

Research Triangle Park, NC 27711

13. TYPE OF REPORT AND PERIOD COVERED

User’s Guide

14. SPONSORING AGENCY CODE

15. SUPPLEMENTARY NOTES

EPA Work Assignment Manager: Madeleine L. Strum

16. ABSTRACT

This user’s guide provides documentation for the Emissions Modeling System for

Hazardous Air Pollutants (EMS-HAP, Version 2.0), also referred to as EMS-HAP. It

replaces EMS-HAP version 1.1. The key differences in Version 2 are the added

functionality to process emissions for the ISCST3 air quality model and added

flexibility in estimating future-year emissions.

This guide describes the EMS-HAP program functions and ancillary files, and it provides

the user instructions for running the model to prepare toxic emissions for input into

either the Assessment System for Population Exposure Nationwide (ASPEN, Version 1.1) or

the Industrial Source Complex Short Term (ISCST3) dispersion model. EMS-HAP is an

emissions processor for either ASPEN or ISCST3 and performs the steps needed to prepare

toxic emission inventories for these models. These steps include spatial allocation of

county-level non-point and mobile source emissions to either census tracts or grid

cells and temporal allocation of annual emissions to hourly emission rates. In

addition, EMS-HAP can project future year emissions by adjusting the baseline emissions

to account for growth and the emission reductions resulting from emission reduction

scenarios including the implementation of the Maximum Achievable Control Technology

(MACT) standards. Appendix D discusses how the EMS-HAP ancillary files were developed,

and how EMS-HAP was run to process the 1996 National Toxics Inventory (NTI) for ASPEN

for a national scale air toxics assessment. Appendix E discusses how EMS-HAP was used

to process toxic emissions data from the 1996 NTI for ISCST3 for an urban scale

assessment.

17. KEY WORDS AND DOCUMENT ANALYSIS

a. DESCRIPTORS b. IDENTIFIERS/OPEN ENDED TERMS c. COSATI Field/Group

Air Pollution

Emission Models

Emission Processing

National Toxics Inventory

National Air Toxics Assessment

Urban Scale Modeling

Air Toxics

18. DISTRIBUTION STATEMENT

Release Unlimited

19. SECURITY CLASS (Report)

Unclassified 21. NO. OF PAGES436

20. SECURITY CLASS (Page)

Unclassified 22. PRICE

EPA Form 2220-1 (Rev. 4-77) PREVIOUS EDITION IS OBSOLETE