数值分析与实验答案.docx

数值分析与实验答案.docx

ID:51443568

大小:10.43 KB

页数:8页

时间:2020-03-24

数值分析与实验答案.docx_第1页
数值分析与实验答案.docx_第2页
数值分析与实验答案.docx_第3页
数值分析与实验答案.docx_第4页
数值分析与实验答案.docx_第5页
资源描述:

《数值分析与实验答案.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、数值分析与实验答案【篇一:数值分析实验报告(一)(完整)】2345【篇二:数值分析实验报告(matlab实现)】xt>实验课程名称数值分析开课实验室数学与统计学院实验室学院数学与应用数学专业班学生姓名学号开课时间2012至2013学年第一学期1234【篇三:数值分析实验报告】线性方程求解摘要:非线性方程的解析解通常很难给出,因此线性方程的数值解法就尤为重要。本实验采用两种常见的求解方法二分法和newton法及改进的newton法。利用二分法求解给定非线性方程的根,在给定的范围内,假设f(x,y)在[a,b]上连

2、续,f(a)xf(b)0且f(x)在(a,b)内仅有一实根,取中点一步步求得根的近似解,在满足精度要求时,即为所求的值。newton法乃利用xk?1?xk?f(xk),由递推产生近似于真值的解,但newton法的初值选择好坏f(xk)直接影响迭代的次数甚至迭代的收敛与发散。即若x0偏离所求根较远,newton法可能发散的结论。并且本实验中还利用利用改进的newton法求解同样的方程,且将结果与newton法的结果比较分析。前言:(目的和意义)掌握二分法与newton法的基本原理和应用。掌握二分法的原理,验证二分

3、法,在选对有根区间的前提下,必是收敛,但精度不够。熟悉matlab语言编程,学习编程要点。体会newton使用时的优点,和局部收敛性,而在初值选取不当时,会发散。数学原理:对于一个非线性方程的数值解法很多。在此介绍两种最常见的方法:二分法和newton法。对于二分法,其数学实质就是说对于给定的待求解的方程f(x),其在[a,b]上连续,f(a)f(b)0,且f(x)在[a,b]内仅有一个实根x*,取区间中点c,若,则c恰为其根,否则根据f(a)f(c)0是否成立判断根在区间[a,c]和[c,b]中的哪一个,从而

4、得出新区间,仍称为[a,b]。重复运行计算,直至满足精度为止。这就是二分法的计算思想。newton法通常预先要给出一个猜测初值x0,然后根据其迭代公式xk?1?xk?f(xk)f(xk)产生逼近解x*的迭代数列{xk},这就是newton法的思想。当x0接近x*时收敛很快,但是当x0选择不好时,可能会发散,因此初值的选取很重要。另外,若将该迭代公式改进为xk?1?xk?rf(xk)f(xk)其中r为要求的方程的根的重数,这就是改进的newton法,当求解已知重数的方程的根时,在同种条件下其收敛速度要比newto

5、n法快的多。程序设计:本实验采用matlab的m文件编写。其中待求解的方程写成function的方式,如下functiony=f(x);y=-x*x-sin(x);写成如上形式即可,下面给出主程序。二分法源程序:clear%%%给定求解区间b=1.5;a=0;%%%误差r=1;k=0;%迭代次数初值while(r5e-6);c=(a+b)/2;iff12(a)*f12(c)0;a=c;elseb=c;endr=b-a;%求出误差k=k+1;endx=c%给出解newton法及改进的newton法源程序:clea

6、r%%%%输入函数f=input(请输入需要求解函数,s)%%%求解f(x)的导数df=diff(f);%%%改进常数或重根数miu=2;%%%初始值x0x0=input(inputinitialvaluex0);k=0;%迭代次数max=100;%最大迭代次数r=eval(subs(f,x0,x));%求解f(x0),以确定初值x0时否就是解while(abs(r)1e-8)x1=x0-miu*eval(subs(f,x0,x))/eval(subs(df,x0,x));r=x1-x0;x0=x1;k=k+1

7、;if(eval(subs(f,x0,x))1e-10);breakendifkmax;%如果迭代次数大于给定值,认为迭代不收敛,重新输入初值ss=input(mayberesultiserror,chooseanewx0,y/n?,s);ifstrcmp(ss,y)x0=input(inputinitialvaluex0);k=0;elsebreakendendendk;%给出迭代次数x=x0;%给出解结果分析和讨论:x2计算结果为x=1.40441513061523;f(x)=-3.797205105904

8、311e-007;k=18;由f(x)知结果满足要求,但迭代次数比较多,方法收敛速度比较慢。2.用二分法计算方程x3?x?1?0在[1,1.5]内的根。计算结果为x=1.32471847534180;f(x)=2.209494846194815e-006;k=17;由f(x)知结果满足要求,但迭代次数还是比较多。3.用newton法求解下列方程a)xex?1?0x0=0.5;计算结果为

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。