MATCONT and CL MATCONT-- Continuation toolboxes in matlab6.2.2 The Steinmetz-Larter example327 Equilibrium continuation357. 1 Mathematical definition357.2 Bifurcations7.2.1 Branch point locator7.3 Equilibrium initialization367. 4 Bratu example378 The Brusselator example: Continuation of a solution to a boundary valueproblem in a free parameter9 Continuation of limit cycles479.1 Machematical delinition9. 2 Bifurcations9.2.1 Branch Point locator9.2.2 Processing9.3 Limitcycle initialization509.4 Examplc519.5 The plase response curve5310 Continuation of codim 1 bifurcations5810.1 Fold continuation10.1.1 Mathematical definition10.1.2 Bifurcations5810.1.3 Fold initialization5910.1.4 Adaptation0.1.5 Example6010.2 Hopf co6210.2.1 Mathematical definition)10.2.2 Bifurcatie10.2.3 Hopf initialization10.2.4 Adaptat10.2.5 Example6310.3 Pcriod doublig10.3. 1 Mathematical definition0.3.2Bi10.3.3 Period doubling initia. lizati10.3.4 Example10.4 Continuation of fold bifurcation of limit cycles10.4.1 Mathcmatical dcfinition10.1.2 Bifurcation10.4.3 Fold initialization10.4.4 Example10.5 Continuation of torus bifurcation of limit cycles10.5.1Mathdefinition10.5.2 Bifurcati10.5.3 Torus bifurcation initialization7610.5.4 Example11 Continuation of codim 2 bifurcations8011.1 Branch Point Continuation11.1. 1 Mathematical definition1.1.2 Bifurcations11.1.3 Branch point initialization11.1.4 Example8011.2 Branch Point of Cycles continuation11. 2.1 Mathematical definition11.2.2 Bifurcations8411.2.3 Branch Point of Cycles initialization11.2.4 Example8412 Continuation of homoclinic orbits8912.1 Mathematical definition12.1.1 Homoclinic-to-HyperboliC-Saddle Orbits12.1.2 Homoclinic-to-Saddle- Node Orbits9112.2 Bifurcations9112.3 Homoclinic initialization9312. 4 Examples9412.4.1 CL_MATCONT: the mlFast exanple412.4.2 MAT CONT: the Koper example1 IntroductionThe study of differential equations requires good and powerful mathematical software. Also. afexible and extendible package is important. However, most of the existing software all havetheir own manner of specifying the system or are written in a relatively low-level programminglanguage, so it is hard to extend itA powerful and widely used envirOnment for scientific computing is MATLAB 25]. The aiInof MATCONT and CL matcont is to provide a continuation toolbox which is compatiblewith the standard MATLAB ODE representation of differential cquations. The uscr can casilyuse his/her models without rewriting them to a specific package The MATLaB programminglanguage makes the use and extensions of the toolbox very easyThis documcnt is structured as follows. In scction 2 the underlying mathematics of conLinualion will be trealed. Section 3 introduces how singularities will be represented. Thetoolbox specification is explained in section 4 with a simple example in section 5. A morecomplex application of the toolbox, continuation of equilibria, is described in section 7. Thecontinuation of a solution to a boundary value problein in a Iree paraneter with the 1-DBrusselator as example is described in Section 8. Section 9 describes the continuation of limitcycles and the computation of the phase response curve. Section 10 describes the continua-tion of codim 1 bifurcations, at present limit points of equilibria, Hopf bifurcation points ofequilibria, period doubling bifurcation points of limit cycles, fold bifurcation points of limitcycles and Ncimark-Sackcr bifurcation points of limit cycles. Scction 11 describes the con-tinuation of codim 2 bifurcations, at present branch points of equilibria and branch points oflimit cycles. Section 12 deals with the continuation of homoclinic orbits1.1 FeaturesUpon the developinent of MAT CONT and CL_MATCONT, Chere were multiple objectivesCover as many bifurcations in ODEs as possible (e. g. now all bifurcations with twocontrol parameters are coveredAllow casicr data cxchange bctwccn programs and with MATLAB's standard ODE solversIInplenent robust alld ellicient nunerical methods for all computations, using minimallyextended systems where possibleRepresent results in a form suitable for standard control, identification, and visualizationo Allow for easy extendibilitya general comparison of the available features during computations for ODEs currentlysupported by the most widely used software packages Al'TO97/2000[9, CONTENT 1.524and MATCONTCL- MAT CONT are indicated in Table 1Relationships between objects of codimension 0, 1 and 2 computed by MAT CONT andCL MATCONt are presented in Figures 1 and 2, while the symbols and their meaning aresummarized in Tables 2 and 3, where the standard terminology is used, see 23An arrow in Figure 1 fromo to EP or LC means that by starting time integration froma given point we can converge to a stable equilibrium or a stable limit cycle, respectively. InTable 1: Supported functionalities for ODEs in AUTO(A), conTENT(C)and MATCONT(M)Mtime-integrationPoincare mapsmonitoring user functions along curves computedby continuation+++continuation of equilibria+++detection of branch points andcodim 1 bifurcations (limit and Hopf points)of equilibria| +++computation of nornal forinsfor codim 1 bifurcations of equilibriacontinuation of codim l bifurcations of equilibria+|++dctection of codim 2 equilibrium bifurcations(cusp, Bogdanov-Takens, Told-Hoplgeneralized and double Ilopf)+comput ation of normal formsfor codim 2 bifurcations of equilibriacontinuation of codim 2 equilibrium bifurcationsin three parameterscontinuation of limit cycles+|++computation of phasc responsc curves andtheir derivativesdetection of branch points andcodim l bifurcations (limit points, fip andNeimark-Sacker(torus)) of cycles+++cOntinuation of codinn l bifurcations of cyclesbranch switching at equilibrium and cycle bifurcations +++continuation of branch pointsof equilibria and cyclescomputation of normal forms forcodim 1 bifurcations of cyclesdetection of codim 2 bifurcations of cyclescontinuation of orbits homoclinic to equilibriaFigure 1: The graph of adjacency for equilibrium and limit cycle bifurcations in MATCONTFigure 2: The graph of adjacency for homoclinic bifurcations in MAT CONT; here stands forSor Ugencral, an arrow from an object of typc a to an object of typc B mcans that thc object of typoB can be detected(either aulonalically or by inspecting the oulpul)during the copulationof a curve of objects of type A. For example, the arrows from ep to H, LP, and BP meanthat we can detect H, LP and bP during the equilibrium continuation. Morcovcr, for cacharrow traced in the reversed direction, i.e. from B to A, there is a possibility to start thecomputation of the solution of type a starting from a given object B. For example, startingfrom a bt point, onc can initialize the continuation of both LP and h curves. Of coursc, cachobject of codim 0 and 1 can be continued in one or two system parameters, respectivelyThe same interpretation applies to the arrows in Figure 2where‘*stands for either sor U. depending on whether a stable or an unstable invariant, manifold is involvedIn principle, the graphs presented in Figures 1 and 2 are connected. Indeed it is knownthat curves of codim 1 homoclinic bifurcations emanate from the bt. Zh. and hh codim 2points. The current version of MATCONT fully supports, however, only one such connectionBT→HHS.Typc of objectLabelPointOrbitEquilibriumEPLimit cycleLOLinil Point (fold bifurcationHopf bifurcationLimit point bifurcation of cycloLPCNeimark-Sacker(torus)bifurcationNSPeriod Doubling(flip) bifurcationBranch pointBPCusp bifurcationCPBogdanov-Takens bifurcationBTZero-Hopf bifurcaZHDouble hopf bifurcationGeneralized Ilopf(Bautin) bifurcationGHBranch point of cycleBPCCusp bifurcation of CyclesCPC1:1 ResonanceR11 2 ResonanceR21: 3 ResonanceR31: 4 ResonanceR4Chenciner(generalized Neimark-Sacker)bifurcationCHFold-Neimark-Sacker bifurcationLPNSFlip-NeiImark-Sacker bifurcationPDNSFold-fipLPPDDouble neimark-SackerNSNSeneralized Period doublingGPDTable 2: Equilibrium- and cycle-related objects and their labels within the gui1.2 AvailabilityThis package is frccly available for download athttp://www.sourceforge.com(search for 'imlalcont'and then preferably go to the latest release). Unzipping the downloadedfile creates a directory matcont or cl matcont with all necessary files(see section 4.71.3 Software requirementsThe Continuation Toolbox requires MATLAB 6.5 or higher to be installed on your computerNo special MATLAB packages or toolboxes are necessaryTo improve performance in MAT CoNT and CL MATCONT, there is C-code included,which will be compiled by MATLAB at the start-up of the package. In the simplest casematlab will at the first use of Mat Cont ask the user which compiler he intends to use for thisThe mcssagc might look somewhat like the followinTypc of objectLabelLCHomoclinic to Hyperbolic SaddleHHSclinic to Saddle-nHSNNeutral saddleNSSNeutral saddle-focusNSFNeutral bi-FocusNEFShilnikov-HopfSHDouble real stable leading eigenvalueDRSDouble real Unstable leading eigenvalueDRUcutrally-Divcrgcnt saddlc-focus(Stablc)NDSNeutrally-Divergent saddle-locus (Unstable)NDUThree Leading eigenvalues(Stable)Three Leading eigenvalues(Unstable)TLUOrbit-Flip with respect to the stable manifoldOFSOrbit-Flip with respect to the Unstable manifoldOFUInclination-Flip with respect to the Stable manifold IFSInclination-Flip with respect to the Unstable manifold IFUNon-Central Homoclinic to saddle-nodeNCHTable 3: Objects related to homoclinics to equilibria and their labels within the gUlSelect a compiler[1] Lcc c version 2.4.1 in C: \PROGRAM FILES \MATLAB\R2006A\ sys\IccL2J Microsoft Visual C/C++ version 7. 1 in c: \Program Files\Microsoft[3] Microsoft Visual C/C++ version 6.0 in C: \Program Files\Microsoft[o NoneCompilerIt is recommended to use theLCC ccompiler. This is the built-in compiler in MATLAB, and it is with this compiler that thesoftware is tested. So e. g. in this case, type l and enter. Confirmation will be asked, andafter that another message may appear, which should be disregardedShould you want to change the compiler that is used by MATLAB, then typemex -setupat the command-line, and the same options will be given againIlowever, compilation can depend on the Matlab version and operating system of thecomputer. In case of problems, check for details provided with the matCont release1. 4 DisclaimerThe packages MATCONT and Cl maT Cont are freely available for non-commercial use onan "as is" basis. In no circumstances can the authors be held liable for any deficiency,fault or other mishappening with regard to the use or performance of MaTCont and/orCL MATCONTFor this manual, knowledge of dynamical systems theory is assumed