收藏 分享(赏)

龙贝格算法.doc

上传人:HR专家 文档编号:5961692 上传时间:2019-03-22 格式:DOC 页数:4 大小:106.50KB
下载 相关 举报
龙贝格算法.doc_第1页
第1页 / 共4页
龙贝格算法.doc_第2页
第2页 / 共4页
龙贝格算法.doc_第3页
第3页 / 共4页
龙贝格算法.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、班级: 机设 11 级 学号: 331102030003 姓名: 张朝辉 成绩:_数值分析实验报告实验 3 数值积分3.1 实验目的通过本实验理解数值积分与微分的基本原理。掌握数值积分中常见的复合求积公式的编程实现。掌握龙贝格算法的基本思路和迭代步骤;培养编程与上机调试能力。3.2 算法描述3.2.1 龙贝格算法基本思路(1)将区间 划分为 等分,分点: ;根据梯形公式ba,nnx0,求出 ,再根据 和 之间的递推公式12nkkn bfxffhTnTnT2求出 ;1022nknfn2(2)设 为加速次数, 为划分区间次数,则由加速公式:m( )求出第 次划分,第 次加速次数的梯形kmkk TT

2、114,km值 ,这样不断地循环,直到求出在满足精度条件下的某个 作为积分值为止。 km kT3.2.2 龙贝格算法计算步骤1.输入 MATLAB 程序functiont=romberg(f,a,b,e) t=zeros(15,4); t(1,1)=(b-a)/2*(f(a)+f(b); for k=2:4 sum=0;for i=1:2(k-2)sum=sum+f(a+(2*i-1)*(b-a)/2(k-1);endt(k,1)=0.5*t(k-1,1)+(b-a)/2(k-1)*sum;for i=2:kt(k,i)=(4(i-1)*t(k,i-1)-t(k-1,i-1)/(4(i-1)-

3、1);endendfor k=5:15 sum=0;for i=1:2(k-2)sum=sum+f(a+(2*i-1)*(b-a)/2(k-1);endt(k,1)=0.5*t(k-1,1)+(b-a)/2(k-1)*sum;for i=2:4t(k,i)=(4(i-1)*t(k,i-1)-t(k-1,i-1)/(4(i-1)-1);end if k6 if abs(t(k,4)-t(k-1,4)=15disp(溢出); end2.输入 f=inline(sin(x)/x,x)f =Inline function:f(x) = sin(x)/x romberg(f,10(-100),1,5*1

4、0(-7)3.运行结果为 0.94608 3.3 实验内容用龙贝格算法计算: 10sinxId3.4 实验步骤3.4.1 代码程序:functiont=romberg(f,a,b,e) t=zeros(15,4); t(1,1)=(b-a)/2*(f(a)+f(b); for k=2:4 sum=0;for i=1:2(k-2)sum=sum+f(a+(2*i-1)*(b-a)/2(k-1);endt(k,1)=0.5*t(k-1,1)+(b-a)/2(k-1)*sum;for i=2:kt(k,i)=(4(i-1)*t(k,i-1)-t(k-1,i-1)/(4(i-1)-1);endendf

5、or k=5:15 sum=0;for i=1:2(k-2)sum=sum+f(a+(2*i-1)*(b-a)/2(k-1);endt(k,1)=0.5*t(k-1,1)+(b-a)/2(k-1)*sum;for i=2:4t(k,i)=(4(i-1)*t(k,i-1)-t(k-1,i-1)/(4(i-1)-1);end if k6 if abs(t(k,4)-t(k-1,4)=15disp(溢出); end 3.4.2 实验结果0.94608 3.5 实验体会本次试验使我认识到了计算机计算能力的强大,通过本次实验对数值积分与微分的基本原理有了深刻理解。基本上掌握数值积分中常见的复合求积公式的编程方法。掌握了龙贝格算法的基本思路和迭代步骤;使自己编程与上机调试能力有了很大提高。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 经营企划

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报