牛顿迭代法python代码
时间: 2023-10-12 21:19:10 浏览: 177
牛顿迭代法
以下是牛顿迭代法的Python代码:
```python
def newton(f, df, x0, eps=1e-5, max_iter=100):
"""
:param f: the function f(x)
:param df: the derivative of f(x)
:param x0: the initial guess
:param eps: the tolerance for stopping criterion
:param max_iter: the maximum number of iterations
:return: the root of f(x)
"""
x = x0
for i in range(max_iter):
fx = f(x)
dfx = df(x)
if abs(fx) < eps:
return x
x = x - fx / dfx
return x
```
这段代码实现了牛顿迭代法,通过不断逼近函数的根来求解方程。具体来说,给定一个函数$f(x)$以及它的导数$df(x)$,我们从一个初始的猜测$x0$开始迭代,每次更新$x$的值为$x-\frac{f(x)}{df(x)}$,直到$f(x)$的绝对值小于给定的容差$\epsilon$或达到最大迭代次数。最终返回的$x$即为方程的根。
阅读全文