# Maximum Codimension using BifurcationKit.jl

**URL:** https://discourse.julialang.org/t/maximum-codimension-using-bifurcationkit-jl/105087
**Category:** Modelling & Simulations
**Created:** [October 17, 2023, 5:20pm UTC](https://discourse.julialang.org/t/maximum-codimension-using-bifurcationkit-jl/105087 "2023-10-17T17:20:54Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![Rafalel\_Jupio](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rafalel_jupio/32/202530_2.png) [@Rafalel\_Jupio](https://discourse.julialang.org/u/Rafalel_Jupio)
#### Post date: [October 17, 2023, 5:20pm UTC](https://discourse.julialang.org/t/maximum-codimension-using-bifurcationkit-jl/105087/1 "2023-10-17T17:20:54Z")

</div>

Hello everyone!

I am pretty new to Julia, but I have project for which I have to analyse a bifurcation behaviour with codimension 3 for a DDE model. Hence I was wondering if BifurcationKit.jl could handle this, since in the documentation there are only example with codim 2.

Many thanks in advance!

---

<div class="post-metadata">

### Author: ![rveltz](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rveltz/32/2707_2.png) [@rveltz](https://discourse.julialang.org/u/rveltz)
#### Post date: [October 17, 2023, 5:43pm UTC](https://discourse.julialang.org/t/maximum-codimension-using-bifurcationkit-jl/105087/2 "2023-10-17T17:43:39Z")

</div>

BK does not handle codim3. The only exception is that you can continue Bogdanov Takens in 3 params but it is not shown in the tutorials. The docs mention this though

[https://bifurcationkit.github.io/BifurcationKitDocs.jl/dev/codim3Continuation/](https://bifurcationkit.github.io/BifurcationKitDocs.jl/dev/codim3Continuation/)

Note that codim 2 normal forms in DDE are not developped as much as for ODE in BK. They deserve a specific code that is yet to be added. I am not sure ddebitool have them, perhaps see [https://scholar.google.com/scholar\_url?url=https://epubs.siam.org/doi/pdf/10.1137/19M1243993&hl=en&sa=T&oi=ucasa&ct=usl&ei=7cYuZbaxDcqpy9YP6NGO-Aw&scisig=AFWwaebIfSqBkK865F\_j62eFVhYQ](https://scholar.google.com/scholar_url?url=https://epubs.siam.org/doi/pdf/10.1137/19M1243993&hl=en&sa=T&oi=ucasa&ct=usl&ei=7cYuZbaxDcqpy9YP6NGO-Aw&scisig=AFWwaebIfSqBkK865F_j62eFVhYQ)

what codim 3 are you interested in?

---

<div class="post-metadata">

### Author: ![Rafalel\_Jupio](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rafalel_jupio/32/202530_2.png) [@Rafalel\_Jupio](https://discourse.julialang.org/u/Rafalel_Jupio)
#### Post date: [October 17, 2023, 7:42pm UTC](https://discourse.julialang.org/t/maximum-codimension-using-bifurcationkit-jl/105087/3 "2023-10-17T19:42:47Z")

</div>

I see, thank you for your quick reply! This is helpful, so it seems that I cannot use Julia for my problem. Which software would you then recommend? I see there are some recommendations in the docs but not too sure which one would be best.

> what codim 3 are you interested in?

As in, what is the DDE model I am analysing, or which bifurcation am I looking for?

---

<div class="post-metadata">

### Author: ![rveltz](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rveltz/32/2707_2.png) [@rveltz](https://discourse.julialang.org/u/rveltz)
#### Post date: [October 17, 2023, 9:31pm UTC](https://discourse.julialang.org/t/maximum-codimension-using-bifurcationkit-jl/105087/4 "2023-10-17T21:31:50Z")

</div>

For DDE the most advanced is probably DDEBifTool

> which bifurcation am I looking for?

yes: which bifurcation? Hopf-Hopf-Hopf?

---

<div class="post-metadata">

### Author: ![Rafalel\_Jupio](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rafalel_jupio/32/202530_2.png) [@Rafalel\_Jupio](https://discourse.julialang.org/u/Rafalel_Jupio)
#### Post date: [October 18, 2023, 8:17am UTC](https://discourse.julialang.org/t/maximum-codimension-using-bifurcationkit-jl/105087/5 "2023-10-18T08:17:43Z")

</div>

To be honest I am not too sure… Do we have to know how it looks like prior to the analysis?  
For the simpler form of the model (for which the bifurcation had codim 1) , it is a transcritical bifurcation. But for the codim 3 version, I would assume a similar behaviour.

---

<div class="post-metadata">

### Author: ![Rafalel\_Jupio](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rafalel_jupio/32/202530_2.png) [@Rafalel\_Jupio](https://discourse.julialang.org/u/Rafalel_Jupio)
#### Post date: [October 18, 2023, 8:36am UTC](https://discourse.julialang.org/t/maximum-codimension-using-bifurcationkit-jl/105087/6 "2023-10-18T08:36:42Z")

</div>

To be more accurate, my DDE model is parameterised by 3 parameters, and I am expecting a transcritical bifurcation, where the stability of the fixed points and the location of the bifurcation depends on the 3 parameters.  
Maybe I am using the wrong terminology?

---

<div class="post-metadata">

### Author: ![rveltz](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rveltz/32/2707_2.png) [@rveltz](https://discourse.julialang.org/u/rveltz)
#### Post date: [October 18, 2023, 9:12am UTC](https://discourse.julialang.org/t/maximum-codimension-using-bifurcationkit-jl/105087/7 "2023-10-18T09:12:38Z")

</div>

Yes I think it is a wrong terminology. More or less:

codim 1 bifurcations are bifurcations which can be seen be varying a single parameter (transcritical, Hopf, pitchfork, fold)

codim 2 bifurcations are bifurcations which can be seen be varying two parameters (Hopf-Hopf, Zero-Hopf, bogdanov-takens, …)

codim 3 bifurcations are bifurcations which can be seen be varying 3 parameters

---

<div class="post-metadata">

### Author: ![Rafalel\_Jupio](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rafalel_jupio/32/202530_2.png) [@Rafalel\_Jupio](https://discourse.julialang.org/u/Rafalel_Jupio)
#### Post date: [October 18, 2023, 9:15am UTC](https://discourse.julialang.org/t/maximum-codimension-using-bifurcationkit-jl/105087/8 "2023-10-18T09:15:16Z")

</div>

Yes indeed, sorry for using the wrong terminology. So it seems that I still can use BifurcationKit.jl then.
