當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。