Learning Goals 

ATSC 595D: Atmospheric Dispersion Modeling (3 credits) 

Prof. Roland Stull , Spring 2024. 

 [ Home | ] 


Course Goals

By the end of this course, you will be able to: 

  1. Independently install and run the following air-pollution dispersion models: 
    1. AERMOD 
    2. HYSPLIT 
    3. CALPUFF 
    4. CMAQ 
  2. Explain the physics, assumptions and limitations of those models (so they are NOT "black boxes"). 
  3. Acquire appropriate input data for meteorology, pollutant source specs, etc. to run the models. 
  4. Visualize meteorological and air-quality fields using Panoply and Vapor.  
  5. Present and interpret the output from those models for clients and colleagues. 

Lecture Goals 

Module A - THEORIES 

Day 1: By the end of the lecture, you will be able to: 

  1. Explain why industries and governments need to run Atmospheric Dispersion Models (ADM). 
  2. Find values of ambient air quality standards for chemicals in different regions. 
  3. Define terms used for ADM and relate them to dispersion characteristics. 
  4. Define TKE, explain what causes it to increase or decrease, and justify why it is important for ADM. 

Day 2: By the end of the lecture, you will be able to: 

  1. Relate statistics (mean, standard deviation, and covariance) to physical quantities such as TKE and turbulent flux. 
  2. Draw sketches and explain atmospheric boundary layer (ABL) characteristics and evolution. 
  3. Relate Pasquill-Gifford turbulence types to ABL and dispersion characteristics 
  4. Explain steps in the creation of an equation for concentration from a point-source continues emission (e.g., smoke stack). 

Day 3: By the end of the lecture, you will be able to: 

  1. Explain the steps in the development of Taylor's statistical theory. 
  2. Utilize theories and parameterizations for sigma_y and sigma_z . 
  3. Solve the Gaussian plume equation for concentration at downwind locations 
  4. Fit a Gausian curve to observed concentrations using the method of moments.

Day 4: Catch up & Review . 

 

Module B - AERMOD 

Day 1: By the end of the lecture, you will be able to: 

  1. Explain the meanings of AERMOD input abbreviations (CO, SO, RE, ME, OU), keywords, and parameters. 
  2. Download the most recent version of the AERMOD code to your computer. (Mac users will also learn how to install gfortran on their computers and how to compile the AERMOD source code to create an executable.) 
  3. Create directories with the executables and all required input files, using samples provided by EPA. 
  4. Successfully run AERMOD on your laptop computer for the sample case, and explain the resulting output files. 

Day 2: By the end of the lecture, you will be able to: 

  1. Explain what similarity theory is, and how dimensionless groups are used for turbulent boundary layers. 
  2. Explain how dispersion in the convective ABL differs from dispersion in neutral ABLs. 
  3. Utilize the Deardorff/Stull model and its associated dimensionless groups to calculate concentration. 
  4. Install and run AERMET on your laptop computer, to create the meteorology files needed by AERMOD. 

Day 3: By the end of the lecture, you will be able to: 

  1. Explain the physics and parameterizations used in AERMOD. 
  2. Install and run AERMAP on your computer, to create terrain and receptor input for AERMOD 
  3. Install and run BPIP-PRIME on your computer, to create the AERMOD inputs for building downwash. 

Day 4:  Catch-up & Review.

 

Module C - AERMOD & HYSPLIT 

Day 1: By the end of the AERMOD lecture, you will be able to: 

  1. Explain the steps in creation of Briggs'/Weil's plume-rise governing equations 
  2. Find plume-rise solutions for special combination of effluent and ABL characteristics. 
  3. Explain how plume-rise is used in ARMOD 
  4. Create a team to apply AERMOD to a real situation. 

Day 2: By the end of the HYSPLIT lecture, you will be able to: 

  1. Explain the fundamentals of a Lagrangian model. 
  2. Explain how to use the finite-difference equation for advection by the mean wind (Stull's worksheet, & tutorial section 7.2). 
  3. Explain how the effects of turbulence are added as random motions (tutorial section 7.2). 
  4. Understand the difference between particle and puff methods. 

Day 3: By the end of the HYSPLIT lecture, you will be able to: 

  1. Access Hysplit code and tutorials. 
  2. Install Hysplit on your PC or Mac by following the online tutorial section 1. 
  3. Run the sample cases, explain the sample output, and describe what is in the Hysplit directories on your computer. 
  4. Use the basic online tutorial section 2 to experiment with trajectory and concentrations calculations. 
  5. Write your own code to calculate vertical profiles of turbulence statistics. 

Day 4: Catch-up & Review.

Day 5: Student Presentations about AERMOD features. 

 

Module D - HYSPLIT 

Day 1: By the end of the lecture, you will be able to: 

  1. Access sources of meteorological data such as WRF forecasts and reanalysis data, and convert to ARL format to use as input to hysplit (tutorial 3.1-3.4). 
  2. Manually enter your own meteorological data (tutorial 3.5). 
  3. Enter source location and emission data to do a trajectory calculation, and display various inputs and outputs, and explain 3 possible sources of trajectory error (tutorial 4) 
  4. Summarize the topics covered in tutorials 5 & 6. 

Day 2: By the end of the lecture, you will be able to: 

  1. Configure hysplit to make concentration calculations using clouds of particles (tutorials 7.1-7.6).
  2.  Change hysplit to make concentration calculations using puffs (tutorials 7.7 - 7.8). 
  3. Create other output file formats such as KMZ and shapefiles (tutorial 10). 
  4. Describe other applications of hysplit, such as for wildfires and radioactive pollutants (tutorials 14 & 15) 

Day 3: By the end of the lecture, you will be able to: 

  1. Access the pysplit implemention of Hysplit for python, and explain its utility. 
  2. Understand the capabilities and limitations of the Volcano options (tutorial 16) 
  3. Write your own simple 1-D Lagrangian model code to see how Lagrangian dispersion works. 

Day 4: Catch-up & Review.

Day 5: Student Presentations about HYSPLIT features. 

 

Module E - CMAQ 

Day 1: By the end of the lecture, you will be able to: 

  1. Compare CMAQ (Eulerian, grid-point model) with AERMOD (analytical Gaussian plume) and HYSPLIT (Lagrangian trajectory). 
  2. Explain the complexity of chemical reactions in photochemical smog, such as for CB6. 
  3. Discuss the weather and pollution factors that cause smog/ozone in Greater Vancouver. 
  4. Use chemical reaction equations to devise concentration rate equations. 
  5. Discuss the relationship between CMAQ components/sub-models. 

Day 2: By the end of the lecture, you will be able to: 

  1. Create an account on our server (using your laptop as a terminal) and copy the compiled version of CMAQ into your own directory. 
  2. Copy all the needed input files from the test case into your directory on the server. 
  3. Run the CMAQ test case on the server (takes roughly 3 hours for each student). 
  4. Install Panopoly on your own laptop and use it to view input and output NetCDF files. 

Day 3: By the end of the lecture, you will be able to: 

  1. Present the meteorological representation in CMAQ. 
  2. Present an overview of the types of chemical reactions used in CMAQ. 
  3. Present how CMAQ handles transport between the surface and the atmosphere 
  4. Write your own code to predict the photochemical production ozone based on a small subset of chemical reactions. 

Day 4: Catch-up & Review. 

 

Module F - CMAQ 

Day 1: (might be re-scheduled)  By the end of the tours to air-pollution labs on campus, you will be able to: 

  1. Appreciate the lab equipment, methods and expertise needed to measure smog reactions (Bertram lab) 
  2. Explain how lidars, balloon soundings, and chemistry is measured in the field (McKendry set-up near Grouse Mtn.) 
  3. Describe how sonic anemometers, fast-response li-cor sensors, and lysimeters are used to measure surface fluxes from soil and plants (Black lab) 
  4.  Describe the sensors and their functions used to measure atmospheric carbon, water, and energy exchange (Knox lab) 
  5.  Describe the sensors and their functions used to measure air pollutants (Zimmerman lab; or Borduas- Dedekind lab; or other labs)

Day 2: By the end of the lecture, you will be able to: 

  1. Explain the role of advection in Eulerian smog prediction models. 
  2. List the desirable traits of all numerical advection schemes. 
  3. Compare the behavior of the following finite difference schemes:
    1. FTCS = forward in time, centered in space 
    2. FTBS = forward in time, backward in space 
    3. CTCS = centered in time (leapfrog), centered in space 
    4. RK3CS = 3rd order Runge-Kutta in time, centered in space 
  4. Calculate and explain the role of the Courant number in numerical stability. 

Day 3: By the end of the lecture, you will be able to: 

  1. Contrast finite-difference schemes for grid points with finite volume schemes that use fluxes at cell boundaries. 
  2. Describe the conservative nature of finite volume schemes. 
  3. Show examples of modern grids/cells used for finite volume NWP models, such as MPAS and FV3. 
  4. Write your own code to compare the Piecewise Parabolic Method (PPM) used in CMAQ vs. the FTBS and RK3CS methods. 

Day 4. Catch-up & Review.

Day 5: Student Presentations about CMAQ features. 

 

Module G - CALPUFF 

Day 1: By the end of the lecture, you will be able to: 

  1. Describe the major features and capabilities of the CALPUFF modeling system. 
  2. Explain the relationship between CALWRF, CALMET, CALPUFF, and CALPOST 
  3. List the categories of meteorological input data that are needed to run CALPUFF. 
  4. Discuss the roles of the main Groups in the input "control" file as could be used in a CALPUFF run 

Day 2: By the end of the lecture, you will be able to: 

  1. Modify the model codes and successfully compile then into executables for Unix/linux/Mac users. (PC users can use the GUI executable version provided on the website for this model.) 
  2. Download a copy of all the input files needed for a test/demo run. 
  3. Run the models for the test case. 
  4. Discuss the types and significance of the output files and graphics produced. 

Day 3: By the end of the lecture, you will be able to: 

  1. Solve the equations to create a pollutant "Slug" (section 2.1) as used in CALPUFF. 
  2. Explain how puff/slug averaging is accomplished in CALPUFF, and why it is needed. 
  3. Present and lead a discussion on how (2.3) Building Downwash is handled in the model. 
  4. Present and lead a discussion on how Dry and Wet Deposition (2.7 & 2.9) are parameterized. 

Day 4: Catch-up & Review. 

 

Module H - CALPUFF 

Day 1: By the end of the lecture, you will be able to: 

  1. Present and lead a discussion on how (2.4) Plume Rise is parameterized in CALPUFF. 
  2. Present and lead a discussion on how (2.5) Coastal effects are parameterized. 
  3. Present and lead a discussion on how (2.6) Complex Terrain is handled. 
  4. Present and lead a discussion on how (2.2) Dispersion is approximated in CALPUFF. 

Day 2: By the end of the lecture, you will be able to: 

  1. Acquire WRF meteorological output for current weather, and run CALWRF and CALMET pre-processors. 
  2. Create a new input Control file for CALPUFF, based on specifications provided by the instructor. 
  3. Run CALPUFF for this current data. 
  4. Display the CALPUFF results and discuss their significance. 

Day 3: By the end of the lecture, you will be able to: 

  1. Compare and contrast the 4 models covered in this course: AERMOD, HYSPLIT, CALPUFF, and CMAQ. 
  2. Explain which models are most appropriate for different air-quality situations. 
  3. Discuss how dispersion theories are utilized or approximated in these models. 
  4. Organize and document the dispersion codes on your computer to serve as a resource for your future career. 

Day 4: Catch-up & Review

Day 5: Student Presentations about CALPUFF features

 

== end of course ==


Copyright © 2021, 2024 by Roland Stull, UBC
https://www.eoas.ubc.ca/courses/atsc507/ADM/
Updated 1 Jan 2024