-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use Brent's method instead of bisection for locating bifurcations #17
Comments
I thought about this recently and I have an issue. Typically, the function |
Can't you just rootfind on the eigenvalue itself? I thought that was how it worked |
Probably on the closest to zero, you are right. Now the "devil is in the details":
Another point is that I will feature event detection soon. There will be two kind of events: discrete and continuous. Discrete callbacks are the ones for which you look for a change in their value. For Continuous callbacks, you seek for their zeros. Bisection algo provides a single framework for handling the two different callbacks under the hood of an These callbacks will be the basis for codim 2 continuation (Bogdanov-Takens, Bautin, Hopf-Hopf...) |
One thing that could work is bisecting until you get to a region where you only have one crossing eigenvalue, and then do bisection. You could just say that you ignore eigenvalues that are smaller than some tolerance in absolute value |
I will try to make a MWE when I have some time. |
Feature request: use Brent's method for bifurcation location. Should be as robust and faster than bisection. There's a julia implementation over at Roots.jl (although the algorithm as described on wikipedia might be sufficient if you don't want to depend on Roots)
The text was updated successfully, but these errors were encountered: