复化梯形公式的原理与实现毕业论文.doc

上传人:文库蛋蛋多 文档编号:3941035 上传时间:2023-03-28 格式:DOC 页数:11 大小:327.50KB
返回 下载 相关 举报
复化梯形公式的原理与实现毕业论文.doc_第1页
第1页 / 共11页
复化梯形公式的原理与实现毕业论文.doc_第2页
第2页 / 共11页
复化梯形公式的原理与实现毕业论文.doc_第3页
第3页 / 共11页
复化梯形公式的原理与实现毕业论文.doc_第4页
第4页 / 共11页
复化梯形公式的原理与实现毕业论文.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《复化梯形公式的原理与实现毕业论文.doc》由会员分享,可在线阅读,更多相关《复化梯形公式的原理与实现毕业论文.doc(11页珍藏版)》请在三一办公上搜索。

1、目录摘要41前言 52 复化梯形公式的提出背景53复化梯形公式的算法原理 6 3.1复化梯形公式的主要思想63.2复化梯形公式的计算方法63.3复化梯形公式的积分余项64算法流程图75 C语言算法程序86算法实现6.1算法实例96.2利用MATLAB计算误差的例子117总结138参考文献13摘要利用若干小梯形的面积代替原方程的积分,利用微元法,可以求出坐标面上由函数与坐标轴围城的图像的面积的近似值。设将求积区间分成等份,则一共有个分点,按梯形公式计算积分值,需要提供个函数值。整个区间上的复化梯形公式即 利用复化梯形公式计算和函数,此外也通过实例分析运用这种方法会产生怎样的误差。关键字:分点 函

2、数值 一、 前言在工程计算中,某些定积分的近似值被广泛应用。我们在求一些具体的数值时,往往对精度的要求很高,用求积公式计算精确度的方法有很多,各有优缺点。通过对几种常见的方法加以比较,得出一些具体的选择方法,为提高计算精确度减少了很多复杂的运算。像复化梯形公式适用对精度不高的运算, 比复化梯形公式计算复杂,但结果比复化梯形求积公式计算的精确度要高,更适应精确度的运算,龙贝格计算积分时,不仅可以减少运算量,也可以提高近似值的精确度。此次主要讨论复化梯形的一些知识。二、 复化梯形公式的提出背景根据人们所熟知的微积分基本定理,对于积分,只要找到被积函数的原函数,便有下列Newton-Leibniz公

3、式:.但实际使用这种求积方法往往有困难,一方面的原函数不易求得 ,或非常复杂像有很多的被积函数,例如,等等,找不到用初等函数表示的原函数;另一方面,函数 是用函数表形式给出而没有解析式 , Newton-Leibniz公式也不能直接运用,这时就采用定积分的数值计算方法 ,以解决定积分的近似计算。此外在一些应用中数值求积公式的应用不仅在近似计算本身 ,在初等数学中 ,某些数列求前 n项之和公式的推导颇为繁琐 ,应用复化梯形公式可方便地导出这些公式。复化梯形公式用牛顿Newton-Leibniz公式来计算的值的前提是 :的原函数能够求出。当 的原函数不易求出或找不到时 ,希望用一个易于求原函数的函

4、数来近似代替被积函数 ,从而得到定积分的近似计算公式。下文中梯形公式就是常用的近似计算公式。由定积分的几何意义可知,梯形的面积近似的代替曲边梯形的面积。如果在整个区间上,只用单独一个梯形,由求梯形面积公式算出的结果为:T=(b-a)/2*f(a)+f(b)作为的近似值,往往达不到精度要求,因此通常采用的方法是细分求积区间。 三、复化梯形公式的算法原理3.1复化梯形公式的主要思想: 利用小梯形的面积代替原方程的积分,利用微元法,可以求出坐标面上由函数与坐标轴围城的图像的面积的近似值,符合了计算机计算存储的思想。设将求积区间分成等份,则一共有个分点,按梯形公式计算积分值,需要提供个函数值。在区间内

5、插入一列分点,使a= L L =b,相邻两分点间的距离h= -称为步长。均取等步长,即这里 代表步长,分点为,3.2复化梯形公式的计算方法:每个小区间上梯形公式是注意,这里 代表步长,分点为,整个区间上的复化梯形公式是即 3.3复化梯形公式的积分余项: ,由于 ,且 故存在使所以复化梯形公式的积分余项为即 , 四、算法流程图: 五、C语言算法程序#include#include#includeusing namespace std;#define N 400float F(float x) x=exp(x) ; return (x ) ;int main()float a,b,xN,sum,T

6、;int n,i;printf(please input n=);cinn; printf(please input a=);cina; printf(please input b=);cinb; for(i=0;in+1;i+)xi=a+i*(b-a)/(float)n;sum=0; for(i=1;in;i+)sum=sum+F(xi);T=(b-a)/(2*(float)n)*(F(x0)+F(xn)+2*sum);coutT= Tendl;return 0;六、算法实现6.1算法实例 实例一:利用复化梯形公式计算函数,在以1为下界,2为上界,把区间分为2等分(复化梯形公式计算在的值)。

7、解:运行程序(1) 显示出 “please in put n=” ,“please in put a=” ,“please in put b=”,依次输入数据,回车。(2) 显示结果如下图:注:此时;在程序中对应的语句为x=exp(x) ;所求的函数可以定义为其他函数得出目标函数的结果。 实例二:利用复化梯形公式计算函数,求在以1为下界,2为上界,把区间分为2等分(复化梯形公式计算在的值)。解:运行程序(1) 显示出 “please in put n=” ,“please in put a=” ,“please in put b=”,依次输入数据,回车。待添加的隐藏文字内容1(2) 显示结果如

8、下图:注:此时;在程序中对应的语句为x=sin(x)/x ;所求的函数可以定义为其他函数得出目标函数的结果。 6.2利用MATLAB计算误差的例子:function f=fx(x)f=x.2; 首先建立被积函数,以便于计算真实值。a=0; 积分下线b=1; 积分上线T=; 用来装不同n值所计算出的结果for n=2:10; h=(b-a)/n; 步长 x=zeros(1,n+1); 给节点定初值 for i=1:n+1 x(i)=a+(i-1)*h; 给节点赋值 end y=x.2; 给相应节点处的函数值赋值 t=0; for i=1:n t=t+h/2*(y(i)+y(i+1); 利用复化梯

9、形公式求值 end T=T,t; 把不同n值所计算出的结果装入 T中endR=ones(1,9)*(-(b-a)/12*h. 2*2); 积分余项(计算误差)true=quad(fx,0,1); 积分的真实值A=T-true; 计算的值与真实值之差(实际误差)x=linspace(0,1,9);plot(x,A,r,x,R,*) 将计算误差与实际误差用图像画出来注:由于被积函数是x.2,它的二阶倒数为2,所以积分余项为:(-(b-a)/12*h. 2*2)上图是利用复化梯形公式所画出的误差。其中:红线是计算误差,号是实际误差。-0.0017是计算误差。0.0417、0.0185、0.0104、

10、0.0067 0.0046、0.0034、0.0026、0.0021、0.0017是n值分别为2到10的实际误差。七总结这种求积公式计算比较容易,但是往往因为合理的选取比较困难,同时精确度不高,因此适用于对精确度要求不高的运算,梯形积分公式的方法计算的结果还是有一定的误差。学习这种算法我懂得了一些积分方法,同时对C语言和MATLAB的运用有了一定的累积,同时也有了一些其他方面的感想。虽然个人编程方面的知识非常有限,不过当我朝着这方面努力的时候,我感觉自己是满足而且充实的。正如人生一样,没有付出就不可能有回报,一分耕耘一分收获,而对于年轻的我们来说,唯有努力和付出才能最终到达成功的彼岸。 八.参考文献1张韵华编写. 数值计算方法与算法 (第二版)科学出版社,2006.2苏州大学出版数学编写组.数学(第三版)苏州大学出版社,2003.3 刘卫国著. MATLAB程序设计与应用(第二版) 高等教育出版社,2006.4 桂德怀编.高等应用数学(第二版)苏州大学出版社,2007.

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号