布倫特方法是一種尋根演算法,它結合了根括弧法、二分法和反二次插值法。 它有時被稱為 van Wijngaarden-Deker-Brent 方法。 布倫特方法在 Wolfram 語言中作為未記錄的選項實現Method -> Brent在FindRoot[eqn,
x, x0, x1
]。
布倫特方法使用 2 次拉格朗日插值多項式。 Brent (1973) 聲稱,只要函式值在包含根的給定區域內可計算,此方法將始終收斂。 給定三個點
、
和
,布倫特方法將
擬合為
的二次函式,然後使用插值公式
![x=([y-f(x_1)][y-f(x_2)]x_3)/([f(x_3)-f(x_1)][f(x_3)-f(x_2)])+([y-f(x_2)][y-f(x_3)]x_1)/([f(x_1)-f(x_2)][f(x_1)-f(x_3)])+([y-f(x_3)][y-f(x_1)]x_2)/([f(x_2)-f(x_3)][f(x_2)-f(x_1)]).](/images/equations/BrentsMethod/NumberedEquation1.svg) |
(1)
|
後續根估計透過設定
獲得,得到
 |
(2)
|
其中
其中
(Press 等人,1992 年)。
另請參閱
二分法,
布倫特分解法,
根括弧法,
尋根演算法
使用 探索
參考文獻
Brent, R. P. 《Algorithms for Minimization Without Derivatives》第 3-4 章。 Algorithms for Minimization Without Derivatives. Englewood Cliffs, NJ: Prentice-Hall, 1973 年。Forsythe, G. E.; Malcolm, M. A.; 和 Moler, C. B. 《Computer Methods for Mathematical Computations》第 7.2 節。 Computer Methods for Mathematical Computations. Englewood Cliffs, NJ: Prentice-Hall, 1977 年。Press, W. H.; Flannery, B. P.; Teukolsky, S. A.; 和 Vetterling, W. T. "Van Wijngaarden-Dekker-Brent 方法。" 《Numerical Recipes in FORTRAN: The Art of Scientific Computing》第 2 版第 9.3 節。 Numerical Recipes in FORTRAN: The Art of Scientific Computing, 2nd ed. 劍橋,英格蘭:劍橋大學出版社,第 352-355 頁,1992 年。在 上被引用
布倫特方法
引用為
韋斯坦, 埃裡克·W. "布倫特方法。" 來自 -- 資源。 https://mathworld.tw/BrentsMethod.html
主題分類