数值分析实验报告3.doc

数值分析实验报告3.doc

ID:59183829

大小:27.93 KB

页数:8页

时间:2020-01-30

数值分析实验报告3.doc_第1页
数值分析实验报告3.doc_第2页
数值分析实验报告3.doc_第3页
数值分析实验报告3.doc_第4页
数值分析实验报告3.doc_第5页
资源描述:

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

1、实验报告实验项目名称数值积分与数值微分实 验 室 数学实验室 所属课程名称数值逼近实验类型算法设计实验日期班级学号姓名成绩实验概述:【实验目的及要求】本次实验的目的是熟练《数值分析》第四章“数值积分与数值微分”的相关内容,掌握复合梯形求积公式、复合辛普森求积公式、龙贝格求积公式以及高斯-勒让德公式。本次试验要求编写复合梯形求积公式、复合辛普森求积公式、龙贝格求积公式以及高斯-勒让德公式的程序编码,并在MATLAB软件中去实现。【实验原理】《数值分析》第四章“数值积分与数值微分”的相关内容,包括:复合梯形求积公式、复合辛普森求积公式、龙贝格求积公式以及高斯-勒让德公式的相应算法

2、和相关性质。【实验环境】(使用的软硬件)软件:MATLAB2012a硬件:电脑型号:联想Lenovo昭阳E46A笔记本电脑操作系统:Windows8专业版处理器:Intel(R)Core(TM)i3CPUM350@2.27GHz2.27GHz实验内容:【实验方案设计】第一步,将书上关于复合梯形求积公式、复合辛普森求积公式、龙贝格求积公式以及高斯-勒让德公式的内容转化成程序语言,用MATLAB实现;第二步,分别用以上求积公式的程序编码求解不同的问题。【实验过程】(实验步骤、记录、数据、分析)实验的主要步骤是:首先分析问题,根据分析设计MATLAB程序,利用程序算出问题答案,分析

3、所得答案结果,再得出最后结论。实验:用不同数值方法计算积分ò(1) 取不同的步长h.分别用复合梯形及复合辛普森求积计算积分,给出误差中关于h的函数,并与积分精确值比较两个公式的精度,是否存在一个最小的h,使得精度不能再被改善? (2) 用龙贝格求积计算完成问题(1)。(3)用勒让德多项式确定零点,再代入计算高斯公式,使其精度达到10-4(1)在MATLAB的Editor中建立一个M-文件,输入程序代码,实现复合梯形求积公式的程序代码如下:functions=T(n)a=0.0000001;b=1;h=(b-a)/n;s=h*(f(a)+f(b))/2;ifn>1fork=1:

4、n-1x=a+k*h;s=s+h*f(x);endE=s+4/9%复合梯形误差end在commandWindows中输入命令:T(10),T(100)以及T(1000),得出的结果为:>>T(10)E=0.0271ans=-0.4173>>T(100)E=0.0013ans=-0.4431>>T(1000)E=5.4375e-05ans=-0.4444建立一个新的M-文件,输入程序代码,实现切比雪夫多项式的程序代码如下:functiont=S(n)a=0.0000001;b=1;h=(b-a)/n;t=h*(f(a)+f(b))/6;ifn>1fork=0:n-1x0=a+(

5、k+0.5)*h;x1=a+k*h;ifk==0t=t+4*f(x0)*h/6;elset=t+(4*f(x0)+2*f(x1))*h/6;endendE=t+4/9%复合辛普森误差end在commandWindows中输入命令:S(10),S(100)以及S(1000),得出的结果为:S(10)E=0.005ans=-0.4387>>S(100)E=2.4147e-04ans=-0.4442>>S(1000)E=9.1563e-06ans=-0.4444总结由结果(1)、(2)可知复合辛普森法求积分精度明显比复合梯形法求积的精度要高,且当步长取不同值时即n越大、h越小时,积

6、分精度越高。实验结果说明不存在一个最小的h,使得精度不能再被改善。又两个相应的关于h的误差(余项)其中η属于a到b。可知h愈小,余项愈小,从而积分精度越高。(2)在MATLAB的Editor中建立一个M-文件,输入程序代码,实现龙贝格算法的程序代码如下:function[q,n]=Roberg(f,a,b)M=1;abs0=10;k=0;T=zeros(1,1);h=b-a;T(1,1)=(h/2)*(subs(f,a)+subs(f,b));whileabs0>0.0001k=k+1;h=h/2;p=0;fori=1:Mx=a+h*(2*i-1);p=p+subs(f,x)

7、;endT(k+1,1)=T(k,1)/2+h*p;M=2*M;forj=1:kT(k+1,j+1)=((4^j)*T(k+1,j)-T(k,j))/(4^j-1);endabs0=abs(T(k+1,j+1)-T(k,j));endq=T(k+1,k+1);n=k;在commandWindows中输入命令:[Fx,n]=Roberg('sqrt(x)*log(x)',10^(-8),1),得出的结果为:Fx=-0.444387313932947n=9(3)在MATLAB的Editor中建立一个M-文件

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

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

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