Bifurcations

The bifurcation diagram showing the location of equilibrium solutions for different values of the parameter requires the function on the right-hand side of the differential equation, an interval of parameter values, and an interval containing all equilibirum solutions. Note that the latter two might take some side calculations or experimentation before you get them right.

> f := %? ; # RHS of the ODE

> PARAM := %? = %? .. %? ; # parameter range of interest

> RANGE := %? = %? .. %? ; # expected range of equilibrium solutions

>

The first command lets Maple select the actual viewing window as a subset of the window defined by PARAM and RANGE ; the second command forces Maple to use the full window of values.

> implicitplot( f=0, PARAM, RANGE, style=POINT );

> implicitplot( f=0, PARAM, RANGE, style=POINT, view=[ rhs(PARAM), rhs(RANGE) ] ) ;

>

The analytic determination of possible bifurcation points can be done as follows:

> EQ1 := f = 0; # must be an equilibrium solution

> EQ2 := diff( f, %? ) = 0; # that cannot be identified as a source or sink

> BIFpt := solve( { EQ1, EQ2 }, { %?, %? } );

If the set of solutions contains any complex-valued solutions, the following command will strip them away leaving only the real-valued solutions.

> BIFpt := op( remove( has, [BIFpt], I ) );

>