
Egwald Mathematics: Nonlinear Dynamics:
Two Dimensional Flows and Phase Diagrams
by
Elmer G. Wiens
Egwald's popular web pages are provided without cost to users. Please show your support by joining Egwald Web Services as a Facebook Fan:
Follow Elmer Wiens on Twitter:
introduction  linear systems  linear stability diagram nonlinear systems  fixed points  strogatz example  linearized stability  jacobian matrix nonlinear stability classification  topological classifications  strogatz example  direction field phase portrait  boyce diprima example  basin of attraction  oscillating pendulum  oscillating pendulum graphics LotkaVolterraGoodwin model  predator prey phase portrait  LVG model with nonconstant returns references
Introduction
One can describe the dynamics of a two dimensional, continuous time process by a pair of differential equations and initial conditions:
dx / dt = f(x, y), (1)
dy / dt = g(x, y), (2)
x(0) = x0, y(0) = y0, (3)
whose solution is a pair of functions of time, x(t) and y(t).
This process is also described using the notation:
dx_{1} / dt = f_{1}(x_{1}, x_{2}),
dx_{2} / dt = f_{2}(x_{1}, x_{2}),
x_{1}(0) = x0_{1}, x_{2}(0) = x0_{2}.
In vector notation, these dynamics are described as:
( dx_{1}/dt, dx_{2}/dt )^{T} = ( f_{1}(x_{1}, x_{2}), f_{2}(x_{1}, x_{2}) )^{T}, or
x^{T} = (x_{1}, x_{2}), f^{T}( x ) = ( f_{1}(x_{1}, x_{2}), f_{2}(x_{1}, x_{2}) ), and
d x / dt = f( x ),
x^{T}(0) = (x0_{1}, x0_{2}).
where "T" indicates the transpose from a column vector to a row vector.
Linear Systems
The simplest two dimensional, continuous time process is the second order, linear homogeneous system with constant coefficients:
dx_{1} / dt = a * x_{1} + b * x_{2},
dx_{2} / dt = c * x_{1} + d * x_{2}
Let the matrix A be:
and the column vectors x and dx / dt be:
x^{T} = (x_{1}, x_{2}),
dx^{T} / dt = ( dx_{1} / dt, dx_{2} / dt ).
The linear system has the form:
dx / dt = A * x. (5)
The origin, o^{T} = (0, 0), is an equilibrium (fixed) point of (5) because A * o = o. One can examine the behaviour (stability) of the solution vector:
x^{T}(t) = ( x_{1}(t), x_{2}(t) ),
near the origin, o, by analyzing the eigenvalues and eigenvectors of A.
Click to pop a new window with this analysis in detail: Classification of the Equilibrium Point at the Origin.
The general 2 by 2 matrix, A, has:
p = trace(A) = a + d, and
q = det(A) = a*d  b*c.
Its characteristic equations is:
f(µ) = µ^{2}  p * µ + q
Factoring this quadratic equation yields the pair of eigenvalues, µ_{1} and µ_{2}, where:
µ_{1} = { p + sqrt(p^{2}  4 * q) } / 2 , and
µ_{2} = { p  sqrt(p^{2}  4 * q) } / 2.
Moreover:
p = µ_{1} + µ_{2},
q = µ_{1} * µ_{2}.
Designate the discriminant of the characteristic equation by:
d = disc(A) = p^{2}  4 * q.
Classification of Fixed Points for Linear Systems
The following diagram classifies the fixed points (critical points) of the linear system (5) according to the values of p = trace(A), q = det(A), and d = disc(A). The parabola, p^{2}  4 * q = 0, is the locus of points (p, q) for which d = 0.
In the region of the (q, p) plain enclosed by the parabola, d = p^{2}  4 * q < 0. Consequently, the eigenvalues µ_{1} and µ_{2} are complex numbers. If p is not zero, complex eigenvalues result in spiral trajectories. If p = 0, eigenvalues are purely imaginary and trajectories enclose the fixed point in ellipses or circles.
If p > 0 and q > 0 (the positive quadrant of the (q, p) plain), both eigenvalues have positive real parts (or are purely positive numbers), and the fixed point is unstable. If p > 0, and q = 0, one eigenvalue is positive and the other is zero: the trajectories are unstable lines.
Conversely, if p < 0 and q > 0 (the negative quadrant), both eigenvalues have negative real parts (or are purely negative numbers), and the fixed point is stable. If p < 0, and q = 0, one eigenvalue is negative and the other is zero: the trajectories are stable lines.
However, if q < 0, one eigenvalue is a positive number and the other is negative: trajectories follow the saddle point pattern.
Finally, if p = 0 and q = 0 two possibilities exist. If A is the zero matrix, every vector x is an equilibrium point. If A is not the zero matrix, then µ_{1} = µ_{1} = 0 and a line of equilibrium points passes through the eigenvector corresponding to one zero eigenvalue. All other trajectories are parallel to this line, running in opposite directions on either side of the line of equilibrium points.


Nonlinear Systems
The general form of a twodimensional nonlinear system is:
dx / dt = f(x, y), (6)
dy / dt = g(x, y), (7)
x(t_{0}) = x0, y(t_{0}) = y0, (8)
Fixed Points
The fixed points of the nonlinear system are numbers x^{*} and y^{*} such that:
f(x^{*}, y^{*}) = 0, and (9)
g(x^{*}, y^{*}) = 0, (10)
are satisfied simultaneously. Fixed points occur where the locus of points of equations (9) and (10) intersect.
Example: (Strogatz 151152)
The nonlinear system with functions f and g given by:
dx / dt = f(x, y) = x + x^{3},
dy / dt = g(x, y) = 2 * y,
has the fixed points that satisfy:
f(x, y) = x + x^{3} = 0,
g(x, y) = 2 * y = 0.
In the diagram below, the fixed points occur are the intersections of the lines x = 1, x = 0, and x = 1 with the line y = 0 (the xaxis). These four lines are called nullclines.
These fixed points are:
(x_{1}^{*}, y_{1}^{*}) = (0, 0),
(x_{2}^{*}, y_{2}^{*}) = (1, 0),
(x_{3}^{*}, y_{3}^{*}) = (1, 0).
Linearized Stability
The dynamics of a nonlinear system near a fixed point can be analyzed by linearizing the system about the fixed point, (x^{*}, y^{*}).
Jacobian Matrix
The Jacobian matrix of the nonlinear system described by the equations (6), and (7) at the fixed point (x^{*}, y^{*}) is the matrix of partial derivatives of the functions f and g evaluated at (x^{*}, y^{*}) given by:
J(x^{*}, y^{*}) = 
f_{x}(x^{*}, y^{*})  f_{y}(x^{*}, y^{*})  (11) 
g_{x}(x^{*}, y^{*})  g_{y}(x^{*}, y^{*}) 

The Jacobian matrix of constant coefficients, J, is identified with the matrix A of linear systems. Near a fixed point (x^{*}, y^{*}), the dynamics of the nonlinear system are qualitatively similar to the dynamics of the linear system associated with the J(x^{*}, y^{*}) matrix, provided the eigenvalues of the J matrix have nonzero real parts. Fixed points with a J matrix such that Re(µ_{1, 2}) ≠ 0 are called hyperbolic fixed points. Otherwise, fixed points are nonhyperbolic fixed points, whose stabilities must be determined directly.
Classification of Fixed Points for Nonlinear Systems
Let the Jacobian matrix J evaluated at a fixed point (x^{*}, y^{*}) be:
For this matrix J:
p = trace(J) = a + d, and
q = det(J) = a*d  b*c.
Its characteristic equations is:
f(µ) = µ^{2}  p * µ + q
Factoring this quadratic equation yields the pair of eigenvalues, µ_{1} and µ_{2}, where:
µ_{1} = { p + sqrt(p^{2}  4 * q) } / 2 , and
µ_{2} = { p  sqrt(p^{2}  4 * q) } / 2.
Moreover:
p = µ_{1} + µ_{2},
q = µ_{1} * µ_{2}.
Topological Classification
Linear stability analysis works for a hyperbolic fixed point (Re(µ_{1, 2}) ≠ 0). The nonlinear system's phase portrait near the fixed point is topologically unchanged due to small perturbations, and its dynamics are structurally stable or robust.
Linear stability analysis may fail for a nonhyperbolic fixed point: ( Re(µ_{1, 2}) = 0, or at least one µ_{i} = 0 ).
Hyperbolic Fixed Points  Repellers (Sources) — Unstable  p > 0, q > 0  Re(µ_{1, 2}) > 0 
Attractors (Sinks) — Stable  p < 0, q > 0  Re(µ_{1, 2}) < 0 
Saddle Points — Unstable  q < 0  Re(µ_{1}) < 0, Re(µ_{2}) > 0 
Nonhyperbolic Fixed Points  Marginal Case 1  p = 0, q > 0  Re(µ_{1, 2}) = 0 
Marginal Case 2  p ≠ 0, q = 0  µ_{1} = 0 or µ_{2} = 0 
Marginal Case 3  p = 0, q = 0  µ_{1} = 0 and µ_{2} = 0 
The classifications for the fixed points of a nonlinear system are summarized in the following diagram:
Example: (Strogatz 151152)
The Jacobian matrix for the example is:
Stability at (x_{1}^{*}, y_{1}^{*}) = (0, 0)
For J(0, 0), p = 3, and q = 2. Thus, d = p^{2}  4 * q = 1; µ_{1} = 1, µ_{2} = 2, and (0, 0) is a hyperbolic fixed point. Consequently, the nonlinear system has a stable node (attractor) at (x_{1}^{*}, y_{1}^{*}) = (0, 0).
Stability at (x_{2}^{*}, y_{2}^{*}) = (1, 0)
For J(1, 0), p = 0, and q = 4. Thus, d = p^{2}  4 * q = 16; µ_{1} = 2, µ_{2} = 2, and (1, 0) is a hyperbolic fixed point. Consequently, the nonlinear system has a saddle point at (x_{2}^{*}, y_{2}^{*}) = (1, 0).
Stability at (x_{3}^{*}, y_{3}^{*}) = (1, 0)
Similarly, for J(1, 0), p = 0, and q = 4. Thus, d = p^{2}  4 * q = 16; µ_{1} = 2, µ_{2} = 2, and (1, 0) is a hyperbolic fixed point. Consequently, the nonlinear system has a saddle point at (x_{3}^{*}, y_{3}^{*}) = (1, 0).
Direction Field and Phase Portrait
The stability analysis for this example is verified by the following direction field and phase portrait of the nonlinear system:
The phase portrait confirms the presence of the two saddle points and fixed point attractor suggested by the direction field diagram.
Direction Field

Phase Portrait



Example: (Boyce and DiPrima 487488)
The nonlinear system with functions f and g given by:
dx / dt = f(x, y) = y,
dy / dt = g(x, y) = 9 * sin(x)  (1/5) * y,
has the fixed points that satisfy:
f(x, y) = y = 0,
g(x, y) = 9 * sin(x)  (1/5) * y = 0.
The fixed points of this nonlinear system occur at the intersections of the xnullcline, y = 0, and the ynullcline, y = 45 * sin(x), as displayed in the next diagram.
Fixed Points
The fixed points are the points (x^{*}, y^{*}) = (n * π, 0), for n = ... 2, 1, 0, 1, 2 ....
Jacobian Matrix
The Jacobian matrix for the example is:
Stability: n = 0 or n even
If n = 0, or if n is an even number, p = .2 < 0, q = 9 > 0: The fixed points are hyperbolic, attractors.
Stability: n odd
If n is an odd number, p = .2 < 0, q = 9 < 0: The fixed points are hyperbolic, saddle points.
Phase Portrait
The following phase portrait of the nonlinear system verifies the stability analysis for this example.
Phase Portrait


Basin of Attraction
The basin of attraction of an attracting fixed point is the set of all initial points whose solution trajectories lead to the fixed point. In the next diagram, the yellow set is the basin of attrction of the hyperbolic attractor at the origin.
Basin of Attraction


Homoclinic Orbits
Solution trajectories that begin and terminate at the same fixed point, are called homoclinic orbits. An example appears in the next diagram, with the homoclinic orbits in red.
Saddle Point with Homoclinic Orbits


This nonlinear system has functions f and g given by:
dx / dt = f(x, y) = y,
dy / dt = g(x, y) = x  x^{3},
with a saddle point at (0, 0), and centers at (1, 0), and (1, 0).
Heteroclinic Orbits
Solution trajectories that begin and terminate at different saddle points, are called heteroclinic orbits. An example appears in the next diagram, with the heteroclinic orbits in red.
Saddle Points with Heteroclinic Orbits


This nonlinear system has functions f and g given by:
dx / dt = f(x, y) = y,
dy / dt = g(x, y) = sin(x),
The fixed points are the points (x^{*}, y^{*}) = (n * π, 0), for n = ... 2, 1, 0, 1, 2 ....
If n = 0, or if n is an even number, the fixed points are centers. If n is an odd number, the fixed points are hyperbolic, saddle points.
Physical Interpretation:
The Oscillating Pendulum (Boyce and DiPrima 476477)
An object of mass m is suspended from a point O by a rigid, but weightless, rod of length L. The angle of the rod with the vertical is θ, with the counterclockwise direction as positive. The rod can swing or rotate about O. The gravitational force is F = m * g, while the damping force opposing the direction of motion is c * dθ / dt, where c is a positive constant. The tangential component of the gravitational force is F1 = m * g * sin(θ). (See the diagram below.)
With the damping force, the equation for the angular momentum about O is:
m * L^{2} * d^{2}θ / dt^{2} =  c * L * dθ/dt  m * g * L * sin(θ), or
m * L^{2} * d^{2}θ / dt^{2} + c * L * dθ/dt + m * g * L * sin(θ) = 0.
Letting γ = c / (m * L), ω^{2} = g / L, the equation of motion is:
d^{2}θ/dt^{2} + γ * dθ/dt + ω^{2} * sin(θ) = 0.
This system can be converted into a two dimensional nonlinear system by letting x = θ and y = dθ/dt:
dx / dt = y, and
dy /dt = ω^{2} * sin(θ)  γ * y.
Setting ω^{2} = 9, and γ = (1/5), we get the example displayed in the phase portrait above. The relevant portion of the phase portrait is identified for x between pi and +pi.
Oscillating Pendulum Dynamics
The next graphic displays the motion of this pendulum ( ω^{2} = 9, and γ = (1/5) ) starting from a position slightly displaced from the vertical ( x = 3.04159 radians, y = 0.010000 radians / second ). Time is set at t = 0 seconds at this initial position. The position of the pendulum, x is given in degrees and radians from its position of rest; the angular velocity or time rate of change of x, the variable y, is measured in radians per second.
Oscillating Pendulum with Damping
Oscillating Pendulum with Damping
Lotka—Volterra—Goodwin PredatorPrey Model (Lorenz 6069)
The nonlinear system with functions f and g given by:
dx / dt = f(x, y) = a * x  b * x * y,
dy / dt = g(x, y) = c * y + d * x * y,
has fixed points that satisfy:
f(x, y) = a * x  b * x * y = 0,
g(x, y) = c * y + d * x * y = 0.
where a, b, c, d > 0 are parameters that represent the interaction between the entities of the model (x = prey population; y = predator population).
These fixed points are (x_{1}^{*}, y_{1}^{*}) = (0, 0), and (x_{2}^{*}, y_{2}^{*}) = (c / d, a / b).
Jacobian Matrix
The Jacobian matrix is:
J(x^{*}, y^{*}) = 
a  b * y  b * x 
d * y  c + d * x 

The trivial fixed point is a hyperbolic, saddle point, since q = det(J) = a * c < 0.
At (x_{2}^{*}, y_{2}^{*}) = (c / d, a / b), the Jacobian has p = trace(J) = 0, and q = det(J) = a * c > 0. Consequently, the eigenvalues are purely imaginary, nonzero, complex conjugate numbers, and the fixed point is nonhyperbolic, neutrally stable.
With a = 3, b = 2, c = 3, and d = 2, the dynamics of the following diagram reveal a center at (x_{2}^{*}, y_{2}^{*}) = (3 / 2, 3 / 2), and a saddle point at (x_{1}^{*}, y_{1}^{*}) = (0, 0):
In the Richard Goodwin version of the model, x represents the employment rate (employment relative to population), while y represents the income share of labour (the wage rate times labour employed relative to output).
In terms of the LotkaVolterra model, the employment rate is the prey, while the wage bill is the predator.
Lotka—Volterra Model Decreasing and Increasing Returns
The Lotka—Volterra model is sensitive to modifications in the differential equations that describe the dynamics of the nonlinear system. The following system is a perturbation in the structure of the model.
Consider the nonlinear system with functions f and g given by:
dx / dt = f(x, y) = 3 * x  2 * x * y,
dy / dt = g(x, y) = 3 * y + 2 * x * y  e * y * y,
where the parameter e is either between 2 and 0, or greater than 0. (The case for e = 0 appears above.) The parameter, e, measures the decreasing returns (e > 0), or increasing returns (e < 0) available to the entity represented by the variable y.
The fixed points are (x_{1}^{*}, y_{1}^{*}) = (0, 0), and (x_{2}^{*}, y_{2}^{*}) = (3/2 + (3/4)*e, 3/2). ( x_{2}^{*} > 0 requires e > 2. )
Jacobian Matrix
The Jacobian matrix is:
J(x^{*}, y^{*}) = 
3  2 * y  2 * x 
2 * y  3 + 2 * x  2 * e * y 

At (x_{1}^{*}, y_{1}^{*}) = (0, 0), p = trace(J) = 0, and q = det(J) = 9, so the trivial fixed point is a hyperbolic, saddle point.
At (x_{2}^{*}, y_{2}^{*}) = ( 3/2 + (3/4)*e, 3/2 ), p = trace(J) = (3/2)*e, and q = det(J) = (9/2)*e+9. For e > 0, p < 0 and q > 0. Consequently, (x_{2}^{*}, y_{2}^{*}) is a hyperbolic, attractor fixed point. For 2 < e < 0, p > 0 and q > 0. Consequently, (x_{2}^{*}, y_{2}^{*}) is a hyperbolic, repeller fixed point.


e = . 25 > 0  e =  .25 < 0 
References.
 Boyce, William E. and Richard C. DiPrima. Elementary Differential Equations and Boundary Value Problems. New York: John Wiley, 1997.
 Burden, Richard L. and J. Douglas Faires. Numerical Analysis. 6th ed. Pacific Grove: Brooks/Cole, 1997.
 Demmel, James W. Applied Numerical Linear Algebra. Philadelphia: Siam, 1997.
 Devaney, Robert L. An Introduction to Chaotic Dynamical Systems. Menlo Park, CA: Benjamin/Cummings, 1986.
 Elaydi, Saber N. Discrete Chaos. Boca Raton: Chapman & Hall, 2000.
 Erdi, Péter. Complexity Explained. Berlin: Springer, 2007
 Intriligator, M. D. Mathematical Optimization and Economic Theory. Englewood Cliffs: PrenticeHall, 1971.
 Kaplan, Wilfred. Ordinary Differential Equations. Reading: AddisonWesley, 1958.
 Lipschutz, Seymour. Linear Algebra. New York: Schaum McGrawHill, 1968.
 Lorenz, HansWalter. Nonlinear Dynamical Economics and Chaotic Motion. Berlin: SpringerVerlag, 1993.
 Mathews, John H. and Kurtis D. Fink. Numerical Methods Using MATLAB. 3rd ed. Upper Saddle River: Prentice Hall, 1999.
 Nagata, K. Wayne. Nonlinear Dynamics and Chaos: Mathematics 345 Lecture Notes. Vancouver: University of B.C., 2006
 Press, William H., Brian P. Flannery, Saul A. Teukolsky, and William T. Vetterling. Numerical Recipes: The Art of Scientific Computing. Cambridge: Cambridge UP, 1989.
 Strang, Gilbert. Linear Algebra and Its Applications. 3d ed. San Diego: Harcourt, 1976.
 Strogatz, Steven H. Nonlinear Dynamics and Chaos. Cambridge MA: Perseus, 1994.
 Wan, Henry Y. Jr. Economic Growth. New York: Harcourt, 1971.
 Watkins, David S. Fundamentals of Matrix Computations. New York: John Wiley, 1991.

