BRENT is a Python library which contains algorithms for finding zeros or minima of a scalar function of a scalar variable, by Richard Brent.
The methods do not require the use of derivatives, and do not assume that the function is differentiable.
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
BRENT is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version and a Python version.
ASA047, a Python library which minimizes a scalar function of several variables using the Nelder-Mead algorithm.
BISECTION_RC, a Python library 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).
COMPASS_SEARCH, a Python library which seeks the minimizer of a scalar function of several variables using compass search, a direct search algorithm that does not use derivatives.
LOCAL_MIN_RC, a Python library which finds a local minimum of a scalar function of a scalar variable, without the use of derivative information, using reverse communication (RC), by Richard Brent.
PRAXIS, a Python library which minimizes a scalar function of several variables, without requiring derivative information, by Richard Brent.
TEST_ZERO, a Python library which defines some test functions for which zeroes can be sought.
TOMS178, a Python library which optimizes a scalar functional of multiple variables using the Hooke-Jeeves method.
ZERO_RC, a Python library which seeks solutions of a scalar nonlinear equation f(x) = 0, or a system of nonlinear equations, using reverse communication (RC).
Original FORTRAN77 version by Richard Brent; MATLAB version by John Burkardt.
You can go up one level to the Python source codes.