JuliaIntervals / IntervalRootFinding.jl

Library for finding the roots of a function using interval arithmetic
https://juliaintervals.github.io/IntervalRootFinding.jl/
Other
127 stars 26 forks source link

Problems when using current master of IntervalArithmetics #84

Closed lbenet closed 5 years ago

lbenet commented 6 years ago

Working on #178 with current master of IntervalArithmetics.jl tests are broken. This is is related with https://github.com/JuliaIntervals/IntervalArithmetic.jl/pull/162, but after that, it is still yielding errors that look like this:

2D roots: Error During Test
  Got an exception of type MethodError outside of a @test
  MethodError: no method matching ForwardDiff.Dual{ForwardDiff.Tag{#f#6,IntervalArithmetic.IntervalBox{2,Float64}},V,N} where N where V<:Real(::IntervalArithmetic.IntervalBox{2,Float64}, ::ForwardDiff.Chunk{1}, ::Val{1})
  Stacktrace:
   [1] macro expansion at /Users/benet/.julia/v0.6/ForwardDiff/src/apiutils.jl:26 [inlined]
   [2] dualize at /Users/benet/.julia/v0.6/ForwardDiff/src/apiutils.jl:22 [inlined]
   [3] static_dual_eval at /Users/benet/.julia/v0.6/ForwardDiff/src/apiutils.jl:30 [inlined]
   [4] vector_mode_jacobian at /Users/benet/.julia/v0.6/ForwardDiff/src/jacobian.jl:172 [inlined]
   [5] jacobian at /Users/benet/.julia/v0.6/ForwardDiff/src/jacobian.jl:81 [inlined]
   [6] #40 at /Users/benet/.julia/v0.6/IntervalRootFinding/src/roots.jl:146 [inlined]
   [7] 𝒩(::#f#6, ::IntervalRootFinding.##40#41{#f#6}, ::IntervalArithmetic.IntervalBox{2,Float64}) at /Users/benet/.julia/v0.6/IntervalRootFinding/src/contractors.jl:105
   [8] newtonlike_contract(::IntervalRootFinding.#𝒩, ::IntervalRootFinding.Newton{#f#6,IntervalRootFinding.##40#41{#f#6}}, ::IntervalArithmetic.IntervalBox{2,Float64}, ::Float64) at /Users/benet/.julia/v0.6/IntervalRootFinding/src/contractors.jl:47
...

Any idea where is the problem?

eeshan9815 commented 6 years ago

Tests pass on the lb/iss78 branch. So, it should be resolved after merging #83