Climate connection
Greenhouse gases, although present in small concentrations in the atmosphere, play a decisive role in the balance of radiation between the earth and its surroundings, and ultimately the temperature of the planet. Climate scientist divide this radiation into two broad categories: shortwave, which is the main form of light from the sun, and longwave, which is the main form of light emitted by the earth's surface and atmosphere. By burning fossil fuels, humans have significantly altered the greenhouse gas content of the atmosphere, increased the longwave radiance reaching the earth's surface from the atmosphere, and thereby altered the radiative balance of the planet. Understanding radiative balance, and how it is measured, is fundamental to climate literacy.
Climate scientists measure radiative balance in permanent Arctic Observatories, as well as at temporary platforms in the Arctic and Antarctic. The International Arctic Systems for Observing the Atmosphere IASOA website, https://www.esrl.noaa.gov/psd/iasoa/, provides access to data obtained at these observatories. One of these observatories is in Summit, Greenland. The Greenland ice sheet is of particular interest because of its potential to raise sea level. Scientists estimate that the melting of the Greenland ice sheet would raise sea levels by about 7 m. Furthermore, recent research is suggesting that global warming will cause loss of Greenland ice faster than previously thought, with potentially large implications for sea level rise and cascading effects due to the large input of freshwater into the ocean.
In this activity, we will download and look at some infrared spectra from Summit Greenland to understand how individual gases contribute to the greenhouse effect.
Downloading an Arctic spectrum
Click on this link https://youtu.be/HXVqFA5kvhI to watch a video showing how to navigate the IASOA website. Follow the instructions for downloading an Arctic spectrum.
Remote sensing
The Arctic spectrum you just downloaded is measured by a remote sensing instrument, which measures electromagnetic radiation as it is emitted by, passes through, or is reflected by the atmosphere. Remote-sensing instruments are deployed in various ways, each designed to provide a different perspective on the flow of radiation through the atmosphere. In one configuration, the instrument is mounted on a satellite, and looks down toward the earth to measure upwelling radiance. Such configurations collect data over large swaths of the earth's surface, and include information from the atmosphere as well as the earth's surface. Sometimes aircraft are deployed with instruments that can look up (measuring downwelling radiance) as well as down. Such configurations have the advantage that they can monitor very specific processes, like way an individual cloud reflects and transmits light. A third configuration places an instrument on the ground, looking up, as shown in Figure 1.
Figure 1. Downwelling radiance remote-sensing experiment configuration.
Remote sensing instruments also use a variety of wavelengths of radiation, each taking advantage of specific properties of the wavelength. LIDAR instruments, which measure light bounced back by atmospheric aerosols and clouds, are usually built to use visible light, because visible light is especially sensitive to scattering by these particles. Infrared (IR) light is in the longwave part of the spectrum, so remote sensing instruments operating in the IR are especially useful for measuring the greenhouse effect.
In this CGI you'll be focusing on remote sensing in the IR part of the spectrum, but with a special extra twist: you'll be looking at data from an FTIR spectrometer (FTIR for short). FTIRs can resolve the different wavelengths of IR light. That makes it possible to distinguish which gases are contributing to the greenhouse effect, and also how much.
In the following, you will plot a spectrum you downloaded. You will need to change the filename directory to the directory where you put your file, as directed by your instructor. You do not need to change anything else in the following cells.
# Load packages
from numpy import *
from netCDF4 import Dataset
import matplotlib.pyplot as plt
import quantumlibrary as ql
%matplotlib notebook
# Here we set the file to load and load it in.
# Change the directory only. Be sure to end with a backslash, '/'.
#myDirectory = '/Users/prowe/Projects/NSF_CGI_polarData/CGIs/Quantum/'
myDirectory = './'
filename_summit = 'smtaerich1X1.b1.20101228.000313.cdf'
summitData = Dataset(myDirectory + filename_summit,"r")
# Here we plot the spectrum
plt.plot(summitData.variables['wnum'][:],mean(summitData.variables['mean_rad'][3300:3375,:],axis=0))
plt.plot([450,1800],[0,0],'k:')
plt.axis([490,1800,-5,80])
plt.xlabel('wavenumber (cm$^{-1}$)')
plt.ylabel('Radiance (mW / [m$^2$ sr$^{-1}$ cm$^{-1}$])')
The above is an example of a downwelling IR radiance spectrum, taken by a ground-based FTIR. In it, you can see a number of interesting features. For one thing, the instrument was pointed at a cloud-free section of the sky, so all the features you see are due to atmospheric gases. In the following cell, we label some of the features due to the most important greenhouse gases.
A prominent feature, centered at 1042 cm$^{-1}$, is due to ozone. The large band between 600 and 750 cm$^{-1}$ is due $CO_2$; this band is particularly important, as it is the primary mechanism by which $CO_2$ acts as a greenhouse gas. Many of the other spectral features are due to $H_2O$, which is a very strong emitter with many complicated, overlapping bands. The spectrum also includes features due to $CH_4$, $N_2O$, and other trace gases.
How do these spectral features arise? We can talk about ozone as an example. At any given time, some ozone molecules are in a vibrationally excited state. Those molecules will eventually relax to the ground state, releasing in the process an IR photon. Note that the ozone feature appears as two humps, or an "M" shape. That's because the vibrational relaxation is accompanied by very specific rotational selection rules. These rules will be explored in a subsequent CGI.
plt.text(510,75,'H$_2$O')
plt.text(667,70,'CO$_2$') # Centered at 667 cm-1
plt.text(1030,15,'O$_3$') # Centered at 1042 cm-1
plt.text(1240,15,'N$_2$O') # Centered at 1285 cm-1
plt.text(1280,20,'CH$_4$') # Centered at 1311 cm-1
plt.text(1550,20,'H$_2$O'); # Centered at 1595 cm-1
plt.plot([1340,1340,1798,1798],[16,18,18,16],'k')
While downwelling IR spectra from anywhere on Earth are useful, spectra taken in polar regions are especially useful for revealing more information about greenhouse gases other than water (e.g., $CO_2$, $O_3$, $CH_4$, and $N_2O$). Here, we'll examine that claim by comparing the downwelling IR spectrum from Summit, Greenland in winter to a summertime spectrum from the mid-latitudes, at the Southern Great Plains megasite in Oklahoma. (You should have the file sgpaerich1nf1turnC1.c1.20170701.000432.cdf in your directory).
myDirectory = '/Users/prowe/Data/SGP/AERI/'
filename_sgp = 'sgpaerich1nf1turnC1.c1.20170706.000443.cdf' #'sgpaerich1nf1turnC1.c1.20170701.000432.cdf'
sgpData = Dataset(myDirectory + filename_sgp,"r")
print(sgpData.variables['mean_rad'].shape)
print(sgpData.variables['wnum'].shape)
plt.figure(3); #plt.hold(False)
plt.plot(summitData.variables['wnum'][:],mean(summitData.variables['mean_rad'][3300:3375,:],axis=0))
#plt.hold(True)
#for i in range(4,100):
# plt.plot(sgpData.variables['wnum'][:],sgpData.variables['mean_rad'][i,:])
plt.plot(sgpData.variables['wnum'][:],mean(sgpData.variables['mean_rad'][4:400,:],axis=0))
plt.plot([450,1800],[0,0],'k:')
plt.axis([490,1800,-5,177])
plt.xlabel('wavenumber (cm$^{-1}$)')
plt.ylabel('Radiance (mW / [m$^2$ sr$^{-1}$ cm$^{-1}$])')
plt.legend(['Summit, Greenland: December','Oklahoma: July'])
#plt.plot(sgpData.variables['wnum'][:],mean(sgpData.variables['mean_rad'][3300:3375,:],axis=0))
plt.text(550,165,'H$_2$O')
plt.text(667,160,'CO$_2$') # Centered at 667 cm-1
plt.text(1030,100,'O$_3$') # Centered at 1042 cm-1
plt.text(1240,75,'N$_2$O') # Centered at 1285 cm-1
plt.text(1280,65,'CH$_4$') # Centered at 1311 cm-1
plt.text(1550,65,'H$_2$O'); # Centered at 1595 cm-1
plt.plot([1340,1340,1798,1798],[55,60,60,55],'k')
# # This is extra and needs to be removed
# myDirectory = '/Users/prowe/Data/SGP/AERI/'
# filename_sgp = [\
# 'sgpaerich1nf1turnC1.c1.20170701.000432.cdf',
# 'sgpaerich1nf1turnC1.c1.20170702.000448.cdf',
# 'sgpaerich1nf1turnC1.c1.20170703.000444.cdf',
# 'sgpaerich1nf1turnC1.c1.20170704.000432.cdf',
# 'sgpaerich1nf1turnC1.c1.20170705.001155.cdf',
# 'sgpaerich1nf1turnC1.c1.20170706.000443.cdf',
# 'sgpaerich1nf1turnC1.c1.20170707.000441.cdf',
# 'sgpaerich1nf1turnC1.c1.20170708.000530.cdf',
# 'sgpaerich1nf1turnC1.c1.20170715.000438.cdf',
# 'sgpaerich1nf1turnC1.c1.20170716.000437.cdf',
# 'sgpaerich1nf1turnC1.c1.20170717.000455.cdf',
# 'sgpaerich1nf1turnC1.c1.20170718.000440.cdf',
# 'sgpaerich1nf1turnC1.c1.20170719.000425.cdf']
# print(filename_sgp[0])
# x=arange(1)
# for ifile in range(len(filename_sgp)):
# sgpData = Dataset(myDirectory + filename_sgp[ifile])
# plt.figure(2)
# plt.hold(True)
# i962 = np.where(sgpData.variables['wnum'][:]>961)[0][0];
# x = arange(sgpData.variables['mean_rad'].shape[0])+x[-1]+100;
# plt.plot(x,sgpData.variables['mean_rad'][:,i962])
Sometimes you need to lay out a range of values, like integers
# Lay out a range of J-values from 0 to 4 at intervals of 1
J = arange(0,5,1); print(J)
# Lay out a range of J-values from 0 to 4 at intervals of 2
J = arange(1,5,2); print(J)
# Lay out a range of J-values from 1 to 20 at intervals of 2
J = arange(1,20,2); print(J)
Sometimes you need to plot a spectrum based on the positions and heights of peaks. Here's a routine that helps you do that.
Record your Pause for Analysis reflections in your notebook, with appropriate graphs and equations.