- To see if the system has reached a steady state, check y(:,1), y(:,2), ..., y(:,5) for multiple time points at the end of the simulation, to see if the vector y has stabilized.
How do I plot a bifurcation diagram with known dynamical equations of motion (> 3 dimension)?
41 views (last 30 days)
Show older comments
I have equation of motions for a system.The system is given by,
d[y]/dt=[f(x,t,parameters)] where, [y] is say 5 dimensional. I want to see how the solution changes with parameter. How do I write a code for that? The system is non-linear. Earlier I tried to plot bifurcation tree diagram for the system by storing variable after each period,by changing the parameter gradually to observe period doubling bifurcation, but in some cases I find some discontinuities that I don't quite understand. Any reference on how to correctly plot bifurcation diagram would be appreciated.

0 Comments
Answers (2)
William Rose
on 10 Nov 2022
Let's suppose that y is 1x5 and that the parameter is A, as in your diagram. Let's also assume that the equaitons of the systyem are too complicated to solve analytically. Therefore we will have to rely on numerical simulation. Make vector A with size Nx1, containing all the A values you want to have on your bifurcaiton diagram. Simulate the system with A=A(1). After a suitable simulation duraiton, evalute y(:) to see if it has reached a steady state (1). If y has reached a steady state, save the steady state values of y(1:5) as one row of a Nx5 array, for example yss1() (for steady state solution 1). We will use array yss1 for plotting later. Repeat with all N values of A. If you find no steady state solution for a particular value of A, save a row of NaNs in yss1(), for that particular vlaue of A. After you have done all N values of A, plot yss1(:,1) versus A. If there are multiple steady state solutions , you will have to find them by repeating the process above, but with different initial conditions. Your knowledge of the system should help you in this regard. On this second pass, in which you start from different inital points than what you used before, save the steady state solutions in yss2(). When done, add the plot of yss2(:,1) to the plot.
I am attaching a recent publication (here, but may be paywalled), in which we published experimental and theoretical bifurcation diagrams for a complex system. Figures 4-9 are bifurcation diagrams in which the parameter on the horizontal axis is the frequency of external stimulation. This was a study of the repsonse of a non-linear optical system to external laser modulation. We did not do the bifurcaiton analysis as described above, because "steady state" meant a phase-locked solution, which was not a steady state in the traditional sense.
3 Comments
William Rose
on 17 Nov 2022
@Rebeka, I'm sorry but I do not have more to deevote to theis problem. I hope others will assist you.
Lazaros Moysis
on 12 Mar 2025
The bifurcation diagram depicts changes in the dynamical behavior of the system, as one parameter changes. Changing a parameter of the system will change the dynamical behavior of the system. The bifurcation diagrams depicts exactly these changes. So by looking at it, we can understand for which parameter values the system is periodic with period-n, or chaotic. We do this usually by computing how many intersections the system's trajectory will have with a specific plane. If it is periodic, it will have a fixed amount of intersections, if it is chaotic it will have inumerable amount of intersections. The diagram depicts these points of intersection, so we can observe the behavior of the system, as well as how it transitions in and out of chaos as a parameter changes. The following two videos explain the theory behind the diagram, as well as the Matlab code to generate it. They will help you immensly in understanding the diagram.
0 Comments
See Also
Categories
Find more on Robotics in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!