MATHEMATICA Notebooks for Nonlinear Dynamics
You are visitor 17645 to this site.
The Mathematica notebooks listed below were developed by Professor Brian G. Higgins (bghiggins@ucdavis).
These notebooks were written to augment class notes used in our graduate class ECH259 Applied Mathematics at UCDavis. The notebooks assume you
are using Mathematica version 6 or later (version 7 recommended).
Copyright and usage
These notebooks are Copyright Brian G. Higgins (2009). All rights reserved. You may copy and modify these notebooks and its
content only for internal use in your organization, provided that credit is given
to Brian G. Higgins as the original author. All other uses require the written permission of the author. In particular, these notebooks and their content cannot be bought or sold or exchanged for
profit, or incorporated into material that is bought or sold or exchanged for profit. The notebooks are provided "as is" without express or implied warranty.
Mathematica Notebooks
- Shooting method for solving boundary value problems. (Updated March 2009)
A shooting method is developed for solving nonlinear boundary value problems with Mathematica. Examples are drawn from
applied mathematics, fluid mechanics, and heat transfer.In Mathematica V6 +, NDSolve is capable of solving nonlinear BVP, The theory behind the shooting method is explained.
- Finite difference method for boundary value problems
A linear 2nd order BVP is solved with Mathematica using a finite difference method. Replacement rules are
used to generate the finite difference form.
- Finite difference method for Laplace's Equation in 2-D (Updated January 2010)
This notebook uses the SparseArray function in Mathematica Version 5 to solve Laplace's equation in a square. The new improvements in the LinearSolve function
means that large finite difference equations can be solved efficiently without having to write your own iterative method.
- Finite difference method for nonlinear boundary value problems
A nonlinear 2nd order BVP is solved with Mathematica using a finite difference method. Replacement rules are
used to generate the finite difference form. We also illustrate how to write your own Newton's method for solving the nonlinear equations.
- Finite difference method for Sturm-Liouville eigenvalue problems
Sturm-Liouville eigenvalue problems are solved with Mathematica using a finite difference method. The method is based on ideas discussed
in the notebook on finite difference methods for BVP (see above).
- Introduction to the spectral method for linear BVPs
The Chebyshev-Tau method is used to solve linear BVP (including those with variable coefficients).The notebook discusses the methodology for using Mathematica
to do the calculations.
- Primer on continuation methods: Part 1 (Updated January 2010)
This notebook is part 1 of several notebooks that explore the use of continuation methods for
tracking solutions of algebraic or nonlinear equations as a function of a parameter.
In part 1 (this notebook) the equations are parameterized in terms of a parameter that appears explicitly in the equations. The method is simple
to implement but will fail at turning or bifurcation points. ContourPlot function can be used to explore the global solution space of a system of equations.
In a follow-up notebook we consider arc-length parameterization.
- Dynamics of 1-D evolution equation (Updated January 2010)
In this notebook we explore the dynamics of a 1-D evolution equation. We use Mathematica to plot bifurcation diagrams,
assess basins of attraction when multiple steady state solutiuon exists, and use the linear
stability theory to analyze the steady state solutions.
- Primer on the solution of systems of linear ODEs(Updated January 2010)
The analysis of linear stability of dynamical systems often leads to a system
of linear ODEs with constant coefficients. In this notebook we consider the general solution
of a linear system of ODEs with constant coefficients. We use
concepts from linear algebra to expand the solution in terms of the eigenmodes
(or fundamental solutions) associated with the linear system of equations.
The method is straightforward when the eigenvalues are distinct and there is a complete
set of eigenvectors. When the coefficient matrix A has repeated eigenvalues the analysis is more complicated.
The key is to determine the fundamental solutions based on the Jordan bases for the matrix A.
- Dynamics of 2-D evolution equations(Updated January 2010)
The dynamics of a system of 2 nonlinear ODEs is studied. The issues addressed are
the number of steady states, their stability, bifurcation points, eigenvalues of the
linear stability, and continuation methods for tracking steady solutions. The presence of a
Hopf bifurcation point is also discussed.
- Dynamics of 3-D evolution equations (Updated January 2010)
This notebook discusses the dynamics of a system of 3 nonlinear ODEs.
The number of steady states is infinite and the steady states display a particular periodicity that is exploited
to determine their locations. A convenient method for finding the steady states using ContourPlot is discussed. We also assess
the stability of the steady states and explore their basins of attraction
- Nonlinear reaction diffusion equation(Updated January 2010)
This notebook illustrates how Mathematica can be used to find the multiple steady states of a nonlinear reaction diffusion
equation. A bifurcation analysis is undertaken in the absence of diffusion; a finite difference method is used to determine multiple steady states
in the presence of diffusion.
- Analysis of an imperfect bifurcation(Updated January 2010)
We use Mathematica to analyze the unfolding of a pitch fork bifurcation given by the function f= h + μU - U^3. We show how to display
the cusp point in the h-μ; plane and also in the U-h-μ; surface (the catastrophe surface).
- A primer on 1-D maps(Updated January 2010)
The mathematical properties and features of nonlinear systems such as bifurcation, stability
and chaos can be readily appreciated by studying the dynamics of difference equations,
the simplest of nonlinear systems. This notebook uses Mathematica to explore the properties of 1-D
maps. We use 1-D maps to introduce concepts of bifurcation, stability and periodic orbits.
We also show that certain 1-D maps can generate chaotic orbits.
- A primer on 2-D maps (Updated January 2010)
The dynamics of 2-D maps are examined in this notebook using Mathematica.
We illustrate how to construct Mathematica functions for the 2-D maps that can then be iterated
using Mathematica's NestList function. Stability criteria for fixed points and period-n cycles are given. Transition to chaos is discussed
using the Baker and Henon maps.
- A primer on periodic solutions in R1(Updated January 2010)
We use Mathematica to analyze 1-periodic equations. We show how to compute periodic solutions
and then we make use of Floquet theory to determine the stability of the periodic solutions. We also show
how to compute the Poincare map for 1-periodic equations numerically and establish the connection between
the Poincare map and Floquet theory.
- Introduction to periodic solutions in R3(Updated January 2010)
We use Mathematica to study the solution space through numerical computations for a third order nonlinear autonomous ODE. We examine bifurcations from the steady state
to time-periodic solutions and also bifurcation to quasi-periodic solutions.
- Batch chemical reactions
A well mixed batch reaction system is analyzed with Mathematica. Topics include pseudo steady states,
linear stability, periodic solutions.