matlab实验十七__牛顿迭代法

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验十七牛顿迭代法

【实验目的】

1.了解牛顿迭代法的基本概念。

2.了解牛顿迭代法的收敛性和收敛速度。

3.学习、掌握MATLAB软件的有关命令。

【实验内容】

用牛顿迭代法求方程3210

x x x

10-。

++-=的近似根,误差不超过3【实验准备】

1.牛顿迭代法原理

2.牛顿迭代法的几何解析

3.牛顿迭代法的收敛性

4.牛顿迭代法的收敛速度

5.迭代过程的加速

6.迭代的MATLAB命令

MATLAB中主要用for,while等控制流命令实现迭代。

【实验重点】

1.牛顿迭代法的算法实现

2.牛顿迭代法收敛性和收敛速度

【实验难点】

1.牛顿迭代法收敛性和收敛速度

【实验方法与步骤】

练习1用牛顿迭代法求方程3210

++-=在x=0.5附近的近似

x x x

根,误差不超过310-。

牛顿迭代法的迭代函数为

322()1()()321

f x x x x

g x x x f x x x ++-=-=-'++ 相应的MATLAB 代码为

>>clear;

>>x=0.5;

>>for i=1:3

>>x=x-(x^3+x^2+x-1)/(3*x^2+2*x+1)

>>end

可算的迭代数列的前3项0.5455,0.5437,0.5437。经三次迭代,就大大超过了精度要求。

练习2 用牛顿迭代法求方程2(0)x a a =>的近似正实根,由此建立一种求平方根的计算方法。 由计算可知,迭代格式为1()()2a g x x x =+,在实验12的练习4中已经进行了讨论。

【练习与思考】

1.用牛顿迭代法求方程ln 1x x =的近似根。

2.为求出方程310x x --=的根,在区间[1,2]内使用迭代函数进行迭代,纪录迭代数据,问迭代是否收敛?对迭代进行加速,对比加速前的数据,比较加速效果。

3.使用在不动点*x 的泰勒公式,证明牛顿迭代法收敛原理。

相关文档
最新文档