You are on page 1of 187

Dynamical Systems and Chaos

An Introduction
Bernard Deconinck
Department of Applied Mathematics
University of Washington
Campus Box 352420
Seattle, WA, 98195, USA
April 10, 2009

i
Prolegomenon
These are the lecture notes for Amath 402: Dynamical Systems. This is the first year these
notes are typed up, thus it is guaranteed that these notes are full of mistakes of all kinds,
both innocent and unforgivable. Please point out these mistakes to me so they may be
corrected for the benefit of your successors. If you think that a different phrasing of
something would result in better understanding, please let me know.
These lecture notes are not meant to supplant the textbook used with this course. The
main textbook is Steven Strogatz Nonlinear Dynamics Systems and Chaos (Perseus
Book Group, 2001).

These notes are not copywrited by the author and any distribution of them is highly
encouraged, especially without express written consent of the author.

ii

Contents
1 Resources
1.1 Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3 Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1
1
1
1

2 Introduction
2.1 Continuous time t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 Discrete time n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 So, whats the deal with dynamical systems? . . . . . . . . . . . . . . . . . .

3
3
3
4

3 Flows on the line


3.1 General considerations . . . . . . . . . . . . .
3.2 The phase portrait . . . . . . . . . . . . . . .
3.3 Stability of equilibrium solutions . . . . . . .
3.4 The impossibility of oscillatory solutions . . .
3.5 Another example . . . . . . . . . . . . . . . .
3.6 Example: population growth . . . . . . . . . .
3.7 Linear stability analysis . . . . . . . . . . . .
3.8 Solving differential equations using a computer
3.8.1 The Euler method . . . . . . . . . . .
3.8.2 The improved Euler method . . . . . .
3.8.3 Runge-Kutta methods . . . . . . . . .
4 Bifurcations in one-dimensional systems
4.1 The saddle-node bifurcation . . . . . . .
4.1.1 A more complicated example . .
4.1.2 The normal form of a saddle-node
4.2 The transcritical bifurcation . . . . . . .
4.3 The pitchfork bifurcation . . . . . . . . .
4.4 Exercises . . . . . . . . . . . . . . . . . .
4.5 Example: insect outbreak . . . . . . . .
4.5.1 Hysteresis . . . . . . . . . . . . .
4.5.2 Varying k . . . . . . . . . . . . .
iii

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

. . . . . . .
. . . . . . .
bifurcation
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

7
7
8
11
12
12
13
16
20
20
22
24

.
.
.
.
.
.
.
.
.

27
27
29
31
32
33
35
36
41
42

iv

CONTENTS

5 Flows on the circle


5.1 The uniform oscillator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 The nonuniform oscillator . . . . . . . . . . . . . . . . . . . . . . . . . . . .

45
46
47

6 Two-dimensional linear systems


6.1 Set-up . . . . . . . . . . . . . .
6.2 A first example... . . . . . . . .
6.3 Some definitions . . . . . . . . .
6.4 Classification of linear systems .
6.5 The eigenvalue plane . . . . . .
6.6 Application: Love affairs . . . .
6.6.1 A responsive and a fickle
6.6.2 Two cautious lovers . . .

.
.
.
.
.
.
.
.

51
51
52
57
58
65
66
67
68

.
.
.
.
.
.

73
73
73
78
81
84
87

.
.
.
.
.
.
.
.
.
.

91
92
94
96
97
100
101
103
106
108
110

. . .
. . .
. . .
. . .
. . .
. . .
lover
. . .

7 Nonlinear systems in the phase plane


7.1 Generalities . . . . . . . . . . . . . .
7.2 Fixed points and linearization . . . .
7.3 Application: competing species . . .
7.4 Conservative systems . . . . . . . . .
7.5 Application: the pendulum . . . . . .
7.6 Application: the damped pendulum .

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

8 Limit cycles
8.1 The van der Pol oscillator . . . . . . . . .
8.2 Bendixsons theorem . . . . . . . . . . . .
8.3 Weakly nonlinear oscillators . . . . . . . .
8.4 Regular perturbation theory . . . . . . . .
8.5 Two-timing: the method of multiple scales
8.5.1 The linear example . . . . . . . . .
8.5.2 The nonlinear example: back to the
8.6 A digression: Fourier series . . . . . . . . .
8.7 The method of averaging . . . . . . . . . .
8.8 The Poincare-Bendixson theorem . . . . .

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
van der Pol oscillator .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

9 Bifurcations in two-dimensional systems


113
9.1 Saddle-node bifurcations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
9.2 Pitchfork bifurcations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
9.3 Hopf bifurcations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
10 Difference equations
127
10.1 Linear constant-coefficient difference equations . . . . . . . . . . . . . . . . . 128
10.2 Nonlinear difference equations and linearization . . . . . . . . . . . . . . . . 131
10.2.1 Fixed points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

CONTENTS

10.2.2 Stability of fixed points . . . . . . . . . . . . . . . . . . . . . . . . . . 132


10.3 Poincare sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
11 The
11.1
11.2
11.3
11.4
11.5
11.6
11.7

logistic map
Fixed points and their stability . . . . .
Visualizing the logistic map . . . . . . .
Periodic solutions of difference equations
Self-similarity of the bifurcation diagram
The existence of a period 3 windows . .
Lyapunov exponents . . . . . . . . . . .
Universality in unimodal maps . . . . . .

12 Fractals
12.1 Countable vs. uncountable sets . .
12.2 Cantor sets . . . . . . . . . . . . .
12.3 Dimension . . . . . . . . . . . . . .
12.3.1 The Similarity dimension . .
12.3.2 The Box-counting dimension
13 The
13.1
13.2
13.3

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

139
139
141
143
146
147
152
154

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

157
157
159
160
161
163

Lorenz equations
165
Volume contraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
The Lorenz map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
The box-counting dimension of the Lorenz attractor . . . . . . . . . . . . . . 171

14 Strange attractors
14.1 Stretching and folding . . . .
14.2 Strange attractors: definition
14.3 The Bakers map . . . . . . .
14.4 The Henon map . . . . . . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

173
173
173
174
177

vi

CONTENTS

Chapter 1
Useful resource materials
1.1

Internet

pplane: A useful java tool for drawing phase portraits of two-dimensional systems.
See http://math.rice.edu/~dfield/dfpp.html.
Caltechs Chaos course: an entire on-line course with many cool applets and
demonstrations.
The link here is to a box-counting dimension applet.
See
http://www.cmp.caltech.edu/~mcc/Chaos_Course/Lesson5/Demos.html.
Strogatz video:
this collection of videos has the author of our textbook illustrating different aspects and applications of dynamical systems
and chaos.
All are instructive, and most are very amusing.
See
http://dspace.library.cornell.edu/handle/1813/97.

1.2

Software

Dynamics Solver. A software package for the simulation of dynamical systems. Tons of features. Not always intuitive, but pretty easy to start with. See
http://tp.lc.ehu.es/jma/ds/ds.html. Freeware.
Phaser. A software package for the simulation of dynamical systems. Looks great,
but non-intuitive steep learning curve. See http://www.phaser.com/. A single license
is $60.

1.3

Books

Dynamics, the Geometry of Behavior by Ralph H. Abraham and Christopher


D. Shaw. See http://www.aerialpress.com/aerial/DYN/. Theres some history
here: this book is commonly referred to as the picture book of dynamical systems.
1

CHAPTER 1. RESOURCES
Ralph Abraham is one of the masters of the subject. His exposition together with the
drawings of Chris Shaw makes a lot of sometimes difficult concepts very approachable
and intuitive. A true classic. Unfortunately, the printed edition is unavailable. An
ebook edition is available from http://www.aerialpress.com/aerial/DYN/. I have
the ebook if anyone wants to take a look at it.
Differential Equations, Dynamical Systems & An Introduction to Chaos by
Maurice W. Hirsch, Stephen Smale, and Robert L. Devaney (Elsevier Academic Press,
2004). A classic introductory text, also covering many standard aspects of differential
equations. The authors are true pioneers of our subject matter.

Chapter 2
Introduction
This course presents an introduction to dynamical systems. So, what are dynamical
systems? A dynamical system is a recipe that tells us how to evolve certain variables forward
in time t. Well encounter two distinct ways of doing this.

2.1

Continuous time t

If we are interested in systems where the variables depend on a time variable t R, dynamical
systems are systems of differential equations
y 0 = f (y, t),
where
y = y(t).
In other words, we want to determine the t-dependence of the vector function y =
(y1 , y2 , . . . , yN )T . Here N is referred to as the dimension of the system. Note that the
right-hand side of the dynamical system is specified by the vector function f (y, t) =
(f1 (y1 , . . . , yN , t), . . . , fN (y1 , . . . , yN , t))T . Thus, in essence, we are looking at solving a (vector) differential equation. So, why not call this course Differential Equations, pt. 2?
Because well adopt a different point of view, thats why!

2.2

Discrete time n

If instead we are interested in systems where the variables depend on a discrete time variable
n Z, dynamical systems take the form
yn+1 = F (yn , n).
3

CHAPTER 2. INTRODUCTION

It should be noted that the index n here is supposed to be thought of as a (discrete)


independent variable, like t was for continuous-time systems. It is merely a matter of convention to write the dependence on discrete variables like n as an index, instead of using
parentheses. As before, yn may be a vector function, yn = (y1,n , . . . , yN,n ). In that case the
right-hand side also becomes a vector function, of course. The types of equations we encounter are known as difference equations, and you are probably less familiar with them than
you are with differential equations. Difference equations occur often when we are sampling
continuous-time processes at discrete time intervals (for instance, once per week), or when
we investigate processes that are inherently discrete, such as the standings of sports leagues
after every day of game play. So, we could just study difference equations, right? Not right:
again well have a different point of view.

2.3

So, whats the deal with dynamical systems?

For the sake of argument, lets assume were looking at continuous-time systems. As a matter
of fact, well spend more time with this case than with the discrete-time case anyways. What
is the main difference between the theory of differential equations and the theory of dynamical
systems?
Are you sitting down? Heres some bad news:
Fact 1. Most differential equations cannot be solved. Lets be more precise: most
differential equations cannot be solves in terms of functions that we know. In fact, almost
no differential equation can be solved in such terms. For instance, the simple first-order
equation
y 0 = y 2 + t2
for a function y = y(t) cannot be solved. Bummer!
Having taken a course on differential equations you now feel cheated. Hey, dont shoot
the messenger! If we had told you this when you took your differential equations course,
you wouldnt have been very motivated, right1 ? Why then, do we put you through an entire
course on differential equations, presenting lots of solution techniques for the few equations
we can solve? Well, we have to start somewhere: solving those few equations provides lots
of intuition on which we can build.
How do we deal with this observation? Theres two ways:
We could solve differential equations numerically, using a computer, or
Instead of trying to find a formula for the solution, we could restrict ourselves to just
trying to find important characteristics of the solutions.
1
Im assuming you were a bundle of energy, constantly paying attention and providing feedback in your
differential equations course. . .

2.3. SO, WHATS THE DEAL WITH DYNAMICAL SYSTEMS?

Both approaches are viable, and they actually complement each other: the first approach
produces numbers, which are required for many applications. The second approach provides
insight, and it provides some checks for the answers produced by the first approach. So this
is the good news2 !
Fact 2. We dont care about all the details of the solutions (usually). What
we do care about are properties of the solutions: periodicity, asymptotic values and limits,
etc. Returning to the above example, we can easily see that all solutions approach infinity
as t , since y 0 0 and y 0 = 0 only for y = 0 and t = 0. Thus solutions increase without
bound faster and faster.
In the theory of dynamical systems, we are interested in the qualitative
behavior of solutions, not necessarily their quantitative properties.

You can stand up now.

CHAPTER 2. INTRODUCTION

Chapter 3
Flows on the line
3.1

General considerations

In this chapter we study dynamical systems consisting of one differential equation with a
continuous time variable that are autonomous:
dy
= y 0 = f (y),
dt
where y is a function of the independent variable t. The equation is called autonomous
because the right-hand side does not depend on t explicitly: the only t dependence is through
y = y(t). This dynamical system is called one dimensional because for any value of t,
y R1 = R, or, in other words, y is a scalar.
This differential equation is separable, so we can actually solve it:
dy
= f (y)
dt
1
dy = dt
f (y)
Z
Z
1
dy = dt + c
f (y)
Z
1
dy = t + c.
f (y)

Depending on f (y), we may or may not be able to do the integral on the left. In many cases
we cant. Even if we can do it, we have obtained only an implicit solution. In order to obtain
an explicit solution, we have to solve the remaining equation for y, which again may or may
not be possible. This is not the approach we will follow.
Heres the specific question we want to answer: for a given initial condition, deter7

CHAPTER 3. FLOWS ON THE LINE

mine the behavior of the solution as t .


Lets look at an example.
Example. Consider the equation
y 0 = sin y,
with initial condition
y(0) = y0 .
Using separation of variables, as above, and using lots of calculus, we find (check this!)
t = ln |cosec y + cot y| + c.
At t = 0 we want y = y0 , thus

0 = ln |cosec y0 + cot y0 | + c
c = ln |cosec y0 + cot y0 |,

so that


cosec y0 + cot y0
.
t = ln
cosec y + cot y
This equation can actually be solved for y, but it is not easy (try it!). Using the above, we
return to our question: as t , what can we say about y, for different y0 ? You notice
this is a hard question to answer. Is there another way of getting at this information in a
more convenient way? Well, you know I wouldnt be asking if the answer was No!

3.2

The phase portrait

The phase portrait of a dynamical system contains a lot of information about the solutions of
the system, without all the detail one finds in a solution formula. Usually the phase portrait
can be obtained much more easily, and it often contains lots of the interesting information
we want. Since phase portraits are new to us now, lets take it step by step. Well use our
first example above to illustrate the steps as we encounter them.
1. Draw the phase space: the phase space is the collection of all possible y values. For
our example, since we have only one differential equation, this is R. Thus, the phase
space looks like

3.2. THE PHASE PORTRAIT

For higher-dimensional systems, we have to draw as many coordinate axes as there


are components of y. Draw is in quotes, because once we get beyond 2 or 3 components, were doomed by our measly human capabilities of not being able to see more
than three dimensions1 .
2. Find the equilibrium points: Next, we find the equilibrium points or fixed points.
These are the values of y for which nothing happens: if we are at one of these values,
nothing changes. In other words, for the equilibrium points y 0 = 0. This implies that
f (y) = 0,
which is an algebraic equation for y. Granted, this may be a difficult algebraic problem
to solve for y, depending on how complicated the function f (y) is, but its better than
having to solve a differential equation. Having found all solutions of this algebraic
problem, weve determined all the constant solutions of the differential equation. They
correspond to points in the phase space. So, having found these points, we draw them
in the phase space.
Going back to our example, we have to solve
sin y = 0,
which results in
y = 0, , 2, . . . .
Drawing these points in the phase space gives the picture below.

At this point, let us remark why we restricted ourselves to autonomous equations.


Suppose that our equation was not autonomous:
y 0 = f (y, t).
Looking for equilibrium solutions, as before, we need y 0 = 0, which implies we have to
solve f (y, t) = 0, for constant values of y. But this is not possible: solving f (y, t) =
0 results in values of y that will depend on t, thus y 0 (t) 6= 0 and we cannot find
any equilibrium solutions. In general, non-autonomous systems are significantly more
complicated that autonomous ones. Well do very little with non-autonomous systems
in this course.
1

Four, if youre moving, but thats a different course.

10

CHAPTER 3. FLOWS ON THE LINE


3. Determine the motion in between any two equilibrium points: At this point,
all that is left to do is determine the motion around the fixed points. For onedimensional systems, theres not many possibilities. This question becomes more interesting once we consider higher-dimensional systems. But, hold your horses, were
not there yet.
Since we have determined all the fixed points, i.e., all values for which f (y) = 0, the
function f (y) is either strictly positive or negative in between any two fixed points.
Wherever this function is positive, we have y 0 > 0, meaning y is increasing there. We
indicate this by a right arrow between the two fixed points. Elsewhere the function
f (y) is negative, implying y 0 < 0 and y is decreasing. Well put a left arrow. This
results in the picture below, which is the phase portrait for the system were currently
studying.

+
2

2
0

What do we do with the phase portrait? Heres a start: plunk down an initial condition
anywhere you want. Where will it go? How will it evolve? Theres three possibilities.
If we manage, somehow, to select one of the fixed points as an initial condition, nothing
changes. The time evolution does not lead to different values.
If we choose an initial condition in a region with an arrow to the right (increasing y
values), the solution starting from the chosen initial value will evolve to higher values.
The solution cannot go past any equilibrium points: at these points there is no change.
As the equilibrium points are approached, the value of y 0 , which is also f (y), decreases,
meaning that the increase in y is less, and thus the equilibrium point is only approached
as t . Note that the approach to the equilibrium point is monotone, as the arrow
always points to the right.
If we choose an initial condition in a region with an arrow to the left (decreasing y
values), the solution starting from the chosen initial value will evolve to lower values.
As before, the solution cannot go past any equilibrium points. As the equilibrium
points are approached, the value of y 0 , which is also the value of f (y), approaches
zero, meaning that the decrease in y is slower, and thus the equilibrium point is only
approached as t . Note that the approach to the equilibrium point is monotone,
as the arrow always points to the left.
We deduce that the knowledge of the phase portrait allows us to infer the graph of
the solutions as functions of t, for different initial conditions. This graph is indicated in
Figure 3.1. Although we can always infer this graph from the phase portrait, we will hardly
ever bother. The information we want is in the phase portrait and we will focus on that
instead.

3.3. STABILITY OF EQUILIBRIUM SOLUTIONS

11

Figure 3.1: The solutions of the system y 0 = sin y, for varying initial conditions. Here the
horizontal axis represents t, while the vertical axis represents y. In essence, the vertical axis
is the phase portrait turned on its side. The figure was produced using dfield.

3.3

Stability of equilibrium solutions

From the phase portrait we easily infer the behavior of the dynamical system near the fixed
points. For instance, for our example, we immediately see that values near y = 0 end up
farther away from it, as time goes on. We call such fixed points unstable. Similarly, we see
that values that start near y = evolve to values even closer to y = . such a fixed point is
called stable. Formally, we have the following definitions.
Definition. A fixed point is called stable if solutions that start near it stay near it.
Definition. A fixed point is called asymptotically stable if solutions that start near it,
approach the fixed point as t .
Definition. A fixed point is called unstable if solutions that start near it, end up
wandering away from it.
Thus, in our example, the fixed point y = 0 is unstable, whereas the fixed points at

12

CHAPTER 3. FLOWS ON THE LINE

y = are asymptotically stable.

3.4

The impossibility of oscillatory solutions

The equation were working with is


y 0 = f (y).
It follows from the discussion in the previous section that the phase space is separated in
different regions, with the equilibrium points as their boundaries. In these regions either
f (y) > 0,
or
f (y) < 0,
leading to
y0 > 0
or
y 0 < 0,
respectively. This implies that solutions are monotonely increasing or decreasing, until they
reach one of the stable equilibrium points, if there are any. In particular, it is not possible
for solutions of equations of the form
y 0 = f (y),
to oscillate.

3.5

Another example

Before we move on to other things, lets do another example to illustrate all the concepts
weve introduced, to ensure it all makes sense. Consider the one-dimensional system
y0 = 4 y2,
with y R. Lets draw the phase portrait and determine which, if any, fixed points are
stable, unstable, etc.
1. The phase space: This is the real line, as drawn below.

3.6. EXAMPLE: POPULATION GROWTH

13

2. Fixed points or equilibrium solutions: to find these we solve


f (y) = 0 4 y 2 = 0 y 2 = 4 y = 2.
These are indicated in the phase space below.

3. The phase portrait: lastly, we determine whether f (y) = 4y 2 is positive or negative


in between any fixed points. This gives the phase portrait below.

We see that the fixed point y = 2 is unstable, whereas the fixed point at y = 2 is
asymptotically stable. If we wanted, we could sketch the actual solutions as a function of t.
This is done in Figure 3.2.

3.6

Example: population growth

As a more extended example, we consider a simple model for the evolution of a population.
For argument sake, lets assume were talking about a population N (t) of rabbits in a large,
but finite meadow. The meadow is assumed very large, but its finiteness implies there is a
limit to the resources available to the rabbit colony. For starters, we may assume that the
change in the population will depend on the size of the population, but it will not depend
on when that population is obtained. The consequence of this simple assumption is that we
consider an autonomous model for the population dynamics:
dN
= f (N ),
dt
for some function f (N ), to be determined. What kind of function should f (N ) be? We
dont have much information. Lets expand f (N ) in its power series. We get the dynamical
system
dN
= a + bN + cN 2 + dN 3 + . . . .
dt
Here a, b, c, d, . . . are the expansion coefficients of the power series. Lets find out what we
can say about them.
1. The term a. For very small populations our model implies that the most important
contribution comes from the first term in the power series, thus we consider

14

CHAPTER 3. FLOWS ON THE LINE

Figure 3.2: The solutions of the system y 0 = 4 y 2 , for varying initial conditions. Here the
horizontal axis represents t, while the vertical axis represents y. As before, the vertical axis
is the phase portrait turned on its side. The figure was produced using dfield.

N 0 = a N = N0 + at.
what can we say about this? The above equation says, among other things, that if we
start with no initial population (N0 = 0), then the population grows linearly in time.
This is surely peculiar. To avoid this unrealistic phenomenon, we are forced to equate
a to zero:
a 0,
reducing our model to
dN
= bN + cN 2 + . . . .
dt

3.6. EXAMPLE: POPULATION GROWTH

15

2. The term bN . We proceed as before. For small N , the dominant contribution is due
to the first term bN , since the term with a is gone. Thus we study
N 0 = bN.
The solution of this simple equation is
N = N0 ebt .
We find that the population changes exponentially as long as N is small (meaning,
small enough, so that the next term (cN 2 ) is not important yet). Now, do we expect
the population to increase or decrease? We are dealing with a small population with
an abundance of resources, so we expect it to increase. We conclude that
b > 0,
establishing exponential population growth for initially small populations. The constant b is referred to as the growth rate.
3. The term cN 2 . Next, we incorporate the quadratic term. Ignoring the cubic and
higher-order terms, we have
N 0 = bN + cN 2 ,
which well rewrite as


cN
N =b 1+
b
0


N.

This allows us to reinterpret b(1+cN/b) as an instantaneous growth rate. The quotes


are there to reflect that its not really a growth rate as its not constant, due to the
explicit dependence on N . Thus this growth rate changes in time, because N does.
For small N our growth rate equals b, as expected. However, as N gets bigger, the
finite amount of resources should have an impact on the dynamics, and we see that it
does: the dependence of the growth rate on N becomes more and more important.
We can also argue at this point that c should be negative,
c < 0,
since otherwise the growth rate would increase with N , resulting in ever faster rates
of growth, despite the finite amount of resources. With negative c however, we see that
the growth rate will decrease, and it can even be zero or negative for sufficiently large

16

CHAPTER 3. FLOWS ON THE LINE


N . This is to be expected: if we start with a rabbit population that is too large to
be sustained by the resources of the meadow, the population should decrease. For
convenience we rewrite
c=

b
,
K

where K is a positive constant. Our equation becomes




N
N =b 1
N.
K
0

4. Higher-order terms. We could continue along these lines, including more and more
terms. However, at this stage we have already incorporated the two effects we wished
to model: the growth of small populations and the negative effect of the finite amount
of resources. So, well stick with the quadratic model, which is known as the logistic
equation.
Next, we draw the phase portrait for the logistic model of the population dynamics.
First, the phase space is given by the positive or zero real numbers. We can exclude the
negative real axis, since were looking at population numbers, which are inherently positive.
The fixed points are found by solving


N
N = 0,
b 1
K
which gives
N = 0 or N = K.
The first fixed point is expected: nothing happens if we start without a population. The
second fixed point is more interesting: it is the value of the population that balances growth
and resources. We expect it to be stable, as the arrows of the phase portrait in Figure 3.3
below confirm. The value K is referred to as the carrying capacity of the population. The
same figure also shows the behavior of different solutions as a function of time t.

3.7

Linear stability analysis

It is possible to determine the stability of a fixed point from the phase portrait as weve
done before. However, theres an even easier way of doing this. Better still, this approach
generalizes easily to higher-dimensional systems as well see.
Consider the system
y 0 = f (y).

3.7. LINEAR STABILITY ANALYSIS

17

Figure 3.3: The phase portrait (top) for the logistic equation, with b = 1 and K = 2. Below,
several solutions as functions of t are displayed, using dfield.
Lets examine a part of the phase space near a fixed point y0 . At the fixed point we have
f (y0 ) = 0. Thus there are two possibilities, shown in Figure 3.4. Note that we are assuming
that y0 is a simple root of the equation f (y0 ) = 0. Roots of higher multiplicity result in
more complicated scenarios that well comment on briefly in what follows. That case also
plays an important role in the study of bifurcations, which well get to in the next chapter.
We see from the figure that the fixed point is unstable if f (y) is increasing at the fixed
point, whereas it is stable if f (y) is decreasing there. We can characterize this as follows:
f 0 (y0 ) > 0 implies y 0 is unstable, and
f 0 (y0 ) < 0 implies y 0 is stable.
Another way of coming to this same conclusion, and relying less on pictures, is the
following. Lets linearize our equation near y = y0 . Equate

18

CHAPTER 3. FLOWS ON THE LINE

f(y)

f(y)

y0

y0

Figure 3.4: The two possible phase portraits near a fixed point that is a simple root of
f (y) = 0. On the left we have an unstable fixed point, on the right a stable one.

y = y0 + x,
where we think of x as a small quantity, compared to y0 . Then
y 0 = f (y)
y00 + x0 = f (y0 + x)

x0 = f (y0 ) + xf 0 (y0 ) +

x2 00
f (y0 ) + . . . ,
2

where we have used the Taylor expansion of f (y) near y0 , and the fact that y00 = 0. Further,
since f (y0 ) = 0, we have
x2 00
x = f (y0 )x + f (0) + . . . .
2
If the first term is not zero, it dominates the other terms on the right-hand side, and we
get (approximately)
0

x0 = f 0 (y0 )x,
which gives
0

x = x0 ef (y0 )t .
Here x0 is the initial deviation from y0 . To investigate stability, we need to see what the
dynamics of this deviation is as t . We see that

3.7. LINEAR STABILITY ANALYSIS

19

lim x = 0, if f 0 (y0 ) < 0 (stability),

and
lim x = , if f 0 (y0 ) > 0 (instability),

where the is determined by x0 . In any case, we see that we find the same conclusion this
way as using the graphical method. Note that these calculations show that
=

1
|f 0 (y

0 )|

is a characteristic time for the behavior near the fixed point: it is the time it takes the
dynamics to change by a factor of e = 2.718 . . ..
A few remarks are in order. The linearization method requires that f (y) can be expanded
in a Taylor series near y = y0 . Specifically, if f (y) has a vertical tangent at the fixed point,
the linearization method cannot be used, since there is no Taylor series. Also, if f (y) has a
horizontal tangent at y = y0 , the method cannot be used. In that case y0 is a higher-order
root of the equation and the linear term vanishes since f 0 (y0 ) = 0. Thus we have to take
the quadratic and higher-order terms into account. In a case like that, it is possible that the
graphical method still gives the right result, even if the linearization method is inconclusive.
As an example, you should examine the system
y 0 = y 3 = f (y).
Youll find easily that y = 0 is a fixed point, but with f 0 (y) = 3y 2 is zero there. Thus the
linear stability analysis is inconclusive. The graphical method shows that the fixed point is
unstable, since y 3 > 0 for y > 0 and y 3 < 0 for y < 0. Thus y = 0 is an unstable fixed point
of the system y 0 = y 3 .
Example. Consider the logistic equation. We have


N
0
= f (N ).
N = bN 1
K
As weve seen, there are two fixed points:
N1 = 0,

N2 = K.

We calculate the derivative of f (N ):




N
b
2b
f (N ) = bN 1
= bN N 2 f 0 (N ) = b N.
K
K
K
evaluating this at the fixed points gives
f 0 (N1 ) = f 0 (0) = b > 0 N1 = 0 is unstable,

20

CHAPTER 3. FLOWS ON THE LINE

and
f 0 (N2 ) = f 0 (K) = b < 0 N1 = K is stable,

in accordance with our earlier results.

3.8

Solving differential equations using a computer

We wont say much about using numerical solutions in this course, as we are more interested
in the qualitative behavior of solutions. Nevertheless, using numerical methods is unavoidable and very helpful in real-life applications. Further, this section will give us a first glimpse
of dynamical systems with a discrete time variable.
The ideas well outline below also work for non-autonomous equations, but to ease the
presentation we will restrict ourselves to autonomous systems. Thus we study an equation
of the form
y 0 = f (y).
Observe that for every pair (t, y) this allows us to draw an arrow in the (t, y)-pair indicating
the slope to the solution of the differential equation at that point. The collection of these
arrows is known as the direction field. One is drawn in Figure 3.5.
So, how do we numerically construct the solution to the equation passing through a given
point (the initial condition)? Well, one idea would be to just follow the direction of the arrow
for a bit. This is exactly what the Euler method does.

3.8.1

The Euler method

Using the idea of following the arrows, Eulers scheme simply says that the derivative of the
solution y(t0 ) is given by
y(t0 + t) y(t0 )
,
t
where on the right-hand side weve used the differential quotient of y(t0 ) and the neighboring
point y(t0 + t). We get
y 0 (t0 ) = f (y(t0 ))

y(t0 + t) y(t0 ) + f (y(t0 ))t.


This is known as the explicit Euler method with time step t. If we let t1 = t0 + t, then
y1 = y0 + f (y0 )t,
where y0 = y(t0 ), y1 = y(t1 ), etc. In general,
yn+1 = yn + f (yn )t,

3.8. SOLVING DIFFERENTIAL EQUATIONS USING A COMPUTER

21

Figure 3.5: A direction field for an ordinary differential equation. The plot was produced
using dfield.
which is a first-order (since theres only one shift appearing) difference equation. However
naive, Eulers method is not bad. It is clear that to obtain a good approximation, one needs
to choose a sufficiently small t.
One measure of the accuracy of a numerical scheme is its local truncation error:
En+1 = |yn+1 y(tn + t)| .
This is the error made by moving from the point we obtained for the nth position to the
(n + 1)th point where the Euler method takes us. We can say more by using a Taylor
expansion:
En+1 = |yn+1 y(tn + t)|





(t)2 00
0

= yn + f (yn )t y(tn ) + ty (tn ) +
y (tn ) + . . .
2

22

CHAPTER 3. FLOWS ON THE LINE





2


(t)
00
= yn + f (yn )t yn + tf (y(tn )) +
y (tn ) + . . .
2


2

(t) 00
y (tn ) + . . .
=
2
= O(t)2 ,

where O((t)2 ) indicates that the local truncation error is of second order in t. Thus, at
every time step were making an error which is quadratic in the small time-step t.

3.8.2

The improved Euler method

The ideas that went in to the Euler method are pretty rudimentary. Can we do something
fancier, something that might result in an approximation scheme that has a better local
truncation error, for instance? It turns out there are many ways of doing this. The simplest
way to improve Eulers method is to use the improved Euler method2 !
Heres how it works. For Eulers method we use derivative information from the current
point to get to the next point. But the derivative changes all along the solution curve that
were trying to approximate. So, perhaps, we could do better by incorporating derivative
information from the next point. Why dont we do this? Thats an easy one to answer: we
dont do this, because we dont know the next point on the solution curve. On the other
hand, we do know a decent approximation to this next point, namely what we get from
Eulers method. Lets use that. Heres what well do.
1. We use Eulers method to get to a new point yn+1 :
yn+1 = yn + f (yn )t.
This is illustrated by the black arrow in Figure 3.6.
2. The derivative information from this predictor point is f (
yn+1 ), indicated by the red
arrow in Figure 3.6.
3. Using this new direction, we calculate a new, updated guess for our new point, by
averaging the two directions:
yn+1 = yn +

t
(f (yn ) + f (
yn+1 )).
2

This gives a new scheme to numerically solve differential equations. Lets examine the
local truncation error to confirm that this scheme is actually better than Eulers method.
We have
2

No, seriously!

3.8. SOLVING DIFFERENTIAL EQUATIONS USING A COMPUTER

23

y^n+1

yn+1

yn
tn

tn+1

Figure 3.6: An illustration using too many colors of the improved Euler method. The black
arrow shows the prediction from Eulers method. The red arrow shows the derivative at
the prediction point. The blue arrow gives the average direction of the black and the red
arrow, resulting in a final point for the improved Euler method, which might be a better
approximation.

En+1 = |yn+1 y(tn + t)|





2
3


(t)
(t)
t
0
00
000
(f (yn ) + f (
yn+1 )) y(tn ) + ty (tn ) +
y (tn ) +
y (tn ) + . . .
= yn +
2
2
6


2
3
t

t
(t)
(t)
0
00
000
= f (yn ) +
f (yn + tf (yn ) ty (tn )
y (tn )
y (tn ) + . . .)
2
2
2
6



2
2
t
(t) f (yn ) 00
t
0

= f (yn ) +
f (yn ) + tf (yn )f (yn ) +
f (yn ) + . . .
2
2
2


(t)2 00
(t)3 000
0
ty (tn )
y (tn )
y (tn ) + . . .
2
6


2
3
= t + (t) + (t) + . . . ,

24

CHAPTER 3. FLOWS ON THE LINE

where
1
1
= f (yn ) + f (yn ) y 0 (tn ) = 0,
2
2
and we have used that
y 0 (tn ) = f (y(tn )) = f (yn ).
Next, we have
1
1
= f (yn )f 0 (yn ) y 00 (tn ) = 0,
2
2
where we have used that

y 0 (tn ) = f (y(tn )) = f (yn )


y 00 (tn ) = f 0 (y(tn ))y 0 (tn ) = f 0 (yn )f (yn ),

by the chain rule. Similarly, you can show that generically (meaning, almost always, unless
f (y) is chosen in a very special way) 6= 0. This implies that the improved Euler method does
indeed appear to be a more accurate method than Eulers method, as its local truncation
error is given by
En+1 = O((t)3 ),
which is one order of magnitude better than Eulers method.

3.8.3

Runge-Kutta methods

Methods like the above can be more refined. At some point, we have to pay a price in
efficiency (read: speed of the computation) compared to accuracy of the method. It is
generally agreed that the 4th order Runge-Kutta method is one of the best methods when it
comes to balancing these two effects. The method is given by
yn+1 = yn +

t
(k1 + 2k2 + 2k3 + k4 ) ,
6

where

k1
k2
k3
k4

= f (yn ),
= f (yn + k1 /2),
= f (yn + k2 /2),
= f (yn + k3 ).

3.8. SOLVING DIFFERENTIAL EQUATIONS USING A COMPUTER

25

One can show (do not necessarily try this at home!) that the local truncation method
for this method is
En+1 = O((t)5 ).

26

CHAPTER 3. FLOWS ON THE LINE

Chapter 4
Bifurcations in one-dimensional
systems
Up to this point, we have considered systems of the form
x0 = f (x),
where x is one-dimensional. We have seen that the behavior of solutions of the these equations is rather restricted: solutions change in a monotone way. Either they approach a fixed
point, or else they head off to one of .
So, what can be interesting about systems like this? The answer is their dependence
on parameters.
In this chapter, we will study bifurcations. Bifurcation theory is the study of how solutions of dynamical systems change as a parameter is changed. As an example, consider the
growth of mosquito populations. As we all know, this heavily depend not only on the size of
the population and the available resources1 , but also on the temperature. If the temperature
T is so that T < Tc (a certain threshold) then the mosquitos are immobilized. On the other
hand, if T > Tc , they become very active. Thus, if we expect to have a good model for the
mosquito evolution, the temperature should show up as a parameter. Further, for the special
value T = Tc , we expect something special to happen in the system. If the phase portraits
for T < Tc and T > Tc are qualitatively different, we say that a bifurcation occurs
at T = Tc .

4.1

The saddle-node bifurcation

Consider the system


x0 = + x2 ,
1

That would be us. . .

27

28

CHAPTER 4. BIFURCATIONS IN ONE-DIMENSIONAL SYSTEMS

x
1/2

1/2

()

()
(a)

0
(b)

(c)

Figure 4.1: The three different phase portraits for the system x0 = + x2 , for different values
of . On the left (Figure (a)), < 0. In the middle (Figure (b)), = 0, while > 0 on the
right in Figure (c).
where is a real-valued parameter. The fixed points of this system are given by
+ x2 = 0 x2 = .
We see immediately that there are three different possibilities:
1. < 0: In this case is positive, meaning we can take a square root. Thus there are
two distinct fixed points (which we indicate with a super-index ):

x = .
As shown in Figure 4.1a, the phase
portraits do not change qualitatively as changes

in this range. The fixed point at is always stable, and the fixed point at
is unstable.
2. = 0: This is easy. Now theres only one fixed point,
x = 0,
which is semi-stable.
3. > 0: In this case there are no fixed points, and the value of x increases forever. This
scenario is illustrated in Figure 4.1c.
Thus, in the bifurcation of changing from a negative value to a positive value,
two fixed
points disappear and instead of all solutions with initial condition less than (which
ceases to be defined for > 0) converging to a fixed point, they end up drifting off to infinity.
In a saddle-node bifurcation, two fixed points are destroyed or appear.
We wont explain where the name of this bifurcation comes from, until we start talking
about bifurcations in higher-dimensional systems. Somehow well survive until then. The

4.1. THE SADDLE-NODE BIFURCATION

29

<0

=0

>0
Figure 4.2: The evolution of the phase portrait for varying .

evolution of the phase portrait for different parameter values is shown more schematically in
Figure 4.2. The summary of all these phase portraits is usually represented in the bifurcation
diagram, which displays the local of the fixed points as a function of the parameter. Thus,
we turn the phase portrait on its side and examine how it changes as changes through the
bifurcation value = 0. The bifurcation diagram is shown in Figure 4.3.
On a more schematic level, the bifurcation diagram is often displayed without the arrows
indicating the phase flow. Instead, curves depicting stable fixed points are shown as solid
curves, whereas unstable fixed point curves are shown dashed. Such a bifurcation plane
cartoon is shown in Figure 4.4.

4.1.1

A more complicated example

Consider the system


x0 = x ex = f (x).
As before, we start by finding the fixed points. These satisfy
x ex = 0.
In general, for arbitrary values of , we cant solve this equation for x. How can we check
whether there is a saddle-node bifurcation in this system? Lets reconsider our first example
again. We see that, in order to have a saddle-node bifurcation as a certain bifurcation point,
it is necessary to have
1. A fixed point: f (x) = 0, and
2. This fixed point should be semi-stable, as it occurs at the transition of the collision of
two fixed points of opposite stability properties. In order to have a semi-stable fixed
point, it is necessary that
f 0 (x) = 0.

30

CHAPTER 4. BIFURCATIONS IN ONE-DIMENSIONAL SYSTEMS

x*

Figure 4.3: The bifurcation diagram for x0 = + x2 , displaying a saddle-node bifurcation.


Lets see what these two equations give for our current example. The first condition
weve already written down above. The second one gives
f 0 (x) = 0

1 + ex = 0.

In general, the two equations


f (x) = 0, f 0 (x) = 0,
give two conditions to be satisfied at the bifurcation point (c , xc ). Thus, even if we cannot
solve these equations with pen and paper, we still have two equations for two unknowns,
which we could solve using a computer. Sweet!
So, what do we get here? The second equation gives
ex = 1 x = 0.
Using this in the second equation gives
= 1.
Thus, a saddle-node bifurcation takes place at (c , xc ) = (1, 0).

4.1. THE SADDLE-NODE BIFURCATION

31

x*

Figure 4.4: A schematic bifurcation diagram for x0 = + x2 , displaying a saddle-node


bifurcation, using a dashed line for a curve of unstable fixed points and a solid line for a
curve of stable fixed points.

4.1.2

The normal form of a saddle-node bifurcation

Having determined the bifurcation point, we can now put our system in a familiar form, at
least in a neighborhood of the bifurcation point. Again, consider
x0 = x ex = F (, x).
We have made the dependence of the right-hand side on the parameter explicit. Near any
point (0 , x0 ) in (, x) plane, we may expand the function F (, x) using a two-dimensional
Taylor series as


F
F
+ (x x0 )
+
F (, x) =F (0 , x0 ) + ( 0 )
(0 ,x0 )
x (0 ,x0 )


2
1
2 F
2 F
( 0 )
+
+ ( 0 )(x x0 )
2
2 (0 ,x0 )
x (0 ,x0 )

2
1
2 F
(x x0 )
+ ...,
2
x2 (0 ,x0 )

32

CHAPTER 4. BIFURCATIONS IN ONE-DIMENSIONAL SYSTEMS

where the . . . terms denote terms that are at least of cubic order. Lets work out what this
expansion gives for our F (, x), near (c , xc ) = (1, 0). We have
F (c , xc ) = 0,

F
= 1,
(c ,xc )

F
= 0,
x (c ,xc )

2 F
= 0,
2 (c ,xc )

2 F
= 0,
x (c ,xc )


2 F
x
=
e
= 1.
((c ,xc ))
x2 (c ,xc )
Here the first and third result are by construction. Indeed, these are the conditions we
imposed to locate the bifurcation point. Putting all this together, we get
1
1
x0 = 0 + ( c ) 1 + (x xc ) 0 + ( c )2 0 + ( c ) 0 + (x xc )2 (1) + O(3)
2
2
1 2
= ( 1) x + O(3),
2
where O(3) denotes terms of third order. This description allows us to draw a bifurcation
diagram easily, valid near the bifurcation point (c , xc ) = (1, 0). This is shown in Figure 4.5.
One should remember that this description, or any description of a bifurcation, is only
valid close to the bifurcation point. This example illustrates that the original system
x0 = + x2
may be considered as the standard system with a saddle-node bifurcation. We (or at
least, I) refer to it as the normal form for the saddle-node bifurcation.

4.2

The transcritical bifurcation

Another type of bifurcation exists for the following prototypical system:


x0 = x x2 ,
where R. The fixed points are given by

4.3. THE PITCHFORK BIFURCATION

33

Figure 4.5: A schematic bifurcation diagram for x0 = x ex , near the bifurcation point
(c , xc ) = (1, 0).

x x2 = 0 x = 0, x = .
Thus, for every value of , there are two fixed points. Well, not exactly: if = 0 these two
fixed points collide. Thus we have a good guess that something happens at (c , xc ) = (0, 0).
The bifurcation diagram is displayed below, in Figure 4.6. A schematic (no arrows) is shown
in Figure 4.7.
It follows from these figures that for < 0 x = 0 is a stable fixed point, whereas x =
is unstable. For > 0, the roles are reversed. Now x = is stable, and x = 0 is unstable.
In a transcritical bifurcation, two families of fixed points collide and exchange
their stability properties. The family that was stable before the bifurcation is
unstable after it. The other fixed point goes from being unstable to being stable.

4.3

The pitchfork bifurcation

As a set-up example, lets start by considering the example of a solid elastic beam (think
steel), which is supporting a weight. This situation is illustrated in Figure 4.8, for two
different weights. If the weight W does not exceed a critical weight Wc , the beam supports
the weight. Thats nice. If the weight exceeds a critical weight Wc , then it will buckle, either
to the left or to the right (because we have a two-dimensional beam; three-dimensional

34

CHAPTER 4. BIFURCATIONS IN ONE-DIMENSIONAL SYSTEMS

Figure 4.6: The bifurcation diagram for x0 = x x2 , showing the transcritical bifurcation.
beams have more options). The smallest perturbation (for instance in the composition of
the weight) may determine which way the beam will buckle. The possibility of the beam
remaining upright is still there, but this possibility is unstable. This set-up, which involves
three fixed points in the latter scenario, cannot be modeled by a saddle-node or transcritical
bifurcation. Thats where the pitchfork bifurcation comes in.
The normal form of a pitchfork bifurcation is given by the system
x0 = x x3 .
The fixed points are given by

x = 0, x = ,
where the latter two are only defined for > 0. Case-by-case, we get
1. < 0: x = 0 is the only fixed point. It is stable, as an elementary linear stability
analysis (for instance) shows.
2. = 0: x = 0 is the only fixed point, but it has triple multiplicity. It remains stable,
as a graphical analysis shows. Note that the linear stability analysis is inconclusive
here.

3. > 0: x = 0 and x = are all fixed points. The fixed point x = 0 has lost its
stability (sob), but the other two fixed points are stable.

4.4. EXERCISES

35

Figure 4.7: A schematic bifurcation diagram for x0 = x x2 .


The bifurcation diagram is given in Figure 4.9. We see that in a pitchfork bifurcation
one family of fixed points transfers its stability properties to two families after/before the
bifurcation. Note that this is very similar to the example of the steel beam we discussed
above. The bifurcation of this example is called supercritical, because the nontrivial (i.e.,
nonzero) families of fixed points occur for values of the parameter larger than the bifurcation
value.
Similarly, a pitchfork bifurcation is called subcritical if the nontrivial fixed points occur for
values of the parameter lower than the bifurcation value. Such a case is shown in Figure 4.10.
It can be obtained from the system
x0 = x + x3 .
Now the fixed points are given by

x = 0, x = ,
where the latter two are only defined for values of < 0, i.e., before the bifurcation which
takes place at = 0. In that case it appears that the stability of a fixed point (at zero, in
this case) is destroyed through its collision with two families of unstable fixed points.

4.4

Exercises

To practice the concepts weve learned so far, you should try to classify the bifurcations in
the two following problems.
Consider the problem

36

CHAPTER 4. BIFURCATIONS IN ONE-DIMENSIONAL SYSTEMS

W<Wc

W>Wc

Figure 4.8: A beam. Actually, two beams. With weights on top. So there.

x0 = (R x2 )(R 2 + x2 ).
Find all the fixed points. How many bifurcations are there, and of what type? Draw
the bifurcation plane. Answer: there are two transcritical bifurcations, and two saddlenode bifurcations.
Consider the problem
x0 = Rx

x2
.
1 + x2

How many bifurcations are there, and of what type? Draw the bifurcation plane.
Answer: there is one transcritical bifurcations, and two saddle-node bifurcations. There
is also a singular (i.e., at x = ) bifurcation at R = 0.

4.5

Example: insect outbreak

Well examine a model for the dynamics of the spruce budworm, which is a real pest in
Eastern Canada, and other parts of Canada. When an outbreak occurs, the budworm can
defoliate and kill the fir trees in an entire forest in about four years! Similar pests have

4.5. EXAMPLE: INSECT OUTBREAK

37

Figure 4.9: The bifurcation diagram for a supercritical pitchfork bifurcation


had a major impact on some of the national forests of Washington, especially in the Entiat,
Chiwawa and Wenatchee areas.
Well examine a model where we assume that the forest variables are constant, especially
when compared to the fast changing spruce worm population variable. At the end of our
analysis we will take the potential change of the forest parameters into account, which leads
to bifurcations.
Lets look at which model we will use. Well start with a logistic model (which takes into
account exponential growth for small populations, and finite resources), augmented with a
death rate term, due to the presence of predators, mainly birds. This leads to a model of
the form


N
0
N = RN 1
p(N ),
K
where p(N ) is the announced death rate term. What would be a good model for the death
rate? Taking into account that for very small populations N , the death rate should be small,
as predators have a hard time locating prey, and that any predator can only eat so much
prey, we expect the term p(N ) to behave as in Figure 4.11.
It does not really matter what the functional form of p(N ) is, as long as it has the above
features: monotone, quadratically small for small N and saturating as N . We can use
p(N ) =

BN 2
,
A2 + B 2

where A and B are constants. Thus we have




dN
N
BN 2
= RN 1
2
.
dt
K
A + N2

38

CHAPTER 4. BIFURCATIONS IN ONE-DIMENSIONAL SYSTEMS

Figure 4.10: The bifurcation diagram for a subcritical pitchfork bifurcation.


There are 4 parameters in this problem: A, B, R and K. Lets see if we can rescale our
variables to reduce this number. Let
N = N0 x, t = t0 .
Expressing the equation using the new variables and x introduces two new constants in the
equation, t0 and N0 . We get to choose these at will, to simplify our life as much as possible.
We get


N0 dx
N0 x
BN 2 x2
= RN0 x 1
2 0 2 2.
t0 dt
K
A + N0 x
We can rewrite this as


N0 x
Bt0 x2
dx
.
= Rt0 x 1

d
K
N0 (A2 /N02 + x2 )
There are different choices we can make to simplify our life. If we wish to make the last term
parameter free, we can pick
N0 = A, Bt0 = N0 ,

N0 = A, t0 = A/B.

We can now rewrite our equation as



dx
x2
x
= x 1

,
d
k
1 + x2
where we have defined
=

RA
K
, k= ,
B
A

4.5. EXAMPLE: INSECT OUTBREAK

39

p(N)

N
Figure 4.11: A likely profile for the death rate p(N ).
two parameters defined in terms of the old ones. The consequence of this rescaling business
is that we have reduced the number of parameters in our system from 4 to 2! Thats a good
days work! We see that represents a rescaled growth rate, whereas k represents a rescaled
carrying capacity.
The concept of rescaling variables to reduce the number of parameters in an equation is
an important one, which well use many more times in this course. Especially for equations
with units, this allows us rewrite everything in terms of dimensionless variables, which is
important as it allows us to make sense out of statements about large and small, etc. Well
come back to this when we need it.
We now analyze this system. We start by looking for the fixed points. They satisfy


x
x 2

,
=
x 1
k
1 + x 2
which implies there is one fixed point x = 0, which is hardly exciting. The rest is more
enticing:


x
x
1
=
.
k
1 + x 2
This (after getting rid of denominators) is a cubic equation for x . We could use Cardanos
formulae for the solutions of the cubic, but does anyone really want to do that? Didnt think
so. Lets do a graphical analysis instead.
1. For very small values of , (i.e., < 1 , see below) we see (Figure 4.12, upper left)
that there is one fixed point, x = a, which is a relatively small value. Since the curve
is below the straight line it follows that the fixed point is stable, thus the value x = a
is stable. It is referred to as the refuge level. A budworm population of this size in a
forest does not pose a threat.

40

CHAPTER 4. BIFURCATIONS IN ONE-DIMENSIONAL SYSTEMS

=1

<1

1<<2

b=c

=2

c k

c k

a=b

>2

c k

Figure 4.12: The different possibilities for the fixed points, for fixed k and increasing .
2. At = 1 , the straight line touches the curve in an additional point, which gives rise
to another fixed point, x = b = c. Indeed, the multiplicity of this additional point is
two, due to the tangency. At the same time, the refuge fixed point x = a still persists.
That point remains stable, whereas the new fixed point is semi-stable for this value of
= 1 . It is the tip of a saddle-node bifurcation in which two fixed points are born.
3. For values of > 1 (but below the next bifurcation value 2 , see below) there are
three distinct fixed points (always in addition to the trivial one at x = 0, which really
does not enter our discussion), x = a (refuge, stable), x = b (threshold, unstable) and
x = c (outbreak, stable). It is clear why this last one is referred to as the outbreak
level, as it corresponds to a stable budworm population that is very high. On the
other hand, the second fixed point x = b is unstable: any initial condition higher than
x = b will result in an outbreak scenario, hence the name threshold.

4.5. EXAMPLE: INSECT OUTBREAK

41

x
c

b
a
1

Figure 4.13: The bifurcation diagram for the budworm problem, for a fixed value of k.
4. For = 2 , the fixed points x = a and x = b collide, and they annihilate in a
saddle-node bifurcation. At this value of , x = a = b is semi-stable, whereas the
outbreak level x = c persists and is stable.
5. Finally, for > 2 , the outbreak level is the only fixed point remaining. The point is
stable and all initial conditions lead to outbreak. Sad but true2 .
Putting all of this together, results in the bifurcation diagram shown in Figure 4.13. As
discussed there are two saddle-node bifurcations.

4.5.1

Hysteresis

Question: what can happen if the forest parameters changed for some external
reason? Lets examine this. Suppose we start in the regime where < 1 , but close to it.
Since x = a (refuge) is the only stable point, thats where well end up. Now suppose were
to increase beyond 1 . The budworm population will remain on the x = a (refuge) branch
of fixed points, since it is stable. Now, when reaches the point where 2 , something
happens, since beyond there, the refuge level does not exist anymore. The only stable fixed
2

(c) Metallica, 1991.

42

CHAPTER 4. BIFURCATIONS IN ONE-DIMENSIONAL SYSTEMS

point is given by the outbreak level, thus the population will see a sharp rise, from x = a
to x = b. For larger values of , the budworm population remains at outbreak levels, since
that is the only stable scenario. This is all bad news.
Suppose we, somehow, someway, somewhere, were to reduce the forest parameters. Would
we be able to undue these effects? Suppose we start from outbreak, but decreases to levels
below 2 . Since the outbreak branch is stable, this is where the population level remains.
Doh3 ! Lets see what happens as we increase more. As decreases below 1 , we finally
get the sharp decrease in the budworm population we were hoping for. This drop happens
because the outbreak level ceases to exist, and the refuge level is the only level that is stable.
We see that the system has executed the yellow loop of Figure 4.13, known as a hysteresis
loop. Such phenomena are known from electromagnetism, but they occur more widely in a
large variety of dynamical systems. We see that the presence of two saddle-node bifurcations
(one subcritical, one supercritical) leads to hysteresis.

4.5.2

Varying k

What happens if we also consider variations in k? It is clear that the values of 1 and 2 will
vary as k is changed, but it also appears that lots will remain as discussed above. In more
generality, lets determine what behavior is possible in our two-dimensional parameter space.
To this end, lets determine at what values of the parameters (k, ) bifurcations occur.
We have already seen that the only bifurcations in this problem are of saddle-node type.
And we know how to determine saddle-node bifurcations: we need a fixed point, and a
vertical tangent at the fixed point. Recall that our system looks like

x2
x

= F (k, , x).
x0 = x 1
k
1 + x2
At a bifurcation point, we need
F (k, , x) = 0,

F (k, , x)
= 0.
x

Writing out these equations, we get



x
x2
x 1

= F (k, , x) = 0,
2
k
1
+
x
 

x
x2

x 1

= F (k, , x) = 0.
x
k
1 + x2
The rest is tedious algebra:
3

(c) H. Simpson, American philosopher.

4.5. EXAMPLE: INSECT OUTBREAK

43



x
x 2
=
x 1
,
k
1 + x 2


x
(1 + x 2 2x x 2 2x)
x

=
k
k
(1 + x 2 )2



x
x 2

x 1
=
,
2
k
1
+
x

2x
x

k
(1 + x 2 )2


x
x

=
,
1
k
1 + x 2

1 x 2

k
(1 + x 2 )2



1 x 2
x

,
=
+x
(1 + x 2 )2
1 + x 2

1 x 2

k
(1 + x 2 )2

2x 3

=
,
1 + x 2

2 2

k = (1 + x )
1 x 2

3
2x

=
,
1 + x 2 .

3
2x

k =
x 2 1

We can consider x as a parameter. Then the above equation gives us expressions for
and k at which bifurcations happen. Since the first bifurcation happens to the right of the
maximum of x/(1 + x2 ) (which occurs at x = 1), it follows that the range for x [1, ).
Drawing the above curves in the (k, )-plane as a function of the parameter x gives rise to
Figure 4.14. Three regions are indicated there. Anytime one of the curves in the figure is
crossed, a saddle-node bifurcation takes place.

44

CHAPTER 4. BIFURCATIONS IN ONE-DIMENSIONAL SYSTEMS

outbreak

refuge

refuge+outbreak
k

Figure 4.14: The bifurcation curves for the budworm problem in the parameter (k, )-plane.

Chapter 5
Flows on the circle
Instead of considering the dynamical system
x0 = f (x)
with x R, we could consider it on the circle. By this we mean that we let x [0, L), for some
positive L. Further, whenever x crosses one of the boundaries of its interval of definition, we
assume it comes back in on the other side. Mathematically, this implies were considering x
mod L. This amounts to considering x like an angle on the circle. To emphasize this more,
we write
0 = f ()
instead, with SL , the circle with circumference L. Thus 0 denotes the rate of change of
the angle , or the angular velocity. The main difference with flows on the line is that now
the flow can return to where it was, by going around the circle. Thus, periodic solutions are
possible!
Example. In this first example we show that periodic solutions do not always occur for
systems defined on the circle. Consider
0 = sin , S2
First we look for fixed points:
sin = 0 = N ,
for any integer N . Note that only N = 0 and N = 1 give rise to distinct points on S2 .
Thus, we have two fixed points:
1 = 0, 2 = .
Using 0 , we determine the phase portrait of the system, which is displayed in Figure 5.1.
We see that the fixed point 2 = is (asymptotically) stable, whereas 1 = 0 is unstable.
45

46

CHAPTER 5. FLOWS ON THE CIRCLE

*
2

*
1

=0

Figure 5.1: The phase portrait for 0 = sin on S2 .


We have encounted this same example before, but we treated it as a system on the line.
It is far more natural to treat it as a system on the circle! Whether that is the correct thing
to do or not has to be determined by the specific application that leads one to the system.
One should also realize that not every system can be considered as a system on the circle:
for instance the system
0 = 2
cannot be regarded as a system on S2 . Indeed, the flow gives conflicting information at
= 0 and at = 2, which should correspond to the same point. The system says that
the rate of change at that point is either 0 = 0, or else 0 = 4 2 , which are very different.
Such inconsistencies imply that this system cannot be defined on the circle. Somehow well
survive.

5.1

The uniform oscillator

The simplest flow on the circle is given by the system


0 = ,
where is a real nonzero constant and S2 . This system is easily solved:
= t + 0 ,

5.2. THE NONUNIFORM OSCILLATOR

47

where 0 represents the initial angle. We see that the entire circle is rotating with angular
velocity . After
2
,

(the period) all points are back where they started.


T =

5.2

The nonuniform oscillator

Next we consider the more complicated system


0 = a sin ,
with S2 . For the sake of argument we consider both and a to be positive. Looking
for the fixed points, we find
= a sin .
There are three different cases.
1. If a < then the fixed point equation has no solutions (see Figure 5.2, left). The whole
circle rotates towards increasing angles. The velocity is higher for angles in the third
and fourth quadrant, as is clear from Figure 5.2. In this case, the motion is periodic:
after some amount of time, the circle will be back to its initial position. The phase
portrait is shown on the right of Figure 5.2. It is actually pretty easy to figure out the
period T of the motion. We have

0 = a sin
Z 2
d
dt =
a sin
Z0 2
d
.
T =
a sin
0

The bounds of integration have been picked as follows: we can choose any initial
condition we want: the whole circle is rotating, so all solutions will be periodic. Now,
after one period = 2, namely the circle has rotated once. In this case we can work out
the integral. Dandy! The important part is to realize that even if this is not possible,
we have obtained an expression for the period, in terms of an integral which could be
easily evaluated numerically. Here we get, using the substitution = 2 arctan u (check
this!)
T =

2
.
2 a2

48

CHAPTER 5. FLOWS ON THE CIRCLE

slow

0
a

fast

Figure 5.2: The right-hand side of 0 = a sin , for a < , on the left. The phase portrait
for this case is shown on the right.
/2

/2

Figure 5.3: The right-hand side of 0 = a sin , for a = , on the left. The phase portrait
for this case is shown on the right.
2. When a = , there is exactly one fixed point at /2, but it is a semi-stable fixed point,
as observed from Figure 5.3. Note that all initial conditions eventually lead to the
fixed point at /2. We say that the fixed point is attracting. This does not imply that
the fixed point is stable though.
3. For a > , there are two distinct fixed points, one stable and one unstable. These are
born out of a saddle-node bifurcation at the critical value a = .

5.2. THE NONUNIFORM OSCILLATOR

49

Figure 5.4: The right-hand side of 0 = a sin , for a > , on the left. The phase portrait
for this case is shown on the right.

50

CHAPTER 5. FLOWS ON THE CIRCLE

Chapter 6
Two-dimensional linear systems
We have seen that the behavior of linear systems is very constrained. Things got a bit more
interesting when we discussed bifurcations. This kind of lured us to a second dimension,
but not really. Lets go there now. Well start by studying linear systems, to build some
intuition before we go to nonlinear systems.

6.1

Set-up

A two-dimensional linear system is a system of the form


 0
x1 = ax1 + bx2
x02 = cx1 + dx2 .
Here a, b, c, and d are constants. We conveniently rewrite this using vector-matrix notation
as
x0 = Ax,
with

x=

x1
x2


,

and

A=

a b
c d


.

One immediate consequence of the system being linear is that if x(1) and x(2) are solutions,
then so is
x = c1 x(1) + c2 x(2) ,
where c1 and c2 are arbitrary constants.
51

52

CHAPTER 6. TWO-DIMENSIONAL LINEAR SYSTEMS

A nice consequence of considering two-dimensional systems is that we can start working


with mechanical systems, since Newtons law is a differential equation of second order. For
instance, consider the case of a particle suspended from an elastic spring, governed by Hookes
law:
my 00 = ky,
where m denotes mass, k is Hookes spring constant and y is the displacement away from
equilibrium. Our standard approach is to rewrite this as a first-order system. Since the
equation is of second order, we introduce two variables:
x1 = y, x2 = y 0 .
What are the differential equations for these quantities? We start with x1 . Taking a derivative, we get
x01 = y 0 = x2 .
That was easy! Now for x2 :
x02 = y 00 =

k
k
y = x1 .
m
m

Thus
(

x01 = x2
x02 =

.
k
x1
m

Rewriting this in matrix form, we obtain



 


d
x1
0
1
x1
=
.
k/m 0
x2
dt x2

6.2

A first example...

Well consider the system


d
dt

x1
x2


=

a 0
0 1



x1
x2


,

where a is a real parameter. Note that this system isnt really worthy of the name system,
as its really two decoupled scalar equations:
x01 = ax1 , x02 = x2 .
These equations are easily solved:

6.2. A FIRST EXAMPLE...

53

x1
x10
t

x20
x2

Figure 6.1: A plot of x1 (t) and x2 (t) as functions of t, for specific initial conditions x10 and
x20 .

x1 = x10 eat , x2 = x20 et ,


where x10 and x20 are initial conditions for x1 and x2 respectively.
How do we graphically represent these solutions? We could plot x1 (t) and x2 (t) as
functions of t for different initial conditions. Such a plot is shown in Figure 6.1. The
disadvantage of this approach is that wed need a different plot for different initial conditions.
More importantly, in order to use this approach, we need to be able to solve the differential
equations explicitly. More often than not, we wont be able to do this, so wed be stuck.
Further, often we dont care much for the detail of these plots. As before we are more
interested in qualitative features.
Instead, we can opt for the same approach we used for one-dimensional systems, where
we drew the phase portrait. The phase space (the collection of permissible pairs (x1 , x2 ))
will be the plane R R, or a part thereof. The equations

x1 = x10 eat
x2 = x20 et
define a parametric plot in the phase plane: for a given initial condition, every value of t
defines a point (x1 , x2 ) in the phase plane which moves around as t is varied. The phase
portrait is the collection of the parametric plots so obtained. You may object: it appears we
still require an explicit form of the solutions to be able to draw the phase portrait. Correct.
But well see later how we can draw a relatively correct phase portrait without having the
actual solution in hand. This is what were going for.

54

CHAPTER 6. TWO-DIMENSIONAL LINEAR SYSTEMS

For the example below, well distinguish different cases: a > 1, a = 1, 0 < a < 1, a = 0,
and a < 0. Note that for all cases the point (0, 0) is a fixed point: (x01 , x02 ) is identically zero
there, thus this point does not move.
1. Case 1: a > 1. Lets start by seeing what happens on the axes: since the equations
are decoupled, we see that points on the axes stay on them. Their dynamics moves
them along the axes, except for the origin. Further, since
x01 = ax1 ,
we see that the motion on the x1 axis is away from the origin. Similarly, for the x2
axis, we have
x02 = x2 ,
also leading to motion away from the origin. In general, for points that may be off the
axes, we have the following two limit results:
lim x1 (t) = ,

lim x2 (t) = ,

and
lim x1 (t) = 0,

lim x2 (t) = 0.

In other words, both x1 and x2 tend to as time goes on, and they both tend to zero,
as we go back in time. In order to draw an accurate phase portrait, we need to find
out which of x1 or x2 dominates as t . First, lets examine t . Since a > 1,
x1 grows faster than x2 , and it follows that the curve through points far away from the
origin will go predominantly in the direction of x1 . Second, as t , since a > 1,
it follows that x1 decays faster than x2 , implying that x2 will dominate. Thus, close
to the origin, the solutions will follow the x2 direction. All the information we have
gathered results in the phase portrait shown in Figure 6.2. As stated, the origin is a
fixed point. It is clearly unstable. It is referred to as an unstable node.
2. Case 2: a = 1. Now we have
x1 = x10 et , x2 = x20 et .
Thus x1 and x2 grow (or decay) at exactly the same rate as t (as t ). You
may guess that this will result in straight-line motion in the phase plane, and this is
correct. We can easily show this: using the above two equations, we have

6.2. A FIRST EXAMPLE...

55

Figure 6.2: The phase portrait for the system x01 = ax1 , x02 = x2 , with a > 1. Here x1 is on
the horizontal axis, x2 on the vertical axis. The plot was produced using pplane.
x2
x20
=
x1
x10

x2 =

x20
x1 .
x10

In the phase plane, this is the equation of a straight line through the origin, with slope
x20 /x10 determined by the initial conditions. As before, all motion is away from the
origin. The phase portrait is shown in Figure 6.3. The origin is still an unstable
node. Sometimes it is also called an unstable star.
3. Case 3: 0 < a < 1. Since a is still positive, but smaller than 1, we can repeat the
analysis from the first case, but with the roles of x1 and x2 switched: now x2 dominates
as t , whereas x1 is dominant close to the origin (t ). Again, the origin is
an unstable node. The phase portrait is shown in Figure 6.4.
4. Case 4: a = 0. This case is special. The fixed point at the origin is not unique
anymore: the entire x1 axis consists of fixed points. On this axis, our system is given
by
x01 = 0, x02 = x2 .
Thus, if we start with initial conditions on the x1 axis: (x10 , x20 ) = (x10 , 0), then there
is no dynamics. Thus the entire x1 axis consists of fixed points. Thus, with a = 0, the
fixed points are not isolated! Further, the system is easily solved:

56

CHAPTER 6. TWO-DIMENSIONAL LINEAR SYSTEMS

Figure 6.3: The phase portrait for the system x01 = ax1 , x02 = x2 , with a = 1. Here x1 is on
the horizontal axis, x2 on the vertical axis. The plot was produced using pplane.

x1 = x10 ,

x2 = x20 et .

These are equations for vertical lines, as shown in Figure 6.5. You can regard this
phase portrait as a limit case of that in Figure 6.4, as a 0.

5. Case 5: a < 0. This case is different from all the others. Now points on the x1
axis approach the origin. Other points are drawn closer to the x2 axis, but ultimately,
when they get close to it, they drift off towards infinity. The phase portrait is shown
in Figure 6.6. The fixed point at the origin is called a saddle point. This name is
used because the phase portrait obtained is similar to the top view of the trajectories
a ball would follow when put on a saddle-surface in three-dimensional space. A saddle
point is unstable, because the probability of ending up at the fixed point is zero: in
an experimental setting you would never be able to pick initial conditions that get to
the origin: the slightest error would put you ever so slightly off the x1 axis, resulting
in eventual drift away from the fixed point.

6.3. SOME DEFINITIONS

57

Figure 6.4: The phase portrait for the system x01 = ax1 , x02 = x2 , with 0 < a < 1. Here x1 is
on the horizontal axis, x2 on the vertical axis. The plot was produced using pplane.

6.3

Some definitions

In this section we present some definitions that we have already been using somewhat loosely.
Definition. (Lyapunov stability) A fixed point x is said to be Lyapunov stable if all
trajectories that start close to it remain close to it for all time t > 0. Otherwise the fixed
point is said to be Lyapunov unstable.
Usually well drop the Lyapunov bit and just say stable or unstable. Note that in
all cases of our example in the previous section, the fixed point at the origin was Lyapunov
unstable.
Definition. (Attractive fixed point) A fixed point is called attractive if all trajectories
that start near it approach it as t .
It may be tempting to assume that attractive fixed points are stable. This is not true,
and we have already seen an example. Here it is again.
Example. Consider the dynamical system on the circle given by
0 = (1 sin ).
with phase portrait given in Figure 5.3. In this case the fixed point at = /2 is attractive,

58

CHAPTER 6. TWO-DIMENSIONAL LINEAR SYSTEMS

Figure 6.5: The phase portrait for the system x01 = ax1 , x02 = x2 , with a = 0. Here x1 is on
the horizontal axis, x2 on the vertical axis. The plot was produced using pplane.

but not stable.

Definition. (Asymptotic stability) A fixed point is said to be asymptotically stable


if it is both attractive and stable.

6.4

Classification of linear systems

Lets return to the general linear system


x0 = Ax,
where A is an N N matrix and x is an N -dimensional vector. Since this equation has
constant coefficients, we guess a solution of the form
x = et v,
where is a constant, and v is a constant vector. We hope to be able to determine both
of these in order to obtain solutions of this form for the differential equation. To do so, we
substitute this ansatz in the equation. We need
x0 = et v.
Substitution gives

6.4. CLASSIFICATION OF LINEAR SYSTEMS

59

Figure 6.6: The phase portrait for the system x01 = ax1 , x02 = x2 , with a < 0. Here x1 is on
the horizontal axis, x2 on the vertical axis. The plot was produced using pplane.

et v = Aet v.
Since et is scalar, we can move it in front of the matrix A, and cancel it from the equation.
Thus we have
Av = v.
This equation tells us that the s we seek are the eigenvalues of the matrix A, whereas the
vs are their corresponding eigenvectors. To find , we write down the eigenvalue equation:
det(A I) = 0,
where det denotes the determinant of the matrix, and I is the N N identity matrix. This
equation is called the characteristic equation of the system. It is a polynomial equation
in of degree N . Finding its solutions is the hard part of this entire solution procedure.
But, in the end, weve reduced the problem of finding solutions of these constant-coefficient
linear dynamical systems to finding roots of a polynomial. This is progress!
Thus, with every eigenvalue k and its corresponding eigenvector v (k) we get a solution
x(k) = ekt v (k) .
Since the equation is linear, we can get the general solution by taking linear combinations
of all of these solutions:

60

CHAPTER 6. TWO-DIMENSIONAL LINEAR SYSTEMS

x = x(1) + . . . + x(N ) = e1 t v (1) + . . . eN t v (N ) .


Honestly, this is not the full story: sometimes we do not get enough solutions this way,
because some of the eigenvalues have higher multiplicity and not enough eigenvectors are
found. This will not be a big concern for us in this course, but you should be aware it may
be an issue. Next, well examine some of the different possibilities.
Two real eigenvalues: nodes. Lets assume that both 1 and 2 are real, and 1 >
2 > 0. Then
x = c1 e1 t v (1) + c2 e2 t v (2) .
First, lets assume we start with an initial condition so that c2 = 0. Then
x = c1 e1 t v (1) ,
which corresponds to a straight line in the phase plane. Indeed, this formula implies that x is
always a multiple of the eigenvector v (1) . As t , we approach as the exponential factor
becomes bigger and bigger. The value of c1 (determined by the initial condition), determines
whether we end up in the direction of the eigenvector (c1 positive), or the opposite direction
(c1 negative). More explicitly, we may obtain the equation for the straight line:
(1)

v
x2
= 2(1)
x1
v1

(1)

x2 =

v2

(1)

v1

x1 ,
(1)

(1)

which is the equation for a straight line through the origin with slope v2 /v1 . A similar
analysis holds for x(2) : it represents a straight-line solution, in the direction of the second
eigenvector. The eigenvalue is positive again, thus on this line we move away from the origin.
Other solutions are linear combinations of these fundamental ones. To draw the phase
portrait, we need to follow the arrows. The hard part is to figure out which arrows to follow.
As t the solution e1 t v (1) dominates since 1 > 2 . Thus for large time solutions
will predominantly follow the direction of the first eigenvector.
As t the solution e2 t v (2) dominates since 1 > 2 . Thus for large negative time
the first solution damps faster than the second one. Thus close to the origin (which
is where we are as t ) will predominantly follow the direction of the second
eigenvector.
In this case the origin is called an unstable node. A representative phase portrait is
shown in Figure 6.7. A stable node is similar, but with the directions of all arrows reversed.
This occurs when both eigenvalues are stricly negative.
Two real eigenvalues: saddle points. If we have two real eigenvalues, but one
is positive and the other is negative, we end up with a saddle point. Lets assume that
1 > 0 > 2 . Then we have

6.4. CLASSIFICATION OF LINEAR SYSTEMS

61

Figure 6.7: The phase portrait a stable node. Here x1 is on the horizontal axis, x2 on the
vertical axis. The plot was produced using pplane.

x = c1 e1 t v (1) + c2 e2 t v (2) .
As before, the two fundamental solutions give rise to straight-line solutions in the directions
of the eigenvectors. In the direction of v (1) , the motion is away from the origin, since 1 > 0.
On the other hand, in the direction of v (2) , the motion is towards the origin, since 2 < 0.
For the other solutions, we just follow the arrows. The phase portrait for a saddle point is
given in Figure 6.8. Note that, using Lyapunovs definition, a saddle point is unstable.
Definition. (Stable manifold) The stable manifold of a fixed point is the collection
of all trajectories that approach the fixed point as t .
As examples, for the saddle point, the stable manifold consists of the straight line in the
direction of v (2) . For the unstable node, the stable manifold consists of only the fixed point.
On the other hand, for a stable node, the stable manifold is the entire phase plane.
Definition. (Unstable manifold) The unstable manifold of a fixed point is the collection of all trajectories that approach the fixed point as t .
Thus, the unstable manifold is the stable manifold as we go back in time. As examples,
for the saddle point, the unstable manifold consists of the straight line in the direction of
v (1) . For the unstable node, the unstable manifold consists of the entire phase plane.
Two complex eigenvalues: spirals and centers. If the eigenvalues are complex, we

62

CHAPTER 6. TWO-DIMENSIONAL LINEAR SYSTEMS

Figure 6.8: The phase portrait a saddle point. Here x1 is on the horizontal axis, x2 on the
vertical axis. The plot was produced using pplane.
know that they have to be complex conjugates, since they satisfy a quadratic equation with
real coefficients. Thus
1,
2 =
where the bar indicates complex conjugate. Thus, if we write
1 = + i,
then
2 = i.
Similarly, if v (1) is the eigenvector corresponding to 1 , we may choose the eigenvector
corresponding to 2 to be v(1) . Thus, we obtain two fundamental solutions:
x(1) = e(+i)t v (1) , x(2) = e(i)t v (2) = x(1) .
So, we have two complex-valued solutions. Whoopedee-doo! Wed really1 prefer to have
real-valued solutions. How do we obtain these? Well, we know that any linear combination
of two solutions is again a solution. Consider the following linear combination:
1

Really, really!

6.4. CLASSIFICATION OF LINEAR SYSTEMS

63

1
1
x(1) + x(1)
x(3) = x(1) + x(2) =
= Re x(1) ,
2
2
2
where Re denotes the real part. The great thing about the real part is that its real2 . Thus,
x(3) is a real solution of our equation! Sweet. One down, another one to go. Consider
1
x(1) x(1)
1 (1)
x x(2) =
= Im x(1) ,
2i
2i
2i
where Im denotes the imaginary part. The great thing about the imaginary part is that its
real3 . Thus, x(4) is a second real solution of our equation! Were unstoppable! The general
solution can be written as
x(4) =

x = c1 x(3) + c2 x(2) = c1 Re x(1) + c2 Im x(1) .


We see that one complex-valued solution allows us to generate the general solution, by
considering its real and imaginary parts. Lets do an example.
Example. Consider the system


5 10
x =
1 1
First we find the eigenvalues of the matrix:
0


det


x.

5
10
1 1


=0

(5 )(1 ) + 10 = 0
2 4 + 5 = 0
1,2 = 2 i.

Using the eigenvalue 1 = 2 + i, we find a complex eigenvector to be




3+i
(1)
v =
.
1
Our complex-valued solution is


3+i
1


e

(2+i)t

2t

3+i
1

3+i
1

=e

2t

=e

2t

=e
2
3

eit
(cos t + i sin t)

3 cos t sin t + 3i sin t + i cos t


cos t i sin t

Really!
Really! The i cancels in the calculation above!


.

64

CHAPTER 6. TWO-DIMENSIONAL LINEAR SYSTEMS

Now it is easy to read off the real part


e

2t

3 cos t sin t
cos t

3 sin t + cos t
sin t

and the imaginary part


2t

Thus the general solution is


x = c1 e

2t

3 cos t sin t
cos t


+ c2 e

2t

3 sin t + cos t
sin t


,

which concludes the example.

Wow! That was a lot of work. Now we want to draw the phase portrait. We could do
this using the above formula, but the good news is that typically we dont need to do this,
unless we really want to know the phase portrait in a lot of detail. What do we want to
know?
A lot of relevant information may be obtained simply by considering the eigenvalues. We
have
1 = + i, 2 = i.
The presence of an imaginary part tells us there will be sins and coss, thus there will be
oscillations: both x1 and x2 will oscillate between positive and negative values. The real
part is where the action is:
If < 0 then we will get damped oscillations, as all is multiplied by an exponential
which 0 as t . All solutions tend to the origin as t . Such a case is called a
stable spiral. The two possible phase portraits are shown in Figure 6.9. There are two
distinct possibilities for a stable spiral: a clockwise or counter-clockwise spiral. When
given a system, it is easy to tell which one you have: pick your favorite point (not the
origin), say (1, 0) and use the system to determine what the tangent vector is there. We
should be honest: we cannot obtain all information about the phase portrait this way.
The spirals could be squashed, like those in Figure 6.10. The tangent vector at our
favorite point may indicate this, but the eigenvalues do not provide this information.
Often thats fine.
If > 0 then we will get growing oscillations, as all is multiplied by an exponential
which as t . All solutions tend to infinity as t . Such a case is called
an unstable spiral. As before, we may have a clockwise or a counter-clockwise unstable
spiral. Both scenarios are illustrated in Figure 6.10.

6.5. THE EIGENVALUE PLANE

65

Figure 6.9: The phase portrait for a stable spiral. Here x1 is on the horizontal axis, x2 on
the vertical axis. Both plots were produced using pplane.
If = 0, there is no exponential, only oscillations. All solutions are periodic. such a
fixed point is called a center. A center is stable, but not asymptotically stable. Again,
we may go clockwise, or counter clockwise. Both are illustrated in Figure 6.11.
Equal eigenvalues: degenerate cases. What happens if the eigenvalues are equal (in
which case they have to be real)?
Case 1. If there are two linearly independent eigenvectors corresponding to our sole
eigenvalue, we have two linearly independent solutions. We proceed as before:
x = c1 e1 t v (1) + c2 e1 t v (2) = e1 t (c1 v (1) + c2 v(2) ),
and the phase portrait is a star (check this!). The star is stable if 1 < 0 and it is
unstable if 1 > 0.
Case 2. If there is only one eigenvector, we need the method of generalized eigenvectors
to produce a second linearly independent solution. However, the important realization
is that in this case there is only one eigenvector, implying there is only one straightline solution. The fixed point is referred to as a stable degenerate node (1 < 0, two
possibilities (clockwise and counter clockwise), Figure 6.12), or an unstable degenerate
node (1 > 0, two possibilities (clockwise and counter clockwise), Figure 6.13).

6.5

The eigenvalue plane

The main realization from all these examples is that all the important information about the
stability of a fixed point is contained in the eigenvalues: if a single4 eigenvalue has a positive
4

Now were thinking more general, in N dimensions

66

CHAPTER 6. TWO-DIMENSIONAL LINEAR SYSTEMS

Figure 6.10: The phase portrait for an unstable spiral. Here x1 is on the horizontal axis, x2
on the vertical axis. Both plots were produced using pplane.
real part, this will lead to growth of a solution in a certain direction. This immediately
causes the solution to be unstable in the sense of Lyapunov. And so it goes . . . One rotten
apple spoils the bunch! Summarizing, we get
If there is one eigenvalue with a positive real part, the fixed point is unstable.
If all eigenvalues have a negative real part, the fixed point is asymptotically unstable.
There are cases other than these, but then a more detailed analysis is required: do
eigenvalues on the imaginary axis have higher multiplicity? Do they have a sufficient number
of eigenvectors?

6.6

Application: Love affairs

Lets do an example of an application that may perhaps be described using linear systems.
Should love affairs take any nonlinear effects into account? Hmm. Well leave that one to
the philosophers.
Consider two lovers, randomly called Romeo and Juliette. Let R(t) be Romeos love
(positive values) or hate (negative values) for Juliette. See a tragedy coming a mile away,
no? Similarly, J(t) is Juliettes love or hate for Romeo. Our linear system is given by

 


d
R
a b
R
=
.
c d
J
dt J
Lets figure out what these different parameters mean.
The parameter a: If a > 0 then Romeos love is self-reinforcing. The stronger his
feelings are, the stronger they become. If a < 0, Romeo is cautious: If his feelings

6.6. APPLICATION: LOVE AFFAIRS

67

Figure 6.11: The phase portrait for a center. Here x1 is on the horizontal axis, x2 on the
vertical axis. Both plots were produced using pplane.
for Juliette are strong, the contribution from this term to the rate of change of his
feelings is negative: not too fast. . . . On the other hand, if he hates Juliette ardently,
his caution tells him to ease up.
The parameter b: If b > 0 then Romeos feelings are reinforced by Juliette. If she
loves him, his love for her grows stronger. If she hates him, he loves her less. On the
other hand, if b < 0 then Romeo is affected oppositely by Juliettes response: if she
loves him, he resents that. If she hates him, he wants her.
The parameter c: plays the same role as the parameter b, but with Romeo and
Juliette switched.
The parameter d: plays a similar role to a, but with Romeo and Juliette switched.
Lets look at some special scenarios.

6.6.1

A responsive and a fickle lover

Let
d
dt

R
J


=

0 b
c 0



R
J


,

with b, c positive. Thus, Romeo responds to Juliettes emotions: if she loves him, he loves
her more. If she hates him, he loves her less. Juliette, on the other hand, turns away from
Romeo when he loves her. When he hates her, she wants him. What could the outcome be?
And do we need a bard to tell us?
The eigenvalues are given by

68

CHAPTER 6. TWO-DIMENSIONAL LINEAR SYSTEMS

Figure 6.12: The phase portrait for a stable degenerate node. Here x1 is on the horizontal
axis, x2 on the vertical axis. Both plots were produced using pplane.


det

b
c

1,2


=0

2 + bc = 0
2 = bc

= i bc.

Thus the fixed point (R, J) = (0, 0) is a center. This scenario is not ideal. Starting in the
fourth quadrant might make a bad Hollywood movie, though. At least theyre both happy
one quarter of the time.

6.6.2

Two cautious lovers

For starters, lets assume theyre both cautious, but they do respond to each other. Thus
we have
d
dt

R
J


=

a b
b a



R
J


,

where both a, b are positive. Thus a measures their caution (assumed equal for both) and b
represents their positive response to each other.
The eigenvalues are given by

6.6. APPLICATION: LOVE AFFAIRS

69

Figure 6.13: The phase portrait for an unstable degenerate node. Here x1 is on the horizontal
axis, x2 on the vertical axis. Both plots were produced using pplane.


det

a
b
b
a


=0

(a + )2 b2 = 0
( + a)2 = b2
1,2 + a = b
1,2 = a b.

Thus both eigenvalues are real, and at least one of them is negative. There are two possibilities.
1. If a > b then 1 = a + b < 0 and 2 = a b < 0. Both eigenvalues are negative,
resulting in the origin being a stable node. Thus, eventually (R, J) (0, 0), independent of the initial conditions. In other words, their caution is too strong to overcome
their affection for each other. Things fizzle out. A representative phase portrait is
shown on the left of Figure 6.15.
2. If a < b then 1 = a + b > 0 and 2 = a b < 0. The origin is a saddle, and thus
unstable. You can easily find that the eigenvectors are

(1)


=

1
1


, v

(2)


=

1
1


.

We see that, eventually, Romeo and Juliette agree: in the limit t we have R = J.
Where they end up depend on their initial condition. If there is originally more love

70

CHAPTER 6. TWO-DIMENSIONAL LINEAR SYSTEMS

Figure 6.14: The phase portrait for a responsive Romeo and a fickle Juliette. Here R is on
the horizontal axis, J on the vertical axis. The plot was produced using pplane.
than hate, theyll end up in a relationship that Im not at liberty to discuss, because
of censorship reasons5 . Otherwise, they eventually hate each other.

In the words of the venerable Hobbes: much snuggling and smooches.

6.6. APPLICATION: LOVE AFFAIRS

71

Figure 6.15: Two cautious lovers. On the left: too cautious lovers. On the right, less
cautious. Here R is on the horizontal axis, J on the vertical axis. Both plots were produced
using pplane.

72

CHAPTER 6. TWO-DIMENSIONAL LINEAR SYSTEMS

Chapter 7
Nonlinear systems in the phase plane
7.1

Generalities

A general autonomous system in the two-dimensional plane is of the form


 0
x1 = f1 (x1 , x2 )
,
x02 = f2 (x1 , x2 )
or, more compactly,
x0 = f (x),
where x = (x1 , x2 ) and f = (f1 , f2 ). So, for every x, this system gives us a tangent vector
to the trajectory through that point x representing the solution of the differential equation
that passes through that point. As before, we will assume that f1 and f2 are sufficiently
smooth so that solutions exist.
A first remark is that no two trajectories can cross. At a crossing point, the system
gives a unique tangent vector, which is not compatible with there being two solution curves
through a point.
Example. Consider the phase portrait shown in Figure 7.1, where P is a fixed point. Is
this possible? It does appear that different trajectories cross at P . This is not actually the
case: P is a fixed point, thus there is no motion through the point P . In fact, there are four
trajectories that meet at P , but the tangent vector to each of them there has length zero,
due to the presence of the fixed point.

7.2

Fixed points and linearization

Suppose that x = (x1 , x2 ) is a fixed point of the system


 0
x1 = f1 (x1 , x2 )
.
x02 = f2 (x1 , x2 )
73

74

CHAPTER 7. NONLINEAR SYSTEMS IN THE PHASE PLANE

Figure 7.1: An example of a dynamical system in the plane. Or is it? The figure was
produced using pplane.
This means that
f1 (x1 , x2 ) = 0, f2 (x1 , x2 ) = 0.
Lets figure out what happens near this fixed point. Let
x1 = x1 + y1 , x2 = x2 + y2 ,
where we think of y1 and y2 as being small quantities. Our differential equations for these
quantities become


y10 = f1 (x1 + y1 , x2 + y1 )
.
y20 = f2 (x1 + y2 , x2 + y2 )

Since y1 and y2 are thought of as small, lets Taylor expand these right-hand sides. We get

7.2. FIXED POINTS AND LINEARIZATION

75

f
f

y10 = f1 (x1 , x2 ) + y1 1 (x1 , x2 ) + y2 1 (x1 , x2 ) + O(2)


x1
x2
.
f2
f
2

y20 = f2 (x1 , x2 ) + y1
(x , x ) + y2
(x , x ) + O(2)
x1 1 2
x2 1 2
The first terms on the right-hand side vanish, since our point x = (x1 , x2 ) is a fixed point.
Ignoring the second-order terms, we see that close to this fixed point, the perturbations
(y1 , y2 ) satisfy

f
f

y10 = y1 1 (x1 , x2 ) + y2 1 (x1 , x2 )


x1
x2
f
f2 ,
2

y20 = y1
(x1 , x2 ) + y2
(x , x )
x1
x2 1 2
which we can write in matrix form as




d
y1
y1

= J(x1 , x2 )
,
y2
dt y2
where

f1 f1

x2
1
J = x
f2 f2
x1 x2
is referred to as the Jacobian of the system. Thus, near the fixed point x = (x1 , x2 ),
our perturbations satisfy a linear constant-coefficient system with coefficient matrix equal
to the Jacobian evaluated at the fixed point. Thus, the stability of a fixed point is
determined by the eigenvalues and eigenvectors of the Jacobian evaluated at the
fixed point.

Is this always justified? In other words, can we always ignore the effect of the secondorder terms? This depends on the eigenvalues: if the eigenvalues give rise to a saddle, node
or spiral, the small second-order terms have no effect. This makes sense: the character of
the fixed points for these cases is determined by strict inequalities. A small perturbation
of these inequalities will not change them. On the other hand, the second-order terms may
have a significant effect if we find, using the linear approximation, that we have a center or a
degenerate fixed point. Indeed, these cases are determined by equalities for the eigenvalues
(Re= 0, for instance), which may cease to hold exactly if small perturbations are considered.
Fixed points without any eigenvalues on the imaginary axis are called hyperbolic. Thus, for
hyperbolic fixed points, the linear stability analysis predicts the stability correctly. Lets do
an example.
Example. Consider the system
 0
x = x + x3 = f (x, y)
,
y 0 = 2y = g(x, y)

76

CHAPTER 7. NONLINEAR SYSTEMS IN THE PHASE PLANE

First we determine the fixed points. We need


x + x3 = 0,

2y = 0.

Ths gives three fixed points: P1 = (0, 0), P2 = (1, 0) and P3 = (1, 0). In order to calculate
the stability of these fixed points we compute the Jacobian:

f f


1 + 3x2 0
x y
.
J = g g =
0
2
x y
Evaluating this at the different fixed points gives the following.
P1 = (0, 0), then

J(0, 0) =

1 0
0 2


,

with eigenvalues 1 = 1 and 2 = 2. Thus P1 = (0, 0) is a stable node. You


can easily check that the corresponding eigenvectors are the horizontal and vertical
directions.
P2,3 = (1, 0). Then

J(1, 0) =

2 0
0 2


,

which has eigenvalues 1 = 2 and 2 = 2. Thus both P2 and P3 are saddle points,
thus unstable. As before, you can check that the horizontal and vertical directions
correspond to eigenvectors.
Since this example consists of two, essentially uncoupled, one-dimensional systems, we
can verify that the results we just obtained using linearization are correct. A phase portrait
for this system is shown in Figure 7.2.

Example. As a second example, consider


 0
x = y + ax (x2 + y 2 )
,
y 0 = x + ay (x2 + y 2 )
where a is a parameter. Note that P = (0, 0) is a fixed point. Lets analyze its stability. We
calculate the Jacobian:


3ax2 + ay 2 1 + 2axy
J=
.
1 + 2axy ax2 + 3ay 2
Evaluating this at the fixed point P = (0, 0) we get

7.2. FIXED POINTS AND LINEARIZATION

77

Figure 7.2: A nonlinear system with three fixed points. Exciting. Here x is on the horizontal
axis, y is on the vertical axis. The figure was produced using pplane.


J(0, 0) =

0 1
1 0


.

A quick calculation gives that the eigenvalues are 1,2 = i, thus the linear stability analysis
predicts a center at the origin P . Is this really what is going on?
The system were working with is special, in the sense that it is better expressed in terms
of polar coordinates
x(t) = r(t) cos (t),

y(t) = r(t) sin (t).

Indeed, if we substitute these transformations in, we find that r(t) and (t) satisfy the
following differential equations:

78

CHAPTER 7. NONLINEAR SYSTEMS IN THE PHASE PLANE

a>0
a=0
a<0

Figure 7.3: The three possible one-dimensional phase portraits for r0 = ar3 . Note that
strictly speaking we are not interested in r < 0.

r0 = ar3 ,
.
0 = 1.

These equations are decoupled, and we may solve them exactly. Or we can use onedimensional phase plane analysis on both of them. The second equation implies that the
angle is always increasing, thus we keep on moving around counter clockwise in the phase
plane. The other equation is more interesting. It shows that r = 0 is a fixed point, but it
also shows that its stability depends on the sign of a. The three possible one-dimensional
phase portraits for this system are shown in Figure 7.3. Thus, if a > 0, r = 0 is unstable. If
a = 0, all r values are fixed. And if a < 0, r = 0 is stable.
In terms of our original system this implies the three phase portraits shown in Figure 7.4.
Only in the case a = 0 is the fixed point P = (0, 0) actually a center. In that case the system is
linear. For the other case we get either an unstable spiral (a > 0) corresponding to increasing
r, or a stable spiral (a < 0) for decreasing radii r. These results should not surprise us: our
linear stability analysis predicted a fixed point with purely imaginary eigenvalues. These
did not persist under small perturbations coming from nonlinear terms. This example shows
the inaccurate results one may obtain from using linearization to determine the stability of
a non-hyperbolic fixed point.

7.3

Application: competing species

As a more extensive example we consider the Lotka-Volterra model for the dynamics of two
populations that are competing for shared resources. We may focus our minds by picturing
rabbits and sheep.
Let x denote the population of rabbits, and y the population of sheep. If either population
was on its own, wed be using a logistic model:

7.3. APPLICATION: COMPETING SPECIES

a>0

a=0

79

a<0

Figure 7.4: The three possible phase portraits for different values of a. All plots were
produced using pplane.

x0 = x(3 x), y 0 = y(2 y).


we have chosen specific values for the growth rates and the carrying capacities, for the sake
of argument. Note that for obvious reasons we have given the rabbits a higher growth rate,
and a higher carrying capacity. How do we modify the above equations to take competition
into account? The Lotka-Volterra model proposes that we write
 0
x = x(3 x) 2xy
.
y 0 = y(2 y) xy
The way to interpret this is that the competition is reflected by negative terms (obviously)
that become more negative as the competition (i.e., the effect of the other population) grows.
The coefficients 2 and 1 have again be chosen for the sake of argument. Simplifying the above,
we get
 0
x = x(3 x 2y)
.
y 0 = y(2 y x)
Lets look for fixed points: we need
x(3 x 2y) = 0, y(2 y x) = 0.
From the first equation it follows that either x = 0 or x = 3 2y. If x = 0 the second
equation given
y(2 y) = 0,
resulting in two solutions: y = 0, y = 2. Thus, we have found two fixed points:
P1 = (0, 0), P2 = (0, 2).
from x = 3 2y we get from the second equation

80

CHAPTER 7. NONLINEAR SYSTEMS IN THE PHASE PLANE

y(2 3 + 2y y) = 0 y(1 + y) = 0,
so that y = 0 (with x = 3 2 0 = 3) or y = 1 (with x = 1). Thus, we find two more fixed
points:
P3 = (3, 0), P4 = (1, 1).
Thus, for P 1 we have neither rabbits nor sheep. For P2 we have no rabbits. For P3 we are
sheepless1 , and for P4 we have both rabbits and sheep. In order to examine the stability of
these fixed points, we calculate the Jacobian. To this end, we first expand the equations for
the system:
 0
x = 3x x2 2xy
.
y 0 = 2y y 2 xy
Then

J=

3 2x 2y
2x
y
2 2y x


.

Now we evaluate the Jacobian J at the different fixed points.


At P1 = (0, 0):

J(0, 0) =

3 0
0 2


,

giving rise to two positive eigenvalues (3 and 2), thus, not surprisingly, the point P1 is
an unstable node.
At P2 = (0, 2), we get

J(0, 2) =

1 0
2 2


,

giving rise to two negative eigenvalues (-1 and -2), this the point P2 is a stable node.
At P3 = (3, 0),

J(3, 0) =

3 6
0 1


,

giving rise to two negative eigenvalues again (-3 and -1), thus P3 is also a stable node.
1

in Seattle! Hah!

7.4. CONSERVATIVE SYSTEMS

81

Lastly, at P4 = (1, 1),



J(1, 1) =

1 2
1 1


.

This requires a bit more work. The characteristic equation gives


det

1
2
1
1


=0

(1 )2 = 2

1,2 + 1 = 2

1,2 = 1

2.

One of these eigenvalues is positive, whereas the other is negative. Thus the fixed point
P4 is a saddle (unstable).
The phase portrait that collects all this information is drawn in Figure 7.5. We see that
if the initial condition starts in the shaded region, we end up with only rabbits. Otherwise
we end up with only sheep. Apparently there is no peaceful coexisting of these rabbits and
sheep.
The shaded region is called the basin of attraction of the attractive fixed point P2 . Previously we agreed we could call the stable manifold of P2 . Uusually, that name is reserved
for situations that are lower dimensional than the actual phase space. But it matters not.
Similarly, the unshaded region is the basin of attraction of P3 . Note that the separatrix (the
separating boundary) of these two basins is the stable manifold of the saddle point P4 .

7.4

Conservative systems

In this section we look at an important subclass of dynamical systems, those that are conservative. This name is used for systems that originate from Newtons law with a conservative
force:
F = ddV x,
where V (x) is a potential. Newtons law is
dV
.
dx
We know that for conservative systems the total energy is conserved. We can see this by
multiplying this equation by the velocity, to get
mx00 =

82

CHAPTER 7. NONLINEAR SYSTEMS IN THE PHASE PLANE

Figure 7.5: The Lotka-Volterra model for competing species. Here x is on the horizontal
axis, y is on the vertical axis. The figure was produced using pplane.

mx0 x00 + x0

d
dx

dV
=0
dx


1
mx02 + V (x) = 0
2
1
mx02 + V (x) = E.
2

Here E is an integration constant that we can clearly interpret as the total energy.
Next, we rewrite Newtons law as a first-order system: let
y = x0 .
Then

7.4. CONSERVATIVE SYSTEMS

83

x0 = y

1 dV .
m dx
Different solutions (x, y) of this dynamical system correspond to different trajectories in the
(x, y) phase plane. It also follows from the conservation of energy that along such trajectories,
the energy is conserved, thus the graph of the trajectories can be obtained from
r
E V (x)
1 2
my + V (x) = E y = 2
.
2
m
This immediately tells us that the phase portrait is symmetric with respect to the horizontal
axis, due to the in the above formula.
What kind of fixed points can a system like this have? Fixed points require x0 = 0,
from which y = 0. Further, y 0 = 0, so that
y 0 = x00 =

1 dV
dV
=0
= 0.
m dx
dx
Thus, fixed points of the dynamical system correspond to extrema of the potential energy.
Next we consider the energy:

1
E = my 2 + V (x).
2

Suppose that (x , y = 0) is a fixed point. Then V 0 (x ) = 0. Further, in the y-direction,
the energy has a quadratically increasing profile, for all values of x. Thus, if there are two
possibilities:
1. If x is a local minimum of the potential energy, then (x , 0) is a local minimum of the
energy.
2. If x is a local maximum of the potential energy, then (x , 0) is a saddle point of the
energy.
The trajectories are constant-level contours of the energy surface. If (x , 0) is a fixed point
and thus a local minimum of the energy, nearby trajectories will be closed curves, thus the
fixed point is a center! This is excellent news: we just determined, using no approximations,
that the minima of the energy for a conservative system correspond to fixed points that are
centers. The great benefit of this realization is that we can use linear approximations. If the
conclusion coming from this linear calculation is that the fixed point is a center, we know
this center structure persists, even if nonlinearities are taken into account. Sweetness indeed!
We summarize this in the following theorem.
Theorem. If (x , y = 0) is an isolated fixed point of the conservative dynamical system
1 dV
,
m dx
and if (x , y = 0) is a local minimum of the energy function E, then (x , y = 0) is a center.
x0 = y, y 0 =

84

CHAPTER 7. NONLINEAR SYSTEMS IN THE PHASE PLANE

Figure 7.6: The pendulum configuration.

7.5

Application: the pendulum

The equation describing the pendulum is


d2
g
+ sin = 0,
2
dt
L
where [, ) the angle away from the stable equilibrium position, as illustrated in
Figure 7.6.
The pendulum equation is rewritten in first-order form as
(

0 = v

.
g
g d
sin =
cos
L
L d
We see that this system is conservative, with potential
v 0 = 00 =

V () =

g
cos .
L

7.5. APPLICATION: THE PENDULUM

85

Thus the total energy of the system is


1
g
E = v 2 cos .
2
L
What are the fixed points? We need y = 0, and
sin = 0 = .
Note that we have restricted ourselves to values for [, ]. Strictly speaking, we
could omit one of these boundary values, since they correspond to identical positions for the
pendulum. Thus, there are two fixed points:
P1 = (0, 0),

P2 = (, 0).

The point P1 corresponds to the pendulum being at rest in the downward position, whereas
for P2 the pendulum is in the upward position. To investigate the stability of these fixed
points, we calculate the Jacobian.
!
0
1
g
.
J=
cos 0
L
At P1 :

J(0, 0) =

0
1
g/L 0


.

This matrix has eigenvalues

1,2 = i gL.
Thus P1 is a center, using the linear approximation. Since this system is conservative,
we know it is also a center when the nonlinear terms are taken into account. Thus the
fixed point P1 is stable, as expected.
At P2 :

J(, 0) =

0 1
g/L 0

This matrix has eigenvalues

1,2 = gL.
Thus P2 is a saddle, and is unstable, as expected.


.

86

CHAPTER 7. NONLINEAR SYSTEMS IN THE PHASE PLANE

Figure 7.7: The phase portrait for the undamped pendulum. Here is on the horizontal
axis, and v = 0 is on the vertical axis. The figure was produced using pplane.
The phase portrait is drawn in Figure 7.7, for [, ]. Note that the vertical sides
of this picture should be identified, thus our phase space is really a cylinder.
In the inner region (blue), the solutions oscillate around the stable equilibrium point
P1 . These oscillations go alternatingly left and right, reflected in the trajectories spending time above and below the horizontal axis. Note that for small oscillations (near
P1 ), the solutions may be obtained approximately in terms of trigonometric functions.
These trajectories are approximately ellipses. For larger oscillations, the pendulum
may come close to the upright position, and the trajectories are enclosing P1 , but they
are definitely not elliptical.
On the separatrix between the inner (blue) and outer (red) regions, the pendulum
traverses from the upright position to the upright position, taking infinitely long to do
so (check this!). The equations for the trajectories may be calculated explicitly. At P2
the energy is
1
E = 02 cos = 1.
2
Thus, the equation for the orbits is

7.6. APPLICATION: THE DAMPED PENDULUM

87

1 2
v cos = 1
2
v 2 = 2(1 + cos )
p
v = 2(1 + cos )
v = 2 cos(/2),

where we have used the trig identity

1 + cos = 2 cos2 (/2).


In the outer (red) region, the trajectories remain above or below the inner region,
reflecting that the pendulum never reverses direction. These solutions correspond to
the pendulum spinning around forever. The orbit shows that its velocity is maximal
when the pendulum is in the downward position, and minimal when it is upward.

7.6

Application: the damped pendulum

If we incorporate a little damping, our equation becomes


g
sin = 0.
L
Here b is the damping coefficient. We assume b is small, in the sense that the dominant
behavior of the pendulum is still oscillatory. The energy is no longer conserved. Indeed:
00 + b0 +

0 00 + b02 +

g 0
sin = 0
LZ

1 02 g
cos + b 02 d = 0
2
L
Z
E = b 02 d,

which is not constant.


The two-dimensional first-order system is given by
( 0
= v
g
g
.
v 0 = 00 = 0 sin theta = bv sin
L
L
The fixed points of this system are (check this!)
P1 = (0, 0), P2 = (, 0),

88

CHAPTER 7. NONLINEAR SYSTEMS IN THE PHASE PLANE

as before. Now the Jacobian is



J=

0
1
f racgL cos b


.

The linear stability of the two fixed points gives:


At P1 :

J(0, 0) =

0
1
g/L b


.

This matrix has eigenvalues

1,2

b
= i
2

g
b2
.
L
4

Thus P1 is a stable spiral point. Thus the fixed point P1 is stable, as expected. Indeed,
the inclusion of the small friction term destroys the center from the conservative case,
resulting in the stable spiral we find here.
At P2 :

J(, 0) =

0
1
g/L b


.

This matrix has eigenvalues

1,2

b
=
2

g
b2
+ .
L
4

Thus P2 remains a saddle, and is unstable, as expected.


The phase portrait for the damped pendulum is drawn in Figure 7.8, for [, ]. As
before, the vertical sides of this picture should be identified, and our phase space is really a
cylinder.
Almost all solutions eventually settle down to the stable downward position, represented by P1 . Solutions may revolve several times before being drawn in to the fixed
point. As the pendulum swings around, it loses energy and its velocity decreases
(bringing it closer to the horizontal axis in the phase portrait), until it does not go all
the way around anymore, after which it is drawn to P1 , using ever smaller oscillations.
There are two curves along which solutions end up at the unstable fixed point P2 .
These curves constitute the stable manifold for this fixed point.

7.6. APPLICATION: THE DAMPED PENDULUM

89

Figure 7.8: The phase portrait for the damped pendulum. Here is on the horizontal axis,
and v = 0 is on the vertical axis. The figure was produced using pplane.
Note that in this section, or the previous one, we did not solve, nor even attempt to solve,
for the angle as a function of t. This can be done for the undamped pendulum, but not for
the damped pendulum. However, even without knowing the explicit form for the solutions,
we know pretty much all there is to know about its important properties. As stated before,
this is really the main difference between differential equations and dynamical systems.

90

CHAPTER 7. NONLINEAR SYSTEMS IN THE PHASE PLANE

Chapter 8
Limit cycles
We start with a definition.
Definition. A limit cycle is an isolated closed trajectory that does not begin or end at
a fixed point.
In this definition, isolated means there are no other closed trajectories near it: nearby
trajectories either approach it or go away from it. In the first case, the limit cycle is said to
be stable. In the second case it is unstable.
A closed trajectory in the phase plane corresponds to a periodic solution of the system
 0
x = f (x, y)
.
y 0 = g(x, y)
Figure 8.1 displays the scenario of a stable (left) and unstable (right) limit cycle. For the
stable limit cycle on the left, the origin is an unstable spiral point, and orbits leaving from
near the origin are attracted to the limit cycle. Orbits outside of the limit cycle are similarly
attracted. The unstable limit cycle is similar, but with arrows reversed.
It is possible for limit cycles to be semi-stable. In that case, orbits on one side of it are
attracted to it, while they are repelled from it on the other side. Limit cycles cannot occur
in linear systems. The closest thing to one would be the orbits surrounding a center, but
those orbits are not isolated. Thus, limit cycles are a specific nonlinear feature of dynamical
systems.
Example. In this example, we show that something else than a fixed point is required
for phase portraits to work out consistently. Consider the system
 0
x = x y x(x2 + y 2 )
.
y 0 = x + y y(x2 + y 2 )
This system has a fixed point at the origin (0, 0). You should check that this is the only
fixed point. Using linearization, you find that the origin is an unstable spiral. However, at
(x, y) = (2, 2) the tangent vector is given by (x0 , y 0 ) = (16, 12), which points towards the
origin. This is not compatible with the unstable spiral! Something else has to happen
91

92

CHAPTER 8. LIMIT CYCLES

Figure 8.1: A stable limit cycle (left) and an unstable one (right). The figure was produced
using pplane.
between the origin and the point (2, 2)! A cartoon of this situation is presented in
Figure 8.2.
As you may have guessed, this system is more conveniently rewritten in polar coordinates.
After some calculations1 you find that
R0 = R(1 R2 ),

0 = 1.

The second equation tells us that points keep on moving in a counter-clockwise fashion.
From the first equation, we get the one-dimensional phase portrait shown in Figure 8.3. It
shows that the origin is indeed an unstable fixed point, but also that R = 1 is a stable fixed
point. In Cartesian coordinates, this corresponds to a circle of radius 1: x2 + y 2 = 1, which
must be a limit cycle, since R = 1 is stable. The full phase portrait is shown in Figure 8.4.
It confirms all the things we just said. Naturally.

Typically, we cannot get an easy formula for the limit cycle, but there are various statements about whether there are any limit cycles or not. Thats what well see in this chapter.
Further, well discuss some methods that allow us to derive approximate formulas for limit
cycles.

8.1

The van der Pol oscillator

Consider the equation


x00 + (1 x2 )x0 + x = 0.
1

Which you should check, but you knew that.

8.1. THE VAN DER POL OSCILLATOR

93

(2,2)
y

Figure 8.2: An example demonstrating that theres more to life than fixed-point dynamics
in two-dimensional systems.
Here is a positive parameter. We can think of this equation as oscillator (first and last
term), with some nonlinear damping (the middle term):
If x2 1 > 0 then the damping is positive, and we expect solutions to get smaller.
If x2 1 < 0 then the damping is negative and it acts as an amplifier. We expect
solutions to get larger.
Thus, small solutions grow, and large solutions decay. What is happening in between?
Figure 8.5 presents the phase portrait and x as a function of t for a solution near the limit

Figure 8.3: The phase portrait for the one-dimensional system R0 = R(1 R2 ).

94

CHAPTER 8. LIMIT CYCLES

Figure 8.4: The phase portrait for our example, showing a stable limit cycle C, a circle of
radius 1.
cycle. Note that the limit cycle is not circular or ellipsoidal. Neither is the x(t) signal a
regular sine or cosine wave.
Rewriting the equation as a first-order system, we get
 0
x = y
y 0 = x (x2 1)y
Well come back to this first-order system later, when we will have methods to approximately
find the limit cycle.

8.2

Bendixsons theorem

The easiest way to rule out the presence of limit cycles is Bendixsons theorem.
Theorem. (Bendixson) If a region D R2 has no holes and
f
g
+
x y

8.2. BENDIXSONS THEOREM

95

Figure 8.5: The limit cycle for the van der Pol oscillator with = 0.5. On the right, the x(t)
signal for a solution near the limit cycle is shown. The figure was produced using pplane.
is not identically zero and does not change sign in D then the system
 0
x = f (x, y)
y 0 = g(x, y)
has no closed trajectories in D
Proof. We prove this by contradiction: we assume there is a closed orbit and show that
this leads to a contradiction, implying there is no closed orbit. Thus: Assume there is a
closed orbit, call it , which is entirely contained in D. On any such closed orbit we have
dy
dy/dt
g(x, y)
=
=
.
dx
dx/dt
f (x, y)
Thus
Z
f dy gdx = 0.

By Greens theorem
ZZ 
S

f
g
+
x y


dxdy = 0,

where is the boundary of S. But, by our assumption, the integrand is either > 0 or < 0,
implying the integral cannot be zero. This is our contradiction, so there cannot be any closed
orbits.
Example. Consider the system

96

CHAPTER 8. LIMIT CYCLES

Figure 8.6: The different regions where closed orbits cannot exist. Any closed orbit has to
cross the boundaries of these regions.

x0 = f (x, y) = y
,
y 0 = g(x, y) = x x3 ay + x2 y.

where, again, a is a positive parameter. We calculate


f
g
+
= a + x2 .
x y

This is zero when x = a. Thus, by Bendixsons theorem, if there are any


limit cycles
or other closed orbits, they must cross one or both of the vertical lines x = a. This is
illustrated in Figure 8.6. In the blue region f /x + g/y < 0 and no closed orbits exist.
Similarly, in the red region f /x + g/y > 0 and no closed orbits can exist.

8.3

Weakly nonlinear oscillators

An equation of the form

8.4. REGULAR PERTURBATION THEORY

97

x00 + x + h(x, x0 ) = 0
is called a weakly nonlinear oscillator2 . It resembles an oscillator with some nonlinear term
h(x, x0 ) added in. If we restrict ourselves to small , then maybe we can obtain some results
about possible limit cycles.
Example. The van der Pol oscillator
x00 + x + (x2 1)x0 = 0,

is a weakly nonlinear oscillator.


Example. The Duffing equation
x00 + x + x3 = 0,

is a weakly nonlinear oscillator.

8.4

Regular perturbation theory

The most naive thing we can try3 is to look for a solution of the weakly nonlinear oscillator
problem in the form of a series in :
x = x0 (t) + x1 (t) + 2 x2 (t) + . . . .
This is called regular perturbation theory. It works well for some problems, but it fails
even more spectacularly on other equations. Lets examine why.
Example. Consider the equation
x00 + 2x0 + x = 0,
with initial conditions
x(0) = 0, x0 (0) = 1.
You can easily find the exact solution for this problem, since it is linear:


1
t
2
x=
1 t .
e sin
1 2
suppose we didnt know this, and we proceeded using regular perturbation theory. We would
start with
2
3

Provided the function h(x, x0 ) is nonlinear of course.


Maybe theres more naive things possible. But this will do.

98

CHAPTER 8. LIMIT CYCLES

x = x0 (t) + x1 (t) + 2 x2 (t) + . . . .


Then
x0 = x00 (t) + x01 (t) + 2 x02 (t) + . . . ,
and
x00 = x000 (t) + x001 (t) + 2 x002 (t) + . . . ,
Plugging this all in to the equation gives


x000 + x001 + 2 x002 + . . . + 2 x00 + x01 + 2 x02 + . . . + x0 + x1 + 2 x2 + . . . = 0,
with initial conditions
x0 (0) + x1 (0) + 2 x2 (0) + . . . = 0, x00 (0) + x01 (0) + 2 x02 (0) + . . . = 1.
Lets deal with the initial condition first. Since it has to hold for all values of , we
can impose that the terms without  (the order 0 terms) satisfy the initial conditions, after
which we have that the other terms are equal to zero. Thus
x0 (0) = 0, x00 (0) = 1,
and
xk (0) = 0, x0k (0) = 0, for k = 1, 2, . . . .
Now we turn to the differential equation.
At order 0 , we get:


x000 + x0 = 0
.
x0 (0) = 0,
x00 (0) = 1

The solution is easily found to be


x0 = sin t.
So far, so good.

8.4. REGULAR PERTURBATION THEORY

99

At order 1 , we obtain:


x001 + x1 = 2x00 = 2 cos t


.
x1 (0) = 0,
x01 (0) = 0

This is a bit harder to solve, but not much. The main thing to note is that the righthand side gives rise to a resonant term, as it represents a forcing term at exactly the
same frequency as the characteristic frequency.
x1 = t sin t.
This is not good. We know that our solution, for all  should be a bounded function of
t. But this contribution contains oscillations of ever increasing amplitude as t !
This is not what we expected: our solution should have decaying amplitude.
If we cared to proceed, wed find that things get even worse. Once again, we have
resonant forcing in our equation for x2 . This time it gives rise to t2 terms: so now we
get oscillations increasing quadratically with t! Boohoo!
Figure 8.7 compares our exact solution for  = 0.1 with the perturbation solution, containing the first three terms (up to order 2 ). You see that the agreement for t close to zero
is good, but it becomes horrible after a while, as our solution decays and our approximation
for it diverges!
Whats going on?
Actually, this problem is comparable with that of the Taylor approximation for the sin
or cos functions:
sin x = 1

x3
+ ...,
6

and
x2 x4
+
...,
2
24
both of which are valid for all x. The left-hand sides of these series are between 1 and -1 for
all x. If we truncate the right-hand sides, to obtain a computable approximation, we find
functions that approach as x .
cos x = 1

The same is going on in our problem. In essence, what we have found is the first-order
Taylor approximation of the exact solution x(t) (which depends on , of course), but with
the Taylor expansion done with respect to . Because the exact solution has dependence
on t in the exponential, this Taylor series gives rise to terms that are linear in t. Thus,
for small t, the agreement is good. But, it wont allow us to determine limit cycles, which
require us to have good approximations as t .
So, how do we improve this?

100

CHAPTER 8. LIMIT CYCLES

Figure 8.7: The comparison between the exact solution (red) and the approximation using
regular perturbation theory (green).

8.5

Two-timing: the method of multiple scales

In order to improve our results, we take into account some more information about the
problem. We know that solutions will change due to two different effects.
1. Solutions will oscillate, due to the oscillator terms.
2. Solutions will decay in amplitude, due to the damping.
Now, this second effect will happen much slower, since the damping is small. This is the
origin of the main idea behind the method of multiple scales, or two-timing. We introduce
two different time scales. One is slow, the other is fast. For instance, for our example we let
= t fast, T = t slow.
The second time scale is considered slow, as it takes a long time (on the order of 1/) to
experience significant changes.
Treating and T as independent variables, we obtain the following transformation rules:

8.5. TWO-TIMING: THE METHOD OF MULTIPLE SCALES

101

dx
x d
x dT
=
+
dt
dt T dt
x
x
=
+ .

T
We see that the change as a consequence of the second time scale appears as a higher-order
effect. That is not a surprise. As a matter of fact, it is exactly what we want. Next,
d2 x
d dx
=
2
dt
dt 
dt

d x
x
=
+
dt
T
2
2
x
x
2x
= 2 + 2
+ 2 2 ,

T
T
for the second derivative.
We still have
x = x+ 0 + x1 + 2 x2 + . . . ,
where xk (k = 1, 2, . . .) are all regarded as functions of both and T .

8.5.1

The linear example

Lets first transform our initial conditions: from x(0) = 0, equating different powers of 
gives
x0 (0, 0) = 0, x1 (0, 0) = 0, x2 (0, 0) = 0, . . .
The condition on the derivative is a bit more complicated:

dx
=1
dt t=0



x
x
+
=1

T (,T )=(0,0)



2
2
(x0 + x1 +  x2 + . . .) +  (x0 + x1 +  x2 + . . .)
=1

T
(,T )=(0,0)

x0 x1
x1 x2
x0
= 0,
+
= 0,
+
= 0, . . . ,

T
T
T
T

where the last equalities are all to be evaluated at (, T ) = (0, 0).

102

CHAPTER 8. LIMIT CYCLES

Now we transform the differential equation. Writing only terms of order 0 or 1 , we get
2 x0
2 x1
2 x0
x0
+

+ O(2 ) = 0.
+
2
+ x0 + x1 + 2
2
2

At order 0 (the terms without ), we get


2 x0
+ x0 = 0.
2
Thus
x0 = A(T ) cos + B(T ) sin .
Here A(T ) and B(T ) are integration constants. Since we solved for the -dependence of
x0 only, these constants of the integration may depend on the other variable T .
Next we consider the terms of order 1 . We have

2 x1
x0
2 x0
+
+ x1 + 2
=0
2
T

2 x1
2 x0
x0
+
x
=
2
2
1
2

0
= 2 (A sin + B 0 cos ) 2 (A sin + B cos )
= 2(A + A0 ) sin + 2(B + B 0 ) cos .

As before, we see that resonant terms arise. If we let these be, they will give rise to slowly
growing terms (also called secular terms) that will eventually dominate our zeroth order
term. The total solution will become unbounded, leaving us with a major problem. But,
we can avoid this problem: we can choose the T -dependence of A and B to eliminate the
resonant terms: let
A0 + A = 0, B 0 + B = 0,
which are easily solved to give
A = A0 eT , B = B0 eT .
Thus,
x0 (, T ) = A0 eT cos + B0 eT sin .
It appears this might be a good time to use our initial conditions on x0 :

x0
= 1.
x0 (0, 0) = 0,
(,t)=(0,0)
We easily find

8.5. TWO-TIMING: THE METHOD OF MULTIPLE SCALES

103

A0 = 0, B0 = 1,
so that
x0 = eT sin ,
and
x = et sin t + O().
Remember that this has to be compared with the exact solution


1
x=
1 2 t .
et sin
1 2
Our newly constructed approximated solution is a much better approximation than we obtained from regular perturbation theory! It captures the oscillations well (the frequency is a
little off, but not much), and it captures the exponential damping spot on! Awesome! The
amplitude is also a little bit off, but overall this is a huge improvement! We could choose to
turn this crank longer, obtaining higher-order terms. Things would get more complicated,
and we would get an even better result.

8.5.2

The nonlinear example: back to the van der Pol oscillator

Recall that the differential equation for the van der Pol oscillator is given by
x00 + x + (x2 1)x0 = 0.
We will not specify initial conditions: we are looking for limit cycles, if any exist. Since we
dont know where they might be, it does not make sense to impose initial conditions. They
are part of our problem. As in the above, we introduce two time scales: a fast one and a
slow one.
= t,

T = t.

Then
x
x
dx
=
+ ,
dt

T
2
2
2
dx
x
2x
2 x
= 2 + 2
+
,
dt2

T
T 2
and
x = x0 + x1 + 2 x2 + . . . .

104

CHAPTER 8. LIMIT CYCLES

Plugging all of this into the van der Pol equation, we get at order 0
2 x0
+ x0 = 0,
2
from which
x0 = R(T ) cos( + (T )).
Here R(T ) and (T ) are integration constants, which may depend on T . Note that we have
expressed the solution in the form specifying an amplitude and a phase. This is because were
looking for limit cycles, thus we are particularly interested in determining an amplitude.
At order 1 we get (check this!)

2 x0
x0
2 x1
+
x
+
2
+ (x20 1)
=0
1
2

2 x0
x0
2 x1
+ x1 = 2
(x20 1)
2

= 2R0 sin( + ) + 2R0 cos( + )+


(R2 cos2 ( + ) 1)R sin( + )
= 2R0 sin( + ) + 2R0 cos( + )+
R3 cos2 ( + ) sin( + ) R sin( + ).

As before we want to eliminate resonant terms. For many of these terms, it is clear which
are resonant. However, for the term with R3 we need to do some more work. Using the trig
identity
cos2 sin =

1
1
sin(3) + sin
4
4

we get
2 x1
1
1
+x1 = 2R0 sin( +)+2R0 cos( +)R sin( +)+ R3 sin 3( +)+ R3 sin( +).
2

4
4
In order to avoid resonant terms, we have to equate the coefficients of cos( +) and sin( +)
on the right to zero. This results in:

cos( + )

2R0 = 0,

sin( + )

1
2R0 + R3 R = 0.
4

The first equation gives

8.5. TWO-TIMING: THE METHOD OF MULTIPLE SCALES

105

Figure 8.8: The slow-time dynamics of R(T ).

(T ) = 0 ,
where 0 is constant. Note that weve ignored the R = 0, because R = 0 is not a very
interesting limit cycle. From the second equation
1
R0 = R(4 R2 ).
8
We could solve this equation using separation of variables, but thats more information
than were looking for. This equation is a one-dimensional dynamical system. It has equilibrium points at R = 0 (nothing new there) and at R = 2. The phase portrait for this
equation is given in Figure 8.8. From it, we see that R = 2 is a stable fixed point. This
gives us the location for the limit cycle: in Cartesian coordinates R = 2 is the equation for
a circle of radius 2. Thus, there is a limit cycle, as this closed orbit is indeed isolated.
Putting this all together we find that the approximate equation for the limit cycle solution
is given by a circle of radius 2 with frequency 1:
x = x0 + x1 + 2 x2 + . . .
= 2 cos(t + 0 ) + O().
The statements about the radius and the frequency of this limit cycle are only approximate.
More correctly:
R = 2 + O(),
= 1 + O(2 ).
To obtain more information,, especially higher-order corrections for the frequency, we need
to go to higher order in the perturbation expansion, and we need to include higher-order
time scales. Another way to look at what we have accomplished is that we found a good first
guess as to where the limit cycle is. This is essential if we wish to construct the limit cycle
numerically. For a numerical method we need a good first guess, meaning we need a point
that is close to the desired limit cycle. But in a nonlinear system it is not always clear
what close means, as there may be many other things going on: multiple fixed points,
other limit cycles, etc. Our perturbation method provides us with a good first guess: if
we use an initial condition that satisfies our perturbation prediction for the limit cycle, we
should do OK finding it numerically.

106

CHAPTER 8. LIMIT CYCLES

Figure 8.9: The limit cycle for the van der Pol equation.
The full phase portrait for the van der Pol oscillator with epsilon=0.1 is shown in Figure 8.9. Note that the limit cycle is indeed very close to a circle of radius 2. In the fast time
scale, the solution winds around the limit cycle in the (x, y = x0 )-plane. In the slow time
scale, the solutions get closer to the limit cycle.

8.6

A digression: Fourier series

Fourier declared that any periodic function of frequency can be expanded in a linear
combination of sins and coss that have either the same frequency or have frequency that
is an integer multiple of the base frequency. In other words: if you understand the trig
functions, you can get your hands on all periodic functions! This is quite a statement.
Fouriers colleagues didnt believe him and it took a bit for his ideas to be fully recognized.
He was correct of course4 So, lets go over these ideas, in a sort of hand-wavy way. For actual
proofs of all of this stuff, see amath403, or perhaps even amath569.
Lets assume that f () is a periodic function of period 2. Fourier stated that all such
4

Dya really think Id be writing about him otherwise?

8.6. A DIGRESSION: FOURIER SERIES

107

functions can be written as

X
a0 X
f () =
+
an cos(n) +
bn sin(n),
2
n=1
n=1

where an (n = 0, 1, . . .) and bn (n = 1, 2, . . .) are known as the Fourier coefficients. Now,


assuming that such an expansion hold, lets figure out what these coefficients are. How can
we determine them given the function f ()?
First we define the averaging operation. Let
Z 2
1
hF i =
F ()d.
2 0
This is the average value of the function F (). Now, we all know that the average values
of sin(n) and cos(n) are zero. Thus,
a0
,
2
since all the other terms have zero average. Thus
Z
1 2
a0 =
f ()d.
0
hf ()i =

How about the other Fourier coefficients. We need some help. Heres the cavalry:
hsin(n) cos(k)i = 0, for all k =
6 n,
hsin(n) sin(k)i = 0, for all k =
6 n,
hcos(n) cos(k)i = 0, for all k =
6 n,

2
1
sin (k) = ,
2

2
1
cos (k) = ,
2
where k and n are positive integers. You can check these easily5 , using integration by parts,
or using complex exponentials, or using trig identities.
Lets return to the form of the Fourier series. We have

f () cos(N ) =

X
X
a0
cos(N ) +
an cos(n) cos(N ) +
bn sin(n) cos(N ),
2
n=1
n=1

for some integer N > 1. Now the average of the whole lot. The average of the first term
on the right-hand side is zero. All the terms in the second sum have zero average too, using
5

And you should. I know you will. I have faith.

108

CHAPTER 8. LIMIT CYCLES

the cavalry. Similarly, all terms in the first sum have zero average, except one. Indeed, if
n = N , we get a contribution.
1
hf () cos(N )i = aN ,
2
from which
Z
1 2
aN =
f () cos(N )d,
0
for all N = 1, 2, . . .. Doing entirely the same thing, but multiplying by sins instead of coss,
we get that
Z
1 2
bN =
f () sin(N )d,
0
For N = 1, 2, . . ..
Why is this not a proof of the Fourier series? Theres two main reasons:
1. We switched integrals (the averages) and infinite sums, and that may not be allowed.
We need to have uniform convergence of the series to do this, which we did not investigate.
2. We have shown that if sins and coss appear in the Fourier series, their coefficients
should be what we determined them to be. But we did not show that were getting everything this way. Maybe theres some part of the function f () that was not captured
by the trig functions. Under some assumptions on f (), it turns out we did capture
everthing, but we sure did not prove it.

8.7

The method of averaging

Recall that the differential equation for the general weakly nonlinear oscillator is given by
x00 + x + h(x, x0 ) = 0.
As for the van der Pol oscillator, we will not specify initial conditions. We are looking for
limit cycles, if any exist. Finding the initial conditions giving rise to limit cycles is part of
our problem. As before, we introduce two time scales: a fast one and a slow one.
= t,

T = t.

And again
x
x
dx
=
+ ,
dt

T
2
d2 x
2x
2x
2 x
=
+
2
+

,
dt2
2
T
T 2

8.7. THE METHOD OF AVERAGING

109

and
x = x0 + x1 + 2 x2 + . . . .
Plugging all of this into the equation for the weakly nonlinear oscillator, we get at order 0
2 x0
+ x0 = 0,
2
from which
x0 = R(T ) cos( + (T )),
as for the van der Pol oscillator. Thus R(T ) and (T ) are integration constants, which
may depend on T .
We now proceed to the first-order terms: at order  we have



2 x0
x0
2 x1
+ x1 + 2
+ h x0 ,
=0
2
T



2 x0
x0
2 x1
+ x1 = 2
h x0 ,
2
T

0
0
= 2R sin + 2R cos H().

Here
H() = h(R cos , R sin ),
with = + (T ).
What are we trying to do? We want to avoid resonant terms, like before. The resonant
terms are those terms that have either cos or sin . We want to equate the coefficients of
these contributions to zero. Aha! This is where this Fourier series business is helpful: these
coefficients are exactly the Fourier coefficients of cos and sin of the right-hand side. Thus,
to first approximations, the equations for the limit cycle will follow from
h(2R0 sin + 2R0 cos H()) cos i = 0,
h(2R0 sin + 2R0 cos H()) sin i = 0.
Lets work these out. From the first equation,


2R0 hsin cos i + 2R0 cos2 hH() cos i = 0,
1
2R0 = hH() cos i
2
1
0 = hH() cos i .
R

110

CHAPTER 8. LIMIT CYCLES

From the second equation,


2R0 sin2 + 2R0 hcos sin i hH() sin i = 0
1
2R0 = hH() sin i
2
R0 = hH() sin i .
Thus, to first approximation, the equation of the limit cycle will be given by equilibrium
solutions of this last differential equation, which is a one-dimensional dynamical system for
R0 , since the right-hand side will depend on R.
Example. Consider the Duffing equation
x00 + x + x3 = 0.
Thus h = x3 . Then
H() = R3 cos3 ,
and the equation for the limit cycle follows from
R0 = hH() sin i


= R3 cos3 sin
= 0.
Here we have used that < cos3 sin >= 0. Thus, to first approximation, the Duffing
oscillator has a lot of closed orbits. This is not surprising, as this system is conservative.
The origin of the phase plane is a center fixed point, thus we expect plenty of closed orbits
around it.

The above shows that it is handy to have a table at hand for expressions of the form

k

cos sinn ,
since these expressions pop up again and again in these calculations.

8.8

The Poincar
e-Bendixson theorem

We now know how to rule out closed orbits, using Bendixsons theorem. We also know how
to find approximate formulae for closed orbits, if any exist, using two timing or averaging.
Consider the following scenario: suppose we have a bounded region of the plane, call it
R. Suppose that this region contains no fixed points for a given autonomous dynamical
system, but that it contains a trajectory of this system that is confined to this region R.


8.8. THE POINCARE-BENDIXSON
THEOREM

111

Figure 8.10: A trapping region for the Poincare-Bendixson theorem.


Where can it go? A picture for such a scenario is drawn in Figure 8.10. Since the region is
bounded, were running out of space soon, especially since the trajectory is not allowed to
cross itself. There are no fixed points, thus the trajectory cant go to one of those. A limit
cycle is another option we know about, and it would offer us a solution to this problem. The
Poincare-Bendixson theorem tells us that this happens, and that it is basically about the
only thing that happens.
Theorem. (Poincar
e-Bendixson) Suppose that
 0
x = f (x, y)
y 0 = g(x, y)
is a continuously differentiable vectorfield, and that (i) R is a closed6 , bounded subset of R2 ,
(ii) R contains no fixed points, and (iii) there exists a trajectory which is confined to R for
all t > 0. Then R contains at least one closed orbit of the dynamical system.
We wont prove this theorem here, see Amath575 instead. We mention the main con6

This means it includes the boundary

112

CHAPTER 8. LIMIT CYCLES

sequence of the theorem: two-dimensional autonomous systems cannot exhibit chaos. The
Poincare-Bendixson theorem states that the two possible kinds of limit behavior are provided
by either fixed points or by closed orbits, such as limit cycles.
Thus, if we wish to study chaos, we need to go beyond two-dimensional autonomous
systems. Well do this shortly.

Chapter 9
Bifurcations in two-dimensional
systems
Previously we have studied bifurcations in one-dimensional systems. This allowed us to
examine how fixed points are turned on or off, or how their stability properties change as
we change a parameter. Now we can do the same in two-dimensional systems. However, we
can do more: we can also study how periodic solutions are turned on or off, or how their
stability properties are changed.
We will investigate only a few different possibilities for bifurcations in two-dimensional
systems. We start by studying some two-dimensional versions of saddle-node, transcritical
and pitchfork bifurcations. We see that, in essence, these bifurcations are similar to what we
have seen in one-dimensional systems. It gets more interesting when we consider the Hopf
bifurcation, which cannot occur in a one-dimensional system.

9.1

Saddle-node bifurcations

Well do this by example. Consider the following system:

x0 = y ax,
x2
y0 =
y.
1 + x2
Here a is a parameter, chosen to be positive. This is motivated by the origin of this system:
it arises in the study of genetic control systems.
As usual, we start by looking for the fixed points. We need
y = ax, y =

x2
,
1 + x2

so that
ax =

x2
1 + x2

x = 0 or a =
113

x
.
1 + x2

114

CHAPTER 9. BIFURCATIONS IN TWO-DIMENSIONAL SYSTEMS

The condition x = 0 gives rise to the first fixed point:


P1 = (0, 0),
for all values of a. Next, from a = x/(1 + x2 ), we get
2

ax x + a = 0 x =

1 4a2
.
2a

This gives rise to two more fixed points:



P2 =

1+

1 4a2 1 +
,
2a

1 4a2
2


, P3 =

1 4a2 1
,
2a


1 4a2
.
2

These fixed points are only defined when the inside of the square root is positive, which
requires
1
a< .
2
Immediately, we see there are three different regimes to our bifurcation:
1. a < 1/2: in this case there are three distinct fixed points: P1 , P2 and P3 .
2. a = 1/2: now there are two distinct fixed points, as P2 = P3 .
3. a > 1/2: this case has only a single fixed point, P1 .
These considerations might lead us immediately to claim that were examining a generalization of a one-dimensional saddle-node bifurcation: for a < 1/2 we have two fixed points,
which are annihilated as a is increased past its critical value a = 1/2. Well see that what
we have here is indeed a saddle-node bifurcation. At the same time, well explain where the
name of this bifurcation comes from1 !
Next, we examine the stability of these fixed points. We calculate the Jacobian:

a
1
.
2x
J(x, y) =
1
(1 + x2 )2
We now evaluate the Jacobian at the different fixed points. First, at P1 we have


a 1
J(0, 0) =
,
0 1
which has eigenvalues 1 = a and 2 = 1. Both are strictly negative for a > 0, this P1
is a stable node: anything close to P1 gets attracted by it. Here close is determined by how
far either one of P2 or P3 is from the origin.
1

Ah, the end of your anticipation! Youve had to wait a long time for this one.

9.2. PITCHFORK BIFURCATIONS

115

Next, we look at the Jacobian evaluated at P2 :




a
1

J(P2 ) =
.
a(1 1 4a2 ) 1
The eigenvalues of this matrix are
q

(a + 1) (a + 1)2 4a 1 4a2
1,2 =

.
2
For a < 1/2 both of these are negative, thus the fixed point P2 is a stable node. When
a = 1/2, one of the eigenvalues is zero, and the fixed point becomes degenerate, as expected.
Lastly, we look at the Jacobian evaluated at P3 :


a
1

.
J(P3 ) =
a(1 + 1 4a2 ) 1
The eigenvalues of this matrix are
q

(a + 1) (a + 1)2 + 4a 1 4a2
1,2 =

.
2
For a < 1/2 one of these is negative, the other is positve. Thus the fixed point P3 is a
saddle point. When a = 1/2, one of the eigenvalues is zero, and the fixed point P3 becomes
degenerate too, again as expected. Lets summarize what happens in this bifurcation: for
a < 1/2 we have two fixed points, P2 and P3 . One of these is an (unstable) saddle, the
other is a stable node. At a = 1/2 these two fixed points merge. For a > 1/2, both fixed
points have disappeared. Throughout this entire ordeal, there is another fixed point P1 ,
which leves its own merry life, seemingly unaffected by all that happens away from it. The
three different types of phase portraits in this bifurcation scenario are shown in Figure 9.1.
In this figure, the two colors are used to denote the different basins of attraction. Note that
the stable manifold of the saddle point P3 is the dividing boundary between the basins of
attraction of P1 and P2 .

9.2

Pitchfork bifurcations

Consider the system




x0 = x + y + sin x,
y 0 = x y.

Here is a parameter. Notice that for all values of this parameter P1 = (0, 0) is a fixed
point. The Jacobian at this fixed point is


+1 1
J(0, 0) =
,
1
1

116

CHAPTER 9. BIFURCATIONS IN TWO-DIMENSIONAL SYSTEMS

(i) a = 0.45 < 1/2

(ii) a = 1/2

(iii) a = 0.7 > 1/2

Figure 9.1: A two-dimensional saddle-node bifurcation. The figures were created using
pplane.
which gives rise to the eigenvalues 1 , 2 :
2 ( + 2) = 0

2 + 4( + 2)
p 2
2 + 4 + 8
=
p 2
( + 2)2 + 4
=
.
2

1,2 =

Thus both 1 and 2 are real. One of them may be zero when
p
= 2 + 4 + 8,
which happens when = 2. Thus = 2 is a candidate for a bifurcation value. Indeed,
for this value of , the fixed point P1 has an eigenvalue on the imaginary axis (namely at 0),
thus its stability properties might change under small perturbations. This is the case: for
< 2, the fixed point P1 is a stable node (check this!), whereas for > 2, P1 is a saddle
(yes, check this too!). Thus = 2 is a bifurcation value.
Lets examine what happens for values close to this bifurcation value, and for points
(x, y) close to P1 = (0, 0). We can simplify our life by using a Taylor approximation for the
sin function:

0
x3
x = x + y + x
+ O(x5 ),
6
y 0 = x y.
As usual, we start by looking for fixed points. Close to P1 we may ignore the O(x5 ) terms.
Then our fixed-points condition becomes, using y = x,

9.3. HOPF BIFURCATIONS

117

(i) = 3 < 2

(ii) = 2

(iii) = 1.8 > 2

Figure 9.2: A two-dimensional pitchfork bifurcation. The figures were created using pplane.

x + x + x

x3
=0
6
x2 = 6( + 2)
p
x = 6( + 2),

provided 2. We have divided through by x, since we already know about the fixed
point P1 . Thus we find two (approximate) branches of fixed points for 2:
x2,3 =

p
p
6( + 2), y2,3 = 6( + 2),

so that P2 = (x2 , y2 ) and P3 = (x3 , y3 ) are fixed points for > 2, near the bifurcation
point.
This very much looks like a (supercritical) pitchfork bifurcation at the origin at = 2,
which indeed it is: for < 2 there is a single (stable) fixed point near the origin. For
= 2, this fixed point is degenerate. Finally, for > 2 there are two additional fixed
points originating from P1 . You should check that after the bifurcation these new fixed
points P2 and P3 inherit the stability properties of P1 before the bifurcation. The old fixed
point has now become unstable. This bifurcation is illustrated in Figure 9.2.

9.3

Hopf bifurcations

The bifurcations we have studied so far have had eigenvalues changing stability by the
movement of an eigenvalue from the left to the right-half of the complex plane by passing
through the origin. Indeed, for one-dimensional systems this is the only way to do so: there
is only one eigenvalue and it has to be real. For two-dimensional systems, there is another
option available to us: we might have two complex conjugate eigenvalues. If they are on the
left of the imaginary axis, the fixed point is a stable spiral. If they are on the right, the fixed
point is an unstable spiral. In passing from one to the other, the two eigenvalues will be on

118

CHAPTER 9. BIFURCATIONS IN TWO-DIMENSIONAL SYSTEMS


Im
1
Re

2 = 1

Im
1
Re

2 = 1

Figure 9.3: A schematic for a supercritical Hopf bifurcation. Here a < ac (top) and a > ac
(bottom)

the imaginary axis for a certain parameter value, at which stage the fixed point is a linear
center.
Consider the following scenario: for a < ac (here ac denotes a critical value of the
parameter a, the bifurcation parameter) we have a stable spiral point, and the entire phase
plane is attracted to the fixed point. Now, as the parameter a changes to a > ac , the fixed
point changes to an unstable spiral point. However, the overall dynamics far away from the
fixed point should be unaltered, as bifurcations are local phenomena. Thus, far away the
dynamics is moving in, but near the fixed point its moving away. The only possibility is
that as a consequence of the bifurcation a limit cycle has been created. Such a bifurcation is
referred to as a Hopf bifurcation. This is illustrated in Figure 9.3. Since in this scenario
the limit cycle exists for a > ac , this is a supercritical Hopf bifurcation.
There is another way to look at a supercritical Hopf bifurcation. Suppose we have a
system with a parameter a, so that for a < ac the system settles down to a constant value, in

9.3. HOPF BIFURCATIONS

119

Figure 9.4: For a < ac the system exhibits a damped oscillation.

Figure 9.5: For a > ac the system exhibits an undamped oscillation.


an oscillatory way. In other words, oscillations eventually decay and die out. Such a signal
is shown in Figure 9.4.
Now imagine that for increasing values of a the damping rate (which is the real part of the
eigenvalue, remember?) decreases, so that the signal decreases less rapidly. Then, for a > ac
the solution is no longer damped , and instead we have a periodic signal. This corresponds
to the limit cycle in the phase plane. Such a signal is shown in Figure 9.5. This is the
consequence of the system undergoing a Hopf bifurcation.
Lets do some examples.
Example. Consider the system


R0 = R R3
,
0 = + R2

where is our bifurcation parameter, and is a given positive constant. The system is given
to us in polar coordinates, thus x = R cos and y = R sin . Equating the right-hand side of
the first equation to zero, we can find a fixed point at the origin and a limit cycle. Indeed:

R R3 = 0
R = R3
R = 0 or R2 =

120

CHAPTER 9. BIFURCATIONS IN TWO-DIMENSIONAL SYSTEMS

R
R=0
Figure 9.6: For < 0 the origin is a stable spiral point. The phase portrait for the onedimensional R-system is shown on the left. The two-dimensional (x, y)-portrait is on the
right. The right panel was made using pplane.

R = 0 or R =

Note that we have ignored the solution R = . Thus we have a fixed point at the origin

R = 0, and a limit cycle (a circle) at R = , provided > 0. The one-dimensional phase


portrait for R and the two-dimensional one it implies for (x, y) are shown for < 0 in
Figure 9.6, and for > 0 in Figure 9.7.
Lets examine what happens near the origin in the (x, y) coordinates. We have
x0 = (R cos )0
= R0 cos R0 sin
= (R R3 ) cos R( + R2 ) sin
= R cos R3 cos R sin R3 sin
= x y (x + y)(x2 + y 2 ),
and
y 0 = (R sin )0
= R0 sin + R0 cos
= (R R3 ) sin + R( + R2 ) cos
= y + x + (x y)(x2 + y 2 ).
Thus the Jacobian for the fixed point at the origin is

9.3. HOPF BIFURCATIONS

121

R
1/2

R=

R=0

Figure 9.7: For > 0 the origin is an unstable spiral point, and a limit cycle exists at
x2 + y 2 = R2 = . The phase portrait for the one-dimensional R-system is shown on the
left. The two-dimensional (x, y)-portrait is on the right. The right panel was made using
pplane.


J(0, 0) =


,

for which we calculate the eigenvalues:



det


=0

( )2 + 2 = 0
( )2 = 2
1,2 = i
1,2 = i.

Indeed, for < 0 both eigenvalues are in the left-half plane. They cross into the right-half
plane for > 0. This is illustrated in Figure 9.8.

Hopf bifurcations can be subcritical as well.


Example. Consider the system
 0
R = R + R3 R5
,
0 = + R2
where is a bifurcation parameter. As before, the system is given in polar coordinates, and
the radial and angular variables are decoupled. Looking for stationary R values, we get

122

CHAPTER 9. BIFURCATIONS IN TWO-DIMENSIONAL SYSTEMS

<0

=0

>0

Figure 9.8: The complex eigenvalue plane for a supercritical Hopf bifurcation.

R1 = 0 or + R2 R4 = 0

1 1 + 4
2
R =
r2
1
1
+
R2 =
2
4
s
r
1
1
R2,3 =

+ .
2
4
Thus the origin R1 = 0 is always a fixed point. There are different possibilities for different
values of .
1. If < 1/4, there are no limit cycles and the origin R1 is the only fixed point.
p
2. If = 1/4 there is one limit cycle, at R2 = R3 = 1/2. It follows from the onedimensional phase portrait for the R dynamics that it is semi-stable. There is still a
stable spiral point at the origin.
3. If (1/4, 0) the square root in the last expression is positive. Further, both
expressions for R2 and R3 are positive, and there are two limit cycles. Both are circles.
They have radii R2 and R3 . The outer one is stable, the inner one unstable. The origin
remains a stable spiral point.
4. If = 0, R1 = R2 = 0. The fixed point at the origin persists, but its stability properties
change. There remains a stable limit cycle at R3 = 1.
5. If > 0, the origin remains an unstable spiral point, whereas the limit cycle at R3
remains stable. The expression for R2 is no longer real.

9.3. HOPF BIFURCATIONS

123

R1
R1
R1

<1/4

R2 = R3

=1/4

R3

1/4<<0

R2

R1 = R2

R3

R1

R3

=0

>0

Figure 9.9: The one-dimensional phase portraits for the subcritical Hopf bifurcation example.
The different phase portraits for R are shown in Figure 9.9. Their corresponding twodimensional (x, y) phase portraits are given in Figure 9.10. We see that a subcritical Hopf
bifurcaton happens at = 0, where a limit cycle at R2 gets destroyed. The second limit
cycle at R3 does not partake in this bifurcation.

Lets do a last example, where the limit cycle is not a circle.


Example. Let


x0 = x y + xy 2 = f (x, y)
.
y 0 = x + y + y 3 = g(x, y)

Well show that a Hopf bifurcation occurs at the origin as varies.


Indeed, the origin (0, 0) is a fixed point. Its Jacobian is


1
J(0, 0) =
,
1
with eigenvalues (check!)
1,2 = i.

124

CHAPTER 9. BIFURCATIONS IN TWO-DIMENSIONAL SYSTEMS

< 1/4

= 1/4

=0

1/4 < < 0

>0

Figure 9.10: The two-dimensional phase portraits for the subcritical Hopf bifurcation example. The plots were created using pplane.
We see that for < 0 we have a stable spiral at the origin, whereas for > 0 the origin
becomes an unstable spiral. Thus all the ingredients are in place for a Hopf bifurcation.
Further,
g
f
+
= 2 + 4y 2 .
x y
It follows from Bendixsons theorem that there are no limit cycles for > 0. How about for
< 0? For < 0, (0, 0) is a stable spiral. On the other hand, for (x, y) large, it is clear
that the tangent vectors move away from (0, 0). Thus there is a definite possibility for an
unstable limit cycle. Using pplane, you can confirm that such a limit cycle exists. Thus we
have a subcritical Hopf bifurcation at the origin when = 0. The different phase portraits
are collected in Figure 9.11.

9.3. HOPF BIFURCATIONS

125

Figure 9.11: The phase portraits for the non-circular limit cycle example. The plots were
made using pplane.

126

CHAPTER 9. BIFURCATIONS IN TWO-DIMENSIONAL SYSTEMS

Chapter 10
Difference equations
A difference equation is an equation of the form
xn+1 = f (xn ),
where both f and xn may be vectors. A difference equation tells you how to move xn
forward one step, to xn+1 . Difference equations are similar to differential equations, but for
differential equations the stepsize is infinitesimally small. For difference equations, it is 1.
There are many important differences between differential equations and difference equations. For instance, the solution of a difference equation is just a sequence of points, and
there is no continuity associated with it at all. If we were to draw the phase portrait of a
difference equation, there are no constraints imposed by other solutions: different solutions
can jump over them unimpeded.
Example. Consider the first-order scalar difference equation
xn+1 = xn .
The general solution of this equation is given by the sequence
(x0 , x0 , x0 , x0 , . . .),
where x0 is the initial value. This sequence oscillates around the origin. Note that xn = 0 is
a fixed point of the equation. This is already different from first-order differential equations,
which cannot have any oscillatory behavior, as we showed.

What can be said in general about solutions of difference equations? Like differential
equations, they are typically hard to solve1
1

Gee. . . , whatd yar expect?

127

128

CHAPTER 10. DIFFERENCE EQUATIONS

10.1

Linear constant-coefficient difference equations

For starters, lets restrict our attention to linear, constant coefficient systems2 . Such systems
are written as
xn+1 = Axn ,
where A is an N N constant (i.e., independent of n) matrix. As with differential equations,
our main method of solution is to guess. Lets guess the solution form
xn = n v,
where is a scalar constant, to be determined, and v is a constant vector, also to be
determined. So, can we find and v such that the above gives a solution of the equation?
If not, well have to try another guess. Lets see what we get with this one. We have
xn+1 = n+1 v,
thus, plugging in,
n+1 v = An v Av = v,
an eigenvalue equation3 ! Thus, we can get our guess to work if we pick to be an eigenvalue
of A, and v its corresponding eigenvector. Even better, since the matrix A typically has
a bunch of eigenvalues with corresponding eigenvectors, we get a bunch of solutions of the
difference equation this was. Since the difference equation were considering is linear, any
linear combination of a bunch of solutions will again be a solution. Thus, if 1 , 2 , . . . ,
N are eigenvalues of A with corresponding eigenvectors v1 , v2 , . . . , vN , then the general
solution is given by
xn = c1 n1 v1 + c2 n2 v2 + . . . + c1 nN vN .
So far, this is all very similar to constant coefficients differential equations. The poisson is
in the details: how do we interpret out results. This is where things get to be a bit different.
1. If R, and > 1 then n v increases in size, without oscillations. This is an unstable
mode.
2. If R, and < 1, but > 0 then n v increases in size, without oscillations. This is
a stable mode.
3. If R, and < 1 then n v increases in size, while oscillation around the origin.
This is an unstable mode.
2
3

See the previous footnote.


Raise your hand if you are surprised.

10.1. LINEAR CONSTANT-COEFFICIENT DIFFERENCE EQUATIONS

129

4. If R, and > 1 but < 0 then n v decreases in size, while oscillation around
the origin. This is a stable mode.
5. If C, then = ||ei , where is the argument of the complex number . Thus
n = ||n ein = ||n (cos n + i sin n). We see that the size of our solution decreases
(increases) if || < 1 (|| > 1).
In summary, we see that eigenvalues outside the unit circle give rise to unstable modes,
whereas eigenvalues inside the unit circle are stable. Any modes on the unit circle are linearly
stable, but more work is necessary to investigate the linear stability of the zero fixed point, as
the multiplicity of these eigenvalues and the presence of any generalized eigenvectors might
have a say in this. If this system is obtained as the linearization near a fixed point of a
nonlinear system, then all bets are off: the nonlinearities have to be taken into account to
determine stability of instability if there are modes on the unit circle, but none outside.
This situation is illustrated in Figure 10.1. Thus, instead of having to determine whether
eigenvalues are left or right of the imaginary axis (as for differential equations), here we see
that we have to determine whether eigenvalues are inside or outside of the unit circle.
Example. Consider the Fibonacci difference equation
yn+2 = yn + yn+1 ,
which defined the Fibonacci sequence: any number in it is obtained as the sum of the previous
two numbers. Can we write down a formula for the n-th Fibonacci number? That would
allow us to calculate this number, without needing all the numbers preceding it.
We impose initial conditions
y0 = 0, u1 = 1.
We let
yn = n ,
so that
yn+1 = n+1 , yn+2 = n+2 .
We get
n+2 = n + n+1 2 = 1 + 2 1 = 0.
This is easily solved. We get
1,2
or

1 5
,
=
2

130

CHAPTER 10. DIFFERENCE EQUATIONS

i
1

Figure 10.1: Different parts of the complex eigenvalue plane for the stability of fixed points
of difference equations. A fixed point is stable if all its eigenvalues are on the inside of unit
circle.

1 = 1.618 . . . > 1, 2 = 0.618 . . . > 1.


Thus, for large enough n, the influence of 2 will diminish, and we will see only the effect of
1 . The general solution is given by
!n
!n
1
+
1

5
5
+ c2
.
yn = c1 n1 + c2 n2 = c1
2
2
We use the initial conditions to determine c1 and c2 . From y0 = 0 we get
0 = c1 + c2 c2 = c1 ,
so that

10.2. NONLINEAR DIFFERENCE EQUATIONS AND LINEARIZATION

!n
1+ 5

y n = c1

131

!n !
1 5
.
2

Using the second initial condition, y1 = 1, we obtain

1
1 = c1 5 c1 = .
5
Finally, we have a formula for the n-th Fibonacci number:
1
yn =
5

!n
1+ 5

!n !
1 5
.
2

Perhaps this is not the formula you were looking for: the Fibonacci numbers should all be
integers, and it is not immediately clear from the formula that they are. You should convince
yourself of this fact.

10.2

Nonlinear difference equations and linearization

For general nonlinear difference equations


xn+1 = f (xn ),
with xn , f RN as before, we proceed as for nonlinear differential equations: we start
by finding fixed points, and examining their stability.

10.2.1

Fixed points

A fixed point of a difference system is a point whose further iteration does not change it,
thus xn+1 = xn , resulting in
xn = f (xn ).
Thus fixed points satisfy
x = f (x).
For one-dimensional systems, this implies that we are looking for points at which f (x)
intersects the first bisectrix. For higher-dimensional system this geometrical intuition is no
longer present, but we still have an algebraic equation to solve.

132

10.2.2

CHAPTER 10. DIFFERENCE EQUATIONS

Stability of fixed points

Having found a fixed point x , wed like to establish its stability properties. To do this, we
examine the difference equation close to the fixed point. Let
xn = x + yn .
We substitute this in the difference equation to get
x + yn+1 = f (x + yn ).
We expand the right-hand side around x , assuming that yn is small. Thus

xk

+ y(n+1),k

xk + y(n+1),k

y(n+1),k


N
X
fk
= fk (x ) +
yn,j + O(||yn ||2 )

x

n,j
xn =x
j=1

N
X
fk
= xk +
yn,j + O(||yn ||2 )

xn,j xn =x
j=1

N
X
fk
yn,j + O(||yn ||2 ),
=

x

n,j xn =x
j=1

where yn,k denotes the k-th component of the vector yn . If we define the matrix
J(x ) = (Jkj )N
j,k=1 ,
where
Jkj


fk
=
,
xn,j xn =x

then (ignoring nonlinear terms), our equation becomes


yn+1 = J(x )yn .
Here J(x ) is the Jacobian of the system evaluated at the fixed point. It plays the same
role as for differential equations, and is calculated similarly: the first row contains derivatives
of the first equation. The second row derivatives of the second equation and so on. The
first column contains derivatives with respect to the first variable, etc. Thus, near every
fixed point we have to solve a linear constant coefficient difference equation, to determine
the stability of the fixed point. Thats pretty sweet, because we just learned how to do this.
Some definitions: the fixed point x is called hyperbolic if none of the eigenvalues of
its linearized system lie on the unit circle. For hyperbolic fixed points, the linearization
predicts the correct stability behavior. The fixed point x is unstable if any of its eigenvalues
are outside of the unit circle, as the corresponding eigenmode will grow in size. If all the

10.2. NONLINEAR DIFFERENCE EQUATIONS AND LINEARIZATION

133

eigenvalues are inside the unit circle, the fixed point is (asymptotically) stable. Lastly, if the
eigenvalues with largest absolute value lie on the unit circle, the fixed point is called spectrally
stable, which often means linearly stable, depending on the multiplicity of the eigenvalues and
whether there is a sufficient number of eigenvectors. For such fixed points the linearization
tells us not much about the stability of the fixed point, and the effect of nonlinear terms has
to be taken into account.
For one-dimensional maps, we can interpret the stability criterion geometrically. For the
one-dimensional map
xn+1 = f (xn ),
we have a fixed point x when x = f (x ). Thus f (x) has to intersect the first bisectrix, as
illustrated in Figure 10.2. For this case, the Jacobian is a 1 1 matrix, in other words, a
number. We have
J(x ) =

f
(x ).
xn

The single eigenvalue of this Jacobian is just the entry of the Jacobian itself. Thus
=

f
(x ).
xn

To investigate stability, we examine whether this value is inside or outside of the unit circle.
For a one-dimensional setting the unit circle is merely the set 1, 1. Thus, stability requires


f

|| =
(x ) < 1.
xn
Thus, the derivative at the fixed point cannot be very large in absolute value. On the other
hand if


f

|| =
(x ) > 1,
xn
we know the system is unstable. Lastly, if
=

f
f
(x ) = 1, or =
(x ) = 1,
xn
xn

then the fixed point is linearly stable, and the effect of the nonlinear terms may be important.
In addition, we also have that the sign of the eigenvalue is important for the behavior
near the fixed point: if the eigenvalue is negative, then the perturbations will oscillate around
the fixed point. If the eigenvalue is positive, the perturbations will remain on one side of the
fixed point.

134

CHAPTER 10. DIFFERENCE EQUATIONS

y=x
y=f(x)

x*

x
x*
Figure 10.2: If the function defining the map intersects the first bisectrix, we have a fixed
point.

10.3

Poincar
e sections

We have already discussed some reasons why we might care about difference equations in
the beginning of this course. Lets reiterate some of these, and add some new ones.
1. We know that differential equations have to be pretty high dimensional in order for
there to be even the possibility of chaos: one-dimensional systems dont even have oscillations. Two-dimensional systems can have oscillations and limit cycles, but nothing
more complicated than that, as concluded from the Poincare-Bendixson theorem. So,
maybe difference equations provide us with a more convenient playground to examine
chaos?
2. Discretizations of differential equations using numerical methods give rise to difference
equations.
3. Another way to generate difference equations from differential equations is by using
Poincare maps, as discussed in this section.

SECTIONS
10.3. POINCARE

135

Lets start with an example. Consider the system


 0
= y
,
y 0 = 2 y sin
where [0, 2) and y R. Thus our phase space is an infinite cylinder. Well draw it as
a rectangle, with left and right sides identified, and the top and bottom sides going off to
infinity. Lets look for fixed points: we need
y = 0, sin = 2,
which has no solutions. Thus there are no fixed points. Well show next that a closed orbit
does exist. Consider the null-cline
y = 2 sin ,
on which y 0 = 0. It is drawn in the phase portrait in Figure 10.3. Above this null-cline
y 0 < 0, below it y 0 > 0. Lets focus our attention to the region in between y = 1/2 and
y = 4. Note that all tangent vectors point to the inside of this region, so we know by the
Poincare-Bendixson theorem there is at least one closed orbit. Well now come up with a
second way to come to this conclusion, which introduces Poincare maps.
Take a trajectory starting at = 0, y = y0 (1/2, 4). We know that this trajectory
never leaves the region S. After the orbit has gone around the cylinder once, we obtain itll
be at = 0, y = y1 . This defines a map
y0 y1 .
Similarly, after n revolutions,
yn yn+1 .
We define this map to be the Poincare map:
yn+1 = P (yn ).
The Poincare map allows us to slice the vector field of a dynamical system to obtain a
lower dimensional phase space. In this lower dimensional phase space the dynamics is now
given by a discrete-time map, instead of by a continuous-time map. Thus, we are now dealing
with a difference equation. In general, a Poincare map is obtained by slicing the flow of a
dynamical system with a lower-dimensional set (our new phase space) and tracking when an
orbit returns to this set.
Back to our example. If we can establish that the Poincare map P has a fixed point y,
in other words,
y = P (
y ),

136

CHAPTER 10. DIFFERENCE EQUATIONS

Figure 10.3: A first stab at the phase portrait on the cylinder, with the null-cline indicated.
then this fixed point corresponds to a periodic orbit of the underlying system. In terms of
graphs, this means that P (y) intersects the first bisectrix, as shown in Figure 10.4. Lets see
what we can do with this. We know that
P (1/2) > 1/2,
and
P (4) < 4,
by the vectorfield. Also, P (y) is continuous, since solutions of differential equations depend
continuously on their initial conditions. Thus, the plot of P (y) looks as shown in Figure 10.4.
Thus, by the mean value theorem there exists a value y such that y = P (
y ), which gives a
fixed point of the Poincare map, or a periodic solution of our original system.
We now have developed a bunch of tools to study chaotic systems. Lets go!

SECTIONS
10.3. POINCARE

137

4 P(y)

1/2

y
1/2

y^

Figure 10.4: A fixed point of the Poincare map P (y).

138

CHAPTER 10. DIFFERENCE EQUATIONS

Chapter 11
The logistic map
The logistic map is given by
xn+1 = Rxn (1 xn ),
in analogy with the logistic differential equation. The map depends on a parameter R > 0.
A lot of what well do in this chapter is examine the different dynamics the logistic map may
exhibit, depending on the value of R. Thus, well investigate bifurcations in maps. Concisely,
heres the plan1 : lets find out if there are any fixed points or any periodic orbits
of the logistic map, for a given value of R. If we can say something about their
stability, thatd be good too.

11.1

Fixed points and their stability

A fixed point has to satisfy


x = Rx(1 x),
which has two solutions:
x=0
or
1
1
R1
x=1 =
.
R
R
R
The plot of these two curves of fixed points is shown in Figure 11.1
Lets examine the stability of these fixed points. We have
1 = R(1 x) 1 x =

f 0 (x) = R(1 x) + Rx(1) = R(1 2x).


1

It is a good plan!

139

140

CHAPTER 11. THE LOGISTIC MAP

Figure 11.1: The fixed points of the logistic map, for different R.
1. For x = 0 we have = f 0 (0) = R. Thus, in order for the fixed point at x = 0 to be
stable, we need |R| < 1, or, since R is positive, R < 1. Thus, for R < 1, the fixed
point at x = 0 is stable. For x > 1, the fixed point loses its stability, and it becomes
unstable.
2. For x = 1 1/R we have = f 0 (1 1/R) = R(1 2 + 2/R) = 2 R. If R < 1 then
lambda > 1 and the fixed point at x = 1 1/R is unstable. On the other hand, if
R > 1 and R < 3 then || < 1 and the fixed point at x = 1 1/R is stable. Lastly, for
R > 3 the fixed point at x = 1 1/R is unstable.
A summary of these findings is presented in the bifurcation plot Figure 11.2. It is clear
that the fixed points undergo a transcritical bifurcation at R = 1. Then something else
happens at R = 3, but it is not entirely clear what. There are no other fixed points for this
fixed point to interact with, so how is the fixed point changing stability at this value of R?

11.2. VISUALIZING THE LOGISTIC MAP

141

Figure 11.2: The fixed points of the logistic map and their stability, for different R.

11.2

Visualizing the logistic map

In order to answer questions like the one above, lets try to visualize the behavior of the
logistic map, for a variety of R values. Heres how one typically goes about this.
1. Pick an R value.
2. For this R value, pick an initial condition for x, chosen at random in (0, 1).
3. Iterate this initial condition forward N times, where N should be large, say 1000 or
more.
4. Plot all these N values, ignoring the first M , where M is a fraction of N . For instance
M = N/10.
5. Repeat for a different R value. You could also choose to repeat for different initial
conditions, but this is usually not done.
A little maple computer code to generate such a plot is included below.

> restart;
> # initialize
> f:=x->R*x*(1-x);

142

CHAPTER 11. THE LOGISTIC MAP

>
>
>
>
>
>

Rmin:=3.8:
Rmax:=4:
x0:=0.34567:
N:=400:
M:=round(N/2):
Rs:=200:

>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>

# compute values
Rvals:=map(evalf,[seq(Rmin+k*(Rmax-Rmin)/Rs,k=0..Rs)]):
punten:=[]:
for R in Rvals do
print(R);
x:=x0:
Rpunten:=[]:
for k from 1 to M do
x:=f(x):
end do:
for k from M+1 to N do
x:=f(x):
Rpunten:=[op(Rpunten),[R,x]]:
end do:
punten:=[op(punten),op(Rpunten)]:
end do:

> # plot points


> with(plots):
> listplot(punten,style=point);

A plot showing the result for R between 0 and 4 is shown in Figure 11.3. A few observations are in order. Since were cutting out the initial M points, and only plotting whats
after that, were only observing things that are stable. In this plot, we used 400 values of R,
and 400 iterations, cutting out the first 200 of these. The resulting plot is interesting. Lets
discuss some of the things we see.
(a) This is the stable fixed point x = 0, for R [0, 1).
(b) Here the transcritical bifurcation takes place, and the fixed point x = 1 1/R becomes
stable.
(c) Now the fixed point x = 1 1/R is stable, for R (1, 3).
(d) Here another bifurcation takes place, but were not quite sure yet what it is.

11.3. PERIODIC SOLUTIONS OF DIFFERENCE EQUATIONS

143

Figure 11.3: The bifurcation plot for the logistic map, for different values of R. The different
indicated points are discussed in the main text.
(e) A lot of other stuff happens for R > 3, but itd be audacious to guess what it is.
Whatever it is, its complicated.
Another way in which fixed points might change stability properties is by interacting with
limit cycles, as in a Hopf bifurcation. Maybe something like this is happening at R = 3.

11.3

Periodic solutions of difference equations

What do we mean by a periodic orbit of a differential equation? We mean a solution that


returns to the same point in the phase plane after some amount of time, which we call the
period. We can extend this concept to difference equations: a periodic orbit of period N is
a sequence of N points

144

CHAPTER 11. THE LOGISTIC MAP

[x0 , x1 , . . . , xN 1 ],
so that xN = f (xN 1 ) = x0 . In other words, after N iterates, were back to where we started.
As an example, consider period two orbits. These satisfy
x1 = f (x0 ),

x0 = x2 = f (x1 ),

since we need to be back to where we started after two iterations. Substituting for x1 in this
last equation, we see that period 2 orbits satisfy
x0 = f (f (x0 )),
or, a little less cumbersome,
x = f (f (x)).
Now, this is still cumbersome if we want to examine periodic orbits of larger periods:
suppose were interested in period 5. Such orbits satisfy
x = f (f (f (f (f (x))))).
OK. Thats getting silly: its hard to read, and hard to write. Lets introduce some notation2
to simplify at least the reading and writing part. We define
f n (x) = f (f (. . . f (x) . . .)),
where there are n nested f s on the right-hand side. Be careful, this is easily misinterpreted:
f n (x) 6= [f (x)]n .
Example. As an example, lets find period 2 orbits of the logistic map. We have
f (x) = Rx(1 x),
thus
f 2 (x) = f (f (x)) = R (Rx(1 x)) (1 Rx(1 x)) .
Thus we need to solve
x = R (Rx(1 x)) (1 Rx(1 x)) .
This is a quartic equation in x3 !
As a general comment: whenever were looking for period 2 orbits, there will be some
solutions that were not interested in. Indeed, all fixed points (which may be thought of as
2
3

Mathematics is all about Notation, notation, notation!


(This is a footnote, not a power!) Beuh.

11.3. PERIODIC SOLUTIONS OF DIFFERENCE EQUATIONS

145

period 1 orbits) are also period 2 orbits, but they are of little interest to us, since we already
know about them. That means we can eliminate these solutions, and focus on the remaining
ones.
For this example, we have two fixed points, so after we divide these away, well be left with
a quadratic equation. Sweet, were pretty awesome at solving these! The above equation is
easily divided by x, which removes the fixed point at x = 0 as a solution. That leaves us
with the cubic equation
R (Rx(1 x)) (1 Rx(1 x)) 1 = 0.
The other factor that has to be present is
x 1 + 1/R,
because of the other fixed point. Indeed, after long division we are left with the quadratic
equation (check this!)
R2 x2 R(1 + R)x + (1 + R) = 0.
The solutions are (You know, . . . : check this!)
p
(R + 1)(R 3)
1
1

.
x= +
2 2R
2R
This formula gives rise to a period 2 orbit, when it is real. Thus we need
(R + 1)(R 3) > 0,
or, since R + 1 is always positive,
R > 3.
We see that a period 2 orbit exists when R > 3, which is exactly where our fixed point
x = 1 1/R becomes unstable!
To investigate the stability of the period 2 orbit, we examine the stability of the orbit as
a fixed point of the map
F (x) = f (f (x)).
We are interested in when F 0 (x1 ) (or F 0 (x2 )) is less than one in absolute value. We have
F 0 (x) = f 0 (f (x))f 0 (x),
by the chain rule. Since x2 = f (x1 ), x1 = f (x2 ), we have
F 0 (x1 ) = f 0 (f (x1 ))f 0 (x1 ) = f 0 (x2 )f 0 (x1 ) = F 0 (x2 ).

146

CHAPTER 11. THE LOGISTIC MAP

Thus, all we need is to evaluate f 0 (x) at the different points of the period 2 orbit, and
multiply the result. We have
f 0 (x) = R(1 2x).
Thus



p
1 p
= 1 (R + 1)(R 1),
f (x1,2 ) = R 1 1 + (R + 1)(R 3)R
R
0

and
F 0 (x1 ) = F 0 (x2 ) = f 0 (x1 )f 0 (x2 ) = R2 + 2R + 4.
When R = 3, this is equal to 1, corresponding to marginal linear stability. This is not
surprising, as this is right at the bifurcation point. As R increases to values greater than 3,
F 0 (x1 ) decreases, until it reaches -1. Once it becomes smaller than 1, the period two orbit
loses its stability. When does this happen? We need
R2 + 2R + 4 = 1 R2 2R 5 = 0 R = 1 +

6 3.449.

There is a second solution for R, but it is negative so we ignore it. Thus, for
R (3, 3.449),
the period 2 orbit is stable.
At (R, x = 11/R) = (3, 2/3) the system is said to undergo a period-doubling bifurcation:
a period 1 orbit loses its stability and a period of twice the period is created, which is stable.

It appears from Figure 11.4 that a second period-doubling bifurcation occurs a little later,
when the period 2 orbit loses stability, and an apparent period 4 orbit is created. A little
later another period-doubling bifurcation takes place, this time from period 4 to period 8,
and so on. This and so on statement is very important: it does appear that there is a
whole, infinite sequence of period doublings, and this is indeed the case. These occur faster
and faster, until finally we can only conclude that apparently the solution no longer settles
down to anything stable.

11.4

Self-similarity of the bifurcation diagram

If we enlarge various regions of the bifurcation diagram, it appears to repeat itself. This is
not what we expect from our long experience with calculus: there repeated zooming in makes
everything appear like a straight line. Here repeated zooming in, when carefully chosen, does
not alter what were looking at! Bizarre! A sequence of such plots is shown in Figure 11.5.

11.5. THE EXISTENCE OF A PERIOD 3 WINDOWS

147

Figure 11.4: The first period-doubling bifurcation at (a) and the second one, at (b).

11.5

The existence of a period 3 windows

After stretches of what we may choose to label as chaotic behavior, there appear to be
windows of R values where the behavior is regular. For instance, there appears to be a
rather large period 3 window, shown in Figure 11.6. You can also find period 5 and period
7 windows, for instance.
This period 3 window is the most noticeable. From the graph, we are lead to believe there
exists a stable period 3 orbit for these R values, which loses its stability in a period-doubling
bifurcation to a period 6 orbit, and so on. Such a period 3 orbit has to be a fixed point of
the equation
x = f (f (f (x))) = f 3 (x).
This is a eighth-order equation in x. How many solutions do we know of it? Well, theres

148

CHAPTER 11. THE LOGISTIC MAP

Figure 11.5: Six consecutive zooms of the bifurcation diagram of the logistic map.

11.5. THE EXISTENCE OF A PERIOD 3 WINDOWS

149

Figure 11.6: The period 3 window, with a hint of a period-doubling bifurcation to period 6.
two fixed points, so were left with an equation of degree six. It turns out that this equation
contains two period three orbits, one of which is unstable, and one of which is stable. This
second one is the one we see in the computer experiment.
Figure 11.7 shows the function f 3 (x) = f (f (f (x))), for three values of R. In the top
figure, R = 3.82, which is a value just before the period 3 window. We see that apart from
the two fixed points (at x = 0 and at x = 1 1/R) there are no intersection points with the
first bisectrix. But its close. Increasing R results in the peaks of the graph becoming higher
and the valleys becoming deeper. This will result in intersection points, near the regions
where the arrows are preemptively pointing. For the next panel, R = 3.835, which is in the
period 3 window. Now there are six additional intersection points. You may wish to draw
the graph yourself, to confirm the intersection points with the peak on the right4 . Three of
4

There are many things you may wish for. This one is within your power to realize!

150

CHAPTER 11. THE LOGISTIC MAP

Figure 11.7: The map f 3 (x) for parameter values near the period 3 window.

11.5. THE EXISTENCE OF A PERIOD 3 WINDOWS

151

these six intersection points have small tangents to them. The stability of the period 3 orbit
is determined by
[f 3 (x1 )]0 = [f (f (f (x1 )))]0
= f 0 (f (f (x1 )))f 0 (f (x1 ))f 0 (x1 )
= f 0 (f (x2 ))f 0 (x2 )f 0 (x1 )
= f 0 (x3 )f 0 (x2 )f 0 (x1 ).
Thus if we multiply three tangent slopes that are close to zero (i.e., pretty flat tangents),
this product will be small and the orbit should be stable. For the other orbit, the points have
pretty steep tangents, and the orbit is unstable. If we increase R even more, all tangents
become steeper, and the originally stable orbit becomes unstable. This has happened at
R = 3.84, in the lower panel.
There is a famous theorem due to Sarkovskii and Yorke & Li. It is often stated as
Period three implies chaos.
Heres the precise statement of the theorem. Suppose that we have a map f (x), defined
on [0, 1] [0, 1]. Such a map is called unimodal if it is smooth (has a continuous derivative),
is concave down and has a single maximum.
Example. The logistic map
f (x) = Rx(1 x)
is unimodal. Also, the sine map
f (x) = R sin x

is unimodal.
We have the following theorem (without proof):
Theorem. Suppose f (x) is unimodal. Suppose the difference equation
xn+1 = f (xn )

has an unstable period three orbit. Then the difference equation is chaotic. More precisely,
it has unstable periodic orbits of any integer period.
The theorem is sometimes used for saying that the logistic map is chaotic, because it
has a period 3 window. This is incorrect. The theorem talks about a single map, not
about a family of maps, which is what we study using the bifurcation diagram. Further,
the requirement is about an unstable period 3 orbit, whereas what we see in the period 3
window is a stable orbit. However, there is also an unstable orbit there, for those values of
R in the period 3 window and beyond. For those values of R, the theorem does apply, and
the map is chaotic.

152

11.6

CHAPTER 11. THE LOGISTIC MAP

Lyapunov exponents

Which brings us to chaos. What do we mean by it? Well define it more rigorously later.
For now, let us state that one of the criteria is sensitive dependence on initial conditions,
specifically exponentially diverging dependence.
If two initial conditions are 0 apart, they will be
f (x0 + 0 ) f (x0 )
apart after one iteration. After two iterations,
f (f (x0 + 0 )) f (f (x0 )) = f 2 (x0 + 0 ) f 2 (x0 ),
and after N
f N (x0 + 0 ) f N (x0 ).
If we expect this to increase exponentially, then we should have
N

f (x0 + 0 ) f N (x0 ) |0 |eN ,
for some . Thus
N

f (x0 + 0 ) f N (x0 )
1

ln
.
N
|0 |
In the limit of an infinite number of iterations we get



1 d N
f (x0 ) ,
= lim

N N dx
where we have used the definition of the derivative as 0 . This formula can be
simplified. Note that
d N
f (x0 ) = f 0 (f N 1 (x0 ))f 0 (f N 2 (x0 )) . . . f 0 (x0 )
dx
= f 0 (xN 1 )f 0 (xN 2 ) . . . f 0 (x0 ).
Thus
PN 1
= lim

k=0

ln |f 0 (xk )|
.
N

If this limit exists, then is called the Lyapunov exponent of the orbit starting at x0 . One
can show that is the same for almost all choices of the initial condition in the same basin
of attraction.

11.6. LYAPUNOV EXPONENTS

153

You see from this formula that for stable orbits < 0, since the derivative |f 0 (x)| < 1,
implying its logarithm is negative. Similarly, for unstable orbits, the Lyapunov exponent is
positive. For chaotic signals, we expect the presence of many unstable periodic orbits, thus
we may interpret a positive Lyapunov exponent as a sign of chaos.
Below is a maple code to generate pictures of the bifurcation diagram for the logistic
map, together with its Lyapunov exponent for any R. The resulting figures for two different
ranges of R values are shown in Figures 11.8 and 11.9. Indeed, we see that the Lyapunov
exponent is an excellent measuring stick for chaos.

>
>
>
>
>
>
>
>
>
>
>
>
>
>

restart;
# initialize
f:=x->R*x*(1-x);
g:=x->R*(1-2*x);
Rmin:=3.4:
Rmax:=4:
x0:=0.34567:
N:=400:
M:=round(N/2):
Rs:=400:
# compute values
Rvals:=map(evalf,[seq(Rmin+k*(Rmax-Rmin)/Rs,k=0..Rs)]):
punten:=[]:
lyap:=[]:

>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>

for R in Rvals do
print(R);
x:=x0:
lyapexp:=0:
Rpunten:=[]:
for k from 1 to M do
x:=f(x):
end do:
for k from M+1 to N do
x:=f(x):
lyapexp:=lyapexp+ln(abs(g(x)));
Rpunten:=[op(Rpunten),[R,x]]:
end do:
punten:=[op(punten),op(Rpunten)]:
lyap:=[op(lyap),[R,lyapexp/M]];
end do:
# plot points
with(plots):

154

CHAPTER 11. THE LOGISTIC MAP

Figure 11.8: The bifurcation diagram for the logistic map and its Lyapunov exponent for R
between zero and four.
> plot1:=listplot(punten,style=point, symbol=point, color=black):
> plot2:=listplot(lyap,color=red):
> display({plot1,plot2},view=[Rmin..Rmax,-1..1]);

11.7

Universality in unimodal maps

As you observe from the bifurcation diagram, the period-doubling bifurcations appear to
occur faster and faster. Is there a pattern to this? Mitchell Feigenbaum studied the ratio
between the length of successive intervals of stability for orbits of period T and orbits with
period 2T . Specifically, he studied

11.7. UNIVERSALITY IN UNIMODAL MAPS

155

Figure 11.9: The bifurcation diagram for the logistic map and its Lyapunov exponent for R
between 3.4 and four.

n
= 4.669 . . . ,
n n+1

= lim

where n = Rn+1 Rn and Rn is the R value at which the orbit of period 2n loses its stability,
and the orbit of period 2n+1 is born and is stable. So this limit exists, and is 4.669. . . . Now
what? How does this affect the price of gas? Well, he did the same calculation for other
unimodal maps, where period-doubling sequences also occur. He found the limit to be
the same! The value = 4.669 . . . appears to be a universal constant! It is now known as
the Feigenbaum constant. It should be put on in the display case next to and e, and a few
others.
In Figure 11.10, the bifurcation diagram for the sine map f (x) = R sin x is shown.
Notice its amazing structural similarity with the logistic map.

156

CHAPTER 11. THE LOGISTIC MAP

Figure 11.10: The bifurcation diagram for the sine map f (x) = R sin x.

Chapter 12
Fractals
Fractals are geometric structures with fine structure at arbitrarily small scales: no matter
how much zooming we do, we always see more features. Often fractals have some degree of
self-similarity: the new features that appear upon zooming in are partially or wholly repetitions of the original structure. An example of this is what weve seen with the bifurcation
diagram of the logistic map: successive zooms revealed structures that looked very much like
the original structure.
A lot of the structures observed in chaotic dynamics are fractal, so well try to understand
fractals a little better.

12.1

Countable vs. uncountable sets

A set with an infinite number of elements is countable if its elements can be put in one-to-one
correspondence with the natural numbers. Otherwise, the set is uncountable.
Example. The natural numbers are countable. Duh.

Example. The integers are countable. Indeed, we can line them up as


0, 1, 1, 2, 2, 3, 3, . . . .

Example. Perhaps more surprising: the rational numbers are countable. To prove this,
well line them up, just like we lined up the integers. Indeed, we can do as in Figure 12.1.
This figure only includes the positive rational numbers, but if these are countable, than so
are all rationals. Actually, the figure includes more than all rationals, as it includes numbers
like 2/2, which are equal to rational numbers which already occured in the sequence earlier.
So, we should throw these out of the sequence, which we can do.

Example. The real numbers are not countable. This is our first example of an uncountable set. To prove this, we use contradiction. We assume the real numbers between 0 and 1
157

158

CHAPTER 12. FRACTALS

1/1

1/2

1/3

2/1

2/2

2/3

3/1

3/2

1/4

...
Figure 12.1: Counting the positive rational numbers.
are countable. This will lead to a contradiction, thus the real numbers between 0 and 1 are
not countable.
Assume the reals between 0 and 1 are countable. Then we can make an infinite list
containing all of them. Lets use a decimal representation to list them:

x1 = 0.x11 x12 x13 . . .


x2 = 0.x21 x22 x23 . . .
x3 = 0.x31 x32 x33 . . .
..
.
where all xij are one of 0,1,2,3,4,5,6,7,8,9. We now construct
y = 0.
x11 x22 x33 . . . .
Here the bar over the digit means that we can choose any digit except the one underneath
it. By construction y is not on our list. This is a contradictions, as the list is supposed to
contain all real numbers between 0 and 1. Thus the reals are uncountable.

12.2. CANTOR SETS

159

1/3

2/3

Figure 12.2: The first few steps in the construction of the middle-1/3 Cantor set C.

12.2

Cantor sets

Cantor sets are intimately related with the dynamics of many chaotic systems, as well see
later. We will focus our attention on the so-called middle-1/3 Cantor set C. Heres how it
is constructed.
1. Draw the line segment from 0 to 1.
2. Remove the middle 1/3. This leaves you with two line segments: one from 0 to 1/3
and one from 2/3 to 1.
3. Remove the middle 1/3 of each segment. That leaves you with 4 segments: one from
0 to 1/9, one from 2/9 to 3/9, one from 6/9 to 7/9, and one from 8/9 to 9/9.
4. Keep on repeating this, removing the middle 1/3 of each remaining segment at each
step. The limit of this process is called the middle-1/3 Cantor set C. The process is
illustrated in Figure 12.2.
A few properties of the Cantor set C are immediate:
C is fractal: it has structure at every scale.
C is self-similar: successive zooms on any given part look just like the original set.
Well now get to some less obvious properties.
The total size of the Cantor set C is zero. This is easy to show: at step one, the
total length is 1. At step 2 it is 1-1/3 = 2/3. We subtract 1/3 of the total length at every
step. Thus at step 3, the length is (2/3)2 , and at step N it is (2/3)N . As N this goes
to zero. Thus the total cumulative length of the Cantor set is zero.
The Cantor set is uncountable. Every point in the Cantor set can be assigned an
address based on where it is. With each such point we associate an address of the form
0.x1 x2 x3 . . . ,

160

CHAPTER 12. FRACTALS

where xj {0, 1}. Here x1 is 0 if the point is in the left 1/3, or 1 if its in the right 1/3.
Next, x2 is zero if is on the left 1/3 of the previous interval, one if it is on the right 1/3 of
the previous interval, and so on. For instance, the point with address
0.111001010 . . .
is the point in C obtained by picking the right interval first, then the right interval again,
and again. Next we pick the left interval, and again. Next is the right interval, followed by
the left, etc.
We see that the set of points in C corresponds to the set of all points with decimal
expansions with all 0s and 1s. But those numbers are nothing but all numbers between 0
and 1 written in binary form. Thus this is the set of all real numbers between 0 and 1, which
we have already proven to be uncountable. This concludes the proof.

12.3

Dimension

We all have an intuitive understanding of what we mean by dimension: the space we live in
has three (spatial) dimensions. A curve is one dimensional, a surface is two dimensional, etc.
Suppose we dont want to relate to our intuition, and we want to compute the dimension of
an object. How would we go about it?
Lets start with curves. The reason a curve is one dimensional is that, starting from a
fixed point, we only have to specify one number to specify where something is. That one
number is the arc length from our starting point. Does this always work?
Example. Consider the Koch curve. This curve is constructed as follows.
1. S1 is the line segment from 0 to 1.
2. S2 is S1 with the middle-1/3 line segment replaced by an upward equilateral triangle,
as shown in Figure 12.3.
3. S3 is S2 with all middle-1/3 line segments replaced by equilateral triangles pointing
away from the bottom of the curve, see Figure 12.3.
4. This process is repeated ad infinitum. The limit curve is the Koch Curve.
Clearly, the Koch curve is fractal, and self-similar. Lets calculate the arc length of the
Koch curve. Denoting the arc length of Sk by sk , we have that
s1 = 1
4
4
s2 = s1 =
3
3
 2
4
4
s3 = s2 =
3
3
...

12.3. DIMENSION

161

S1

S2

S3
Figure 12.3: The construction of the Koch curve.
In general we have that
 k
4
sk =
3

lim sk = .

Thus the arc length of the Koch curve is infinite! Due to the self-similarity, the same is true
for any part of the Koch curve. Any point on the Koch curve is infinitely far away from any
other point! Thus it does not suffice to specify one point to tell where we are. Thus, perhaps
the Koch curve is not one dimensional. . . . But surely its not two dimensional? Could it
be. . . ?

There are several ways of calculating the dimension of weird sets like these. Lets discuss
a few.

12.3.1

The Similarity dimension

Suppose that a self-similar set consists of M copies of itself scaled down by a factor of R.
We define the similarity dimension of this set as

162

CHAPTER 12. FRACTALS

d=

ln M
.
ln R

Alternatively, this states that


M = Rd ,
which appears to agree with our intuition. Lets do some examples.
Example. Consider a straight-line piece. If we cut it in half, we have two equal pieces
that look identical to the original. Thus here M = 2 and R = 2. In general, cutting it in K
pieces, we have M = K and R = K. Thus
d=

ln K
= 1,
ln K

as it should be.

Example. Consider a square. If we cut it in K 2 equal pieces, we have M = K 2 and


R = K. Thus
2 ln K
ln K 2
=
= 2,
d=
ln K
ln K

and all is as it should be.

Example. Consider a cube. If we cut it in K 3 equal pieces, we have M = K 3 and


R = K. Thus
ln K 3
3 ln K
d=
=
= 3,
ln K
ln K

and all is still as it should be.

Example. And now for something more interesting. Consider the middle-1/3 cantor
set. We have M = 2 and R = 3. Thus
d=
which is painful on the brain.

ln 2
0.63 . . . ,
ln 3

Example. And now for the big one. Consider the Koch curve. We have M = 4 and
R = 3. Thus
ln 4
d=
1.26 . . . ,
ln 3
which is disturbing.

12.3. DIMENSION

12.3.2

163

The Box-counting dimension

More popular1 , because more practical, is the the box-counting dimension of a set S. Suppose
S is a subset of RD . That means that any reasonable definition of the dimension should result
in a number less than or equal to D.
Let N () be the minimal number of D-dimensional cubes of side  that we need to
completely cover S. The box-counting dimension of S is defined to be
ln N ()
,
0 ln(1/)

d = lim

if the limit exists.


You should check that this definition agrees with your intuition for the simple cases where
we have intuition. It also agrees with the similarity dimension for the cases we just discussed.
It should be noted that different definitions might give different results in some cases.

As popular as these things get. Were still talking about math, after all. . .

164

CHAPTER 12. FRACTALS

Chapter 13
The Lorenz equations
The Lorenz equations are the rather inconspicuous-looking equations
0
x = (y x)
y 0 = Rx y xz ,
0
z = xy bz
where , R and b are positive parameters. This system was derived after many approximations from a climate model. There are only two nonlinear terms, and they are only quadratic.
Thus the Lorenz equations dont appear too horrible. The story of how Lorenz started the
study of these equations is fascinating and very readable. You should look it up.
A typical solution of the Lorenz equation is shown in Figure 13.1. Were seeing a pattern
that is close to being periodic, but never quite repeats. It appears not predictable at all. Of
course it is, since were solving a differential equation.
As usual, we gain more insight by plotting the trajectory in the phase space R3 . This plot
is shown in Figure 13.2. We see that the orbit is quickly attracted to a very small region of
phase space, where the dynamics seems to take place on something resembling a two-winged
butterfly. Careful observations lead Lorenz to the conclusion that the dynamics on this set
shows sensitive dependence on initial conditions.
This motivates the following definition of chaos:
Definition. (Chaotic dynamics) The dynamics on a compact set S is chaotic provided
that (i) it depends sensitively on initial conditions, and (ii) it is transitive on the set S.
The first property means that if we take two trajectories starting close together, they
will eventually diverge, and it becomes practically impossible to predict where a given initial
condition will end up. In a system that exhibits sensitive dependence on initial conditions,
we can do short-term prediction, but it is a fools game to try to predict long term. The
second property means that if we wait long enough, any trajectory on S will eventually come
arbitrarily close to any point of S. It is clear that this is a necessary condition for chaos: far
away from the butterfly the dynamics is not chaotic, as well prove shortly. We can easily
predict what happens when we start far from the butterfly: we end up on the butterfly. If
we restrict ourselves to the butterfly, prediction is no longer a trivial matter.
165

166

CHAPTER 13. THE LORENZ EQUATIONS

Figure 13.1: A typical solution of the Lorenz equations.


The butterfly-shaped set that the trajectories go to in the Lorenz system is called the
Lorenz attractor. It is our first example of a strange attractor. Thus, on the Lorenz attractor,
the Lorenz system is chaotic.
Using the techniques that weve seen thus far, what can be say about the Lorenz system?

13.1

Volume contraction

Suppose we have a three-dimensional system, which well write symbolically as


x0 = f (x).
How does a blob1 of initial conditions move? Lets pick a volume (our blob) V (t) with
boundary surface S(t). The situation is illustrated in Figure 13.3. The motion of every
single point x inside of V (t) is governed by x0 = f (x). At t + dt, we have a slightly deformed
blob at V (t + dt), with a slightly different bounding surface S(t + dt). The volume change
through a little patch of the surface dA is given by
(f n)dt dA.
Here f n is the velocity of the flow normal to the surface S(t). We only care about the
normal velocity since the tangential velocity will not contribute to the change of the volume.
Then (f n)dt is a normal distance. Thus the formula we just write down does indeed have
units of volume. Taking into account contributions from the entire blob, we get
1

Technical term.

13.1. VOLUME CONTRACTION

167

Figure 13.2: A phase space plot of the same solution of the Lorenz equations.

Z
(f n)dt dA,

V (t + dt) = V (t) +
S

or
V (t + dt) V (t)
=
dt

Z
(f n) dA,
S

which gives
V (t + dt) V (t)
V (t) = lim
=
dt0
dt
0

Z
f dV,
V

where we have used the divergence theorem. Thus the volume changes at a rate given by
Z
0
V (t) =
f dV.
V

Applying this to Lorenz system we have


f = 1 b = ( + 1 + b) < 0.
Using our result,
0

V =

( + 1 + b)dV = ( + 1 + b)V.
V

We can easily solve this equation, to get

168

CHAPTER 13. THE LORENZ EQUATIONS

n
f(x)

V(t)

S(t)
Figure 13.3: A volume of initial conditions at time t

V = V0 e(+1+b)t .
We see that the volume of a blob of initial conditions gets smaller exponentially: any initial
condition is sucked into the butterfly exponentially fast, after which the solution moves
around there forever. This leads us to believe that the Lorenz attractor should be less than
three dimensional. Indeed, if it was three dimensional, it would have a volume associated
with it, and this volume would have to decrease exponentially. We see that this does not
happen.

13.2

The Lorenz map

In order to look at a lower dimensional set-up Lorenz took snapshots of his system, kind of
in a Poincare section kind of way. He considered the z signal with certain initial conditions.

13.2. THE LORENZ MAP

169

Figure 13.4: A typical z signal for the Lorenz system. Two successive maxima are indicated.
He then noted the height of all the maxima of this signal, constructing a long sequence
z1 , z2 , z3 , . . . .
He then plotted the points (zn , zn+1 ). In other words, he plotted the height of the n + 1-th
peak vs. the height of the n-th peak. This resulted in a figure very much like Figure 13.5.
We should be honest2 : it appears from numerical experiments that there is some thickness
to this cusp-like curve. But for simplicity, well treat it as a single curve. What can we say
about it?
Well, for starters, it appears that this is not some random collection of points. There
appears to be a relationship
zn+1 = f (zn ),
so that now were down to studying a one-dimensional map, with implications for the Lorenz
system and its attractor. The mere existence of such a relationship is bizarre: it allows us
to predict the next amplitude from the previous one! Also, there are two branches to the
graph. The left one is always above the first bisectrix, thus f 0 (z) > 1 there. The right half
is the mirror image of the left half, so there f 0 (z) < 1. Thus, for all z values we have
|f 0 (z)| > 1.
This implies immediately that the one fixed point we see exists is an unstable one. Next,
we use this to show that all periodic orbits of the Lorenz system are unstable. Indeed, if a
2

Good idea, in general. See, theres stuff you get to take away from this course beyond math!

170

CHAPTER 13. THE LORENZ EQUATIONS

z n+1

zn
Figure 13.5: The Lorenz map and its fixed point.
periodic orbit of period N exists, it satisfies
f N (z1 ) = z1 .
Its stability is governed by
d N
f (z1 ) = f 0 (z1 )f 0 (z2 ) . . . f 0 (zN ).
dz
Thus


d N

f (z1 ) = |f 0 (z1 )||f 0 (z2 )| . . . |f 0 (zN )| > 1,
dz

and all periodic orbits are unstable.

13.3. THE BOX-COUNTING DIMENSION OF THE LORENZ ATTRACTOR

13.3

171

The box-counting dimension of the Lorenz attractor

Numerically, one finds that the dimension of the Lorenz attractor is


d 2.05.
This is consistent with our observations. The set is almost two-dimensional, but not quite.
Different measures of dimension come up with slightly different numbers, but all seem to
agree that the dimension is greater than, but close to, two.
In the next chapter, well define strange attractors properly, and well investigate some
in more detail.

172

CHAPTER 13. THE LORENZ EQUATIONS

Chapter 14
Strange attractors
Now we have seen some examples of strange attractors, either in dynamical systems (continuous time), or in difference systems (discrete time). How can we understand the fundamentals
of what underlies or causes a strange attractor? A lot of the fundamental work in this area
is due to Steven Smale, who has one of the most fundamental objects in all of dynamical
systems named after him, the Smale horseshoe. We wont fully discuss the Smale horseshoe
(see AMATH575), but we will study the simple and fundamental process that causes it.

14.1

Stretching and folding

Almost all strange attractors have built into them the stretching and folding process. It is
schematically illustrated in Figure 14.1. The new stretched and folded object could have the
same area as the original one, but that is not required.
In itself, the stretching and folding process is not chaotic. What causes it to be chaotic
is its repeated application, as shown in Figure 14.2.
Because of the stretching, initial conditions are separating exponentially fast. The folding
is then causing mixing in the phase space. Note that a vertical cross section of the limit set
might resemble a Cantor set.

14.2

Strange attractors: definition

Before we show the effect of stretching and folding in an actual example, lets define what
we mean by a strange attractor.
Definition. The set S is a strange attractor for the system x0 = f (x) or xn+1 = f (xn )
if (a) S is invariant under the dynamics, (b) there is an open set A containing S such that
any element of A converges to S under the dynamics. The set A is called a trapping region.
Lastly, (c) S is the smallest set with the properties (a) and (b).
It should be noted that under this rather broad definition, both stable fixed points and
limit cycles are considered strange attractors. Now, clearly, theyre not so strange. Lets
173

174

CHAPTER 14. STRANGE ATTRACTORS

Stretching

Folding

Figure 14.1: The stretching and folding process.


move on to the example.

14.3

The Bakers map

As an explicit example, lets consider the Bakers map, given by



xn+1 = 2xn ifxn [0, 1/2); 2xn 1 ifxn [1/2, 1]
yn+1 = ayn ifxn [0, 1/2); ayn + 1/2 ifxn [1/2, 1].
Lets see what this map does to the unit square (x, y) [0, 1] [0, 1], for a < 1/2. It consists
of the composition of two simpler maps: (1) and (2), as follows. The map (1) takes the unit
square, squashes it to height a, and length 2. Using equations,
(xn , yn ) (2xn , ayn ).
The map (2) takes the resulting strip, leaves the first half of it, and puts the second half 1/2
above it:
(xn , yn ) (xn 1, yn + 1/2).
Both maps and their composition are illustrated in Figure 14.3.
Lets construct the invariant set of the Bakers map. Well do this graphically, in Figure 14.4. We see that in the limit we get a Cantor line set. This is a good candidate for our
strange attractor. It is definitely an invariant set, and by construction it is stable, as any
point gets squeezed closer and closer to it.
Lets calculate the box-counting dimension of this strange attractor: we have
ln N ()
,
0 ln(1/)

d = lim

14.3. THE BAKERS MAP

175

(1)

(2)

(3)

Figure 14.2: The first three steps of the repeated application of the stretching and folding
process.

176

CHAPTER 14. STRANGE ATTRACTORS

1/2
a
0

1/2

(1)
(2)

a
x
0

Figure 14.3: The action of the Bakers map on the unit square.
where we are using N () boxes of size . Lets do this step-by-step. At the k-th step, we
need boxes of height ak . How many of these boxes do we need? There are 2k lines, and to
cover one line we need 1/ak boxes. Thus, if  = ak , then
N () = 2k ak .
Thus,
ln(2k ak )
k ln(1/ak )
k ln(2/a)
= lim
k k ln(1/a)
ln 2 ln a
= lim
k
ln a
ln(1/2)
=1+
.
ln a

d = lim


14.4. THE HENON
MAP

177

Figure 14.4: Constructing the invariant set of the Bakers map.


Note that as a 1/2 the dimension d 2, which we should expect. In summary, we
have found that the limit invariant set for the Bakers map is a strange attractor. The line
Cantor set clearly satisfies the defining properties for a strange attractor, and the non-integer
dimension even allows us to call it strange in every sense of the word!

14.4

The H
enon map

A second example is presented by the Henon map:



xn+1 = yn + 1 ax2n
,
yn+1 = bxn
where a and b are real parameters.
This map may be interpreted as the composition of three different maps: first
(x, y) (x, 1 + y ax2 ).
This map bends a strip around the x axis to a parabolic profile, not altering the x-coordinate
of any point. This accomplishes both a stretch (since parabolas increase quadratically, as
opposed to linearly), and a fold. The horizontal strip now looks like a boomerang, symmetric
with respect to the vertical axis. Next,

178

CHAPTER 14. STRANGE ATTRACTORS


y

y
(1)

(2)

(3)

Figure 14.5: The different steps making up the Henon map.

(x, y) (bx, y),


which squeezes the boomerang along the x-axis. Lastly,
(x, y) (y, x),
which switches the roles of x and y so that now the boomerang is symmetric with respect
to the horizontal axis. From the original horizontal strip to the final boomerang, we have
accomplished both a stretching a folding. This is illustrated in Figure 14.5.
A few more properties:
1. The Henon map is invertible. Indeed, its inverse is given by


xn = yn+1 /b
.
2
yn = xn+1 1 + ayn+1
/b2


14.4. THE HENON
MAP

179

Figure 14.6: The strange attractor for the Henon map and a few zooms of it. The decrease
in the density of points in the zooms is due to the limited number of points plotted.
This is in contrast with the example of the logistic map, which is not invertible. So,
in the case of the Henon map, we can always return to from where we started. That
information is never lost.
2. The Henon map is a contraction (meaning the area decreases with every step) if b
(1, 1). Indeed, the Jacobian of the map is given by J = b.
3. The Henon map has a fractal strange attractor. It is shown in Figure 14.6.