Menu

#33 Classification of HB points

---
closed
None
2023-08-16
2016-03-30
No

Hi guys,

I'm looking to write some code that enables COCO to identify the nature of a HB point when they are detected during an EQ continuation (e.g. with labels like SUB/SUP for example). Is there any pre-written function that does this already, or do I need to do this myself?

Exercise 17.6 in 'Recipes For Continuation' looks very relevant for this (Lyapunov monitor function) - I don't suppose there are any exercise solutions available anywhere?

I'm enjoying using COCO for my PhD.

Many thanks,

Andy

Discussion

  • Harry Dankowicz

    Harry Dankowicz - 2016-03-30
    • status: open --> discussion
     
  • Harry Dankowicz

    Harry Dankowicz - 2016-03-30

    Hi Andy,

    Glad to hear that you are enjoying COCO.

    As you may know, the current release of COCO includes an equilibrium point toolbox ('ep') that supports bifurcation detection and continuation. The toolbox is accompanied by a tutorial file in the coco/help folder and demos in coco/ep/examples. The example in Section 6 shows the inclusion of a monitor function for the first Lyapunov coefficient, albeit only for a quadratic vector field. This function can be used to detect and locate generalized Hopf bifurcations, where this coefficient vanishes, during continuation of Hopf bifurcation points.

    This function can be easily modified to account for arbitrary vector fields. A general purpose function should probably support finite-different approximations for all derivatives.

    If you wanted to integrate this calculation in the detection of a Hopf bifurcation, the Lyapunov coefficient formula should be built into the event handling function for the Hopf bifurcation. This function is encoded in the ep_construct_tst.m function in coco/ep/toolbox/private and is currently used to distinguish between Hopf bifurcations and neutral saddle points, as described in Chapter 17 of Recipes for Continuation.

    A similar approach can be taken to implement the computation (and storage in chart data) of any normal-form coefficients associated with various bifurcations of equilibria.

    I hope this helps. If you implement a solution that you feel like sharing with other users, please attach it to a reply.

     
  • Andrew Eaton

    Andrew Eaton - 2016-03-30

    Hi Harry, thanks for the speedy reply. I'll see how I get on!

    Cheer, Andy

     
  • Frank Schilder

    Frank Schilder - 2016-03-30

    Hi Andy, a function to classify HB points would be a very welcome contribution. As Harry describes above, it seems best to make this function a subfunction of ep_construct_tst.m and send us the modified file as an attachment to this ticket.

    If you have the intention to do more coding in the future, we can add you as a developer to the project.

     
  • Frank Schilder

    Frank Schilder - 2016-03-30
    • assigned_to: Frank Schilder
     
  • Harry Dankowicz

    Harry Dankowicz - 2023-08-16

    The 'ep' tutorial documentation and demos includes an example (chemosc) that accomplishes this for a quadratic vector field. The GettingStartedwithCOCO tutorial documentation and demos shows a complete encoding for an arbitrary vector field.

     
  • Harry Dankowicz

    Harry Dankowicz - 2023-08-16
    • status: discussion --> closed
     

Log in to post a comment.