-
Notifications
You must be signed in to change notification settings - Fork 25
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
Krawczyk fails for functions with interval parameters #99
Comments
Thanks for the report. Krawczyk hasn't received much attention. Presumably it's supposed to work for cases like this? Bisection also does badly, since it ends up bisecting the interval that is the solution :/ |
The problem is not the interval parameters, but the fact that our favorite example currently fails with Krawczyk, because the derivative is 0 at the middle point: julia> roots(x -> x^2 - 2, -4..4, Krawczyk)
0-element Array{Root{Interval{Float64}},1} The reason is given in the new issue #102. If the interval is not symmetric, it does just fine: julia> roots(x -> x^2 - (2..2.1), -4..4.0001, Krawczyk)
2-element Array{Root{Interval{Float64}},1}:
Root([1.4141, 1.44947], :unique)
Root([-1.44947, -1.4141], :unique) Theoretically it is supposed to work fine in this case because for an interval On the up side, I need to do this, so I will be implementing an algorithm doing exactly this tonight :D |
This seems to be fixed now:
|
Needs a test. |
I've added it to the (ever growing) list of missing tests in #115. |
Newton seems to be fine
The text was updated successfully, but these errors were encountered: