Complexity Explorer Santa Fe Institute

This course is no longer in session.
Lorenzattractor view

Nonlinear Dynamics: Mathematical and Computational Approaches (Fall 2016)

Lead instructor:

Unit 1:

1.1 Introduction to nonlinear dynamics

1.2 Maps and difference equations

1.3 Transients and attractors

1.4 Parameters and bifurcations

Unit 2:

2.1 Return maps

2.2 Constructing the bifurcation diagram

2.3 Exploring the bifurcation diagram

2.4 Feigenbaum and universality

  • The official Complexity Explorer logistic map app
  • The original paper: M. J. Feigenbaum, "Universal Behavior in Nonlinear Systems,"  Los Alamos Science 1:4-27, 1980.  This paper can be a bit hard to find in its original form, but you can also find it in Predrag Cvitanovic's Universality in Chaos reprint collection.

2.5 Field trip: The standard map (with Jim Meiss)

Unit 3:

3.1 What is a flow?

  • A link to some datasets from the driven pendulum that I showed towards the end of this video
  • This paper goes into great detail about what happens when the drive frequency (and amplitude) are varied in a driven pendulum like that: D. D’Humieres et al., “Chaotic States and Routes to Chaos in the Forced Pendulum,” Phys. Rev. A 26:3483, 1982
  • An nice article from the New Scientist about chaos in pendulums (via Google Books)

3.2 State variables and state space

3.3 Introduction to ODEs

3.4 Nonlinearity and nonintegrability

3.5 Field trip: Modeling the human insulin system (with Sriram Sankaranarayanan)

Unit 4:

4.1: Fixed points and stability

4.2: Saddle points and eigenvectors

4.3: Stable and unstable manifolds

4.4: Attractors, strange and otherwise

4.5: Field trip: Using stable and unstable manifolds to design spacecraft trajectories (with Jeff Parker)

Unit 5:

5.1: ODEs, vector fields, and dynamical landscapes

5.2: Introduction to ODE solvers

5.3: Two simple ODE solvers: forward and backward Euler

5.4: Solving the simple harmonic oscillator ODEs

5.5: Field trip: Systems that can't be modeled with ODEs (with Jean Hertzberg)

Unit 6:

6.1: ODE solvers, round II: Error and adaptation

6.2: Production ODE solvers

6.3: Numerical dynamics and due diligence

6.4: Shadowing and chaos

6.5: Field trip: Solving partial differential equations (with Christine Hrenya)

Unit 7:

7.1:  Dynamics and state-space deformation

  • I haven't been able to find a lot of good online material about Mel'nikov's method, but this MS thesis has a pretty good introduction

7.2: Lyapunov exponents

7.3: Sections and projections

  • Henri Poincare didn't only play a formative role in the foundation of the field of nonlinear dynamics.  He also came up with the theory of relativity — and wrote down e=mc^2 —before Einstein did.  Read a bit about him here.
  • Parker & Chua's Practical Numerical Algorithms for Chaotic Systems has a good chapter on constructing sections.

7.4: Unstable periodic orbits

  • Papers about UPOs and attractor structure: P. Cvitanovic, "Invariant measurement of strange sets in terms of circles," Phys Rev Lett 61:2729 (1988) — and a couple of more-technical ones in Nonlinearity in 1990 (vol 3 pp 325-386).
  • Papers about finding UPOs: G. Gunaratne et al., ""Chaos beyond Onset: A Comparison of Theory and Experiment," Phys Rev Lett 63:1-4 (1989); P. So et al., "Extracting unstable periodic orbits from chaotic time-series data," Phys Rev E 55:5398 (1997)
  • E. Bradley and R. Mantilla, "Recurrence plots and unstable periodic orbits." Chaos 12:596-600 (2002).

7.5: Fractals and chaos


Unit 8:

There are a number of references that will help you with this unit and the next one: my notes on time-series analysis and the wonderful book Nonlinear Time Series Analysis by Holger Kantz and Thomas Schreiber.  You can find the Kantz & Schreiber book on google books, but it's really worth owning a copy if you work with time series data (  A third reference is this recent review article, a copy of which you can also find on the arxiv.

8.1: Time-series analysis and the observer problem

  • A bit more about frequency spectra
  • I've used the word "superposition" a couple of times.  The wiki page about it gives a pretty good description of what it means and why it breaks in nonlinear systems.
  • The observer problem is the task of deducing the internal variables of a black-box system solely from observations of its output (viz., my example about reverse-engineering the internal electronics of a traffic light control box from observations of when the lights change color).  It's one of the hardest problems in control theory.

8.2: Delay-coordinate embedding

  • Section 3.2 of Kantz & Schreiber discusses delay-coordinate embedding, as do section II A of the review paper listed above and section 3.1 of my time-series analysis notes.

8.3: Topology, diffeomorphisms, and reconstruction of dynamics

8.4: Estimation of embedding parameters

  • The TISEAN time-series analysis toolkit includes lots of good stuff — including Lyapunov exponent and correlation dimension calculators. The TISEAN site has binaries for UNIX & windows.  You may need this fortran library to get it to work.  If you're a Mac user and you have brew on your machine, you can simply type 'brew install tisean' (without the quotes, of course). Here are some examples of how to run all of this from MATLAB.    Be aware that TISEAN is not a required element of this course and that it can sometimes be hard to install.
  • The wikipedia page about autocorrelation, which is essentially a measure of how similar different chunks of a signal are to one another.  To use autocorrelation to choose \tau, you could compute the correlation between chunks of the signal that are \tau time units apart and average that quantity across the whole signal.  Maxima in such a curve correspond to \tau values for which successive coordinates in a delay vector will be highly correlated (which is not a great idea).
  • Mutual information measures how much one (random) variable tells you about another one.  There are tons of other ways to get at that information, many of which have the word "entropy" in their names—e.g., transcription entropy.
  • Sections 3.3.1 and 3.3.2 of Kantz & Schreiber discuss finding m and \tau, respectively, as do section II B of the review paper listed above and section 3.2 of my time-series analysis notes.

8.5: Caveats and extensions

8.6: Field trip: Predicting extreme events (with Holger Kantz)

Unit 9:

9.1: Computing fractal dimensions

  • Chapter 6 of Kantz & Schreiber and section III A of the review paper listed above (under unit 8) discuss algorithms for calculating fractal dimension.
  • The original paper about calculating Lyapunov exponents: A. Wolf, J. Swift, H. Swinney, and J. Vastano, "Determining Lyapunov exponents from a time series," Physica D 16:285-317 (1985)

9.2: Computing Lyapunov exponents

  • Chapter 5 of Kantz & Schreiber and section III B of the review paper listed above (under unit 8) discuss algorithms for calculating Lyapunov exponents.

9.3: Noise and filtering

  • Section 1 of my time-series analysis notes gives a brief introduction to traditional linear systems analysis (cf., the lamp post).
  • Chapter 10 of Kantz & Schreiber discusses noise (and who to distinguish chaos from noise).
  • The original paper about that noise-reduction scheme that deforms noise balls back & forth in time: J.D. Farmer and J.J. Sidorowich, "Exploiting Chaos to Predict the Future and Reduce Noise," in Evolution, Learning and Cognition, World Scientific, 1988.
  • Papers about topology-based filtering: V. Robins and N. Rooney and E. Bradley, "Topology-Based Signal Separation," CHAOS 14:305-316 (2004) and Z. Alexander and E. Bradley and J. Garland and J. Meiss, "Iterated Function System Models in Data Analysis: Detection and Separation," CHAOS 22:023103 (2012)

9.4: Field trip: Chaotic mixing and marine invertebrate reproduction (with John Crimaldi)

Unit 10:

10.1: Prediction

  • A. Weigend and N. Gershenfeld, eds., Time Series Prediction: Forecasting the Future and Understanding the Past, Santa Fe Institute Studies in the Sciences of Complexity, Santa Fe, NM, 1993.

  • J. Garland and E. Bradley, "Prediction in projection," to appear, CHAOS. Preprint available at arxiv.

  • J. Garland, R. James, and E. Bradley, "Quantifying Time-Series Predictability through Structural Complexity," Physical Review E 90:052910 (2014). Preprint available at arxiv.

10.2: Control of chaos

  • Troy Shinbrot's review paper on the control of chaos: "Progress in the control of chaos," Advances in Physics 44:73-111 (1995)

10.3: Classical mechanics

10.4: Music and dance (with a coda on the difference between chaos and complexity)



Lecture Slides (zipfiles of pdfs):  please be aware that these are not course notes; they are simply the powerpoint slides that I use here and there in the lectures.  There is no textbook for this course, nor are there any compiled course notes.  This course draws upon material from different textbooks, journal papers, conference talks that were never published, and our own experience.  The lecture videos are your primary resource for that material.  Please check out the links above if you want more background information for each segment, or if you want to dig more deeply into the material.


Lecture and Solution Videos (zipfiles of mp4s):  the "full resolution" ones are what's on youtube.


PDFs of homework assignments and quizzes (zipfiles of pdfs):

These zipfiles do not contain every quiz pdf because we enter those directly via the web interface, rather than building pdfs.  What I've uploaded is last year's quiz pdfs; where this year's version is different, I did not include it.  You can do a 'print' from the webpage to make your own pdf.