[ Home | Homework | ]
Homework Assignments
HW |
Date 2024 | Details |
|
12 Feb | Bring your laptops to class. Tim Chui will lead us in the installation of the hysplit model. If he finishes quick enough, then Reagan McKinney will start leading us thru the hysplit tutorials. | ||
14 Feb | Bring your laptops to class. Reagan McKinney leads us in the hysplit tutorials. |
||
. |
12 Feb |
Readings:
|
|
. |
Due by 16 Feb |
# HW3 - Similarity PBL parameterizations for sigma used in hysplit # R. Stull, 23 Feb 2016 # ES = equation number in BAMS supplementary material by Stein et al (Dec 2015) on Hysplit model # http://journals.ametsoc.org/doi/suppl/10.1175/BAMS-D-14-00110.1/suppl_file/10.1175_bams-d-14-00110.2.pdf # Givens: # general tlhoriz = 10800. # lagrangian timescale for horizontal turbulence (s) g_by_tv = 0.0333 # g/Tv approx constant (m s^-2 K^-1) rho_cp = 1231. # air density times specific heat at const press, approx as constant. (W/m2)/(K m/s) # stable and neutral pbl ustar_n = 0.2 # friction velocity (m/s) for neutral PBL with moderate mean wind zi_n = 500. # pbl depth in neutral and stable tlvert_s = 5. # lagrangian time scale for vertical motions for stable pbl (s) tlvert_n = 200. # lagrangian time scale for vertical motions for unstable pbl (s) # unstable pbl Hsfc = 280. # surface heat flux (W/m2) FHsfc = Hsfc / rho_cp # kinematic heat flux (K m/s) at the surface ustar_u = 0.05 # friction velocity (m/s) for convective PBL with light winds zi_u = 1000. # mixed-layer depth for unstable pbl (m) tlvert_u = 200. # lagrangian time scale for vertical motions for unstable pbl (s) # Hint 1: for unstable pbl, use w* = Deardorff velocity from Stull Practical Meteor, eq (18.19a) # Hint 2: kinematic heat flux FHsfc = (traditional heat flux) / rho_cp . # Hint 3: for the Obukhov length (L), use z/L = -0.4 * (z/zi) * (w*/u*)^3 # Hint 4: the "surface layer" is generally the bottom 10% of the whole boundary layer # Exercise: # Calculate and Plot all 3 velocity variances (sigma_u2, sigma_v2, sigma_w2) in (m2/s2) # vs. height (z) for z ≤ zi, for # (1) stable/neutral pbl on one graph, using eqs (ES9 - ES11) # (2) unstable pbl on another graph, using eqs. (ES15 - ES16) # (3) unstable surface layer in the previous graph, using eq. (ES17). # Check your answers and discuss the significance. # Turn in your code and the contour plots. |
This is a chance to learn about some of the planetary boundary layer (pbl) parameterizations used in Hysplit. You can write your code in any language; e.g., R, MatLab, python, fortran, excel, etc. |
. |
26 Feb - continued |
Stull and/or Tim covers Panoply installation and use. Topics for in-class exercises:
Get NetCDF files and view them using NASA's Panoply program.
Convert WRF meteorology NetCDF files into ARL format that Hysplit can
read. Then use those ARL files to run your own simulated
emissions from UBC.
Here is the Hysplit dispersion-model run assignment, which you can start in class, and finish at home to submit via Canvas. (If there is extra time this period, Start can discussing how Calpuff works. Stull: Intro to Calpuff "slugs". Review of sections 2.1 and 2.2 of Calpuff Users Guide v5. ) |
Here we use real weather data and learn how to set up our own emissions. |
. |
28 Feb |
The following homework is due today. (But OK to turn in late.) # HW4 - Homework, Write your own 1-D Lagrangian particle dispersion model # Givens: # unstable pbl # plume info # initial conditions # model integration # Hint 1: for unstable pbl, use w* = Deardorff velocity from Stull Practical Meteor, eq (18.19a) # Homework, create a Lagrangian model to track the vertical movement of a bunch particles released |
This is a chance to learn
about Lagrangian particle modeling similar to what is used in Hysplit,
except in only one dimension (vertical). You can write your code in any language; e.g., R, MatLab, python, fortran, excel, etc. |
4 Mar | If needed, Tim Chui will finish showing us how to install Calpuff, Calmet, Calpost, and other components. Before class, please skim the Calpuff User Instructions. Meanwhile, start working on the following homework, due 6 March: # HW5 - Homework: 2-D (x-z) Lagrangian particle transport. Use any language: R, Matlab, python, etc. # # ===========
2) How could you covert positions of many particles into concentration values at any fixed location? | ||
11 Mar | The 2-D Lagrangian HW desribed above is due today (but you can turn it in late). | ||
(switch to the Calpuff Homework web page to see subsequent calendar dates) | |||
Below is info from previous years, which you can IGNORE. |
|||
7 |
18 Feb |
Readings:
|
|
8 |
23 Feb |
# Similarity PBL parameterizations for sigma used in hysplit # R. Stull, 23 Feb 2016 # ES = equation number in BAMS supplementary material by Stein et al (Dec 2015) on Hysplit model # http://journals.ametsoc.org/doi/suppl/10.1175/BAMS-D-14-00110.1/suppl_file/10.1175_bams-d-14-00110.2.pdf # Givens: # general tlhoriz = 10800. # lagrangian timescale for horizontal turbulence (s) g_by_tv = 0.0333 # g/Tv approx constant (m s^-2 K^-1) rho_cp = 1231. # air density times specific heat at const press, approx as constant. (W/m2)/(K m/s) # stable and neutral pbl ustar_n = 0.2 # friction velocity (m/s) for neutral PBL with moderate mean wind zi_n = 500. # pbl depth in neutral and stable tlvert_s = 5. # lagrangian time scale for vertical motions for stable pbl (s) tlvert_n = 200. # lagrangian time scale for vertical motions for unstable pbl (s) # unstable pbl Hsfc = 280. # surface heat flux (W/m2) FHsfc = Hsfc / rho_cp # kinematic heat flux (K m/s) at the surface ustar_u = 0.05 # friction velocity (m/s) for convective PBL with light winds zi_u = 1000. # mixed-layer depth for unstable pbl (m) tlvert_u = 200. # lagrangian time scale for vertical motions for unstable pbl (s) # Hint 1: for unstable pbl, use w* = Deardorff velocity from Stull Practical Meteor, eq (18.19a) # Hint 2: kinematic heat flux FHsfc = (traditional heat flux) / rho_cp . # Hint 3: for the Obukhov length (L), use z/L = -0.4 * (z/zi) * (w*/u*)^3 # Hint 4: the "surface layer" is generally the bottom 10% of the whole boundary layer # Exercise: # Calculate and Plot all 3 velocity variances (sigma_u2, sigma_v2, sigma_w2) in (m2/s2) # vs. height (z) for z ≤ zi, for # (1) stable/neutral pbl on one graph, using eqs (ES9 - ES11) # (2) unstable pbl on another graph, using eqs. (ES15 - ES16) # (3) unstable surface layer in the previous graph, using eq. (ES17). # Check your answers and discuss the significance. # Turn in your code and the contour plots. |
This is a chance to learn about some of the planetary boundary layer (pbl) parameterizations used in Hysplit. You can write your code in any language; e.g., R, MatLab, python, fortran, excel, etc. |
9 |
25 Feb |
Hysplit Modeling:
|
You will
gradually learn more and more about Hysplit, by working your way
through their online tutorial, and using their "canned" weather and
emission data. |
11 |
3 Mar |
Hysplit Exercise 1: Trajectories a. Execute Hysplit. (Hint, see the tips provided by our TA Matt.) b. use 3-day WRF meteorological data, already in ARL format, as provided by Matt. It is 641 MB. Copy it to your local machine for using it as input to Hysplit. You can find the meteorology data at: /scratch/data/hysplit_data/ARLDATA_MULTI.BIN Canada-Wide domain, Time_start = 16-02-29-00 Time_end = 16-03-02-23 Hint: Use the Meteorology tab in Hysplit to check if the data is good, and plot maps to see where it is. c. make a Trajectory run. (Hint: see Hysplit tutorial 4.1, but using our own data.) - use an emission start time corresponding to the first time available in the meteorology - use 9 starting locations, all at Edmonton. Assume a forest fire injects smoke at all these altitudes (m) of 10, 100, 200, 500, 1000, 2000, 3000, 4000, 5000 - run for the max hours available in the meteorology (72 hours). Forward trajectory. Default Model top 10000.0 m agl. - use default values for Vertical Motion and Output. - select the correct ARLDATA_MULTI.BIN file holding the WRF meteorological data. - Save (or Save As if you want to put the set-up info in a special file location) - Run the Trajectory model. - Display the results (use default values for all fields, except pick Meters-agl instead of Pressure) and include in the HW you turn in, for both: -- the default (most of North America) display, AND another plot -- zoomed into the closest 400 km (Hint, try setting the display to show 4 rings with 100 km radial spacing.) - Discuss the significance of the results. d. - Are there any advantages to using a lower model top? (Hint: tutorial 4.2) - Are there disadvantages or physical implications to using a lower model top? e. How does the mixed layer depth vary during the forecast? (Hint: tutorial 4.3) You can use a 3-hour increment if you wish. f. - Does our meteorological data have vertical velocities included? (Hint: tutorials 4.3 and 4.8) - If so, what is their range during the period of the forecast (i.e., the max and min values)? - What are the units, and how do these units relate to vertical speeds in (m/s)? (Hint, recall p451 of Stull, Practical Meteor.) - Does your answer make sense compared to the synoptic weather situation? (Hint, use daily weather maps from http://www.wpc.ncep.noaa.gov/dailywxmap/pdffiles.html ) g. When you look at a contour map of the surface pressure field in our meteorological input file, what do you see? h. Simulate a continuous point-source emission at 200 m height at Edmonton by emitting a particle every hour, with trajectory durations of 72 hours, for that one level. (Hint: tutorial 4.11). (I had difficulties with this.) Note: No matter what we do, Henryk has always done it first. See http://weather.eos.ubc.ca/Interpretation/StreakLines/Streaks1.CParks.mov i. Display the flow field at 200 m elevation at the start of day 1 by emitting particles from a grid of emitters. (Hint: tutorial 4.12) Hints: forward trajectories of 6 hours. Pick lower left and upper right corners for the display that are within the forecast domain (else the model crashes). j. Create an ensemble of runs from near the one emission grid point at Edmonton (200 m emission height). Show the resulting plot, and discuss the meaning of the spread of trajectories. (Hint: tutorial 4.13). (more to come soon) |
|
12 |
31 Mar |
||
13 |
15 Apr |
Hysplit Exercise 2: Concentrations ===== a. Execute Hysplit on my iMac: - run iTerm -navigate to rstull/Hysplit4/working/ -type: ./hysplit4.tcl ===== b. use 3-day WRF meteorological data, already in ARL format, as provided by Matt. It is 641 MB. If you have already copied this file to your iMac for your trajectory runs, then no need to do it again for concentration runs. Otherwise ... Copy it to your local machine for using it as input to Hysplit. You can find the meteorology data at: /scratch/data/hysplit_data/ARLDATA_MULTI.BIN Canada-Wide domain, Time_start = 16-02-29-00 Time_end = 16-03-02-23 ===== c. Do tutorial exercise 6.1, but using our own ARLDATA_MULTI.BIN data instead. (1)Menu / Reset Concentration / Setup Set start time to 16 02 29 00 1 starting location at Edmonton Run duration = 12 hours Clear old meteorology files, then add our ARLDATA_MULTI.BIN Leave all the other default values (eg. emission height is 10 m) Save (2)Concentration/Run Model Exit the running pop-up menu. (3) Concentration / Display / Concentration / Contours Execute Display Show a plot of the results, and Discuss what it shows you, and how it determines concentration from the individual particles. ===== d) Do this run again, but for 36 hours. Plot the concentrations. Compare with the plot from (c). to answer these questions: - what is the emission duration - what is the averaging period - why does the last plot look like particles instead of concentrations? ===== e) Do tutorial exercise 6.2 (parts 1-4), but using our own ARLDATA_MULTI.BIN data instead. (i) Use the same set-up as (c1), namely, use 12 h run and 10 m emission. Plot the result and discuss. (ii) Repeat, but with 36 h run. Compare the results. Discuss what you see. Also, based on what you now know, you might want to change your discussion to questions (c) or (d) above. (iii) Repeat part (i), but only for 12 h, and for the Grids set up for an averaging layer depth of 1000 m. Discuss why the concentrations values are different from (3(i)). ===== f) Do Tutorial 6.3, but with our own arl file. Start with the same setup as you just finished in the previous exercise. (i) Do Tutorial 6.3 parts (1) and (2) and Discuss how this relates to what you saw in your previous exercises. (ii) For Tutorial 6.3 part (3), if you can't create an animation, don't worry. You can view the pdf output on your mac in Preview. Set it to view single frame, then use the arrow buttons on your keyboard to step forward or back. (ii) Do Tutorial 6.3 part (4). Namely: Concentration/SetupRun/SaveAs and: Advacnced/ConfigurationSetup/Concentration/SaveAs ===== g) Do Tutorial 6.4, but with our ARL file. (i) Do tutorial step (1) and in Concentration / Setup change the run time to 36 hours before you run the model as step (2). Show and discuss the results. (ii) Do tutorial step (3), and show the resulting contour plots. Do tutorial step (4) , but changing the grid spacing to 0.2 degrees in latitude and longitude (not to 0.005 as stated in the tutorial). Show the results. - Discuss how averaging time and averaging volume affect the concentration that is computed, and how it is displayed. For example, compare the concentrations (max value, and shape of distribution) at 1800 on 29 Feb from the output of tutorial (4) vs. tutorial (3). - Further discuss whether the concentration SHOULD change when the time and spatial averaging is changed? Why? - In the last run that you contoured, what is the red dot in the graphics output? - Also discuss how the apparent run time relates to the number of particles released. - Further discuss what is the "best" averaging time and averaging volume to use for forecasts of real events where the actual concentration values are important. How do you determine this "best" value? Save the control and namelist files again, with the filenames suggested at the end of tutorial 6.4. |
|
14 |
29 Apr |
Hysplit Exercise 3: Concentrations (continued) ======== h) Do tutorial 6.5. Setup using our own ARL meteorological data, with emissions from Edmonton at the default 10 m height, and for only a 12 hour forecast. In the Advanced Config Setup menu, for menu #4, change the particles released per cycle back to 100. Run using the SETUP.CFG file. Follow the tutorial for the display, but show every 1 particle, and zoom about 70%. For that same output, also produce the normal contoured concentration display. Show both displays, (1) Compare and Discuss the results. (2) What do the different colour particles represent in the particle display? How does the vertical cross section relate to the movement of particles in the horizontal map display? What does the diagonal red dashed line represent in the particle map display? (3) Why does the normal contoured concentration display show contours that do NOT agree with the particle positions from the particle map? (4) Recall your own Lagrangian 2-D model that you wrote. Do those runs help you interpret the output from Hysplit? If so, how? ======== i) Do tutorial 6.6. Change the run duration to 36 h. And emit 10 particles each period. For the Display, try 50% zoom but if the particles leave the displayed domain then change to 30% zoom, and plot concentration contours. Note, this method is a "hybrid" method, in that the horizontal dispersion is as a puff, but the vertical is still as particles. (1) Show the results and discuss. (2) Compare the top-hat vs the Gaussian horizontal puff. In particular, why does there appear to be a different number of puffs in the Gaussian case at 36 h into the forecast compared to the top-hat case? (3) Compare the Gaussian horizontal puff output to your particle output from homework part (d) (i.e., from tutorial 6.1), particularly at the 36 hour forecast. (4) Compare and discuss the averaging times used to create your answer to part (d) to the averaging times used for the puff forecast. (5) In tutorial question 5 where we increase the particles released to 100. When you run the model, watch the simulation log output. Why does the percent complete increase rapidly at first, but more slowly as the model nears 100% completion (Hint, come back and answer this after completing tutorial 6.7)? How do the shapes and concentrations of the overall pollutant concentration pattern compare with the ones for particles that you did earlier? Which version is correct: puffs or particles? (6) Make an additional run, this one using Gaussian horizontal puffs and Top-hat vertical puffs. This is NOT a hybrid mod, but purely uses puffs in all dimensions. How does this output compare to the other puff runs you just made? Which looks more realistic? Why do the first few frames of output show NO pollutants (Hint, come back to this after you have read tutorial 6.8) ? ========= j) Read, but do not run, tutorial 6.7. Use this info to help answer the previous question i(5). ========= k) Read tutorial 6.8. (1) How do the eqs. described here compare to what you used in your Lagrangian 2-D code that you wrote? (2) Why does the eq. for concentration in exercise 5 of tutorial 6.8 have "delta_c" instead of just "c" on the left side of the eq.? (I might have asked this before.) ============ l) Do tutorials 6.9 & 6.10 but for our ARL data, and only out to 36 hour forecast. Use the start time and location as we have already been using for Edmonton. Pretend that the Sudbury smelter is located in Edmonton. The annual emission rate of SO2 was 2 million tonnes/yr decades ago when the smelter was at its peak production. Convert this to emissions in g/s, to use in Hysplit for this exercise. Assume as stack-top height of 380 m (which was the actual height of the Sudbury stack), but located in Edmonton for this exercise. Try to follow as much of this tutorial as possible, modifying as needed to work with our location, meteorology, and emissions. Show and Discuss your results. Help your classmates. ====== m) Read tutorial 6.11. Use that info and use the output from the previous model run to plot a meteogram of SO2 concentration at the surface (i.e., at z = 10 m) vs. time (0 to 36 h) for a single receptor station located 100 km East of Edmonton smelter. Show and Discuss your results, and explain why or why not it agrees with the contour plots that you had produced in the previous exercises. === You are finished with Hysplit. Note that the tutorials cover many additional features and options that we don't have time to cover. Please skim the Tutorial index (via the Home link in any of the tutorials) to see the list of features and options. But you have sufficient background to cover them on your own, if you need them for your own research. It always helps for you to create your own homework exercises for simplified scenarios, to understand the basics of any model before you apply it to real situations. ====== -end- Thanks again to Matt, our TA, for teaching us the basics, and for creating the WRF ARL file for these exercises. |
|
Other Info
[ Home | Homework | ]
http://www.eos.ubc.ca/courses/atsc507/ADM/
Last updated 1 May 2024.
Copyright © 2016, 2018, 2021, 2024 by Roland Stull.