About the Convenor

Jonathan Shock

I’m Jonathan Shock, an Associate Professor in the Department of Mathematics and Applied Mathematics at the University of Cape Town. My research moves between theoretical physics, complex systems, and the application of machine learning to problems across the sciences and humanities. I wear a number of hats at UCT:

Get in touch

For corrections, questions, or to suggest improvements: jon.shock@gmail.com . More about me at shocklab.net .

About This Course

MAM1043H: Introduction to Nonlinear Dynamics is a first-year undergraduate course at the University of Cape Town. These notes cover the second-semester nonlinear-dynamics half of MAM1043H, in which one-dimensional dynamical systems are introduced from scratch and extended into an introduction to two-dimensional linear systems.

Following Steven Strogatz’s Nonlinear Dynamics and Chaos, the topics covered are: the language of dynamical systems and differential equations, phase space and phase portraits, fixed points and linear stability analysis, existence and uniqueness of solutions, potentials, numerical solution via Euler’s method, bifurcations (saddle-node, transcritical, pitchfork, and imperfect), the logistic map and the route to chaos, and an introduction to two-dimensional linear systems with applications including coupled “love affairs”.

These notes have evolved through several years of teaching the course. The original lecture material was written in Wolfram Mathematica and has been converted to this web format so the figures, animations, interactive widgets, and equations can be browsed without needing Mathematica installed. The follow-on course, MAM2046W , extends these ideas to genuinely two- and three-dimensional systems where new phenomena — limit cycles, Hopf bifurcations, and chaos — emerge.

Who This Is For

The materials are designed first for UCT students enrolled in MAM1043H, but they are openly available for self-learners anywhere in the world. The mathematical prerequisites are modest: first-year single-variable calculus (derivatives and integrals) and the most basic linear algebra. No prior exposure to differential equations is assumed — the course introduces them from scratch through worked examples. If you’re working through the first chapters of Strogatz’s textbook, these notes provide a complementary set of phase portraits, animated bifurcations, and an interactive cobweb diagram for the logistic map.

Licence

These materials are released under a Creative Commons Attribution 4.0 International licence (CC BY 4.0) . You are free to share and adapt them for any purpose, including commercially, provided you give appropriate credit, link to the licence, and indicate if changes were made.

This release is authorised under clauses 8.2 and 9.2.1 of the UCT Intellectual Property Policy (2011), which assigns course-material copyright to the academic author and explicitly permits Creative Commons distribution. UCT retains a perpetual royalty-free non-exclusive internal-use licence (clause 8.2).

How to Cite

If you use, adapt, or reference these materials in your own teaching or writing, please cite them as:

Shock, J. (2026). MAM1043H: Introduction to Nonlinear Dynamics [Course materials]. University of Cape Town. https://shocklab.github.io/mam1043h-course/

Contributing & Reporting Errors

The source for everything you see here lives on GitHub at shocklab/mam1043h-course . If you spot an error — a broken link, a misattributed citation, a confusing explanation, a wrong sign in an equation — the most useful thing you can do is open an issue or a pull request.

You can also email jon.shock@gmail.com directly. Corrections from outside readers have already meaningfully improved several pages.

A Note on AI Assistance

The web conversion of these materials — the parsing of the original Mathematica notebooks, the layout, animation export, navigation, the interactive logistic-map cobweb widget, and many of the formatting refinements — was carried out with substantial assistance from AI tools, primarily Claude (Anthropic). The mathematical content itself comes from the original lecture notes; the presentation has been reviewed and audited by a human, but errors will still occasionally slip through. If you spot one, please get in touch.