MATCONT: the Koper example

Consider the following system of differential equations:
\begin{displaymath}
\left\{\begin{array}{rcl}
\epsilon_1\dot{x} &=& (k\ y -x...
...y + z\\
\dot{z} &=& \epsilon_2 (y-z).
\end{array}
\right.
\end{displaymath} (97)

This system, which is a three-dimensional van der Pol-Duffing oscillator, has been introduced and studied by [25]. It is used as a standard demo in HOMCONT. Parameters $\epsilon_1$ and $\epsilon_2$ are kept at 0.1 and 1, respectively. We note that system (97) has a certain symmetry: If $(x(t),y(t),z(t))$ is a solution for a given value of $\lambda$, then $(-x(t),-y(t),-z(t))$ is a solution for $-\lambda$.

Starting from a general point $(0, -1, 0.1)$ and setting $k = 0.15$ and $\lambda = 0$, we find by time integration a stable equilibrium at $(-1.775, -1.775, -1.775)$.

By equilibrium continuation with $\lambda$ free, we find two limit points (LP), at $(-1.024695,$ $-1.024695,$ $-1.024695)$ for $\lambda=-2.151860$ with normal form coefficient $a=-4.437056e+000$ and at $(1.024695,$ $1.024695,$ $1.024695)$ for $\lambda=2.151860$ with normal form coefficient $a=4.437060e+000$ (note the reflection).

By continuation of the limit points with $(k,\lambda)$ free, MATCONT detects a cusp point CP at $(0,0,0)$ for $k = -3$ and $\lambda = 0$. Also detected are two Zero-Hopf points ZH for $k = -0.3$ at $\pm (0.948683,$ $0.948683,$ $0.948683)$ and $\lambda = \pm 1.707630$, but these are in fact Neutral Saddles. Further, two Bogdanov-Takens points BT are found for $k = -0.05$ at $\pm (0.991632,$ $0.991632,$ $0.991632)$ and $\lambda = \pm 1.950209$. The normal form coefficients are $(a,b)=(6.870226e+000, 3.572517e+001)$.

A bifurcation diagram of (97) is shown in Figure 32.

Figure 32: Left: equilibrium bifurcation diagram of the Koper system. Dashed line = equilibria, full line = limit points, CP = Cusp Point, BT = Bogdanov-Takens, ZH = Zero-Hopf, LP = Limit Point. Right: zoom on the right part of the diagram.
figure=ex/equilibria1.eps,height=4cm
figure=ex/equilibria2.eps,height=4cm

We will now start an orbit homoclinic to saddle from a limit cycle with large period. First select the BT point at $\lambda = 1.950209$, and then compute a curve of Hopf points H passing through it (Type $\rightarrow$ Curve $\rightarrow$ Hopf), along which one encounters a Generalized Hopf bifurcation GH where $\lambda=1.09180$ and $k=-0.931201.$ Stop the continuation before the GH point, e.g. for $\lambda = 1.6749071$ where $k=-0.32998453$ and $x=y=z=0.98236575.$ From this Hopf point start the continuation of limit cycles (this is the default Curve type) with $ntst=50,$ $ncol=4$ and amplitude equal to $1e-5.$

We then obtain limit cycles for slowly decreasing values of $\lambda.$ At $\lambda=1.6748397$ the parameter $\lambda$ does not decrease further (at least as seen for this number of digits) but the period increases at each step by approximately the amount of MAXSTEPSIZE.

Stop the continuation when the period reaches $95.02325$ (or a nearby value).

Now select the last LC of this curve (Select $\rightarrow$ Initial point), and declare it to be a homoclinic orbit by clicking on Type $\rightarrow$ Curve $\rightarrow$ Homoclinic to Saddle.

For a homoclinic continuation you need 2 free parameters (here $k$ and $\lambda$) and 1 or 2 homoclinic parameters. Pick $\epsilon_0$ and $\epsilon_1$. With these settings, you can start the homoclinic curve (Compute $\rightarrow$ Backward). See Figure 33. For speed purposes, you can increase some Tolerances in the Continuer window, or set Adapt to 0.

Figure 33: Top: limit cycles, starting from a Hopf point H and approaching a homoclinic orbit. Bottom: a family of HHS orbits.
figure=ex/lc2hom.eps,height=8cm
figure=ex/homoclinics.eps,height=8cm

One can also monitor the eigenvalues of the equilibrium during continuation, by displaying them in the Numerical window. This is a useful feature, because it gives indications on what further bifurcations might be expected. For example, a non-central homoclinic-to-saddle-node reveals itself by the fact that one eigenvalue approaches zero.