Increasing the Signal-to-Noise Ratio With More Noise

30 July, 2012

guest post by Glyn Adgie and Tim van Beek

Or: Are the Milankovich Cycles Causing the Ice Ages?

The Milankovich cycles are periodic changes in how the Earth orbits the Sun. One question is: can these changes can be responsible for the ice ages? On the first sight it seems impossible, because the changes are simply too small. But it turns out that we can find a dynamical system where a small periodic external force is actually strengthened by random ‘noise’ in the system. This phenomenon has been dubbed ‘stochastic resonance’ and has been proposed as an explanation for the ice ages.

In this blog post we would like to provide an introduction to it. We will look at a bistable toy example. And you’ll even get to play with an online simulation that some members of the Azimuth Project created, namely Glyn Adgie, Allan Erskine and Jim Stuttard!

Equations with noise

In This Weeks Finds, back in ‘week308’, we had a look at a model with ‘noise’. A lot of systems can be described by ordinary differential equations:

\displaystyle{ \frac{d x}{d t} = f(x, t)}

If f is nice, the time evolution of the system will be a nice smooth function x(t), like the trajectory of a thrown stone. But there are situations where we have some kind of noise, a chaotic, fluctuating influence, that we would like to take into account. This could be, for example, turbulence in the air flow around a rocket. Or, in our case, short term fluctuations of the weather of the earth. If we take this into account, we get an equation of the form

\displaystyle{ \frac{d x}{d t} = f(x, t) + W(t) }

where the W is some model of noise. In all the examples above, the noise is actually a simplified way to take into account fast degrees of freedom of the system at hand. This way we do not have to explicitly model these degrees of freedom, which is often impossible. But we could still try to formulate a model where long term influences of these degrees of freedom are included.

A way to make the above mathematically precise is to write the equation in the form

d x_t = f(x, t) d t + g(x, t) d W_t

as an Ito stochastic differential equation driven by a Wiener process.

The mathematics behind this is somewhat sophisticated, but we don’t need to delve into it in this blog post. For those who are interested in it, we have gathered some material here:

Stochastic differential equation, Azimuth Library.

Physicists and engineers who model systems with ordinary and partial differential equations should think of stochastic differential equations as another tool in the toolbox. With this tool, it is possible to easily model systems that exhibit new behavior.

What is stochastic resonance?

Listening to your friend who sits across the table, the noise around you may become a serious distraction, although humans are famous for their ability to filter the signal—what your friend is saying – from the noise—all other sounds, people’s chatter, dishes clattering etc. But could you imagine a situation where more noise makes it easier to detect the signal?

Picture a marble that sits in a double well potential:

double well potential

This graphic is taken from

• Roberto Benzi, Stochastic resonance: from climate to biology.

This review paper is also a nice introduction to the topic.

This simple model can be applied to various situations. Since we think about the ice ages, we can interpret the two metastable states at the two minima of the potential in this way: the minimum to the left at -1 corresponds to the Earth in an ice age. The minimum to the right at 1 corresponds to the Earth at warmer temperatures, as we know it today.

Let us add a small periodic force to the model. This periodic force corresponds to different solar input due to periodic changes in Earth’s orbit: the Milankovich cycles. There are actually several different cycles with different periods, but in our toy model we will consider only one force with one period.

If the force itself is too small to get the marble over the well that is between the two potential minima, we will not observe any periodic change in the position of the marble. But if we add noise to the motion, it may happen that the force together with the noise succeed in getting the marble from one minimum to the other! This is more likely to happen when the force is pushing the right way. So, it should happen with roughly the same periodicity as the force: we should see a ‘quasi-periodic’ motion of the marble.

But if we increase the noise more and more, the influence of the external force will become unrecognizable, and we will not recognize any pattern at all.

There should be a noise strength somewhere in between that makes the Milankovich cycles as visible as possible from the Earth’s temperature record. In other words, if we think of the periodic force as a ‘signal’, there should be some amount of noise that maximizes the ‘signal-to-noise ratio’. Can we find out what it is?

In order to find out, let us make our model precise. Let’s take the time-independent potential to be

\displaystyle{ V(x) = \frac{1}{4} x^4 - \frac{1}{2} x^2 }

This potential has two local minima at x = \pm 1. Let’s take the time-dependent periodic forcing, or ‘signal’, to be

F(t) = - A \; \sin(t)

The constant A is the amplitude of the periodic forcing. The time-dependent effective potential of the system is therefore:

\displaystyle{ V(x, t) = \frac{1}{4} x^4 - \frac{1}{2} x^2 - A \; \sin(t) x }

Including noise leads to the equation of motion, which is usually called a Langevin equation by physicists and chemists:

\begin{array}{ccl} dX &=& -V'(X_t, t) \; dt + \sqrt{2D} \; dW_t \\  \\  &=& (X_t - X_t^3 + A \;  \sin(t)) \; dt  + \sqrt{2D} \; dW_t  \end{array}

For more about what a Langevin equation is, see our article on stochastic differential equations.

This model has two free parameters, A and D. As already mentioned, A is the amplitude of the forcing. D is called the diffusion coefficient and represents the strength of noise. In our case it is a constant, but in more general models it could depend on space and time.

It is possible to write programs that generate simulations aka numerical approximations to solutions of stochastic differential equations. For those interested in how this works, there is an addendum at the bottom of the blog post that explains this. We can use such a program to model the three cases of small, high and optimal noise level.

In the following graphs, green is the external force, while red is the marble position. Here is a simulation with a low level of noise:

low noise level

As you can see, within the time of the simulation there is no transition from the metastable state at 1 to the one at -1. That is, in this situation Earth stays in the warm state.

Here is a simulation with a high noise level:

high noise level

The marble jumps wildly between the states. By inspecting the graph with your eyes only, you don’t see any pattern in it, do you?

And finally, here is a simulation where the noise level seems to be about right to make the signal visible via a quasi-periodic motion:

high noise level

Sometimes the marble makes a transition in phase with the force, sometimes it does not, sometimes it has a phase lag. It can even happen that the marble makes a transition while the force acts in the opposite direction!

Some members of the Azimuth crew have created an online model that calculates simulations of the model, for different values of the involved constants. You can see it here:

Stochastic resonance example, Azimuth Code Project.

We especially thank Allan Erskine and Jim Stuttard.

You can change the values using the sliders under the graphic and see what happens. You can also choose different ‘random seeds’, which means that the random numbers used in the simulation will be different.

Above, we asked if one could calculate for a fixed A the level of noise D that maximizes the signal to noise ratio. We have defined the model system, but we still need to define ‘signal to noise ratio’ in order to address the question.

There is no general definition that makes sense for all kinds of systems. For our model system, let’s assume that the expectation value of x(t) has a Fourier expansion like this:

\displaystyle{ \langle x(t) \rangle = \sum_{n = - \infty}^{\infty}  M_n \exp{(i n t)} }

Then one useful definition of the signal to noise ratio \eta is

\displaystyle{ \eta := \frac{|M_1|^2}{A^2}}

So, can one calculate the value of D, depending on A that maximizes \eta? We don’t know! Do you?

If you would like to know more, have a look at this page:

Stochastic resonance, Azimuth Library.

Also, read on for more about how we numerically solved our stochastic differential equation, and the design decisions we had to make to create a simulation that runs on your web browser.

For übernerds only

Numerically solving stochastic differential equations

Maybe you are asking yourself what is behind the online model? How does one ‘numerically solve’ a stochastic differential equation and in what sense are the graphs that you see there ‘close’ to the exact solution? No problem, we will explain it here!

First, you need C code like this:

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

#define znew ((z=36969*(z&65535)+(z>>16)) << 16)
#define wnew ((w = 18000*(w&65535)+(w>>16))&65535)

static unsigned long z = 362436069, w = 521288629;

float rnor() {
	float x, y, v;

	x = ((signed long) (znew + wnew)) * 1.167239E-9;

	if (fabs(x) < 1.17741)
		return (x);

	y = (znew + wnew) * 2.328306E-10;

	if (log(y) < 0.6931472 - 0.5 * x * x)
		return x;

	x = (x > 0) ? 0.8857913 * (2.506628 - x) : -0.8857913 * (2.506628 + x);

	if (log(1.8857913 - y) < 0.5718733 - 0.5 * (x * x))
		return (x);

	do {
		v = ((signed long) (znew + wnew)) * 4.656613E-10;

		x = -log(fabs(v)) * 0.3989423;

		y = -log((znew + wnew)* 2.328306E-10);

	} while (y + y < x * x);

	return (v > 0 ? 2.506628 + x : 2.506628 - x);
}

int main(void) {

	int index = 0;

	for(index = 0; index < 10; index++) {
		printf("%f\n", rnor());
	}
	return EXIT_SUCCESS;
}

Pretty scary, huh? Do you see what it does? We don’t think anyone stands a chance to understand all the ‘magical constants’ in it. We pasted it here so you can go around and show it to friends who claim that they know the programming language C and understand every program in seconds, and see what they can tell you about it. We’ll explain it below.

Since this section is for übernerds, we will assume that you know stochastic processes in continuous time. Brownian motion on \mathbb{R} can be viewed as a probability distribution on the space of all continuous functions on a fixed interval, C[0, T]. This is also true for solutions of stochastic differential equations in general. A ‘numerical approximation’ to a stochastic differential equation is an discrete time approximation that samples this probability space.

Another way to think about it is to start with numerical approximations of ordinary differential equations. When you are handed such an equation of the form

\displaystyle{ \frac{d x}{d t} = f(x, t) }

with an initial condition x(0) = x_0, you know that there are different discrete approximation schemes to calculate an approximate solution to it. The simplest one is the Euler scheme. You need to choose a step size h and calculate values for x recursively using the formula

x_{n + 1} = x_n + f(x_n, t_n) \; h

with t_{n+1} = t_n + h. Connect the discrete values of x_n with straight lines to get your approximating function x^h. For h \to 0, you get convergence for example in the supremum norm of x^h(t) to the exact solution x(t):

\displaystyle{  \lim_{h \to 0} \| x^h - x \|_\infty = 0 }

It is possible to extend some schemes from ordinary differential equations to stochastic differential equations that involve certain random variables in every step. The best textbook on the subject that I know is this one:

• Peter E. Kloeden and Eckhard Platen, Numerical Solution of Stochastic Differential Equations, Springer, Berlin, 2010. (ZMATH review.)

The extension of the Euler scheme is very simple, deceptively so! It is much less straightforward to determine the extensions of higher Runge–Kutta schemes, for example. You have been warned! The Euler scheme for stochastic differential equations of the form

d X_t = f(X, t) d t + g(X, t) d W_t

is simply

X_{n + 1} = X_n + f(X_n, t_n) \; h + g(X_n, t_n) \; w_n

where all the w_n are independent random variables with a normal distribution N(0, h). If you write a computer program that calculates approximations using this scheme, you need a pseudorandom number generator. This is what the code we posted above is about. Actually, it is an efficient algorithm to calculate pseudorandom numbers with a normal distribution. It’s from this paper:

• George Marsaglia and Wai Wan Tsang, The Monty Python method for generating random variables, ACM Transactions on Mathematical Software 24 (1998), 341–350.

While an approximation to an ordinary differential equation approximates a function, an approximation to a stochastic differential equation approximates a probability distribution on C[0, T]. So we need a different concept of ‘convergence’ of the approximation for h \to 0. The two most important ones are called ‘strong’ and ‘weak’ convergence.

A discrete approximation X^h to an Ito process X converges strongly at time T if

\lim_{h \to 0} \; E(|X_T^h - X_T|) = 0

It is said to be of strong order \gamma if there is a constant C such that

E(|X_T^h - X_T|) \leq C h^{\gamma}

As we see from the definition, a strong approximation needs to approximate the path of the original process X at the end of the time interval [0, T].

What about weak convergence?

A discrete approximation X^h to an Ito process X converges weakly for a given class of functions G at a time T if for every function g \in G we have

\lim_{h \to 0} \; E(g(X_T^h)) - E(g(X_T)) = 0

where we assume that all appearing expectation values exist and are finite.

It is said to be of weak order \gamma with respect to G if there is a constant C such that for every function g \in G:

E(g(X_T^h)) - E(g(X_T)) \leq C h^{\gamma}

One speaks simply of ‘weak convergence’ when G is the set of all polynomials.

So weak convergence means that the approximation needs to approximate the probability distribution of the original process X. Weak and strong convergence are indeed different concepts. For example, the Euler scheme is of strong order 0.5 and of weak order 1.0.

Our simple online model implements the Euler scheme to calculate approximations to our model equation. So now you know it what sense it is indeed an approximation to the solution process!

Implementation details of the interactive online model

There appear to be three main approaches to implementing an interactive online model. It is assumed that all the main browsers understand Javascript.

1) Implement the model using a server-side programme that produces graph data in response to parameter settings, and use Javascript in the browser to plot the graphs and provide interaction inputs.

2) Pre-compute the graph data for various sets of parameter values, send these graphs to the browser, and use Javascript to select a graph and plot it. The computation of the graph data can be done on the designers machine, using their preferred language.

3) Implement the model entirely in Javascript.

Option 1) is only practical if one can run interactive programs on the server. While there is technology to do this, it is not something that most ISPs or hosting companies provide. You might be provided with Perl and PHP, but neither of these is a language of choice for numeric coding.

Option 2) has been tried. The problem with this approach is the large amount of pre-computed data required. For example, if we have 4 independent parameters, each of which takes on 10 values, then we need 10000 graphs. Also, it is not practical to provide much finer control of each parameter, as this increases the data size even more.

Option 3) looked doable. Javascript has some nice language features, such as closures, which are a good fit for implementing numerical methods for solving ODEs. The main question then is whether a typical Javascript engine can cope with the compute load.

One problem that arose with a pure Javascript implementation is the production of normal random deviates required for the numerical solution of an SDE. Javascript has a random() function, that produces uniform random deviates, and there are algorithms that could be implemented in Javascript to produce normal deviates from uniform deviates. The problems here are that there is no guarantee that all Javascript engines use the same PRNG, or that the PRNG is actually any good, and we cannot set a specific seed in Javascript. Even if the PRNG is adequate, we have the problem that different users will see different outputs for the same parameter settings. Also, reloading the page will reseed the PRNG from some unknown source, so a user will not be able to replicate a particular output.

The chosen solution was to pre-compute a sequence of random normal deviates, using a PRNG of known characteristics. This sequence is loaded from the server, and will naturally be the same for all users and sessions. This is the C++ code used to create the fixed Javascript array:

#include <boost/random/mersenne_twister.hpp>
#include <boost/random/normal_distribution.hpp>
#include <iostream>

int main(int argc, char * argv[])
{
    boost::mt19937 engine(1234); // PRNG with seed = 1234
    boost::normal_distribution<double> rng(0.0, 1.0); // Mean 0.0, standard deviation 1.0
    std::cout << "normals = [\n";
    int nSamples = 10001;
    while(nSamples--)
    {
        std::cout << rng(engine) << ",\n";
    }
    std::cout << "];";
}

Deviates with a standard deviation other than 1.0 can be produced in Javascript by multiplying the pre-computed deviates by a suitable scaling factor.

The graphs only use 1000 samples from the Javascript array. To see the effects of different sample paths, the Javascript code selects one of ten slices from the pre-computed array.


This Week’s Finds (Week 319)

13 April, 2012

This week I’m trying something new: including a climate model that runs on your web browser!

It’s not a realistic model; we’re just getting started. But some programmers in the Azimuth Project team are interested in making more such models—especially Allan Erskine (who made this one), Jim Stuttard (who helped me get it to work), Glyn Adgie and Staffan Liljgeren. It could be a fun way for us to learn and explain climate physics. With enough of these models, we’d have a whole online course! If you want to help us out, please say hi.

Allan will say more about the programming challenges later. But first, a big puzzle: how can small changes in the Earth’s orbit lead to big changes in the Earth’s climate? As I mentioned last time, it seems hard to understand the glacial cycles of the last few million years without answering this.

Are there feedback mechanisms that can amplify small changes in temperature? Yes. Here are a few obvious ones:

Water vapor feedback. When it gets warmer, more water evaporates, and the air becomes more humid. But water vapor is a greenhouse gas, which causes additional warming. Conversely, when the Earth cools down, the air becomes drier, so the greenhouse effect becomes weaker, which tends to cool things down.

Ice albedo feedback. Snow and ice reflect more light than liquid oceans or soil. When the Earth warms up, snow and ice melt, so the Earth becomes darker, absorbs more light, and tends to get get even warmer. Conversely, when the Earth cools down, more snow and ice form, so the Earth becomes lighter, absorbs less light, and tends to get even cooler.

Carbon dioxide solubility feedback. Cold water can hold more carbon dioxide than warm water: that’s why opening a warm can of soda can be so explosive. So, when the Earth’s oceans warm up, they release carbon dioxide. But carbon dioxide is a greenhouse gas, which causes additional warming. Conversely, when the oceaans cool down, they absorb more carbon dioxide, so the greenhouse effect becomes weaker, which tends to cool things down.

Of course, there are also negative feedbacks: otherwise the climate would be utterly unstable! There are also complicated feedbacks whose overall effect is harder to evaluate:

Planck feedback. A hotter world radiates more heat, which cools it down. This is the big negative feedback that keeps all the positive feedbacks from making the Earth insanely hot or insanely cold.

Cloud feedback. A warmer Earth has more clouds, which reflect more light but also increase the greenhouse effect.

Lapse rate feedback. An increased greenhouse effect changes the vertical temperature profile of the atmosphere, which has effects of its own—but this works differently near the poles and near the equator.

See week302 for more on feedbacks and how big they’re likely to be.

On top of all these subtleties, any proposed solution to the puzzle of glacial cycles needs to keep a few other things in mind, too:

• A really good theory will explain, not just why we have glacial cycles now, but why we didn’t have them earlier. As I explained in week317, they got started around 5 million years ago, became much colder around 2 million years ago, and switched from a roughly 41,000 year cycle to a roughly 100,000 year cycle around 1 million years ago.

• Say we dream up a whopping big positive feedback mechanism that does a great job of keeping the Earth warm when it’s warm and cold when it’s cold. If this effect is strong enough, the Earth may be bistable: it will have two stable states, a warm one and a cold one. Unfortunately, if the effect is too strong, it won’t be easy for the Earth to pop back and forth between these two states!

The classic example of a bistable system is a switch—say for an electric light. When the light is on it stays on; when the light is off it stays off. If you touch the switch very gently, nothing will happen. But if you push on it hard enough, it will suddenly pop from on to off, or vice versa.

If we’re trying to model the glacial cycles using this idea, we need the switch to have a fairly dramatic effect, yet still be responsive to a fairly gentle touch. For this to work we need enough positive feedback… but not too much.

(We could also try a different idea: maybe the Earth keeps itself in its icy glacial state, or its warm interglacial state, using some mechanism that gradually uses something up. Then, when the Earth runs out of this stuff, whatever it is, the climate can easily flip to the other state.)

We must always remember that to a good approximation, the total amount of sunlight hitting the Earth each year does not change as the Earth’s orbit changes in the so-called ‘Milankovich cycles’ that seem to be causing the ice ages. I explained why last time. What changes is not the total amount of sunlight, but something much subtler: the amount of sunlight at particular latitudes in particular seasons! In particular, Milankovitch claimed, and most scientists believe, that the Earth tends to get cold when there’s little sunlight hitting the far northern latitudes in summer.

For these and other reasons, any solution to the ice age puzzle is bound to be subtle. Instead of diving straight into this complicated morass, let’s try something much simpler. Let’s just think about how the ice albedo effect could, in theory, make the Earth bistable.

To do this, let’s look at the very simplest model in this great not-yet-published book:

• Gerald R. North, Simple Models of Global Climate.

This is a zero-dimensional energy balance model, meaning that it only involves the average temperature of the earth, the average solar radiation coming in, and the average infrared radiation going out.

The average temperature will be T, measured in Celsius. We’ll assume the Earth radiates power square meter equal to

\displaystyle{ A + B T }

where A = 218 watts/meter2 and B = 1.90 watts/meter2 per degree Celsius. This is a linear approximation taken from satellite data on our Earth. In reality, the power emitted grows faster than linearly with temperature.

We’ll assume the Earth absorbs solar energy power per square meter equal to

Q c(T)

Here:

Q is the average insolation: that is, the amount of solar power per square meter hitting the top of the Earth’s atmosphere, averaged over location and time of year. In reality Q is about 341.5 watts/meter2. This is one quarter of the solar constant, meaning the solar power per square meter that would hit a panel hovering in space above the Earth’s atmosphere and facing directly at the Sun. (Why a quarter? That’s a nice geometry puzzle: we worked it out at the Azimuth Blog once.)

c(T) is the coalbedo: the fraction of solar power that gets absorbed. The coalbedo depends on the temperature; we’ll have to say how.

Given all this, we get

\displaystyle{ C \frac{d T}{d t} = - A - B T + Q c(T(t)) }

where C is Earth’s heat capacity in joules per degree per square meter. Of course this is a funny thing, because heat energy is stored not only at the surface but also in the air and/or water, and the details vary a lot depending on where we are. But if we consider a uniform planet with dry air and no ocean, North says we may roughly take C equal to about half the heat capacity at constant pressure of the column of dry air over a square meter, namely 5 million joules per degree Celsius.

The easiest thing to do is find equilibrium solutions, meaning solutions where \frac{d T}{d t} = 0, so that

A + B T = Q c(T)

Now C doesn’t matter anymore! We’d like to solve for T as a function of the insolation Q, but it’s easier to solve for Q as a function of T:

\displaystyle{ Q = \frac{ A + B T } {c(T)} }

To go further, we need to guess some formula for the coalbedo c(T). The coalbedo, remember, is the fraction of sunlight that gets absorbed when it hits the Earth. It’s 1 minus the albedo, which is the fraction that gets reflected. Here’s a little chart of albedos:

If you get mixed up between albedo and coalbedo, just remember: coal has a high coalbedo.

Since we’re trying to keep things very simple right not, not model nature in all its glorious complexity, let’s just say the average albedo of the Earth is 0.65 when it’s very cold and there’s lots of snow. So, let

c_i = 1  - 0.65 =  0.35

be the ‘icy’ coalbedo, good for very low temperatures. Similarly, let’s say the average albedo drops to 0.3 when its very hot and the Earth is darker. So, let

c_f = 1 - 0.3 = 0.7

be the ‘ice-free’ coalbedo, good for high temperatures when the Earth is darker.

Then, we need a function of temperature that interpolates between c_i and c_f. Let’s try this:

c(T) = c_i + \frac{1}{2} (c_f-c_i) (1 + \tanh(\gamma T))

If you’re not a fan of the hyperbolic tangent function \tanh, this may seem scary. But don’t be intimidated!

The function \frac{1}{2}(1 + \tanh(\gamma T)) is just a function that goes smoothly from 0 at low temperatures to 1 at high temperatures. This ensures that the coalbedo is near its icy value c_i at low temperatures, and near its ice-free value c_f at high temperatures. But the fun part here is \gamma, a parameter that says how rapidly the coalbedo rises as the Earth gets warmer. Depending on this, we’ll get different effects!

The function c(T) rises fastest at T = 0, since that’s where \tanh (\gamma T) has the biggest slope. We’re just lucky that in Celsius T = 0 is the melting point of ice, so this makes a bit of sense.

Now Allan Erskine’s programming magic comes into play! Unfortunately it doesn’t work on this blog—yet!—so please hop over to the version of this article on my website to see it in action.

You can slide a slider to adjust the parameter \gamma to various values between 0 and 1.

You can then see how the coalbedo c(T) changes as a function of the temperature T. In this graph the temperature ranges from -50 °C and 50 °C; the graph depends on what value of \gamma you choose with slider.

You can also see how the insolation Q required to yield a given temperature T between -50 °C and 50 °C:

It’s easiest to solve for Q in terms of T. But it’s more intuitive to flip this graph over and see what equilibrium temperatures T are allowed for a given insolation Q between 200 and 500 watts per square mater.

The exciting thing is that when \gamma gets big enough, three different temperatures are compatible with the same amount of insolation! This means the Earth can be hot, cold or something intermediate even when the amount of sunlight hitting it is fixed. The intermediate state is unstable, it turns out. Only the hot and cold states are stable. So, we say the Earth is bistable in this simplified model.

Can you see how big \gamma needs to be for this bistability to kick in? It’s certainly there when \gamma = 0.05, since then we get a graph like this:

When the insolation is less than about 385 W/m2 there’s only a cold state. When it hits 385 W/m2, as shown by the green line, suddenly there are two possible temperatures: a cold one and a much hotter one. When the insolation is higher, as shown by the black line, there are three possible temperatures: a cold one, and unstable intermediate one, and a hot one. And when the insolation gets above 465 W/m2, as shown by the red line, there’s only a hot state!

Why is the intermediate state unstable when it exists? Why are the other two equilibria stable? To answer these questions, we’d need to go back and study the original equation:

C \frac{d T}{d t} = - A - B T + Q c(T(t))

and see what happens when we push T slightly away from one of its equilibrium values. That’s really fun, but we won’t do it today. Instead, let’s draw some conclusions from what we’ve just seen. There are at least three morals: a mathematical moral, a climate science model, and a software moral.

Mathematically, this model illustrates catastrophe theory. As we slowly turn up \gamma, we get different curves showing how temperature is a function of insolation… until suddenly the curve isn’t the graph of a function anymore: it becomes infinitely steep at one point! After that, we get bistability:


\gamma = 0.00

\gamma = 0.01

\gamma = 0.02

\gamma = 0.03

\gamma = 0.04

\gamma = 0.05

This is called a cusp catastrophe, and you can visualize these curves as slices of a surface in 3d, which looks roughly like this picture:



from here:

• Wolfram Mathworld, Cusp catastrophe. (Includes Mathematica package.)

The cusp catastrophe is ‘structurally stable’, meaning that small perturbations don’t change its qualitative behavior. This concept is made precise in catastrophe theory. It’s a useful concept, because it focuses our attention on robust features of models: features that don’t go away if the model is slightly wrong, as it always is.

As far as climate science goes, one moral is that it pays to spend some time making sure we understand simple models before we dive into more complicated ones. Right now we’re looking at a very simple model, but we’re already seeing some interesting phenomena. The kind of model we’re looking at now is called a Budyko-Sellers model. These have been studied since the late 1960’s:

• M. I. Budyko, On the origin of glacial epochs (in Russian), Meteor. Gidrol. 2 (1968), 3-8.

• M. I. Budyko, The effect of solar radiation variations on the climate of the earth, Tellus 21 (1969), 611-619.

• William D. Sellers, A global climatic model based on the energy balance of the earth-atmosphere system, J. Appl. Meteor. 8 (1969), 392-400.

• Carl Crafoord and Erland Källén, A note on the condition for existence of more than one steady state solution in Budyko-Sellers type models, J. Atmos. Sci. 35 (1978), 1123-1125.

• Gerald R. North, David Pollard and Bruce Wielicki, Variational formulation of Budyko-Sellers climate models, J. Atmos. Sci. 36 (1979), 255-259.

It also pays to compare our models to reality! For example, the graphs we’ve seen show some remarkably hot and cold temperatures for the Earth. That’s a bit unnerving. Let’s investigate. Suppose we set \gamma = 0 on our slider. Then the coalbedo of the Earth becomes independent of temperature: it’s 0.525, halfway between its icy and ice-free values. Then, when the insolation takes its actual value of 342.5 watts per square meter, the model says the Earth’s temperature is very chilly: about -20 °C!

Does that mean the model is fundamentally flawed? Maybe not! After all, it’s based on very light-colored Earth. Suppose we use the actual albedo of the Earth. Of course that’s hard to define, much less determine. But let’s just look up some average value of the Earth’s albedo: supposedly it’s about 0.3. That gives a coalbedo of c = 0.7. If we plug that in our formula:

\displaystyle{ Q = \frac{ A + B T } {c} }

we get 11 °C. That’s not too far from the Earth’s actual average temperature, namely about 15 ° C. So the chilly temperature of -20 °C seems to come from an Earth that’s a lot lighter in color than ours.

Our model includes the greenhouse effect, since the coeficients A and B were determined by satellite measurements of how much radiation actually escapes the Earth’s atmosphere and shoots out into space. As a further check to our model, we can look at an even simpler zero-dimensional energy balance model: a completely black Earth with no greenhouse effect. Another member of the Azimuth Project has written about this:

• Tim van Beek, Putting the Earth in a box, Azimuth, 19 June 2011.

• Tim van Beek, A quantum of warmth, Azimuth, 2 July 2011.

As he explains, this model gives the Earth a temperature of 6 °C. He also shows that in this model, lowering the albedo to a realistic value of 0.3 lowers the temperature to a chilly -18 ° C. To get from that to something like our Earth, we must take the greenhouse effect into account.

This sort of fiddling around is the sort of thing we must do to study the flaws and virtues of a climate model. Of course, any realistic climate model is vastly more sophisticated than the little toy we’ve been looking at, so the ‘fiddling around’ must also be more sophisticated. With a more sophisticated model, we can also be more demanding. For example, when I said 11 °C is “is not too far from the Earth’s actual average temperature, namely about 15 ° C”, I was being very blasé about what’s actually a big discrepancy. I only took that attitude because the calculations we’re doing now are very preliminary.

Finally, here’s what Allan has to say about the software you’ve just seen, and some fancier software you’ll see in forthcoming weeks:

Your original question in the Azimuth Forum was “What’s the easiest way to write simple programs of this sort that could be accessed and operated by clueless people online?” A “simple program” for the climate model you proposed needed two elements: a means to solve the ODE (ordinary differential equation) describing the model, and a means to interact with and visualize the results for the (clearly) “clueless people online”.

Some good suggestions were made by members of the forum:

• use a full-fledged numerical computing package such as Sage or Matlab which come loaded to the teeth with ODE solvers and interactive charting;

• use a full-featured programming language like Java which has libraries available for ode solving and charting, and which can be packaged as an applet for the web;

• do all the computation and visualization ourselves in Javascript.

While the first two suggestions were superior for computing the ODE solutions, I knew from bitter experience (as a software developer) that the truly clueless people were us bold forum members engaged in this new online enterprise: none of us were experts in this interactive/online math thing, and programming new software is almost always harder than you expect it to be.

Then actually releasing new software is harder still! Especially to an audience as large as your readership. To come up an interactive solution that would work on many different computers/browsers, the most mundane and pedestrian suggestion of “do it all ourselves in Javascript and have them run it in the browser” was also the most likely to be a success.

The issue with Javascript was that not many people use it for numerical computation, and I was down on our chances of success until Staffan pointed out the excellent JSXGraph software. JSXGraph has many examples available to get up and running, has an ODE solver, and after a copy/paste or two and some tweaking on my part we were all set.

The true vindication for going all-Javascript though was that you were subsequently able to do some copy/pasting of your own directly into TWF without any servers needing configured etc., or even any help from me! The graphs ought to be viewable by your readership for as long as browsers support Javascript (a sign of a good software release is that you don’t have to think about it afterwards).

There are some improvements I would make to how we handle future projects which we have discussed in the Forum. Foremost, using Javascript to do all our numerical work is not going to attract the best and brightest minds from the forum (or elsewhere) to help with subsequent models. My personal hope is that we allow all the numerical work to be done in whatever language people feel productive with, and that we come up with a slick way for you to embed and interact with just the data from these models in your webpages. Glyn Adgie and Jim Stuttard seem to have some great momentum in this direction.

Or perhaps creating and editing interactive math online will eventually become as easy as wiki pages are today—I know Staffan had said the Sage developers were looking to make their online workbooks more interactive. Also the bright folks behind the new Julia language are discussing ways to run (and presumably interact with) Julia in the cloud. So perhaps we should just have dragged our feet on this project for a few years for all this cool stuff to help us out! (And let’s wait for the Singularity while we’re at it.)

No, let’s not! I hope you programmers out there can help us find good solutions to the problems Allan faced. And I hope some of you actually join the team.

By the way, Allan has a somewhat spiffier version of the same Budyko-Sellers model here.

For discussions of this issue of This Week’s Finds visit my blog, Azimuth. And if you want to get involved in creating online climate models, contact me and/or join the Azimuth Forum.


Thus, the present thermal regime and glaciations of the Earth prove to be characterized by high instability. Comparatively small changes of radiation—only by 1.0-1.5%—are sufficient for the development of ice cover on the land and oceans that reaches temperate latitudes.M. I. Budyko


Energy, the Environment, and What We Can Do

5 April, 2012

A while ago I gave a talk at Google. Since I think we should cut unnecessary travel, I decided to stay here in Singapore and give the talk virtually, in the form of a robot:

I thank Mike Stay for arranging this talk at Google, and Trevor Blackwell and Suzanne Broctao at Anybots for letting me use one of their robots!

Here are the slides:

Energy, the Environment, and What We Can Do.

To see the source of any piece of information in these slides, just click on it!

And here’s me:

This talk was more ambitious than previous ones I’ve given—and not just because I was struggling to operate a robot, read my slides on my laptop, talk, and click the pages forward all at once! I said more about solutions to our problems this time. That’s where I want to head, but of course it’s infinitely harder to describe solutions than to list problems or even to convince people that they really are problems.


The 1990 IPCC Climate Projections

27 March, 2012

Over on Google+, Daniel Lemire writes:

The IPCC predictions from 1990 went for a probable rise of the global mean temperature of 0.3 °C per decade and at least 0.2 °C per decade. See the IPPC assessment overview document, Section 1.0.3. (It is available online here.) We have had two decades. Fact: they predicted more warming than what actually materialized. Quite a bit more. See:

Instrumental temperature record, Wikipedia.

What’s the full story here? Here are some basic facts. The policymaker summary of the 1990 report estimates:

under the IPCC Business-as-Usual (Scenario A) emissions of greenhouse gases, a rate of increase of global-mean temperature during the next century of about 0.3 °C per decade (with an uncertainty range of 0.2 °C to 0.5 °C per decade); this is greater than that seen over the past 10,000 years. This will result in a likely increase in global-mean temperature of about 1°C above the present value by 2025 and 3°C before the end of the next century. The rise will not be steady because of the influence of other factors…

I believe we are going along with the ‘business-as-usual’ emissions of greenhouse gases. On the other hand, Wikipedia shows a figure from Global Warming Art:

based on NASA GISS data here. In 1990, the 5-year mean Global Land-Ocean Temperature Index was .27, meaning .27 °C above the mean temperature from 1961 to 1990. By 2006, the 5-year mean was .54.

So, that’s a .27 °C increase in 16 years, or about .17 °C per decade. This is slightly less than the bottom-end estimate of 0.2 °C per decade, and about half the expected rise of 0.3 °C per decade.

Is there any official story on why the 1990 IPCC report overestimated the temperature rise during this time? In 2007 the IPCC estimated a temperature rise of about 0.2 °C per decade for the next two decades for all the scenarios they considered. So, it seems somehow 0.3 °C went down to 0.2 °C. What was wrong with the original estimate?


Fluid Flows and Infinite-Dimensional Manifolds I

12 March, 2012

Or: waves that take the shortest path through infinity

guest post by Tim van Beek

Water waves can do a lot of things that light waves cannot, like “breaking”:

breaking wave

In mathematical models this difference shows up through the kind of partial differential equation (PDE) that models the waves:

• light waves are modelled by linear equations while

• water waves are modelled by nonlinear equations.

Physicists like to point out that linear equations model things that do not interact, while nonlinear equations model things that interact with each other. In quantum field theory, people speak of “free fields” versus “interacting fields”.

Some nonlinear PDE that describe fluid flows turn out to also describe geodesics on infinite-dimensional Riemannian manifolds. This fascinating observation is due to the Russian mathematician Vladimir Arnold. In this blog post I would like to talk a little bit about the concepts involved and show you a little toy example.

Fluid Flow modelled by Diffeomorphisms

The Euler viewpoint on fluids is that a fluid is made of tiny “packages” or “particles”. The fluid flow is described by specifying where each package or particle is at a given time t. When we start at some time t_0 on a given manifold M, the flow of every fluid package is described by a path on M parametrized by time, and for every time t > t_0 there is a diffeomorphism g^t : tiM \to M defined by the requirement that it maps the initial position x of each fluid package to its position g^t(x) at time t:

schematic fluid flow

This picture is taken from the book

• V.I. Arnold and B.A. Khesin, Topological Methods in Hydrodynamics, Springer, Berlin, 1998. (Review at Zentralblatt Mathematik.)

We will take as a model of the domain of the fluid flow a compact Riemannian manifold M. A fluid flow, as pictured above, is then a path in the diffeomorphism group \mathrm{Diff}(M). In order to apply geometric concepts in this situation, we will have to turn \mathrm{Diff}(M) or some closed subgroup of it into a manifold, which will be infinite dimensional.

The curvature of such a manifold can provide a great deal about the stability of fluid flows: On a manifold with negative curvature geodesics will diverge from each other. If we can model fluid flows as geodesics in a Riemannian manifold and calculate the curvature, we could try to infer a bound on weather forecasts (in fact, that is what Vladimir Arnold did!): The solution that you calculate is one geodesic. But if you take into account errors with determining your starting point (involving the measurement of the state of the flow at the given start time), what you are actually looking at is a bunch of geodesics starting in a neighborhood of your starting point. If they diverge fast, that means that measurement errors make your result unreliable fast.

If you never thought about manifolds in infinite dimensions, you may feel a little bit insecure as to how the concepts that you know from differential geometry can be generalized from finite dimensions. At least I felt this way when I first read about it. But it turns out that the part of the theory one needs to know in order to understand Arnold’s insight is not that scary, so I will talk a little bit about it next.

What you should know about infinite-dimensional manifolds

The basic strategy when handling finite-dimensional, smooth, real manifolds is that you have a complicated manifold M, but also locally for every point p \in M a neighborhood U and an isomorphism (a “chart”) of U to an open subset of the vastly simpler space \mathbb{R}^n, the “model space”. These isomorphisms can be used to transport concepts from \mathbb{R}^n to M. In infinite dimensions it is however not that clear what kind of model space E should be taken in place of \mathbb{R}^n. What structure should E have?

Since we would like to differentiate, we should for example be able to define the derivative of a curve in E:

\gamma: \mathbb{R} \to E

If we write down the usual formula for a derivative

\gamma'(t_0) := \lim_{t \to 0} \frac{1}{t} (\gamma(t_0 +t) - \gamma(t_0))

we see that to make sense of this we need to be able to add elements, have a scalar multiplication, and a topology such that the algebraic operations are continuous. Sets E with this structure are called topological vector spaces.

A curve that has a first derivative, second derivative, third derivative… and so on at every point is called a smooth curve, just as in the finite dimensional case.

So E should at least be a topological vector space. We can, of course, put more structure on E to make it “more similar” to \mathbb{R}^n, and choose as model space in ascending order of generality:

1) A Hilbert space, which has an inner product,

2) a Banach space that does not have a inner product, but a norm,

3) a Fréchet space that does not have a norm, but a metric,

4) a general topological vector space that need not be metrizable.

People talk accordingly of Hilbert, Banach and Fréchet manifolds. Since the space C^{\infty}(\mathbb{R}^n) consisting of smooth maps from \mathbb{R}^n to \mathbb{R} is not a Banach space but a Fréchet space, we should not expect that we can model diffeomorphism groups on Banach spaces, but on Fréchet spaces. So we will use the concept of Fréchet manifolds.

But if you are interested in a more general theory using locally convex topological vector spaces as model spaces, you can look it up here:

• Andreas Kriegl and Peter W. Michor, The Convenient Setting of Global Analysis, American Mathematical Society, Providence Rhode Island, 1999.

Note that Kriegl and Michor use a different definition of “smooth function of Fréchet spaces” than we will below.

If you learn functional analysis, you will most likely start with operators on Hilbert spaces. One could say that the theory of topological vector spaces is about abstracting away as much structure from a Hilbert space and look what structure you need for important theorems to still hold true, like the open mapping/closed graph theorem. If you would like to learn more about this, my favorite book is this one:

• Francois Treves, Topological vector Spaces, Distributions and Kernels, Dover Publications, 2006.

Since we replace the model space \mathbb{R}^n with a Fréchet space E, there will be certain things that won’t work out as easily as for the finite dimensional \mathbb{R}^n, or not at all.

It is nevertheless possible to define both integrals and differentials that behave much in the expected way. You can find a nice exposition of how this can be done in this paper:

• Richard S. Hamilton, The inverse function theorem of Nash and Moser, Bulletin of the American Mathematical Society 7 (1982), pages 65-222.

The story starts with the definition of the directional derivative that can be done just as in finite dimensions:

Let F and G be Fréchet spaces, U \subseteq F open and P: U \to G a continuous map. The derivative of P at the point f \in U in the direction h \in F is the map

D P: U \times F \to G

given by:

D P(f) h = \lim_{t \to 0} \frac{1}{t} ( P(f + t h) - P(f))

A simple but nontrivial example is the operator

P: C^{\infty}[a, b] \to C^{\infty}[a, b]

given by:

P(f) = f f'

with the derivative

D P(f) h = f'h + f h'

It is possible to define higher derivatives and also prove that the chain rule holds, so that we can define that a function between Fréchet spaces is smooth if it has derivatives at every point of all orders. The definition of a smooth Fréchet manifold is then straightforward: you can copy the usual definition of a smooth manifold word for word, replacing \mathbb{R}^n by some Fréchet space.

With tangent vector s, you may remember that there are several different ways to define them in the finite dimensional case, which turn out to be equivalent. Since there are situations in infinite dimensions where these definitions turn out to not be equivalent, I will be explicit and define tangent vector s in the “kinematic way”:

The (kinematic) tangent vector space T_p M of a Fréchet manifold M at a point p consists of all pairs (p, c'(0)) where c is a smooth curve

c: \mathbb{R} \to M \; \textrm{\; with\; }  c(0) = p

With this definition, the set of pairs (p, c'(0)), p \in M forms a Fréchet manifold, the tangent bundle T M, just as in finite dimensions.

The first serious (more or less) problem we encounter is the definition of the cotangent bundle: \mathbb{R}^n is isomorphic to its dual vector space. This is still true for every Hilbert space (this is known as the Riesz representation theorem). It fails already for Banach spaces: The dual space will still be a Banach space, but a Banach space does not need to be isomorphic to its dual, or even the dual of its dual (though the latter situation happens quite often, and such Banach spaces are called reflexive).

With Fréchet spaces things are even a little bit worse, because the dual of a Fréchet space (which is not a Banach space) is not even a Fréchet space! Since I did not know that and could not find a reference, I asked about this on Mathoverflow here and promptly got an answer. Mathoverflow is a really amazing platform for this kind of question!

So, if we naively define the cotangent space as in finite dimensions by taking the dual space of every tangent space, then the cotangent bundle won’t be a Fréchet manifold.

We will therefore have to be careful with the definition of differential forms for Fréchet manifolds and define it explicitly:

A differential form (a one form) \alpha is a smooth map

\alpha: T M \to \mathbb{R}

where T M is the tangent bundle, such that \alpha restricts to a linear map on every tangent space T_p M.

Another pitfall is that theorems from multivariable calculus may fail in Fréchet spaces, like the existence and uniqueness theorem of Picard-Lindelöf for ordinary differential equations. Things are much easier in Banach spaces: If you take a closer look at multivariable calculus, you will notice that a lot of definitions and theorems actually make use of the Banach space structure of \mathbb{R}^n only, so that a lot generalizes straight forward to infinite dimensional Banach spaces. But that is less so for Fréchet spaces.

By now you should feel reasonably comfortable with the notion of a Fréchet manifold, so let us talk about the kind of gadget that Arnold used to describe fluid flows: diffeomorphism groups that are both infinite-dimensional Riemannian manifolds and Lie groups.

The geodesic equation for an invariant metric

If M is both a Riemannian manifold and a Lie group, it is possible to define the concept of left or right invariant metric. A left or right invariant metric d on M is one that does not change if we multiply the arguments with a group element:

A metric d is left invariant iff for all g, h_1, h_2 \in G:

d (h_1, h_2) = d(g h_1, g h_2)

Similarly, d is right invariant iff:

d(h_1, h_2) = d(h_1 g, h_2 g)

How does one get a one-sided invariant metric?

Here is one possibility: If you take a Lie group M off the shelf, you get two automorphisms for free, namely the left and right multiplication by a group element g:

L_g, R_g: M \to M

given by:

L_g(h) := g h

R_g(h) := h g

Pictorially speaking, you can use the differentials of these to transport vector s from the Lie algebra \mathfrak{m} of M – which is the tangent space at the identity of the group, T_\mathrm{id}M – to any other tangent space T_g M. If you can define an inner product on the Lie algebra, you can use this trick to transport the inner product to all the other tangent spaces by left or right multiplication, which will get you a left or right invariant metric.

To be more precise, for every tangent vectors U, V of a tangent space T_{g} M there are unique vectors X, Y that are mapped to U, V by the differential of the right multiplication R_g, that is

d R_g X = U  \textrm{\; and \;} d R_g Y = V

and we can define the inner product of U and V to have the value of that of X and Y:

\langle U, V \rangle := \langle X, Y \rangle

This works for the left multiplication L_g, too, of course.

For a one-sided invariant metric, the geodesic equation looks somewhat simpler than for general metrics. Let us take a look at that:

On a Riemannian manifold M with tangent bundle T M there is a unique connection, the Levi-Civita connection, with the following properties for vector fields X, Y, Z \in T M:

Z \langle X, Y \rangle = \langle \nabla_Z X, Y \rangle + \langle X, \nabla_Z Y \rangle \textrm{\; (metric compatibility)}

\nabla_X Y - \nabla_Y X = [X, Y] \textrm{\; (torsion freeness)}

If we combine both formulas we get

2 \langle \nabla_X Y, Z \rangle = X \langle Y, Z \rangle + Y \langle Z, X \rangle - Z \langle X, Y \rangle + \langle [X, Y], Z \rangle - \langle [Y, Z], X \rangle + \langle [Z, X], Y \rangle

If the inner products are constant along every flow, i.e. the metric is (left or right) invariant, then the first three terms on the right hand side vanish, so that we get

2 \langle \nabla_X Y, Z \rangle = \langle [X, Y], Z \rangle - \langle [Y, Z], X \rangle + \langle [Z, X], Y \rangle

This latter formula can be written in a more succinct way if we introduce the coadjoint operator. Remeber the adjoint operator defined to be

\mathrm{ad}_X Z = [X, Z]

With the help of the inner product we can define the adjoint of the adjoint operator:

\langle \mathrm{ad}^*_X Y, Z \rangle := \langle Y, \mathrm{ad}_X Z \rangle = \langle Y, [X, Z] \rangle

Beware! We’re using the word ‘adjoint’ in two completely different ways here, both of which are very common in math. One way is to use ‘adjoint’ for the operation of taking a Lie bracket: \mathrm{ad}_X Z = [X,Z]. Another is to use ‘adjoint’ for the linear map T: W \to V coming from a linear map between inner product spaces T: V \to W given by \langle T^* w, v \rangle = \langle w, T v \rangle. Please don’t blame me for this.

Then the formula above for the covariant derivative can be written as

2 \langle \nabla_X Y, Z \rangle = \langle \mathrm{ad}_X Y, Z \rangle - \langle \mathrm{ad}^*_Y X, Z \rangle - \langle \mathrm{ad}^*_X Y, Z \rangle

Since the inner product is nondegenerate, we can eliminate Z and get

2 \nabla_X Y = \mathrm{ad}_X Y - \mathrm{ad}^*_X Y - \mathrm{ad}^*_Y X

A geodesic curve is one whose tangent vector X is transported parallel to itself. That is, we have

\nabla_X X = 0

Using the formula for the covariant derivative for an invariant metric above we get

\nabla_X X = - \mathrm{ad}^*_X X = 0

as a reformulation of the geodesic equation.

For time dependent dynamical systems, we have the time axis as an additional dimension and every vector field has \partial_t as an additional summand. So, in this case we get as the geodesic equation (again, for an invariant metric):

\nabla_X X = \partial_t X - \mathrm{ad}^*_X X = 0

A simple example: the circle

As a simple example we will look at the circle S^1 and its diffeomorphism group \mathrm{Diff} S^1. The Lie algebra \mathrm{Vect}(S^1) of \mathrm{Diff} S^1 can be identified with the space of all vector fields on S^1. If we sloppily identify S^1 with \mathbb{R}/\mathbb{Z} with coordinate x, then we can write for vector fields X = u(x) \partial_x and Y = v(x) \partial_x the commutator

[X, Y] = (u v_x - u_x v) \partial_x

where u_x is short for the derivative:

\displaystyle{ u_x := \frac{d u}{d x} }

And of course we have an inner product via

\langle X, Y \rangle = \int_{S^1} u(x) v(x) d x

which we can use to define either a left or a right invariant metric on \mathrm{Diff} S^1, by transporting it via left or right multiplication to every tangent space.

Let us evaluate the geodesic equation for this example. We have to calculate the effect of the coadjoint operator:

\langle \mathrm{ad}^*_X Y, Z \rangle := \langle Y, \mathrm{ad}_X Z \rangle = \langle Y, [X, Z] \rangle

If we write for the vector fields X = u(x) \partial_x, Y = v(x) \partial_x and Z = w(x) \partial_x, this results in

\langle \mathrm{ad}^*_X Y, Z \rangle = \int_{S^1} v (u w_x - u_x w) d x = - \int_{S^1} (u v_x + 2 u_x v) w d x

where the last step employs integration by parts and uses the periodic boundary condition f(x + 1) = f(x) for the involved functions.

So we get for the coadjoint operator

\mathrm{ad}^*_X Y = - (u v_x + 2 u_x v) \partial_x

Finally, the geodesic equation

\partial_t X + \nabla_X X = 0

turns out to be

u_t + 3 u u_x = 0

A similar equation,

u_t + u u_x = 0

is known as the Hopf equation or inviscid Burgers’ equation. It looks simple, but its solutions can produce behaviour that looks like turbulence, so it is interesting in its own right.

If we take a somewhat more sophisticated diffeomorphism group, we can get slightly more complicated and therefore more interesting partial differential equations like the Korteweg-de Vries equation. But since this post is quite long already, that topic will have to wait for another post!


Azimuth on Google Plus (Part 6)

13 February, 2012

Lately the distribution of hits per hour on this blog has become very fat-tailed. In other words: the readership shoots up immensely now and then. I just noticed today’s statistics:

That spike on the right is what I’m talking about: 338 hits per hour, while before it was hovering in the low 80’s, as usual for the weekend. Why? Someone on Hacker News posted an item saying:

John Baez will give his Google Talk tomorrow in the form of a robot.

That’s true! If you’re near Silicon Valley on Monday the 13th and you want to see me in the form of a robot, come to the Google campus and listen to my talk Energy, the Environment and What We Can Do.

It starts at 4 pm in the Paramaribo Room (Building 42, Floor 2). You’ll need to check in 15 minutes before that at the main visitor’s lounge in Building 43, and someone will escort you to the talk.

But if you can’t attend, don’t worry! A video will appear on YouTube, and I’ll point you to it when it does.

I tested out the robot a few days ago from a hotel room in Australia—it’s a strange sensation! Suzanne Brocato showed me the ropes. To talk to me easily, she lowered my ‘head’ until I was just 4 feet tall. “You’re so short!” she laughed. I rolled around the offices of Anybot and met the receptionist, who was also in the form of a robot. Then we went to the office of the CEO, Trevor Blackwell, and planned out my talk a little. I need to practice more today.

But why did someone at Hacker News post that comment just then? I suspect it’s because I reminded people about my talk on Google+ last night.

The fat-tailed distribution of blog hits is also happening at the scale of days, not just hours:

The spikes happen when I talk about a ‘hot topic’. January 27th was my biggest day so far. Slashdot discovered my post about the Elsevier boycott, and send 3468 readers my way. But a total 6499 people viewed that post, so a bunch must have come from other sources.

January 31st was also big: 3271 people came to read about The Faculty of 1000. 2140 of them were sent over by Hacker News.

If I were trying to make money from advertising on this blog, I’d be pushed toward more posts about hot topics. Forget the mind-bending articles on quantropy, packed with complicated equations!

But as it is, I’m trying to do some mixture of having fun, figuring out stuff, and getting people to save the planet. (Open access publishing fits into that mandate: it’s tragic how climate crackpots post on popular blogs while experts on climate change publish their papers in journals hidden from public view!) So, I don’t want to maximize readership: what matters more is getting people to do good stuff.

Do you have any suggestions on how I could do this better, while still being me? I’m not going to get a personality transplant, so there are limits on what I’ll do.

One good idea would be to make sure every post on a ‘hot topic’ offers readers something they can do now.

Hmm, readership is still spiking:

But enough of this navel-gazing! Here are some recent Azimuth articles about energy on Google+.

Energy

1) In his State of the Union speech, Obama talked a lot about energy:

We’ve subsidized oil companies for a century. That’s long enough. It’s time to end the taxpayer giveaways to an industry that rarely has been more profitable, and double-down on a clean energy industry that never has been more promising.

He acknowledged that differences on Capitol Hill are “too deep right now” to pass a comprehensive climate bill, but he added that “there’s no reason why Congress shouldn’t at least set a clean-energy standard that creates a market for innovation.”

However, lest anyone think he actually wants to stop global warming, he also pledged “to open more than 75 percent of our potential offshore oil and gas resources.”

2) This paper claims a ‘phase change’ hit the oil markets around 2005:

• James Murray and David King, Climate policy: Oil’s tipping point has passed, Nature 481 (2011), 433–435.


They write:

In 2005, global production of regular crude oil reached about 72 million barrels per day. From then on, production capacity seems to have hit a ceiling at 75 million barrels per day. A plot of prices against production from 1998 to today shows this dramatic transition, from a time when supply could respond elastically to rising prices caused by increased demand, to when it could not (see ‘Phase shift’). As a result, prices swing wildly in response to small changes in demand. Other people have remarked on this step change in the economics of oil around the year 2005, but the point needs to be lodged more firmly in the minds of policy-makers.

3) Help out the famous climate blogger Joe Romm! He asks: What will the U.S. energy mix look like in 2050 if we cut CO2 emissions 80%?

How much total energy is consumed in 2050… How much coal, oil, and natural gas is being consumed (with carbon capture and storage of some coal and gas if you want to consider that)? What’s the price of oil? How much of our power is provided by nuclear power? How much by solar PV and how much by concentrated solar thermal? How much from wind power? How much from biomass? How much from other forms of renewable energy? What is the vehicle fleet like? How much electric? How much next-generation biofuels?

As he notes, there are lots of studies on these issues. Point him to the best ones!

4) Due to plunging prices for components, solar power prices in Germany dropped by half in the last 5 years. Now solar generates electricity at levels only slightly above what consumers pay. The subsidies will disappear entirely within a few years, when solar will be as cheap as conventional fossil fuels. Germany has added 14,000 megawatts capacity in the last 2 years and now has 24,000 megawatts in total—enough green electricity to meet nearly 4% the country’s power demand. That is expected to rise to 10% by 2020. Germany now has almost 10 times more installed capacity than the United States.

That’s all great—but, umm, what about the other 90%? What’s their long-term plan? Will they keep using coal-fired power plants? Will they buy more nuclear power from France?

In May 2011, Britain claimed it would halve carbon emissions by 2025. Is Germany making equally bold claims or not? Of course what matters is deeds, not words, but I’m curious.

5) Stephen Lacey presents some interesting charts showing the progress and problems with sustainability in the US. For example, there’s been a striking drop in how much energy is being used per dollar of GNP:


Sorry for the archaic ‘British Thermal Units’: we no longer have a king, but for some reason the U.S. failed to throw off the old British system of measurement. A BTU is a bit more than a kilojoule.

Despite these dramatic changes, Lacey says “we waste around 85% of the energy produced in the U.S.” But he doesn’t say how that number was arrived at. Does anyone know?

6) The American Council for an Energy-Efficient Economy (ACEEE) has a new report called The Long-Term Energy Efficiency Potential: What the Evidence Suggests. It describes some scenarios, including one where the US encourages a greater level of productive investments in energy efficiency so that by the year 2050, it reduces overall energy consumption by 40 to 60 percent. I’m very interested in how much efficiency can help. Some, but not all, of the improvements will be eaten up by the rebound effect.


How to Cut Carbon Emissions and Save Money

27 January, 2012

McKinsey & Company is a management consulting firm. In 2010 they released this ‘carbon abatement cost curve’ for the whole world:

Click it to see a nice big version. So, they’re claiming:

By 2030 we can cut CO2 emissions about 15 gigatonnes per year while saving lots of money.

By 2030 can cut CO2 emissions by up to 37 gigatonnes per year before the total cost—that is, cost minus savings—becomes positive.

The graph is cute. The vertical axis of the graph says how many euros per tonne it would cost to cut CO2 emissions by 2030 using various measures. The horizontal axis says how many gigatonnes per year we could reduce CO2 emissions using these measures.

So, we get lots of blue rectangles. If a rectangle is below the horizontal axis, its area says how many euros per year we’d save by implementing that measure. If it’s above the axis, its area says how much that measure would cost.

I believe the total blue area below the axis equals the total blue area above the axis. So if we do all these things, the total cost is zero.

37 gigatonnes of CO2 is roughly 10 gigatonnes of carbon: remember, there’s a crucial factor of 3\frac{2}{3} here. In 2004, Pacala and Socolow argued that the world needs to find ways to cut carbon emissions by about 7 gigatonnes/year by 2054 to keep emissions flat until this time. By now we’d need 9 gigatonnes/year.

If so, it seems the measures shown here could keep carbon emissions flat worldwide at no net cost!

But as usual, there are at least a few problems.

Problem 1

Is McKinsey’s analysis correct? I don’t know. Here’s their report, along with some others:

• McKinsey & Company, Impact of the financial crisis on carbon economics: Version 2.1 of the global greenhouse gas abatement cost curve, 2010.

For more details it’s good to read version 2.0:

• McKinsey & Company, Pathways to a low carbon economy: Version 2 of the global greenhouse gas abatement cost curve, 2009.

They’re free if you fill out some forms. But it’s not easy to check these things. Does anyone know papers that try to check McKinsey’s work? I find it’s more fun to study a problem like this after you see two sides of the same story.

Problem 2

I said ‘no net cost’. But if you need to spend a lot of money, the fact that I’m saving a lot doesn’t compensate you. So there’s the nontrivial problem of taking money that’s saved on some measures and making sure it gets spent on others. Here’s where ‘big government’ might be required—which makes some people decide global warming is just a political conspiracy, nyeh-heh-heh.

Is there another way to make the money transfer happen, without top-down authority?

We could still get the job about half-done at a huge savings, of course. McKinsey says we could cut CO2 emissions by 15 gigatonnes per year doing things that only save money. That’s about 4 gigatonnes of carbon per year! We could at least do that.

Problem 3

Keeping carbon emissions flat is not enough. Carbon dioxide, once put in the atmosphere, stays there a long time—though individual molecules come and go. As the saying goes, carbon is forever. (Click that link for more precise information.)

So, even Pacala and Socolow say keeping carbon emissions flat is a mere stopgap before we actually reduce carbon emissions, starting in 2054. But some more recent papers seem to suggest Pacala and Socolow were being overly optimistic.

Of course it depends on how much global warming you’re willing to tolerate! It also depends on lots of other things.

Anyway, this paper claims that if we cut global greenhouse gas emissions in half by 2050 (as compared to what they were in 1990), there’s a 12–45% probability that the world will get at least 2 °C warmer than its temperature before the industrial revolution:

• Malte Meinshausen et al, Greenhouse-gas emission targets for limiting global warming to 2 °C, Nature 458 (2009), 1158–1163.

Abstract: More than 100 countries have adopted a global warming limit of 2 °C or below (relative to pre-industrial levels) as a guiding principle for mitigation efforts to reduce climate change risks, impacts and damages. However, the greenhouse gas (GHG) emissions corresponding to a specified maximum warming are poorly known owing to uncertainties in the carbon cycle and the climate response. Here we provide a comprehensive probabilistic analysis aimed at quantifying GHG emission budgets for the 2000–50 period that would limit warming throughout the twenty-first century to below 2 °C, based on a combination of published distributions of climate system properties and observational constraints. We show that, for the chosen class of emission scenarios, both cumulative emissions up to 2050 and emission levels in 2050 are robust indicators of the probability that twenty-first century warming will not exceed 2 °C relative to pre-industrial temperatures.

Limiting cumulative CO2 emissions over 2000–50 to 1,000 Gt CO2 yields a 25% probability of warming exceeding 2 °C—and a limit of 1,440 Gt CO2 yields a 50% probability—given a representative estimate of the distribution of climate system properties. As known 2000–06 CO2 emissions were 234 Gt CO2, less than half the proven economically recoverable oil, gas and coal reserves can still be emitted up to 2050 to achieve such a goal. Recent G8 Communiques envisage halved global GHG emissions by 2050, for which we estimate a 12–45% probability of exceeding 2 °C—assuming 1990 as emission base year and a range of published climate sensitivity distributions. Emissions levels in 2020 are a less robust indicator, but for the scenarios considered, the probability of exceeding 2 °C rises to 53–87% if global GHG emissions are still more than 25% above 2000 levels in 2020.

This paper says we’re basically doomed to suffer unless we revamp society:

• Ted Trainer, Can renewables etc. solve the greenhouse problem? The negative case, Energy Policy 38 (2010), 4107–4114.

Abstract: Virtually all current discussion of climate change and energy problems proceeds on the assumption that technical solutions are possible within basically affluent-consumer societies. There is however a substantial case that this assumption is mistaken. This case derives from a consideration of the scale of the tasks and of the limits of non-carbon energy sources, focusing especially on the need for redundant capacity in winter. The first line of argument is to do with the extremely high capital cost of the supply system that would be required, and the second is to do with the problems set by the intermittency of renewable sources. It is concluded that the general climate change and energy problem cannot be solved without large scale reductions in rates of economic production and consumption, and therefore without transition to fundamentally different social structures and systems.

It’s worth reading because it uses actual numbers, not just hand-waving. But it seeks much more than keeping carbon emissions flat until 2050; that’s one reason for the dire conclusions.

It’s worth noting this rebuttal, which says that everything about Trainer’s paper is fine except a premature dismissal of nuclear power:

• Barry Brook, Could nuclear fission energy, etc., solve the greenhouse problem? The affirmative case, Energy Policy, available online 16 December 2011.

To get your hands on Brook’s paper you either need a subscription or you need to email him. You can do that starting from his blog article about the paper… which is definitely worth reading:

• Barry Brook, Could nuclear fission energy, etc., solve the greenhouse problem? The affirmative case, BraveNewClimate, 14 January 2012.

According to Brook, we can keep global warming from getting too bad if we get really serious about nuclear power.

Of course, these three papers are just a few of many. I’m still trying to sift through the information and figure out what’s really going on. It’s hard. It may be impossible. But McKinsey’s list of ways to cut carbon emissions and save money points to some things we start doing right now.


Follow

Get every new post delivered to your Inbox.

Join 3,095 other followers