牛顿迭代法python_python 牛顿迭代法
时间: 2023-07-01 11:26:46 浏览: 172
牛顿迭代法求解_牛顿迭代法_python_下三角矩阵求解_解方程_
5星 · 资源好评率100%
好的,牛顿迭代法是一种求解方程近似解的方法,可以用于求解非线性方程或者优化问题。在Python中,可以使用以下代码实现牛顿迭代法:
```python
def newton(f, df, x0, tol=1e-6, max_iter=100):
"""
:param f: 目标函数
:param df: 目标函数的一阶导数
:param x0: 迭代初始值
:param tol: 迭代精度
:param max_iter: 最大迭代次数
:return: x: 方程的近似解
"""
for i in range(max_iter):
x = x0 - f(x0) / df(x0)
if abs(x - x0) < tol:
return x
x0 = x
return x
```
其中,f是目标函数,df是目标函数的一阶导数,x0是迭代初始值,tol是迭代精度,默认值为1e-6,max_iter是最大迭代次数,默认值为100。函数返回方程的近似解x。
下面是一个使用牛顿迭代法求解方程x^2-2=0的例子:
```python
def f(x):
return x**2 - 2
def df(x):
return 2 * x
x0 = 1.5
x = newton(f, df, x0)
print(x)
```
输出结果为1.4142135623746899,可以看到近似解非常接近方程的真实解sqrt(2)。
阅读全文