Lecture 18: Nonlinearity & Chaos
▯ relevant reading: these notes and python programs are your main re-
source. For further reading, see BG: parts of chapters 1-4. Or for a
brief chapter, I recommend Chapter 12 of \Classical Mechanics" by
Taylor. Finally, going through Tutorial 9 is recommended if you want
some practice with the concepts discussed.
Maps as chaotic systems
▯ Even though the damped driven pendulum (DDP) is a physically \sim-
ple" system (i.e. the equations aren’t that complicated), we can see
chaotic behaviour in even simpler mathematical systems.
▯ To understand chaos at a more basic level, we turn to di▯erence equa-
tions. Di▯erence equations are not continuous equations. They tell you
the value of a variable in a sequence based on the values of the variable
earlier in the sequence.
▯ A famous di▯erence equation is the logistic map:
xn+1 = ▯x n1 ▯ x n; where ▯ is some constant.
▯ If you know the initial value x , this equation can then give you x
which you can then use to get x2and so on. So this equation gives you
a sequence of x values. I should note that for the logistic map, you
restrict starting values of x between 0 and 1. (The logistic map is more
than just math, it is an equation used in population dynamics).
▯ Its called a map because you essentially ‘map’ a point based on the
value from the previous point.
▯ You’ve actually used di▯erence equations already. Remember our for-
mula for numerical integration in python:
x[i + 1] = x[i] + v[i]dt
This has exactly the form of a di▯erence equation. Basically, any dif-
ferential equation can be represented by a di▯erence equation which is
why they are relevant for physics.
1 ▯ Another di▯erence equation (or map) we’ve encountered (although not
stated as such) is a Poincare section. Remember Poincare sections plot
the phase space (e.g. ▯ and ▯ values) at speci▯c times (multiples of the
driving frequency). This can be represented in a 2D map like:
▯n+1 = G (1 ;n )n ▯ _n+1 = G (2 ;n )n
where G a1d G are 2unctions that give you the new point’s location
from the old point’s location.
▯ Back to the logistic map. This is one of the most standard maps you
will see in any Chaos book, its relatively easy to understand so its even
found in ‘general audience’ chaos books like James Gleick’s book. Here
is a graph of it (made from python program logisticmap plot.py
with ▯ = 2:5:
The parabolic curve is the graph of ▯▯x▯(1▯x), but now think about
what the axes represent. The horizontal axis is the value of x and the
vertical axis is the value of xn+1 .
2 ▯ Just like in our ODEs for the damped double pendulum, we are inter-
ested in the evolution of this system (i.e. what are the values of xn+1
for large n? Are there any \stable ▯xed points" (i.e. \attractors"). Are
any of them \strange attractors"? To ▯nd the attractors we can apply
a nice geometric method.
▯ The logistic map (and other maps) can be considered as a set of in-
1. For value x, calculate y = ▯ ▯ x ▯ (1 ▯ x)
2. Set x=y
▯ This process can be envisioned graphically if we plot both the logistic
equation and the line y = x on the same graph. It looks like this:
▯ Now, lets start at a particular value of x and watch the evolution of the
x no see where the map takes us. This can be done with the vpython
program logisticmap_webdiagram.py. Essentially I am going to use
3 lines to represent the instructions listed above. I will pick a starting
point on the x anis, then move vertically up to the logistic curve to
▯nd my x n+1 value (this is instruction 1). Then I will set this y value
to my x value by moving horizontally from my point to the line y = x.
Then I will repeat the process.
▯ < 1:
▯ I will start by considering a ▯ value less than one, say ▯ = 0:9. Start
with any initial x 0alue between 0 and 1 (say x = 009), and run the
program. You will ▯nd that x always heads to the origin. The origin is
a \stable ▯xed point" (like the vallleys in potential plots) in this case.
▯ = 2:5:
▯ Lets increase ▯ to 2.5. Again, start with any x value between 0 and
run program. You will see that now x heads to the intersection of the
y = x and y = ▯x(1 ▯ x) curves. This is true for all initial x values
EXCEPT for x = 0.0Then you stay at 0. In this case x = 0 is an
\unstable ▯xed point" (like the hills in potential plots) and the other
x value is a \stable ▯xed point". You can solve for the location of the
intersection between y = x and y = ▯x(1▯x) by setting the right hand
sides of the equations equal to each other. You will ▯nd that the stable
▯xed point occurs at x = 1 ▯ 1=▯.
4 ▯ At this point we have found that for ▯ < 1 we have a single stable ▯xed
point (i.e. a 1-cycle attractor). At ▯ = 1 the stable ▯xed point changes
to x = 1 ▯ 1=▯, but it is still a 1-cycle attractor. We are calling them
\cycle attractors" because they are maps, and we are treating them like
we would the Poincare sections from the last lecture. What happens
as we keep increasing ▯?
▯ = 3:3:
▯ As we start increasing ▯ values further, we can ▯nd some interest-
ing things happen to our ▯xed point. Eve