IntervalRootFinding.jl icon indicating copy to clipboard operation
IntervalRootFinding.jl copied to clipboard

Specifying a maximum number of bisections

Open AnderGray opened this issue 2 years ago • 1 comments

Is it possible to specify a maximum number of bisections?

I see there are some functions where you can specify maxlevels:

function find_roots(f::Function, a::Interval{T}, method::Function = newton;
                    tolerance = eps(T), debug = false, maxlevel = 30) where {T}

    method(f, a; tolerance=tolerance, debug=debug, maxlevel=maxlevel)
end

but not sure if it's used in the method. I guess this was put here as a future feature?

I've tried also changing tol, but it didn't seem to change much.

AnderGray avatar Aug 12 '21 11:08 AnderGray

This is not supported by the interface currently. IIRC find_roots is the older interface, that has been superseeded by roots.

In principle all that is needed is to pass the information around down to the search iterator and stop it early if the maxlevel is reached.

Related #59, #109, #116.

Kolaru avatar Aug 12 '21 14:08 Kolaru