The Math Forum

Ask Dr. Math - Questions and Answers from our Archives
Associated Topics || Dr. Math Home || Search Dr. Math

Lorenz Equations

Date: 12/25/2002 at 19:20:11
From: John
Subject: Lorenz equations

I don't understand how to plot numbers in Lorenz equations in order to 
get points I could plot. How do Lorenz equations work, and how do they 
give you numbers to create the Lorenz attractor?

I don't understand how the equations work. What does d stand for?

These are the equations:
dx/dt = sigma (y-x) 
dy/dt = rho x - y - xz
dz/dt = xy - beta z

sigma = 10.0, rho = 28.0, beta = 2.6667.

Date: 12/26/2002 at 04:27:31
From: Doctor Pete
Subject: Re: Lorenz equations

Hi John,

The Lorenz equations are actually a system of nonlinear differential 
equations. The significance of these equations, which were discovered 
by Edward Lorenz back in the 60s, is that relatively simple systems 
such as these could exhibit rather complex (specifically, chaotic) 
behavior. The chaotic aspect of this system demonstrates that, despite 
being given the initial conditions to any arbitrary degree of 
accuracy, one cannot predict a sufficiently advanced state of the 
system. In other words, the system has built into itself the property 
of amplifying small perturbations until they become so significant 
they affect the accuracy of the results.

For some years after Lorenz published his paper, mathematicians and 
physicists did not believe such behavior was even possible at all -
and even for those who thought otherwise, conventional wisdom 
suggested that an extremely complex model would be required.

Lorenz, a meteorologist, made his discovery by observing weather 
phenomena - in particular, convection of fluids (and to a weatherman, 
the "fluid" he's most interested in is air). He took various 
mathematical models of fluid convection and simplified them into 
a system of differential equations that basically led him to the 
now-famous Lorenz equations. 

This stripped-down system doesn't really model any real-world 
situations to a degree that would interest an applied scientist, but 
Lorenz wasn't concerned with modeling; rather, he wanted to examine 
what he felt were the fundamental, intrinsic properties of such 
nonlinear systems. He was more interested in the complexity of 
behavior than in how this behavior might translate to real-world 

That said, it took years for his work to receive the attention it so 
well deserved. Many colleagues and peers initially either (1) refused 
to consider his work because, being interested in how mathematics 
models the world around them, they gave no thought to abstract models 
that "don't behave anything like real weather"; or (2) did not 
believe such behavior was indeed exhibited by these equations, and 
attributed the results to computational errors.

Well, nowadays every mathematician and scientist understands and 
accepts the idea first put forth by Lorenz, that chaotic behavior can 
arise naturally from simple nonlinear systems, and by extension, 
real-world phenomena that are modeled by similar nonlinear systems.

That's the mini-history lesson, which you didn't ask for, and might 
already be aware of, but I felt I needed to provide some context so 
that you can appreciate the importance of Lorenz's discovery.

As for the mathematics of computation, we need to first discuss some 
basic notation and concepts. First, the variables x, y, and z are 
visualized as coordinates in 3-dimensional space, and to Lorenz, 
originally represented three aspects of fluid convection (e.g., 
temperature and some others that escape me at the moment). The 
variable t represents time. The parameters sigma, rho, and beta are 
values Lorenz used to vary the properties of the system; I believe one 
or more of them represent a temperature differential.

One must be very careful to always remember that x, y, and z are 
actually functions of time; that is, x = x(t), y = y(t), and z = z(t).  
These three values will change according to what time it is.

Last, the "d" is not a variable at all, but is rather a notation used 
in calculus that indicates the operation of differentiation. A 
discussion of what precisely this symbol means would take us too far 
away from what you need to understand at this stage, so let us just 
loosely describe this concept as "rate of change."  In other words, 
the symbol


means "the rate of change of the variable x, with respect to the time 
t."  The other derivatives, dy/dt, and dz/dt, are defined similarly.  
So the system of equations is called "differential equations" because 
they give the rates of change of the variables as a function of the 
values of those variables. Think about that for a moment.

So how does one plot these equations? The answer is that you can't 
really plot them exactly; in fact, if we could, they would cease to be 
interesting! The chaotic nature of the system precludes it from being 
solved in exact form. But in practical terms, we can approximate a 
solution, and as it turns out, quite well, too, because of certain 
global properties of the system. The idea is to use what is called 
Euler's first-order linear approximation method. The idea is as 
follows: we "discretize" the parameter t; that is, instead of thinking 
of time as varying continuously, we think of it as proceeding in 
discrete "steps." The smaller the steps, the more accurate the 
approximation. Then the derivative dx/dt becomes a differential, which 
is just a fraction, (delta)x/(delta)t. So for example, if (delta)t = 
0.001, we would have for the first equation

     (delta)x = (delta)t * (sigma(y(t) - x(t))),
              = 0.001 * 10 * (y(t) - x(t))
              = 0.01 (y(t) - x(t)).

What this means is that for a given value of time t, the above 
equation tells us by how much we must increment x. So the idea is to 
take the three equations and convert them to their approximations (I 
will use the capital D for "delta")

     Dx(t) = (Dt)(sigma)(y(t)-x(t)),
     Dy(t) = (Dt)(rho x(t) - y(t) - x(t)z(t))
     Dz(t) = (Dt)(x(t)y(t) - beta z(t))

and if we really want to make this as simple and concrete as possible, 
we might write it as

     x(t + 0.001) = x(t) + (0.001)(10)(y(t) - x(t)),
     y(t + 0.001) = y(t) + (0.001)(28 x(t) - y(t) - x(t)z(t))
     z(t + 0.001) = z(t) + (0.001)(x(t)y(t) - 8/3 z(t)).

How do you plot this? Simple. Let x(0) = y(0) = z(0) = 0.0001, or some 
other small (but nonzero) number. Then recursively compute successive 
values of x, y, z, for instance,

     x(0.001) = x(0) + (0.001)(10)(y(0) - x(0)),
     x(0.002) = x(0.001) + (0.001)(10)(y(0.001) - x(0.001)),

etc. Lorenz programmed this into a computer (which had less computing 
power than a modern pocket calculator), so you can do the same on a 
home computer. I don't recommend doing this by hand; in any case, it 
wouldn't be of much use, since it'd be pretty hard to plot points in 
3-dimensional space on a 2-dimensional piece of paper!

For values of Dt around 0.001, you can get a pretty good picture.  
Experiment with other values, but get too large and the approximation 
breaks down, whereas too small a value will make the plotting go very, 
very slowly.

Be careful to observe two things about this system: First, you must 
save the previous state of (x,y,z), in order to compute the next. In 
other words, you must not change any of the variables before computing 
all the new values, because as you can see from the equations, each 
new value depends on all the old values, so changing one or the other 
in mid-step will totally ruin your results. Second, x, y, and z do not 
depend on each other in a direct way, as in an equation such as
x^2 + y^2 + z^2 = 1 (which is a sphere), rather they are all functions 
of time. As such, the approximation I mentioned above gives what are 
called "parametric equations."

I hope you are able to figure things out and get a nice, successful 
plot.  There is a wealth of information on the Internet regarding the 
Lorenz equations; you may want to look at Eric Weisstein's World of 

   Lorenz Attractor 

to see some heavy-duty math, and some neat pictures. If you get a plot 
of the result, you should see something similar to the picture shown 
at the bottom of the page.

- Doctor Pete, The Math Forum 

Date: 12/26/2002 at 13:09:53
From: John
Subject: Thank you (Lorenz equations)

This was exactly what I was looking for. Thanks for taking the time to 
explain everything step by step. It really helped.

Associated Topics:
High School Calculus
High School History/Biography

Search the Dr. Math Library:

Find items containing (put spaces between keywords):
Click only once for faster results:

[ Choose "whole words" when searching for a word like age.]

all keywords, in any order at least one, that exact phrase
parts of words whole words

Submit your own question to Dr. Math

[Privacy Policy] [Terms of Use]

Math Forum Home || Math Library || Quick Reference || Math Forum Search

Ask Dr. MathTM
© 1994- The Math Forum at NCTM. All rights reserved.