牛頓割線法是求解函數零點的一種常用數值計算方法,通常應用于無法精確求解方程式的情況下,尋找近似解。
在python中,可以通過以下代碼實現牛頓割線法:
def newton(f, df, x0, tol=1e-6, maxiter=100):
x = x0
for iter in range(maxiter):
fx = f(x)
dfx = df(x)
xnew = x - fx/dfx
err = abs(xnew-x)
x = xnew
if err < tol:
return x
raise ValueError(f'Failed to converge after {maxiter} iterations')
需要傳入的參數包括f(目標函數)、df(目標函數的導數)、x0(初值)、tol(容差)、maxiter(最大迭代次數)。
通過不斷迭代求解函數f的零點,最終獲得近似解。
上一篇django操作json
下一篇python 愛心樹代碼