{"action":"created","issue":{"url":"https://api.github.com/repos/JuliaIntervals/IntervalRootFinding.jl/issues/93","repository_url":"https://api.github.com/repos/JuliaIntervals/IntervalRootFinding.jl","labels_url":"https://api.github.com/repos/JuliaIntervals/IntervalRootFinding.jl/issues/93/labels{/name}","comments_url":"https://api.github.com/repos/JuliaIntervals/IntervalRootFinding.jl/issues/93/comments","events_url":"https://api.github.com/repos/JuliaIntervals/IntervalRootFinding.jl/issues/93/events","html_url":"https://github.com/JuliaIntervals/IntervalRootFinding.jl/pull/93","id":353568016,"node_id":"MDExOlB1bGxSZXF1ZXN0MjEwNTg2NjY0","number":93,"title":"Fix bug with interval going outside the domain of a function","user":{"login":"Kolaru","id":17861033,"node_id":"MDQ6VXNlcjE3ODYxMDMz","avatar_url":"https://avatars2.githubusercontent.com/u/17861033?v=4","gravatar_id":"","url":"https://api.github.com/users/Kolaru","html_url":"https://github.com/Kolaru","followers_url":"https://api.github.com/users/Kolaru/followers","following_url":"https://api.github.com/users/Kolaru/following{/other_user}","gists_url":"https://api.github.com/users/Kolaru/gists{/gist_id}","starred_url":"https://api.github.com/users/Kolaru/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Kolaru/subscriptions","organizations_url":"https://api.github.com/users/Kolaru/orgs","repos_url":"https://api.github.com/users/Kolaru/repos","events_url":"https://api.github.com/users/Kolaru/events{/privacy}","received_events_url":"https://api.github.com/users/Kolaru/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2018-08-23T21:54:13Z","updated_at":"2018-12-13T02:20:51Z","closed_at":null,"author_association":"COLLABORATOR","pull_request":{"url":"https://api.github.com/repos/JuliaIntervals/IntervalRootFinding.jl/pulls/93","html_url":"https://github.com/JuliaIntervals/IntervalRootFinding.jl/pull/93","diff_url":"https://github.com/JuliaIntervals/IntervalRootFinding.jl/pull/93.diff","patch_url":"https://github.com/JuliaIntervals/IntervalRootFinding.jl/pull/93.patch"},"body":"Fix #90. The strategy is simple:\r\n\r\n- If the image of an interval is empty discard it as there is no solution inside.\r\n- If the image is not empty but the contracted interval is, force bisection.\r\n\r\nEdit: I thought I had errors, but one of my packages was not up to date."},"comment":{"url":"https://api.github.com/repos/JuliaIntervals/IntervalRootFinding.jl/issues/comments/446818365","html_url":"https://github.com/JuliaIntervals/IntervalRootFinding.jl/pull/93#issuecomment-446818365","issue_url":"https://api.github.com/repos/JuliaIntervals/IntervalRootFinding.jl/issues/93","id":446818365,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0NjgxODM2NQ==","user":{"login":"dpsanders","id":191822,"node_id":"MDQ6VXNlcjE5MTgyMg==","avatar_url":"https://avatars0.githubusercontent.com/u/191822?v=4","gravatar_id":"","url":"https://api.github.com/users/dpsanders","html_url":"https://github.com/dpsanders","followers_url":"https://api.github.com/users/dpsanders/followers","following_url":"https://api.github.com/users/dpsanders/following{/other_user}","gists_url":"https://api.github.com/users/dpsanders/gists{/gist_id}","starred_url":"https://api.github.com/users/dpsanders/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dpsanders/subscriptions","organizations_url":"https://api.github.com/users/dpsanders/orgs","repos_url":"https://api.github.com/users/dpsanders/repos","events_url":"https://api.github.com/users/dpsanders/events{/privacy}","received_events_url":"https://api.github.com/users/dpsanders/received_events","type":"User","site_admin":false},"created_at":"2018-12-13T02:20:51Z","updated_at":"2018-12-13T02:20:51Z","author_association":"MEMBER","body":"With this PR, I get the following for the test case in #90:\r\n```jl\r\njulia> f(xx) = ( (x, y) = xx; SVector( log(y/x) + 3x, y -2x) )\r\nf (generic function with 1 method)\r\n\r\njulia> X = IntervalBox(-100..100, 2)\r\n[-100, 100] × [-100, 100]\r\n\r\njulia> roots(f, X)\r\n8-element Array{Root{IntervalBox{2,Float64}},1}:\r\n Root([1.16965e-16, 8.42871e-16] × [1.16965e-16, 8.42871e-16], :unknown)\r\n Root([-5.97685e-16, 1.16966e-16] × [1.16965e-16, 8.42871e-16], :unknown)\r\n Root([-5.97685e-16, 1.16966e-16] × [-5.97685e-16, 1.16966e-16], :unknown)\r\n Root([-5.97685e-16, 1.16966e-16] × [-1.31234e-15, -5.97684e-16], :unknown)\r\n Root([-1.31234e-15, -5.97684e-16] × [-1.31234e-15, -5.97684e-16], :unknown)\r\n Root([-1.31234e-15, -5.97684e-16] × [-2.01591e-15, -1.31233e-15], :unknown)\r\n Root([-2.01591e-15, -1.31233e-15] × [-2.74181e-15, -2.0159e-15], :unknown)\r\n Root([-0.23105, -0.231049] × [-0.462099, -0.462098], :unique)\r\n\r\njulia> roots(f, X, Krawczyk)\r\n0-element Array{Root{IntervalBox{2,Float64}},1}\r\n```\r\n\r\nSo Newton seems to be working now (maybe there is a double root at (0, 0)?)\r\nBut Krawczyk isn't."}}
{"actor":{"display_login":"dpsanders"}}