scipy.optimize.

fixed_point#

scipy.optimize.fixed_point(func, x0, args=(), xtol=1e-08, maxiter=500, method='del2')[源代码]#

查找函数的定点。

给定一个或多个变量的函数和一个起始点,找到该函数的定点:即 func(x0) == x0 的位置。

参数:
func函数

要评估的函数。

x0类数组

函数的定点。

args元组,可选

传递给 func 的额外参数。

xtol浮点数,可选

收敛容差,默认为 1e-08。

maxiter整数,可选

最大迭代次数,默认为 500。

method{“del2”, “iteration”}, 可选

查找定点的方法,默认为“del2”,它使用 Steffensen 方法和 Aitken 的 Del^2 收敛加速 [1]。“iteration”方法只是迭代函数直到检测到收敛,而不尝试加速收敛。

参考文献

[1]

Burden, Faires, “数值分析”,第 5 版,第 80 页

示例

>>> import numpy as np
>>> from scipy import optimize
>>> def func(x, c1, c2):
...    return np.sqrt(c1/(x+c2))
>>> c1 = np.array([10,12.])
>>> c2 = np.array([3, 5.])
>>> optimize.fixed_point(func, [1.2, 1.3], args=(c1,c2))
array([ 1.4920333 ,  1.37228132])