本文簡要介紹 python 語言中 scipy.optimize.ridder
的用法。
用法:
scipy.optimize.ridder(f, a, b, args=(), xtol=2e-12, rtol=8.881784197001252e-16, maxiter=100, full_output=False, disp=True)#
使用 Ridder 的方法在區間中找到函數的根。
- f: 函數
Python 函數返回一個數字。 f 必須是連續的,並且 f(a) 和 f(b) 必須有相反的符號。
- a: 標量
包圍區間 [a,b] 的一端。
- b: 標量
包圍區間 [a,b] 的另一端。
- xtol: 編號,可選
計算出的根
x0
將滿足np.allclose(x, x0, atol=xtol, rtol=rtol)
,其中x
是精確根。該參數必須為正數。- rtol: 編號,可選
計算的根
x0
將滿足np.allclose(x, x0, atol=xtol, rtol=rtol)
,其中x
是確切的根。該參數不能小於其默認值4*np.finfo(float).eps
。- maxiter: 整數,可選
如果在 maxiter 迭代中未實現收斂,則會引發錯誤。必須 >= 0。
- args: 元組,可選
包含函數的額外參數f.f被稱為
apply(f, (x)+args)
.- full_output: 布爾型,可選
如果full_output為 False,則返回根。如果full_output為真,返回值為
(x, r)
,其中x是根,並且r是一個RootResults
對象。- disp: 布爾型,可選
如果為真,如果算法沒有收斂,則提高 RuntimeError。否則,收斂狀態記錄在任何
RootResults
返回對象中。
- root: 浮點數
a 和 b 之間的 f 的根。
- r:
RootResults
(如果full_output = True
則存在) 包含有關收斂信息的對象。特別是,如果例程收斂,
r.converged
為 True。
參數 ::
返回 ::
注意:
用途[裏德斯1979]求函數根的方法f參數之間a和b. Ridders 的方法比二分法快,但通常不如 Brent 例程快。[裏德斯1979]提供算法的經典說明和來源。在任何最新版本的數字食譜中也可以找到說明。
這裏使用的例程與標準演示略有不同,以便更加小心容忍。
參考:
[騎手1979] (1,2)Ridders, C. F. J. “一種計算實連續函數單根的新算法。” IEEE Trans。電路係統 26, 979-980, 1979。
例子:
>>> def f(x): ... return (x**2 - 1)
>>> from scipy import optimize
>>> root = optimize.ridder(f, 0, 2) >>> root 1.0
>>> root = optimize.ridder(f, -2, 0) >>> root -1.0
相關用法
- Python SciPy optimize.rosen_der用法及代碼示例
- Python SciPy optimize.rosen用法及代碼示例
- Python SciPy optimize.root用法及代碼示例
- Python SciPy optimize.rosen_hess用法及代碼示例
- Python SciPy optimize.rosen_hess_prod用法及代碼示例
- Python SciPy optimize.root_scalar用法及代碼示例
- Python SciPy optimize.line_search用法及代碼示例
- Python SciPy optimize.shgo用法及代碼示例
- Python SciPy optimize.minimize_scalar用法及代碼示例
- Python SciPy optimize.fmin用法及代碼示例
- Python SciPy optimize.NonlinearConstraint用法及代碼示例
- Python SciPy optimize.KrylovJacobian用法及代碼示例
- Python SciPy optimize.toms748用法及代碼示例
- Python SciPy optimize.linprog_verbose_callback用法及代碼示例
- Python SciPy optimize.bracket用法及代碼示例
- Python SciPy optimize.milp用法及代碼示例
- Python SciPy optimize.diagbroyden用法及代碼示例
- Python SciPy optimize.bisect用法及代碼示例
- Python SciPy optimize.isotonic_regression用法及代碼示例
- Python SciPy optimize.golden用法及代碼示例
- Python SciPy optimize.brute用法及代碼示例
- Python SciPy optimize.newton用法及代碼示例
- Python SciPy optimize.fsolve用法及代碼示例
- Python SciPy optimize.Bounds用法及代碼示例
- Python SciPy optimize.fixed_point用法及代碼示例
注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.optimize.ridder。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。