Owl_maths_root
Root finding algorithms for nonlinear functions
val fzero :
?solver:solver ->
?max_iter:int ->
?xtol:float ->
(float -> float) ->
float ->
float ->
float
fzero ~solver f a b
tries to find the root of univariate function f
in the bracket [a, b]
using method solver
. This is the hub function of the individual root finding algorithms in the following sections. You can certainly call each individual ones.
Parameters: * solver
: solver, default one is Brent method. * max_iter
: maximum number of iterations, default value is 1000
. * xtol
: the tolerance of x
on abscissa, default value is 1e-6
. * f
: the univariate scalar function to find root. * a
: boundary of bracket. * b
: boundary of bracket.
bisec f a b
tries to find the root of univariate function f
in the bracket defined by [a, b]
.
Parameters: * max_iter
: maximum number of iterations. * xtol
: the tolerance of x
on abscissa. * f
: the univariate scalar function to find root. * a
: boundary of bracket. * b
: boundary of bracket.
false_pos f a b
tries to find the root of univariate function f
in the bracket defined by [a, b]
.
Parameters: * max_iter
: maximum number of iterations. * xtol
: the tolerance of x
on abscissa. * f
: the univariate scalar function to find root. * a
: boundary of bracket. * b
: boundary of bracket.
ridder f a b
tries to find the root of univariate function f
in the bracket defined by [a, b]
.
Parameters: * max_iter
: maximum number of iterations. * xtol
: the tolerance of x
on abscissa. * f
: the univariate scalar function to find root. * a
: boundary of bracket. * b
: boundary of bracket.
brent f a b
tries to find the root of univariate function f
in the bracket defined by [a, b]
.
Parameters: * max_iter
: maximum number of iterations. * xtol
: the tolerance of x
on abscissa. * f
: the univariate scalar function to find root. * a
: boundary of bracket. * b
: boundary of bracket.
Refer to :cite:`brent2013algorithms`
val bracket_expand :
?rate:float ->
?max_iter:int ->
(float -> float) ->
float ->
float ->
(float * float) option
bracket_expand f a b
expands the bracket [a, b]
for a given function f
until it finds f a
and f b
have different signs.
Parameters: * max_iter
: maximum number of iterations, the default is 100 * rate
: rate of growth, the default is 1.6 * f
: the univariate scalar function to find root. * a
: initial boundary of bracket. * b
: initial boundary of bracket.