数值分析matlab完整版实验报告
运用matlab软件实现,数值分析中求解非线性方程的根,实验数据完整,格式完整
《数值分析》报告
运用
Matlab求解非线性方程的根学 院: 专 业: 班 级: 姓 名: 学 号:
运用matlab软件实现,数值分析中求解非线性方程的根,实验数据完整,格式完整
1. 目的
掌握非线性方程求根的方法,并选取实例运用MATLAB软件进行算法的实现,分别用牛顿法、弦截法和抛物线法求非线性方程的根。
2. 报告选题
报告选取《数值分析(第四版)》290页习题7作为研究对象,即求
f(x) x3 3x 1 0在x0 2附近的根。根的准确值x* 1.87938524...,要求结果准确到四位有效数字。
(1) 用牛顿法;
(2) 用弦截法,取x0 2,x1 1.9; (3) 用抛物线法,取x0 1,x1 3,x2 2。
3. 理论基础 (1) 牛顿迭代法
牛顿迭代法是一种特殊的不动点迭代法,其计算公式为
xk 1 xk
f(xk)
,k 0,1,2,...f'(xk)
f(x)
f'(x)
其迭代函数为
(x) x
牛顿迭代法的收敛速度,当f(x*) 0,f'(x*) 0,f''(x*) 0时,容易证
明,f'(x*) 0,
''(x*)
f''(x*)
0f'(x*),牛顿迭代法是平方收敛的,且
lim
ek 1f''(x*)
k e22f'(x*)。 k
(2)弦截法
将牛顿迭代法中的f'(xk)用f(x)在xk 1,xk处的一阶差商来代替,即可得弦截法
xk 1 xk
f(xk)
(xk xk 1)
f(xk) f(xk 1) 。
(3)抛物线法
运用matlab软件实现,数值分析中求解非线性方程的根,实验数据完整,格式完整
弦截法可以理解为用过(xk 1,f(xk 1)),(xk f(xk))两点的直线方程的根近似替f(x) 0的根。若已知f(x) 0的三个近似根xk,xk 1,xk 2用过(xk,f(xx(f, kx) k)x,x的抛物线方程的根近似代替())f(x) 0的k)), k11(2,(f k2根,所得的迭代法称为抛物线法,也称密勒(Muller)法。
4. MATLAB实现
根据牛顿法、弦截法和抛物线法求非线性方程根的理论基础,为实现计算在MATLAB中编写了以下M文件:
(1) f.m,题目中的函数f
function y=f(x) y=x^3-3*x-1;
(2) d.m,函数f的导数
function y=d(x)
y=3*x^2-3;
(3) newton.m,牛顿法
function newton(f,d,x0,e,max)
%f 是要求根的方程(f(x)=0); %d 是f(x)的导数;
%x0是所给初值,位于x*附近; %e是给定允许误差; %max是迭代的最大次数;
%x1是newton法求得的方程的近似解; %err是误差估计; %k是迭代次数; %y是f(x)值;
k=0;
y=feval('f',x0);
fprintf('k=%.0f x%d=%.8f y%d=%.6e\n',k,k,x0,k,y) for k=1:max
x1=x0-feval('f',x0)/feval('d',x0); err=abs(x1-1.87938524);
运用matlab软件实现,数值分析中求解非线性方程的根,实验数据完整,格式完整
x0=x1;
y=feval('f',x0);
fprintf('k=%.0f x%d=%.8f e%d=%.6e y%d=%.6e\n',k,k,x0,k,err,k,y) if (err<e)|(y==0)|(k==max) break; end
end
(4) xjmethod.m弦截法
function xjmethod(f,x0,x1,e,max)
%f 是要求根的方程(f(x)=0); %x0,x1是所给初值,位于x*附近; %e是给定允许误差; %max是迭代的最大次数;
%x1是弦截法求得的方程的近似解; %err是误差估计; %k是迭代次数; %y是f(x)值;
fprintf('k=%.0f x%d=%.8f y%d=%.8e\n',0,0,x0,0,feval('f',x0)) fprintf('k=%.0f x%d=%.8f y%d=%.8e\n',1,1,x1,1,feval('f',x1)) for k=2:max
x2=x1-(feval('f',x1)*(x1-x0))/(feval('f',x1)-feval('f',x0)); err=abs(x2-1.87938524); x0=x1; x1=x2;
y=feval('f',x1);
fprintf('k=%.0f x%d=%.8f e%d=%.6e y%d=%.8e\n',k,k,x1,k,err,k,y) if (err<e)|(y==0)|(k==max) break; end
运用matlab软件实现,数值分析中求解非线性方程的根,实验数据完整,格式完整
end
(5) pwxmethod.m抛物线法
function pwxmethod(f,x0,x1,x2,e,max)
%f 是要求根的方程(f(x)=0); %x0,x1,x2是所给初值,位于x*附近; %e是给定允许误差; %max是迭代的最大次数;
%x3是弦截法求得的方程的近似解; %err是误差估计; %k是迭代次数; %y是f(x)值
fprintf('k=%.0f x%d=%.8f y%d=%.8e\n',0,0,x0,0,feval('f',x0)) fprintf('k=%.0f x%d=%.8f y%d=%.8e\n',1,1,x1,1,feval('f',x1)) fprintf('k=%.0f x%d=%.8f y%d=%.8e\n',2,2,x2,2,feval('f',x2)) for k=3:max f0=feval('f',x0); f1=feval('f',x1); f2=feval('f',x2); a=(f0-f2)/(x0-x2); b=(f1-f2)/(x1-x2); c=(a-b)/(x0-x1); w=b+c*(x2-x1); if w<0
x3=x2-(2*f2/(w-sqrt(w^2-4*c*f2))); elseif w>0
x3=x2-(2*f2/(w+sqrt(w^2-4*c*f2))); end
err=abs(x3-1.87938524);
运用matlab软件实现,数值分析中求解非线性方程的根,实验数据完整,格式完整
x0=x1; x1=x2; x2=x3;
y=feval('f',x2);
fprintf('k=%.0f x%d=%.8f e%d=%.6e y%d=%.8e\n',k,k,x2,k,err,k,y) if (err<e)|(y==0)|(k==max) break; end end
5. 运行结果
图1 运行结果界面
(1)牛顿法计算结果
运用matlab软件实现,数值分析中求解非线性方程的根,实验数据完整,格式完整
即x* x2 1.87945157,误差为6.632695e-005。 (2)弦截法计算结果
迭代法是解非线性方程的主要方法,牛顿法就是最有效的迭代法之一,它在单根附近具有较高阶的收敛速度。而弦截法用差商代替导数,对于较复杂的函数运算变的方便。抛物线法也是超线性收敛的,适用于求多项式的实根和复根。
通过本次报告加深了对牛顿法、弦截法和抛物线法求解非线性方程根的理解,同时掌握了MATLAB强大的计算功能,增强了对数值分析课程的学习兴趣。
参考文献
[1] 李庆扬.数值分析(第四版)北京:清华大学出版社,施普林格出版社.2001. [2] 胡学林.可编程控制器教程.北京:机械工业出版社,2003.
…… 此处隐藏:1497字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [初中教育]婚姻家庭法学教学教案
- [初中教育]浅谈小学语文教学中的创新教育
- [初中教育]中华人民共和国侵权责任法2009
- [初中教育]2016-2022年中国薄膜太阳能电池行业发
- [初中教育]多级轻型井点降水的应用
- [初中教育]外语教学法流派介绍和简评
- [初中教育]实验一、典型环节及其阶跃响应
- [初中教育]内蒙古2012-2013学年度国家奖学金获奖
- [初中教育]移动通信营销渠道管理探讨
- [初中教育]初三化学第一学期第一第二章基础知识点
- [初中教育]一天的食物教学设计
- [初中教育]光导照明系统的基本结构及工作原理
- [初中教育]长春市十一高、东北师范大学附属中学、
- [初中教育]“十三五”规划重点-配重式装卸车项目
- [初中教育]领导方法和领导艺术
- [初中教育]第三章 植物病虫草鼠害诊断与防治基
- [初中教育]2019届九年级语文上册 第二单元 6纪念
- [初中教育]甲级单位编制水豆腐项目可行性报告(立
- [初中教育]Ch8-1补充 09101数据库系统原理及应用-
- [初中教育]2017-2023年中国吊装设备行业市场分析
- 制作毕业纪念册需要哪些材料
- 2015-2016学年高二化学苏教版选修4课件
- 哈佛管理导师-创建商业案例
- 职场交际中的谈吐礼仪知识与职场会议接
- 中国糕点及面包行业发展现状与竞争战略
- 沂河“12·7”洪水茶山拦河坝
- 管道水流量计算公式
- 4-2发电机火灾事故处置方案
- 数字信号处理实验五
- 2009年经济师(中级)金融专业知识全真试
- 历史街区保护规划--04历史文化遗产保护
- 宁夏回族自治区中小学职称评价标准
- 评先评优测评表
- 圆的切线证明及线段长求解在在中考中的
- 【解析版】2015年江苏省南京外国语学校
- 人教版八年级上册科学第一章习题精华
- 责任心与执行力
- SA8000社会责任管理体系标准培训
- IgA肾病的饮食应注意
- 杭州市建设工程文件归档整理方案(试行)




