牛顿改进弦截法matlab,Newton迭代法、弦截法上机实验报告 2.doc

您所在位置:网站首页 > 海量文档

&nbsp>&nbsp高等教育&nbsp>&nbsp工学

7e3e25dd1884ce9b7725a69a698d5758.gif

Newton迭代法、弦截法上机实验报告 2.doc4页

本文档一共被下载:2377011b61454b208b34ad77b4c31088.gif次,您可全文免费在线阅读后下载本文档。

072ad097814a33d1ad18e33ca14a5a9e.png

9ec2792a743ebdf4575ee09a03c275ea.png

7af312d1be2cfc1e59f15880bb7a7e7a.png

5f207613e329ca76dc87c76d3ff77e64.png

adf7aa3071c520b8a2063089f549261c.png

下载提示

1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。

2.该文档所得收入(下载+内容+预览三)归上传者、原创者。

3.登录后可充值,立即自动返金币,充值渠道很便利

中国矿业大学(北京)理学院

数值分析实验报告

实验名称已知数据点,求Lagrange插值多项式.

实验时间2012.4.3组长签名龙纯鹏班级信息与计算科学(1)班学号11107200110成绩组员签名1110720010111107200102111072001031110720011911107200120一、实验目的,内容 二、相关背景知识介绍 三、代码

四、数值结果 五、计算结果的分析 六、计算中出现的问题,解决方法及体会一、实验目的、内容

实验目的:

内容:

已知数据点,求三次Lagrange插值多项式, 并求

相关背景知识介绍

1.牛顿迭代法原理:

设已知方程的近似根,则在附近可用一阶泰勒多项式近似代替.因此, 方程可近似地表示为.用表示的根,它与的根差异不大.

设,由于满足解得

重复这一过程,得到迭代格式

.

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

在处作曲线的切线,切线方程为。令,可得切线与轴的交点坐标,这就是牛顿法的迭代公式。因此,牛顿法又称“切线法”。

3.牛顿迭代法的收敛性

计算可得,设是的单根,有,则

,

故在附近,有.根据不动点原理知牛顿迭代法收敛.

4.程序设计思路:

先用m文件先定义一个名为f1.m的函数文件。

function y = f1(x)

y = ;

再定义一个名为df1.m的函数文件

function y=df1(x)

y=

建立一个主程序prog1.m

clear

newton('f1','df1',1, 10^(-5), 10)

然后在MATLAB命令窗口运行上述主程序,即:

>> prog1

代码(Matlab)function [x2,k]=kkoo(x0,x1,esp)

esp=0.00005;

x0=2;

x1=3;

x2=x1-(x1-2^(-x1))/(1+log(2)*2^(-x1));

k=0;

while abs(x1-x0)>esp

x0=x1;

x1=x2;

x2=x1-f(x1)*(x1-x0)/(f(x1)-f(x0));

k=k+1;

end

x2

k

df1.m:

function [x1,k]=wu(x0,esp)

esp=0.00005;

x0=0.4;

x1=x0-f(x0)/f1(x0);

k=0;

while abs(x1-x0)>esp

x0=x1;

x1=x0-f(x0)/f1(x0);

k=k+1;

end

x1

k

四、

在matlab运算结果如下表:

k

k

k

1

2

3

4

5

0.5000

0.6250

0.6563

0.6484

0.6445

6

7

8

9

10

0.6416

0.6411

0.6412

0.6414

0.6412

11

12

13

14

15

0.6412

0.6412

0.6412

0.6412

0.6412

0.6412

K=7

五、计算结果的分析

方程,的近似根为0.6412

方程图如下:当k增大时,x 的值趋近于一个常数,即方程的根。

计算中出现的问题,解决方法及体会

二分法尽管其收敛速度不太快,但二分法简单直观,特别适合于为收敛的迭代公式提供好的初值。牛顿迭代法具有较快的收敛速度,但对初值选取要求较高。弦截法比牛顿迭代法收敛速度稍慢,但它的计算量比牛顿迭代法小,特别当都函数的导数的计算比较复杂时,弦截法更显示了它的优越性。

教 师 评 语

指导教师:

2013 年 3 月 20 日

1

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名:

验证码:

c9f2bced460b0329ba0aadbbc3f0fc71.png

匿名?

发表评论

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 目的: (1)通过采用牛顿迭代法弦截法和二分法的程序设计,使学生更加系统地理解和掌握C语言函数间参数传递方法、数组和指针的应用等编程技巧。培养学生综合利用C语言进行科学计算,使学生将所学知识转化为分析和设计数学中的实际问题的能力,学会查资料和工具书。 (2)提高学生建立程序文档、归纳总结的能力。 (3)进一步巩固和灵活运用先修课程《计算机文化基础》有关文字处理、图表分析、数据归整、应用软件之间图表、数据共享等信息技术处理的综合能力。 2. 基本要: (1)要用模块化设计和C语言的思想来完成程序的设计; (2)要分别编写牛顿迭代法弦截法和二分法的函数,分别存到不同的.CPP文件中; (3)在VC++6.0环境中,学会调试程序的方法,及时查究错误,独立调试完成。 (4)程序调试通过后,完成程序文档的整理,加必要的注释。 一般解一元方程,常用采用的方法有:牛顿迭代法弦截法和二分法等。 牛顿迭代法 〖〖f(x)=a〗_0 x〗^n 〖〖 + a〗_1 x〗^(n-1) +⋯+〖 a〗_(n-2) x^2 +〖 a〗_(n-1) x +〖 a〗_n=0 f(x)在〖 x〗_0附近的。 计算公式:〖 x〗_(n+1)=〖 x〗_n- f(〖 x〗_n )/(f(〖 x〗_n)) ́ 精度:ε=|〖 x〗_(n+1)-〖 x〗_n|<1.0e-m ,m=6。 牛顿迭代法:满足精度的〖 x〗_n 二分法 任取两点〖 x〗_1和〖 x〗_2,判断(〖 x〗_1, 〖 x〗_2)有无实。如下图所示,如果f(〖 x〗_1 )和f(〖 x〗_2 )符号相反,说明(〖 x〗_1, 〖 x〗_2)之间有一实。取(〖 x〗_1, 〖 x〗_2)的中点x,检查f(x)和f(〖 x〗_1 )是否同符号,如果不同号,说明实在(〖 x〗_1,x)区间,x作为新的〖 x〗_2,舍弃(x, 〖 x〗_2)区间;若同号,则实在(x, 〖 x〗_2)区间,x作为新的〖 x〗_1, 舍弃(〖 x〗_1,x)区间。再据新的〖 x〗_1 、 〖 x〗_2,找中点,重复上述步骤。直到|〖 x〗_1-〖 x〗_2|〖<10〗^(-6)时,x =(〖 x〗_1+〖 x〗_2)/2为所。 (3)弦截法 取f(〖 x〗_1 )与f(〖 x〗_2 )连线与x轴的交点x,从(〖 x〗_1, x)和(x, 〖 x〗_2)两个区间中取舍的方法与二分法相同。 计算公式为: 判断f(〖 x〗_1 )与f(〖 x〗_2 )是否同符号的方法与二分法采用的方法相同。直到先后两次出的x的值之差小于〖10〗^(-6)为止。 分别用牛顿迭代法弦截法和二分法下列方程,分析比较各种方法的迭代次数及精度。 〖f(x)=x〗^3 〖- 2x〗^2 +7x +4=0 牛顿迭代法的初值:x=0.5; 弦截法〖 x〗_1,〖 x〗_2的初值:-1,1 二分法〖 x〗_1,〖 x〗_2的初值:-1,0 精度要:|〖 x〗_1-〖 x〗_2| 〖<10〗^(-6)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值