不动点迭代法求近似值python代码
时间: 2024-11-24 08:12:38 浏览: 7
数值分析之不动点迭代求多解(结合求多个近似解位置)
不动点迭代法是一种数值计算方法,用于寻找方程f(x) = x的根。给定一个初始猜测x0,算法通过反复应用函数f直到收敛到某个解。下面是一个简单的Python代码示例,展示了如何使用不动点迭代法:
```python
def fixed_point_iteration(f, initial_guess, tolerance=1e-6, max_iterations=100):
x = initial_guess
for _ in range(max_iterations):
next_x = f(x)
if abs(next_x - x) < tolerance: # 如果相邻迭代结果差异小于阈值,则认为找到近似解
return next_x
x = next_x
print("迭代次数超过最大限制,未达到收敛")
return x
# 示例:找函数g(x) = x^2 + 1 的负根,即g(x) = x - (x^2 + 1) = 0
def g(x):
return x - (x**2 + 1)
initial_guess = 0.5 # 可以为任何实数,通常选择函数图像附近的点
approximate_root = fixed_point_iteration(g, initial_guess)
print(f"近似解:{approximate_root}")
阅读全文