SO441 Lab 3
Vorticity, vorticity advection and the extratropical cyclone
Objectives:
- Become familiar with web sites that provide gridded upper-air observations
- Write MATLAB code to analyze sea level pressure, and wind and height at different vertical levels
- Calculate relative and absolute vorticity from gridded wind observations
- Qualitatively identify regions of absolute vorticity advection
- Identify important features on the objectively analyzed maps (i.e., upper-level troughs, ridges, surface cyclones)
- Interpret your analysis (written paragraphs) describing the country’s weather
Introduction to reanalyses
One of the most important repositories for weather data is the reanalysis. Atmospheric reanalyses have been produced periodically, with a ground-breaking product developed by NOAA in 1996 that has been cited over 22000 times (per Google Scholar). An analysis is a detailed representation of the state of the atmosphere based on observations (satellite, radar, upper-air, surface, buoy, aircraft, etc). Analyses are often gridded in both the horizontal and vertical, with the spacing between grid points getting better over time (in 1996, 2.5° x 2.5° latitude-longitude spacing was standard; now it is 0.5° x 0.5°). A reanalysis is similar to an analysis, with two key differences: first, a reanalysis is not real-time. That means that a radiosonde intended for a 1200 UTC analysis that was launched a few minutes late, and thus wasn’t available for the analysis at 1200 UTC, can be included in the reanalysis after-the-fact. Second, a reanalysis includes output from a numerical weather prediction model, which allows for a complete grid (e.g., grid points over the oceans are not left blank because there are no nearby observations).
The major weather prediction centers all now maintain updated atmospheric reanalyses, and each center’s reanalysis product differs slightly from the other centers: NOAA, the ECMWF, the Japanese Meteorological Agency, etc. In 2017, one of the best sources for downloading reanalysis data in near real-time is maintained by NOAA: https://www.esrl.noaa.gov/psd/data/gridded/data.ncep.reanalysis.html. Using the Internet Explorer browser (the only one that allows passive FTP; details below), take a few minutes to read the brief description at that link.
NOAA maintains several reanalyses, each designed with different users in mind. The near real-time product, which is also one of the original products (so its horizontal resolution has not improved over time), has lots of variables. They tend to be grouped by vertical level (so “Pressure level” would contain variables like temperature, wind, and geopotential height on pressure surfaces like 500 mb and 850 mb, while “Surface” would contain many of the same variables, but for their values at the Earth’s surface). Click on “Pressure level” and explore the information on that page. We note that the pressure level data are available at different times: monthly averages (so one value per month), daily averages (so one value per day), and then synoptic times of 0000, 0600, 1200, and 1800 UTC (so instantaneous values four times per day).
Tasks
The variables available on the different pressure levels include Air Temperature, Geopotential Height, Relative Humidity, U and V wind components, etc. Many of these variables are also available at the surface (select “Surface Data” in the “Other Grid Types”), including sea level pressure. In this lab, we are interested in several of these variables: at 300 mb, we are interested in the u and v wind components (to calculate the vorticity) and the geopotential height. At the surface, we are interested in sea level pressure. We are interested in those data during the rapid cyclogenesis case that we discussed in class, the one that took place from 08-10 February 2017. To refresh your memory, browse around the daily weather map archives maintained by NOAA, http://www.wpc.ncep.noaa.gov/dailywxmap/index.html, and pay attention to the evolution of the surface and upper-air weather features during that period.
Back on the Reanalysis page, notice there are two options to get the data: you can download the raw data files, or you can create a plot or subset (from which to then download a raw data file).
Click the image for “Create plot / subset” for Geopotential Height. Since we want a specific hour, and not the daily mean, choose “4-times Daily” option.
In the 3 options that are presented, only one allows us to access data at 1200 UTC 09 February 2017. So, select the link for “Make plot or subset” for the relevant option in the table. Take some time to look over the web form that shows on the next page. Notice you can choose the date, time, pressure level, variable, latitude/longitude range, and then some options for how to control the image.
Go ahead and make a plot of the 300-mb height at 1200 UTC 09 February 2017 [note that you will have to enter the date/time twice (begin and end)]. At 1200 UTC 09 February 2017, a ridge (orange colors) was located over western United States, with a located trough over eastern North America. The plot is fairly crude, and not very eye-pleasing. You could play around with the options on the web page to improve it. However, the best way to improve the plot is to make it yourself. MATLAB has graphics options to give you control over the figure you create.
Go back to the web interface and download the data (make a subset without making a plot). Because of USNA security restrictions, the FTP link to this plot is unavailable in either Chrome or Firefox. You must use Explorer, then click the wheel-like icon in the far upper-right, then choose Internet Options, and under the Advanced tab, untick the box for “Use Passive FTP (for firewall and DSL modem capability)”.
The netCDF format seems to be the community standard in 2017 for gridded meteorological data sets. You can read more about netCDF at http://www.unidata.ucar.edu/software/netcdf/.
Now that you have the four netCDF data files downloaded, we can begin writing a script in MATLAB to extract the meteorology data from them, then write a series of code segments to plot the data. Start your script with a standard header. Here are some hints on how to do that.
Hint 1: look at the variable names, dimensions, structures, and units by using ncinfo.
var_info = ncinfo('hgt300_12z_09feb2017.nc');
Once you run that line of code, you get a variable called var_info. Double-click on var_info, then double click on “variables” and then double click on the various <1x1 struct> cells that appear in the five columns. We see that there are 5 variables: hgt, lat, level, lon, and time. There are 144 longitudes and 73 latitudes, which makes sense if the resolution is 2.5°x2.5° from 0°-360° and 90°S-90°N.
Hint 2: Now that you know the names of the longitude and latitude variables, extract them and look at them in MATLAB.
lat = ncread('hgt300_12z_09feb2017.nc');
lon = ncread('hgt300_12z_09feb2017.nc','lon');
The first variable, lat, is latitude, with the first latitude 90°, and the values then decrease by 2.5° (southern hemisphere latitudes are negative). The first longitude is 0°, which then increases by 2.5°.
Hint 3: extract the height variable and look at it in MATLAB (double-click hgt300)
Hgt300 = ncread('hgt300_12z_09feb2017.nc','hgt');
It appears that the height at 90°N latitude (column 1) and 0° longitude (row 1) in meters (how did we know the unit is meters? Hint: the output from ncinfo told us!) What if we forgot the level was 300 mb, or if we wanted to double-check our work? We could look at the level variable:
level = ncread('hgt300_12z_09feb2017.nc','level');
------
The rest of the lab will be more self-guided. You need to do the following, all at six times: 0000 UTC 08 February, 1200 UTC 08 February, 0000 UTC 09 February, 1200 UTC 09 February, 0000 10 February, 1200 UTC 10 February:
1. Calculate relative vorticity, , then add Earth vorticity to get absolute vorticity
2. Plot 2 images at each of the 6 times:
- Sea level pressure (contoured every 2 mb)
- Geopotential height (contoured every 120 m as black lines, must include 9000 m as a mandatory interval), u,v quivered winds (black arrows), and contour-filled absolute vorticity.
3. On each plot in #2, add a coastline https://www.usna.edu/Users/oceano/barrett/SO335/coastline.mat and zoom to North America using xlim and ylim [55W-130W] and [20N-60N].
4. For #1, you will need to use an iterative loop to calculate the relative vorticity. For the denominator of each term, convert each latitude and longitude point to meters by multiplying by 110000. Depending on how the meshgrid command sets the y-variable (e.g., if the latitudes count down instead of up), you may need to adjust your code. In the latest versions of MATLAB, I typically use [y,x]=meshgrid(lat,lon).
Once you have the 300-mb plots, look for areas of cyclonic vorticity advection. Also, look for areas of anticyclonic vorticity advection. Then, relate those areas to the development of the surface extratropical cyclone off the Northeast US. Draw on the theory of extratropical cyclone development presented in class: what elements of that theory are present in this case? What elements might be missing?
Write a 2-pg summary of the event, complete with properly captioned figures cited in order in your discussion.
- 4 -