Lesson06.mw
ORDINARY DIFFERENTIAL EQUATIONS POWERTOOL
Lesson 6 -- Bifurcations
Prof. Douglas B. Meade
Industrial Mathematics Institute
Department of Mathematics
University of South Carolina
Columbia, SC 29208
URL: http://www.math.sc.edu/~meade/
E-mail: meade@math.sc.edu
Copyright 2001 by Douglas B. Meade
All rights reserved
-------------------------------------------------------------------
Outline of Lesson 6
6.A Graphical Approaches to Bifurcation
6.A-1 Animated Direction Fields and Solution Curves
6.A-2 Bifurcation Diagram
6.B Analytic Determination of Bifurcation Points
Initialization
Warning, the name changecoords has been redefined
6.A Graphical Approaches to Bifurcation
The solution of a differential equation that contains a parameter will depend in some intrinsic way on the value of this parameter. As the parameter varies, the nature of the solution may indeed vary also. For example, the number, location, and stability of equilibrium solutions may change with changing values of the parameter. Such changes in the nature and behavior of solutions changes are called bifurcations, and the location of such points in a space of parameter and dependent variable are called bifurcation points.
By way of clarification of these ideas, consider the one-parameter family of functions
in the differential equation
> |
ode := diff( y(t), t ) = eval( f, y=y(t) ); |
6.A-1 Animated Direction Fields and Solution Curves
For each of the following values of the parameter
,
> |
PARAM := [ seq( i/2, i=-8..8 ) ]; |
the differential equation
has a solution
, and perhaps some equilibrium solutions. If a phase portrait is generated for each value of the parameter listed above, an animation can be constructed of the transition that occurs as the parameter changes. The impact of this animation will be enhanced if all equilibria for each value of the parameter are included in the list of initial conditions. This is accomplished by the following Maple calculation.
> |
IC := { seq( [0,i], i=-5..5 ) }: |
> |
yROOT := solve( f=0, y ); |
> |
yROOT2 := remove( has, {yROOT}, I ); |
> |
IC := IC union { seq( [0,y0], y0 = yROOT2 ) }; |
The complete set of initial conditions is now
Maple Question
Note that the IC are being kept as a
set
, not a
list
. Why is this important? (Consult the on-line help for information about sets and lists.)
The first frame of the animation is
> |
DEplot( eval(ode,mu=PARAM[1]), {y(t)}, t=0..5, y=-10..10, IC, arrows=MEDIUM ); |
It shows two equilimbium solutions, the upper one being unstable, and the lower one, stable.
Since there are 17 frames in the full animation it may take a considerable amount of time to complete the execution of the next command that generates the full animation.
> |
PLOTseq := seq( DEplot( ode, {y(t)}, t=0..5, y=-10..10, IC, |
> |
arrows=MEDIUM ), mu=PARAM ): |
> |
display( PLOTseq, insequence=true ); |
As the parameter
varies, the phase portrait for the corresponding differential equation exhibits two equilibrium solutions that merge into one, that then seems to disappear entirely. There is a transition from two equilibria, to one, to none. This is the type behavior that the term bifurcation designates.
Hence, this animation shows there is at least one bifurcation somewhere in this range of parameters. To identify the values of the parameter where the bifurcations occur, one typically examines a bifurcation diagram (see below).
6.A-2 Bifurcation Diagram
Continuing the previous example, recall that the right-hand side of the ODE
is the function
where
is the parameter. The equilibrium solutions
(
constant) are solutions of the equation
. In general, these solutions will depend on the parameter
, so the equation
defines the equilibrium solutions
implicitly. The constant
will depend on the parameter
!
A bifurcation diagram displays the equilibria of the ODE as a function of the parameter, that is, it contains a graph of
vs.
. Hence, the bifurcation diagram is obtained by graphing
as a function of
as determined implicitly by the equation
.
In Maple, such a plot, here called Figure 6.1, can be obtained with
> |
implicitplot( f=0, mu=-8..8, y=-4..4, style=POINT, view=[ -8..2, -4..4 ], title="Figure 6.1" ); |
For values of
less than 1, there are two equilibrium solutions. (For example, if
, there are two intersections of the vertical line
with the curve containing the equilibrium values.) At
, the two branches of the relation shown in Figure 6.1 come together at a single point. Thus for
, there is a single equilibrium solution, and clearly, for value of
greater than 1, there are no equilibrium solutions. Hence, the bifurcation value for this ODE is
.
For a second example, consider the one-parameter family of ODEs determined by
> |
f := y^3 - mu*y:
ode := diff( y(t), t ) = eval( f, y=y(t) ); |
where again,
is the parameter.
The bifurcation diagram for this example has the name "pitchfork".
> |
implicitplot( f=0, mu=-4..4, y=-2..2, style=POINT, axes=BOXED, title="Pitchfork Bifurcation" ); |
6.B Analytic Determination of Bifurcation Points
Not every equilibrium solution is a bifurcation point. For a given value of the parameter
, a necessary condition for an equilibrium solution to be a bifurcation point is
.
Thus, equilibrium points for the ODE
must satisfy the equation
. If an equilibrium point satisfies the additional condition
, then the equilibrium point might also be a bifurcation point.
The bifurcation points generated by the function
are found by solving the equations
> |
bif_eq1 := f = 0;
bif_eq2 := diff( f, y ) = 0; |
Maple gives
> |
bif_sol := solve( { bif_eq1, bif_eq2 }, { mu, y } ); |
as the solutions, which are then expressed as the points
via
> |
bif_pt := seq( eval([mu,y],BP), BP=[bif_sol] ); |
The bifurcation diagram corresponding to the ODE
is given in Figure 6.2.
> |
bif_diag := implicitplot( f=0, mu=-2..2, y=-2..4, style=POINT ): |
> |
bif_pt_P := plot( [bif_pt], style=POINT, color=BLUE, |
> |
symbol=CROSS, symbolsize=16 ): |
> |
display( bif_diag, bif_pt_P, axes=BOXED, title="Figure 6.2" ); |
The two potential bifurcation points are marked with blue crosses in Figure 6.2.
[Back to ODE Powertool Table of Contents]