- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于MATLAB《数值分析》有关算法的实现.
基于MATLAB《数值分析》有关算法的实现摘要: 数值分析算法在科学应用各个分支中有着越来越广泛的应用,特别是计算机的出现更有助于这些应用的不断发展。实际生活中,很多问题都可以归纳为数值问题,如测得的实验数据有时候可以用插值法进行函数逼近预测等。数值算法常与工程实践相结合,通过MATLAB软件运行的程序来解决实际问题。本课题实现了拉格朗日插值法、最小二乘法、雅克比迭代法、二分法等算法的MATLAB程序设计。拉格朗日插值法基本原理:通过平面上不同的两点可以确定一条直线,这就是拉格朗日线性插值问题,对于不在同一条直线的三个点得到的插值多项式则为抛物线。拉格朗日插值的基本多项式为: ,i=0,1,2,…n有了基函数以后就可以直接构造如下多项式:该多项式就是拉格朗日插值法所求得的插值多项式。拉格朗日插值法算法: 根据所给点(,)的坐标依次写出其插值基函数(用for循环可以轻易解决) i=0,1,2,…,n将插值基函数与其对应的点的函数值相乘得:f(),i=0,1,2,…,n将2中各项累加即得插值多项式:拉格朗日插值法程序:function lagrange(A) %A为一个只有两行的矩阵,第一行为插值点,第二行为插值点对应的函数值[m,n]=size(A);f=1;p=0; %两个用到的变量syms xfor i=1:n f=(x-A(1,i))*f;endfor j=1:n g(j)=f/(x-A(1,j)); %求插值基函数的分母 h(j)=subs(g(j),x,A(1,j)); %求插值基函数的分子 s(j)=g(j)/h(j)*A(2,j); %插值基函数endfor k=1:n s(j)=collect(s(j)); %合并同类项endfor i=1:n p=p+s(i);enddisp(‘拉格朗日插值法可得多项式:’)collect(p) %可用lagrange([1 3 6 8;4 6 9 12])调试4.例子:有如下表格中有四个插值点及其对应的函数值,用拉格朗日插值法写出其三次插值多项式:136846912解:在MATLAB命令窗口输入: lagrange([1 3 6 8;4 6 9 12]) 可得运行结果: 牛顿插值法基本原理: 拉格朗日插值多项式的理论在许多方面都有应用,是很不错的一种方法,但就插值问题而言,如果增加一个插值点,原先计算插值的多项式就没有用了,即拉格朗日插值法的继承性很差,牛顿插值法就很好的解决了这个问题,具有很好的继承性。函数f(x)的差商定义为:f[]=f()f[, ]=f[,]=f[,…,]=在差商的基础上可得牛顿插值多项式:=f[]+f[,](x-)+ f[,,](x-)(x-)+…+ f[,,…,](x-)(x-)…(x-)牛顿插值法算法:根据差商的定义求出各阶差商。依次写出:=(x-) (x-)…(x-),n=0,1,2,…,n-1分别与相应的差商相乘,然后累加即可得:=f[]+f[,](x-)+ f[,,](x-)(x-)+…+ f[,,…,](x-)(x-)…(x-)程序代码:function newton(A) %A为两行矩阵,第一行为插值点,第二行为对应插值点的函数值[m,n]=size(A);B=zeros(n-1);k=1;for i=1:n-1 for j=i+1:n Z(j)=(A(2,j)-A(2,j-1))/(A(1,j)-A(1,j-k)); %求i阶差商 B(i,j)=Z(j); %记住各阶差商 end for j=i+1:n A(2,j)=Z(j); end k=k+1;endf=A(2,1);g=1;syms xfor i=1:n-1 g=g*(x-A(1,i)); f=f+B(i,i+1)*g; %求牛顿插值多项式enddisp(‘牛顿插值法可得多项式:’)fdisp(‘牛顿插值法得到的多项式合并同类项为:’)collect(f) %newton[1 3 6 8;4 6 9 12]例子: 有如下表格中有四个插值点及其对应的函数值,用牛顿插值法写出其三次插值多项式:136846912解:在MATLAB命令窗口输入:newton([1 3 6 8;4 6 9 12])可得如下运行结果如图:通过比较对同一题目的运算可知:拉格朗日插值法与牛顿插值法所得的插值多项式是一致的!
您可能关注的文档
- 城市交叉口渠化设计方法与评价 以成都市为例..docx
- 城市交通网络均衡分配的模型与算法,黄海军,贵阳讲学班 学术报告讲稿,2004年4月..doc
- 城市地价动态监测技术规范_..doc
- 城市垃圾转运站设计规范..doc
- 城市地下空间规划与设计..doc
- 地理信息系统设计与开发教案..doc
- 城市公共空间景观设计中社会诉求的心理因素分析研究..doc
- 城市居住区规划设计规范(2002年版)..docx
- 城市工程管线综合设计规范..doc
- 城市居住区规划设计规范..doc
- DeepSeek培训课件入门宝典:第2册 开发实战篇 .pptx
- 全面认识全过程人民民主-2024春形势与政策课件.pptx
- 2024春形势与政策-全面认识全过程人民民主.pptx
- 2025年春季学期形势与政策第二讲-中国经济行稳致远讲稿.docx
- 2024春形势与政策-铸牢中华民族共同体意识课件.pdf
- 2024春形势与政策-走好新时代科技自立自强之路课件 (2).pptx
- 2024春形势与政策-走好新时代科技自立自强之路课件.pptx
- 形势与政策学习指导教学-整套课件.pdf
- 2023年春季形势与政策讲稿第三讲-开创高质量发展新局面.pdf
- DeepSeek培训课件-清华大学-DeepSeek模型本地部署与应用构建.pptx
文档评论(0)