**bisection**,
a Fortran90 code which
applies the bisection method to seek a root of f(x)
over a change-of-sign interval a <= x <= b.

The computer code and data files made available on this web page are distributed under the MIT license.

**bisection** is available in
a C version and
a C++ version and
a Fortran90 version and
a Julia version and
a MATLAB version and
an Octave version and
a Python version and
an R version.

bisection_integer, a Fortran90 code which seeks an integer solution to the equation f(x)=0, using bisection within a user-supplied change of sign interval [a,b].

bisection_rc, a Fortran90 code which seeks a solution to the equation f(x)=0 using bisection within a user-supplied change of sign interval [a,b]. the procedure is written using reverse communication (RC).

fsolve, a Fortran90 code which seeks the solution x of one or more nonlinear equations f(x)=0.

test_zero, a Fortran90 code which implements test problems for the solution of a single nonlinear equation in one variable.

zero_brent, a Fortran90 code which seeks a solution of a scalar nonlinear equation f(x) = 0, by Richard Brent.

zero_itp, a Fortran90 code which finds a zero of a scalar function of a scalar variable, starting from a change of sign interval, using the Interpolate/Truncate/Project (ITP) method, which has faster convergence than the bisection method.

zero_laguerre, a Fortran90 code which uses Laguerre's method to find the zero of a function. The method needs first and second derivative information. The method almost always works when the function is a polynomial.

zero_muller, a Fortran90 code which seeks a root of a nonlinear equation using the Muller method, with complex arithmetic.

zero_rc, a Fortran90 code which seeks solutions of a scalar nonlinear equation f(x) = 0, or a system of nonlinear equations, using reverse communication (RC).

- bisection.f90 the source code.
- bisection.sh compiles the source code.