ATM 623: Climate Modeling

Brian E. J. Rose, University at Albany

Lecture 3: Climate sensitivity and feedback

Tuesday February 3 and Thursday February 5, 2015

About these notes:

This document uses the interactive IPython notebook format (now also called Jupyter). The notes can be accessed in several different ways:

Many of these notes make use of the climlab package, available at


  • Questions and discussion about the previous take-home assignment on
    • zero-dimensional EBM
    • exponential relaxation
    • timestepping the model to equilibrium
    • multiple equilibria with ice albedo feedback
  • Reading assigment:
    • Everyone needs to read through Chapters 1 and 2 of "The Climate Modelling Primer (4th ed)"
    • It is now on reserve at the Science Library
    • Read it ASAP, but definitely before the mid-term exam
  • Discuss the use of IPython notebook

1. The feedback concept

A concept borrowed from electrical engineering. You have all probably heard or used the term before, but we’ll try take a more precise approach today.

A feedback occurs when a portion of the output from the action of a system is added to the input and subsequently alters the output:

In [1]:
from IPython.display import Image
Image(filename='../images/feedback_sketch.png', width=500)

The result of a loop system can either be amplification or dampening of the process, depending on the sign of the gain in the loop.

We will call amplifying feedbacks positive and damping feedbacks negative.

We can think of the “process” here as the entire climate system, which contains many examples of both positive and negative feedback.

Two classic examples:

Water vapor feedback

The capacity of the atmosphere to hold water vapor (saturation specific humidity) increases exponentially with temperature. Warming is thus accompanied by moistening (more water vapor), which leads to more warming due to the enhanced water vapor greenhouse effect.

Positive or negative feedback?

Ice-albedo feedback

Colder temperatures lead to expansion of the areas covered by ice and snow, which tend to be more reflective than water and vegetation. This causes a reduction in the absorbed solar radiation, which leads to more cooling.

Positive or negative feedback?

Make sure it’s clear that the sign of the feedback is the same whether we are talking about warming or cooling.

2. Climate feedback: some definitions

Let’s go back to the concept of the planetary energy budget:

$$C \frac{d T_s}{dt} = F_{TOA} $$


$$ F_{TOA} = (1-\alpha) Q - \sigma T_e^4$$

is the net downward energy flux at the top of the atmosphere.

So for example when the planet is in equilibrium, we have $d/dt = 0$, or solar energy in = longwave emissions out

Let’s imagine we force the climate to change by adding some extra energy to the system, perhaps due to an increase in greenhouse gases, or a decrease in reflective aerosols. Call this extra energy a radiative forcing, denoted by $R$ in W m$^{-2}$.

The climate change will be governed by

$$C \frac{d \Delta T_s}{dt} = R + \Delta F_{TOA}$$

where $\Delta T_s$ is the change in global mean surface temperature. This budget accounts for two kinds of changes to $T_s$:

  • due to the radiative forcing: $R$
  • due to resulting changes in radiative processes (internal to the climate system): $\Delta F_{TOA}$

The feedback factor: a linearization of the perturbation energy budget

The key assumption in climate feedback analysis is that changes in radiative flux are proportional to surface temperature changes:

$$ \Delta F_{TOA} = \lambda \Delta T_s $$

where $\lambda$ is a constant of proportionality, with units of W m$^{-2}$ K$^{-1}$.

Mathematically, we are assuming that the changes are sufficiently small that we can linearize the budget about the equilibrium state (as we did explicitly in our previous analysis of the zero-dimensional EBM).

Using a first-order Taylor Series expansion, a generic definition for $\lambda$ is thus

$$ \lambda = \frac{\partial}{\partial T_s} \bigg( \Delta F_{TOA} \bigg) $$

The budget for the perturbation temperature then becomes

$$ C \frac{d \Delta T}{dt} = R + \lambda \Delta T_s $$

We will call $\lambda$ the climate feedback parameter.

A key question for which we need climate models is this:

How much warming do we expect for a given radiative forcing?

Or more explicitly, how much warming if we double atmospheric CO$_2$ concentration (which it turns out produces a radiative forcing of roughly 4 W m$^{-2}$, as we will see later).

Given sufficient time, the system will reach its new equilibrium temperature, at which point

$$\frac{d \Delta T_s}{dt} = 0$$

And the perturbation budget is thus

$$ 0 = R + \lambda \Delta T_s $$


$$ \Delta T_s = - \frac{R}{\lambda}$$

where $R$ is the forcing in W m$^{-2}$ and $\lambda$ is the feedback in W m$^{-2}$ K$^{-1}$.

Notice that we have NOT invoked a specific model for the radiative emissions (yet). This is a very general concept that we can apply to ANY climate model.

We have defined things here such that $\lambda > 0$ for a positive feedback, $\lambda < 0$ for a negative feedback. That’s convenient!

Decomposing the feedback into additive components

Another thing to note: we can decompose the total climate feedback into additive components due to different processes:

$$ \lambda = \lambda_0 + \lambda_1 + \lambda_2 + ... = \sum_{i=0}^n \lambda_i$$

This is possible because of our assumption of linear dependence on $\Delta T_s$.

We might decompose the net climate feedbacks into, for example

  • longwave and shortwave processes
  • cloud and non-cloud processes

These individual feedback processes may be positive or negative. This is very powerful, because we can measure the relative importance of different feedback processes simply by comparing their $\lambda_i$ values.

Let’s reserve the symbol $\lambda$ to mean the overall or net climate feedback, and use subscripts to denote specific feedback processes.

QUESTION: what is the sign of $\lambda$?

Could there be energy balance for a planet with a positive λ? Think about your experiences timestepping the energy budget equation.

3. Calculating $\lambda$ for the zero-dimensional EBM

Our prototype climate model is the zero-dimensional EBM

$$C \frac{d T_s}{dt}=(1-α)Q-σ(\beta T_s )^4$$

where $\beta$ is a parameter measuring the proportionality between surface temperature and emission temperature. From observations we estimate

$$ \beta = 255 / 288 = 0.885$$

We now add a radiative forcing to the model:

$$C \frac{d T_s}{dt}=(1-α)Q-σ(\beta T_s )^4 + R $$

We saw in the previous lecture that we can linearize the model about a reference temperature $\overline{T_s}$ using a first-order Taylor expansion to get

$$C \frac{d \Delta T_s}{d t} = R + \lambda \Delta T_s$$

with the constant of proportionality

$$\lambda = -\Big(4 \sigma \beta^4 \overline{T_s}^3 \Big)$$

which, according to the terminology we have just introduced above, is the net climate feedback for this model.

Evaluating $\lambda$ at the observed global mean temperature of 288 K and using our tuned value of $\beta$ gives

$$ \lambda = -3.3 ~\text{W} ~\text{m}^{-2} ~\text{K}^{-1} $$

Note that we are treating the albedo $\alpha$ as fixed in this model. We will generalize to variable albedo below.

What does this mean?

It means that, for every W m$^{-2}$ of excess energy we put into our system, our model predicts that the surface temperature must increase by $-1/ \lambda = 0.3$ K in order to re-establish planetary energy balance.

This model only represents a single feedback process: the increase in longwave emission to space with surface warming.

This is called the Planck feedback because it is fundamentally due to the Planck blackbody radiation law (warmer temperatures = higher emission).

Here and henceforth we will denote this feedback by $\lambda_0$. To be clear, we are saying that for this particular climate model

$$ \lambda = \lambda_0 = -\Big(4 \sigma \beta^4 \overline{T_s}^3 \Big) $$

Every climate model has a Planck feedback

The Planck feedback is the most basic and universal climate feedback, and is present in every climate model. It is simply an expression of the fact that a warm planet radiates more to space than a cold planet.

As we will see, our estimate of $\lambda_0 = -3.3 ~\text{W} ~\text{m}^{-2} ~\text{K}^{-1} $ is essentially the same as the Planck feedback diagnosed from complex GCMs. Unlike our simple zero-dimensional model, however, most other climate models (and the real climate system) have other radiative processes, such that $\lambda \ne \lambda_0$.

4. Climate sensitivity

Let’s now define another important term:

Equilibrium Climate Sensitivity (ECS): the global mean surface warming necessary to balance the planetary energy budget after a doubling of atmospheric CO2.

We will denote this temperature as $\Delta T_{2\times CO_2}$

ECS is an important number. A major goal of climate modeling is to provide better estimates of ECS and its uncertainty.

Let's estimate ECS for our zero-dimensional model. We know that the warming for any given radiative forcing $R$ is

$$ \Delta T_s = - \frac{R}{\lambda}$$

To calculate $\Delta T_{2\times CO_2}$ we need to know the radiative forcing from doubling CO$_2$, which we will denote $R_{2\times CO_2}$. We will spend some time looking at this quantity later in the semester. For now, let's just take a reasonable value

$$ R_{2\times CO_2} \approx 4 ~\text{W} ~\text{m}^{-2} $$

Our estimate of ECS follows directly:

$$ \Delta T_{2\times CO_2} = - \frac{R_{2\times CO_2}}{\lambda} = - \frac{4 ~\text{W} ~\text{m}^{-2}}{-3.3 ~\text{W} ~\text{m}^{-2} ~\text{K}^{-1}} = 1.2 ~\text{K} $$

Is this a good estimate?

What are the current best estimates for ECS?

Latest IPCC report AR5 gives a likely range of 1.5 to 4.5 K. (there is lots of uncertainty in these numbers – we will definitely come back to this question)

So our simplest of simple climate models is apparently underestimating climate sensitivity.

Let’s assume that the true value is $\Delta T_{2\times CO_2} = 3 ~\text{K}$ (middle of the range).

This implies that the true net feedback is

$$ \lambda = -\frac{R_{2\times CO_2}}{\Delta T_{2\times CO_2}} = -\frac{4 ~\text{W} ~\text{m}^{-2}}{3 ~\text{K}} = -1.3 ~\text{W} ~\text{m}^{-2} ~\text{K}^{-1} $$

We can then deduce the total of the “missing” feedbacks:

$$ \lambda = \lambda_0 + \sum_{i=1}^n \lambda_i $$$$ -1.3 ~\text{W} ~\text{m}^{-2} ~\text{K}^{-1} = -3.3 ~\text{W} ~\text{m}^{-2} ~\text{K}^{-1} + \sum_{i=1}^n \lambda_i $$$$ \sum_{i=1}^n \lambda_i = +2.0 ~\text{W} ~\text{m}^{-2} ~\text{K}^{-1} $$

The net effect of all the processes not included in our simple model is a positive feedback, which acts to increase the equilibrium climate sensitivity. Our model is not going to give accurate predictions of global warming because it does not account for these positive feedbacks.

(This does not mean the feedback associated with every missing process is positive! Just that the linear sum of all the missing feedbacks is positive!)

This is consistent with our discussion above. We started our feedback discussion with two examples (water vapor and albedo feedback) which are both positive, and both absent from our model!

We've already seen (in homework exercise) a simple way to add an albedo feedback into the zero-dimensional model. We will analyze this version of the model below. But first, let's take a look at the feedbacks as diagnosed from current GCMs.

5. Feedbacks diagnosed from complex climate models

Data from the IPCC AR5

This figure is reproduced from the recent IPCC AR5 report. It shows the feedbacks diagnosed from the various models that contributed to the assessment.

(Later in the term we will discuss how the feedback diagnosis is actually done)

See below for complete citation information.

In [2]:
feedback_ar5 = ''
Image(url=feedback_ar5, width=800)

Figure 9.43 | (a) Strengths of individual feedbacks for CMIP3 and CMIP5 models (left and right columns of symbols) for Planck (P), water vapour (WV), clouds (C), albedo (A), lapse rate (LR), combination of water vapour and lapse rate (WV+LR) and sum of all feedbacks except Planck (ALL), from Soden and Held (2006) and Vial et al. (2013), following Soden et al. (2008). CMIP5 feedbacks are derived from CMIP5 simulations for abrupt fourfold increases in CO2 concentrations (4 × CO2). (b) ECS obtained using regression techniques by Andrews et al. (2012) against ECS estimated from the ratio of CO2 ERF to the sum of all feedbacks. The CO2 ERF is one-half the 4 × CO2 forcings from Andrews et al. (2012), and the total feedback (ALL + Planck) is from Vial et al. (2013).

Figure caption reproduced from the AR5 WG1 report


  • P: Planck feedback
  • WV: Water vapor feedback
  • LR: Lapse rate feedback
  • WV+LR: combined water vapor plus lapse rate feedback
  • C: cloud feedback
  • A: surface albedo feedback
  • ALL: sum of all feedback except Plank, i.e. ALL = WV+LR+C+A

Things to note:

  • The models all agree strongly on the Planck feedback.
  • The Planck feedback is about $\lambda_0 = -3.3 ~\text{W} ~\text{m}^{-2} ~\text{K}^{-1} $ just like our above estimate.
  • The water vapor feedback is strongly positive in every model.
  • The lapse rate feedback is something we will study later. It is slightly negative.
  • For reasons we will discuss later, the best way to measure the water vapor feedback is to combine it with lapse rate feedback.
  • Models agree strongly on the combined water vapor plus lapse rate feedback.
  • The albedo feedback is slightly positive but rather small globally.
  • By far the largest spread across the models occurs in the cloud feedback.
  • Global cloud feedback ranges from slighly negative to strongly positive across the models.
  • Most of the spread in the total feedback is due to the spread in the cloud feedback.
  • Therefore, most of the spread in the ECS across the models is due to the spread in the cloud feedback.
  • Our estimate of $+2.0 ~\text{W} ~\text{m}^{-2} ~\text{K}^{-1}$ for all the missing processes is consistent with the GCM ensemble.


This is Figure 9.43 from Chapter 9 of the IPCC AR5 Working Group 1 report.

The report and images can be found online at

The full citation is:

Flato, G., J. Marotzke, B. Abiodun, P. Braconnot, S.C. Chou, W. Collins, P. Cox, F. Driouech, S. Emori, V. Eyring, C. Forest, P. Gleckler, E. Guilyardi, C. Jakob, V. Kattsov, C. Reason and M. Rummukainen, 2013: Evaluation of Climate Models. In: Climate Change 2013: The Physical Science Basis. Contribution of Working Group I to the Fifth Assessment Report of the Intergovernmental Panel on Climate Change [Stocker, T.F., D. Qin, G.-K. Plattner, M. Tignor, S.K. Allen, J. Boschung, A. Nauels, Y. Xia, V. Bex and P.M. Midgley (eds.)]. Cambridge University Press, Cambridge, United Kingdom and New York, NY, USA, pp. 741–866, doi:10.1017/CBO9781107415324.020

6. Feedback analysis of the zero-dimensional model with variable albedo

The model

In the recent homework you were asked to include a new process in the zero-dimensional EBM: a temperature-dependent albedo.

We used the following formulae: $$C \frac{dT_s}{dt} =(1-\alpha)Q - \sigma (\beta T_s)^4 + R$$

$$ \alpha(T_s) = \left\{ \begin{array}{ccc} \alpha_i & & T_s \le T_i \\ \alpha_o + (\alpha_i-\alpha_o) \frac{(T_s-T_o)^2}{(T_i-T_o)^2} & & T_i < T_s < T_o \\ \alpha_o & & T_s \ge T_o \end{array} \right\}$$

with the following parameters:

  • $R$ is a radiative forcing in W m$^{-2}$
  • $C = 4\times 10^8$ J m$^{-2}$ K$^{-1}$ is a heat capacity for the atmosphere-ocean column
  • $\alpha$ is the global mean planetary albedo
  • $\sigma = 5.67 \times 10^{-8}$ W m$^{-2}$ K$^{-4}$ is the Stefan-Boltzmann constant
  • $\beta=0.885$ is our parameter for the proportionality between surface temperature and emission temperature
  • $Q = 341.3$ W m$^{-2}$ is the global-mean incoming solar radiation.
  • $\alpha_o = 0.289$ is the albedo of a warm, ice-free planet
  • $\alpha_i = 0.7$ is the albedo of a very cold, completely ice-covered planet
  • $T_o = 293$ K is the threshold temperature above which our model assumes the planet is ice-free
  • $T_i = 260$ K is the threshold temperature below which our model assumes the planet is completely ice covered.

As you discovered in the homework, this model has multiple equilibria. For the parameters listed above, there are three equilibria. The warm (present-day) solution and the completely ice-covered solution are both stable equilibria. There is an intermediate solution that is an unstable equilibrium.

Feedback analysis

In this model, the albedo is not fixed but depends on temperature. Therefore it will change in response to an initial warming or cooling. A feedback!

The net climate feedback in this model is now

$$ \lambda = \lambda_0 + \lambda_\alpha $$

where we are denoting the albedo contribution as $\lambda_\alpha$.

The Planck feedback is unchanged: $\lambda_0 = -3.3 ~\text{W} ~\text{m}^{-2} ~\text{K}^{-1} $

To calculate $\lambda_\alpha$ we need to linearize the albedo function. Like any other linearization, we use a Taylor expansion and must take a first derivative:

$$ \Delta F_{TOA} = \lambda \Delta T_s = \big(\lambda_0 + \lambda_\alpha \big) \Delta T_s$$$$ \lambda_0 = -\Big(4 \sigma \beta^4 \overline{T_s}^3 \Big)$$$$ \lambda_\alpha = \frac{d}{d T_s} \Big( (1-\alpha)Q \Big) = - Q \frac{d \alpha}{d T_s} $$

Using the above definition for the albedo function, we get

$$ \lambda_\alpha = -Q ~\left\{ \begin{array}{ccc} 0 & & T_s \le T_i \\ 2 (\alpha_i-\alpha_o) \frac{(T_s-T_o)}{(T_i-T_o)^2} & & T_i < T < T_o \\ 0 & & T_s \ge T_o \end{array} \right\}$$

Notice that the feedback we have just calculated in not constant but depends on the state of the climate system (i.e. the surface temperature).

Coding up the model in Python

This largely repeats what I asked you to do in your homework.

In [3]:
%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
In [4]:
def albedo(T, alpha_o = 0.289, alpha_i = 0.7, To = 293., Ti = 260.):
    alb1 = alpha_o + (alpha_i-alpha_o)*(T-To)**2 / (Ti - To)**2
    alb2 = np.where(T>Ti, alb1, alpha_i)
    alb3 = np.where(T<To, alb2, alpha_o)
    return alb3
In [5]:
def ASR(T, Q=341.3):
    alpha = albedo(T)
    return Q * (1-alpha)

def OLR(T, sigma=5.67E-8, beta=0.885):
    return sigma * (beta*T)**4

def Ftoa(T):
    return ASR(T) - OLR(T)
In [6]:
T = np.linspace(220., 300., 100)

plt.plot(T, albedo(T))
plt.xlabel('Temperature (K)')
plt.title('Albedo as a function of global mean temperature')
<matplotlib.text.Text at 0x10f296fd0>

Graphical solution: TOA fluxes as functions of temperature

In [7]:
plt.plot(T, OLR(T), label='OLR')
plt.plot(T, ASR(T), label='ASR')
plt.plot(T, Ftoa(T), label='Ftoa')
plt.xlabel('Surface temperature (K)')
plt.ylabel('TOA flux (W m$^{-2}$)')
plt.legend(loc='upper left')
<matplotlib.legend.Legend at 0x10f944310>

Numerical solution to get the three equilibrium temperatures

In [8]:
# Use numerical root-finding to get the equilibria
from scipy.optimize import brentq
# brentq is a root-finding function
#  Need to give it a function and two end-points
#  It will look for a zero of the function between those end-points
Teq1 = brentq(Ftoa, 280., 300.)
Teq2 = brentq(Ftoa, 260., 280.)
Teq3 = brentq(Ftoa, 200., 260.)

print Teq1, Teq2, Teq3
288.074863604 273.942366846 232.929959046

Feedback analysis in the neighborhood of each equilibrium

In [9]:
def lambda_0(T, beta=0.885, sigma=5.67E-8):
    return -4 * sigma * beta**4 * T**3

def lambda_alpha(T, Q=341.3, alpha_o = 0.289, alpha_i = 0.7, 
                 To = 293., Ti = 260.):
    lam1 = 2*(alpha_i-alpha_o)*(T-To) / (Ti - To)**2
    lam2 = np.where(T>Ti, lam1, 0.)
    lam3 = np.where(T<To, lam2, 0.)
    return -Q * lam3

Here we will loop through each equilibrium temperature and compute the feedback factors for those temperatures.

This code also shows an example of how to do nicely formated numerical output with the print function. The format string %.1f means floating point number rounded to one decimal place.

In [10]:
for Teq in (Teq1, Teq2, Teq3):
    print 'Equilibrium temperature: %.1f K' % Teq
    print '   Planck feedback: %.1f  W/m2/K' % lambda_0(Teq)
    print '   Albedo feedback: %.1f  W/m2/K' % lambda_alpha(Teq)
    print '         Net feedback: %.1f  W/m2/K' %(lambda_0(Teq) + lambda_alpha(Teq))
Equilibrium temperature: 288.1 K
   Planck feedback: -3.3  W/m2/K
   Albedo feedback: 1.3  W/m2/K
         Net feedback: -2.1  W/m2/K
Equilibrium temperature: 273.9 K
   Planck feedback: -2.9  W/m2/K
   Albedo feedback: 4.9  W/m2/K
         Net feedback: 2.0  W/m2/K
Equilibrium temperature: 232.9 K
   Planck feedback: -1.8  W/m2/K
   Albedo feedback: -0.0  W/m2/K
         Net feedback: -1.8  W/m2/K

Results of the feedback analysis

  • The Planck feedback is always negative, but gets a bit weaker in absolute value at very cold temperatures.
  • The albedo feedback in this model depends strongly on the state of the system.
  • At the intermediate solution $T_s = 273.9$ K, the albedo feedback is strongly positive.
  • The net feedback is positive at this intermediate temperature.
  • The net feedback is negative at the warm and cold temperatures.

What does a positive net feedback mean?

Recall from our analytical solutions of the linearized model that the temperature will evolve according to

$$\Delta T_s(t) = \Delta T_s(0) \exp \bigg(-\frac{t}{\tau} \bigg)$$

with the timescale given by

$$ \tau = \frac{C}{-\lambda} $$

In the vicinity of $T_s = 273.9$ K we find that $\lambda > 0$ due to the very strong albedo feedback. Thus $\tau < 0$ in this case, and we are dealing with exponential growth of the temperature anomaly rather than exponential decay.

In other words, if the global mean temperature is close to (but not exactly) this value:

In [11]:
print Teq2

the climate system will rapidly warm up OR cool down. The temperature will NOT remain close to $T_s = 273.9$ K. This is an example of an unstable equilibrium.

The final state of the system after a perturbation will be one of the stable equilibria:

In [12]:
print Teq1, Teq3
288.074863604 232.929959046

Hopefully this is consistent with what you found numerically in the homework.

[Back to ATM 623 notebook home](../index.html)

Version information

In [13]:
%load_ext version_information
%version_information numpy, climlab
Installed To use it, type:
  %load_ext version_information
Python2.7.9 64bit [GCC 4.2.1 (Apple Inc. build 5577)]
OSDarwin 14.3.0 x86_64 i386 64bit
Thu May 14 15:57:45 2015 EDT


The author of this notebook is Brian E. J. Rose, University at Albany.

It was developed in support of ATM 623: Climate Modeling, a graduate-level course in the Department of Atmospheric and Envionmental Sciences, offered in Spring 2015.

In [ ]: