python迭代法求解非线性方程,数值分析实验之非线性方程求根(Python 现)

本文介绍了使用Python实现非线性方程的迭代求解方法,包括二分法、不动点迭代和牛顿迭代法。通过具体代码展示了如何求解特定非线性方程,并给出了每种方法的运行结果。
摘要由CSDN通过智能技术生成

详细实验指导见上一篇,此处只写内容啦

实验内容:

1. 用二分法求方程x3-3x-1=0在的所有根.要求每个根的误差小于0.001.

提示与要求: (1) 利用精度找到迭代次数;

(2) 由f(x)=3(x2-1)可取隔根区间[-2,-1].[-1,1].[1,2]);

(3) 用程序求各隔根区间内的根.

2. 用不动点迭代求: (1)x3+2x2+10x-20=0的所有根.

或: (2)9x2-sinx-1=0在[0,1]上的一个根.

3. 用Newton迭代法求解下列之一,准确到10-5:

(1) x3-x-1=0的所有根;

(2) ex+2-x+2cosx-6=0位于[0,2]上的根.

实验代码:

• 牛顿迭代法

1 import math

2 x=0.5

3 n = 1

4 while n ==1 or abs(x-x1)>1e-5:

5 x1 = x

6 def F(x1):

7 return 2**-x+2*math.cos(x)+math.exp(x)-6

8 def F1(x1):

9 return math.exp(x)-math.log(2)*(2**-x)-2*math.sin(x)

10 x = x1 - F(x1)/F1(x1)

11 print ('迭代步数:',n,'X1计算值=',x1,'X计算值=',x)

12 n = n+1

13 else:

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值