当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python SciPy optimize.BroydenFirst用法及代码示例


本文简要介绍 python 语言中 scipy.optimize.BroydenFirst 的用法。

用法:

class  scipy.optimize.BroydenFirst(alpha=None, reduction_method='restart', max_rank=None)#

使用 Broyden 的第一个 Jacobian 近似求函数的根。

这种方法也被称为“布罗伊登的好方法”。

参数

%(params_basic)s
%(broyden_params)s
%(params_extra)s

注意

该算法实现了逆雅可比Quasi-Newton更新

这对应于 Broyden 的第一个 Jacobian 更新

参考

[1]

学士学位van der Rotten,PhD 论文,“求解非线性方程的高维系统的有限 memory Broyden 方法”。荷兰莱顿大学数学研究所(2003 年)。

https://web.archive.org/web/20161022015821/http://www.math.leidenuniv.nl/scripties/Rotten.pdf

例子

以下函数定义了一个非线性方程组

>>> def fun(x):
...     return [x[0]  + 0.5 * (x[0] - x[1])**3 - 1.0,
...             0.5 * (x[1] - x[0])**3 + x[1]]

可以如下获得解决方案。

>>> from scipy import optimize
>>> sol = optimize.broyden1(fun, [0, 0])
>>> sol
array([0.84116396, 0.15883641])

相关用法


注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.optimize.BroydenFirst。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。