文档库 最新最全的文档下载
当前位置:文档库 › 复化梯形求积公式

复化梯形求积公式

复化梯形求积公式
复化梯形求积公式

三种复化求积分算法的精度分析

【摘要】分别利用复化梯形公式、复化simpson公式和复化gauss-legendre i型公式对定积分进行运算,得到近似数值解,并对各算法的精度和计算复杂度进行了比较与分析。数值举例结果表明,三种复化求积分算法的运算结果均在绝对误差限ε=5e-8内,并且在相同的精度下,复化gauss-legendre i型公式的步长和计算量最小。 【关键词】复化梯形公式;复化simpson公式;gauss-legendre公式 1 引言 数值积分是计算数学的基本内容,在工程技术和科学计算中起着十分重要的作用,当积分的精确值不能不能求出时,数值积分就变得越来越重要。通常数值积分的计算常利用机械积分来实现,其基本思想为: (1) 2 理论模型 复化梯形求积公式 将区间[a,b]划分成n等分,分点xk=a+kh(,k=1,2,3…n),在每个子区间[xk,xk+1] (k=1,2,3 …n-1)上采用梯形式,则得到 (2) 记 (3) 上式(3)为复化梯形公式,其余项可由式 ,(a≤η≤b)(4) 得 ,ηk∈[xk,xk+1] (5) 由于 f(x)∈c2[a,b] 且 ,(0≤k≤n-1)(6) 所以∈(a,b),使 (7) 于是复化梯形公式余项为 (8) 复化simpson求积公式 将区间[a,b]划分为n等分,在每个子区间[xk,xk+1]上采用simpson式,若记,则得 (9) 记 (10) 上式(10)为复化simpson求积公式,其余项可由式 ,(a≤η≤b)(11) 得 ,ηk∈[xk,xk+1] (12) 于是当f(x)∈c4[a,b]时,与复化梯形公式相似有 ,η∈[a,b] (13) 复化gauss-legendre i型求积公式 gauss型求积公式是具有最高代数精度的插值求积公式。通过适当选取求积公式(1)的节点ε=5e-8和求积系数ak≥0和xk∈[a,b] (k=1,2,3…n),可使其代数精度达到最高的2n+1次。利用特殊区间[-1,1]上n+1次legendre正交多项式的根作为节点,我们可以建立gauss-legendre型求积公式。将区间[a,b]划分成n等分,分点xk=a+kh(,

利用复化梯形公式、复化simpson 公式计算积分

实验 目 的 或 要 求1、利用复化梯形公式、复化simpson 公式计算积分 2、比较计算误差与实际误差 实 验 原 理 ( 算 法 流 程 图 或 者 含 注 释 的 源 代 码 ) 取n=2,3,…,10分别利用复化梯形公式、复化simpson 公式计算积分1 20I x dx =?,并与真值进行比较,并画出计算误差与实际误差之间的曲线。 利用复化梯形公式的程序代码如下: 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)); %利用复化梯形公式求值 end T=[T,t]; %把不同n 值所计算出的结果装入 T 中 end R=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)

实 验 原 理 ( 算 法 流 程 图 或 者 含 注 释 的 源 代 码)利用复化simpson 公式的程序代码如下: 同样首先建立被积函数的函数文件: function f=fx1(x) f=x.^4; a=0; %积分下线 b=1; %积分上线 T=[]; %用来装不同n值所计算出的结果 for n=2:10 h=(b-a)/(2*n); %步长 x=zeros(1,2*n+1); %给节点定初值 for i=1:2*n+1 x(i)=a+(i-1)*h; %给节点赋值 end y=x.^4; %给相应节点处的函数值赋值 t=0; for i=1:n t=t+h/3*(y(2*i-1)+4*y(2*i)+y(2*i+1)); %利用复化simpson公式求值end T=[T,t] ; %把不同n值所计算出的结果装入T中 end R=ones(1,9)*(-(b-a)/180*((b-a)/2).^4*24) ; %积分余项(计算误差) true=quad(@fx1,0,1); %积分的真实值 A=T-true; %计算的值与真实值之差(实际误差) x=linspace(0,1,9); plot(x,A,'r',x,R,'*')

复化积分法(复化梯形求积,复化Simpson公式,变步长求积法)MATLAB编程实验报告

复化积分法(复化梯形求积,复化Simpson 公式,变步长求积法) MATLAB 编程实验报告 一、 问题描述: 编写函数实现复化积分法。 二、 实验步骤(过程): (一)复化求积法 (1)复化梯形求积:用复化梯形求积公式求解 dx x x ?10sin function [f]=Tn(a,b,n,y) syms t; h=(b-a)/n; f=0; for k=1:n+1 x(k)=a+(k-1)*h z(k)=subs(y,t,x(k)); end for i=2:n f=f+z(i); end q=subs(y,t,a); if y=='sin(t)/t'&&a==0 q=1; end p=subs(y,t,b); T=h/2*(q+p+2*f); T=vpa(T,7) clc,clear; syms t; a=0;b=1; y=sin(t)/t; n=8; Tn(a,b,n,y); (2)复化Simpson 公式:用复化Simpson 公式求解?211dx e x function [f]=simpson(a,b,n,y)

syms t; h=(b-a)/n; f=0;l=0; for k=1:n+1 x(k)=a+(k-1)*h w(k)=0.5*h+x(k) z(k)=subs(y,t,x(k)); end for i=2:n f=f+z(i); end for i=1:n l=l+w(i); end q=subs(y,t,a); if y=='sin(t)/t'&&a==0 q=1; end p=subs(y,t,b); T=h/2*(q+p+2*f); T=vpa(T,7) clc,clear; syms t; a=1;b=2; y=exp(1/t); n=5; simpson(a,b,n,y); (3)变步长求积法:以书本例4.5为例function [f]=TN(a,b,y,R0) syms t; T=[]; f=0; q=subs(y,t,a); if y=='sin(t)/t'&&a==0 q=1; end p=subs(y,t,b); T(1)=(b-a)/2*(q+p); i=2; n=i-1; h=(b-a)/n; z1=a+h/2; z2=subs(y,t,z1);

数值分析作业复化求积公式

数值计算方法上机题目3 计算定积分的近似值: 2 2 1x e xe dx =? 要求: (1)若用复化梯形公式和复化Simpson 公式计算,要求误差限7102 1-?=ε,分别利用他们的余项估计对每种算法做出步长的事前估计; (2)分别利用复化梯形公式和复化Simpson 公式计算定积分; (3)将计算结果与精确解比较,并比较两种算法的计算量。 解: (1) x xe x f =)(,所以x x k xe ke x f +=)()(,x x xe e x f +=2)('',x x xe e x f +=4)()4( x x xe e x f +=6)()6( 对于复化梯形公式: )(12)(''2ηf h a b f R n --=,2max ''4)(e f =η,n h 1= 代入数据可知 722102 1124-?≤n e ,57.7018≥n 取7019=n 对于复化Simpson 公式 )()2(180)()4(4ηf h a b f R n --=,2max )4(6)(e f =η,n h 1= 代入数据可知 742102 128806-?≤n e ,56.23≥n 取24=n (2)复化梯形公式: 函数 function y=fun(x) y=x*exp(x); 程序: clc Clear % 复化梯形计算 format long

a=1;b=2; n=7019;% 区间划分为m等份 h=(b-a)/n;% 步长,根据误差限由该算法的余项作事前估计得到 ty1=fun(a)+fun(b); ty2=0; for i=1:n-1 x=a+i*h1; ty2=ty2+fun(x); end T=h*(ty1+2*ty2)/2; T 对于复化Simpson公式 clc Clear % 复化Simpon计算 format long a=1;b=2; n=24;% 区间划分为n等份 h=(b-a)/(2*n);% 步长,根据误差限由该算法的余项作事前估计得到sy1=fun(a)+fun(b); sy2=0;sy3=0; for j=1:2*n-1 x=a+j*h2; if rem(j,2)==0 sy3=sy3+fun(x); else sy2=sy2+fun(x); end end S=h*(sy1+4*sy2+2*sy3)/3; S % 精确值 Exactanswer=exp(2) 运算结果: T = 7.389056127230221 S = 7.389056126214707 Exactanswer = 7.389056098930650 (3)比较可知复化梯形公式的计算量较大

复合梯形积分和复合Simpson积分计算数值积分

实验五 一、实验名称 复合梯形积分和复合Simpson 积分计算数值积分 二、实验目的与要求: 实验目的: 掌握复合梯形积分和复合Simpson 积分算法。 实验要求:1.给出复合梯形积分和复合Simpson 积分算法思路, 2.用C 语言实现算法,运行环境为Microsoft Visual C++。 三、算法思路: 我们把整个积分区间[a,b]分成n 个子区间[xi,xi+1],i=0,1,2,…,n,其中x0=a ,xn+1=b 。这样求定积分问题就分解为求和问题: ?∑?=-==b a n i x x i i dx x f dx x f S 11)()( 当这n+1个结点为等距结点时,即n a b h ih a x i /)(-=+=,其中,i=0,1,2,…,n ,复化梯形公式的形式是 ∑=-+=n i i i n x f x f h S 1 1)]()([2 算法: input n 0.0←S for i=1 to n do ))()((2 1i i x f x f h S S ++ ←- end do output S

如果n 还是一个偶数,则复合Simpson 积分的形式是 ∑=--++=2 /1 21222)]()(4)([3n i i i i n x f x f x f h S 算法: input n 0.0←S for i=1 to n/2 do ))()(4)((3 21222i i i x f x f x f h S S +++ ←-- end do output S 四、实验题目: 五、问题的解: 编写程序(程序见后面附录),输出结果如下:

数值分析复化Simpson积分公式和复化梯形积分公式计算积分的通用程序

数值分析第五次程序作业 PB09001057 孙琪 【问题】 分别编写用复化Simpson积分公式和复化梯形积分公式计算积分的通用程序;用如上程序计算积分: 取节点并分析误差; 简单分析你得到的数据。 【复化Simpson积分公式】 Simpson法则: 使用偶数个子区间上的复合Simpson法则: 设n是偶数, 则有 将Simpson法则应用于每一个区间,得到复合Simpson法则:

公式的误差项为: 其中δ 【复化梯形积分公式】 梯形法则:对两个节点相应的积分法则称为梯形法则: 如果划分区间[a,b]为: 那么在每个区间上可应用梯形法则,此时节点未必是等距的,由此得到复合梯形法则: 对等间距h=(b-a)/n及节点,复合梯形法则具有形式: 误差项为:

【算法分析】 复合Simpson法则和复合梯形法则的算法上述描述中都已介绍了,在此不多做叙述。 【实验】 通过Mathematica编写程序得到如下结果: 利用复化Simpson积分公式得:

可以看出,当节点数选取越来越多时,误差项越来越小,这从复合的Simpson公式很好看出来,因为在每一段小区间内,都是用Simpson法则去逼近,而每一段的误差都是由函数在该区间内4阶导数值和区间长度的4次方乘积决定的,当每一段小区间越来越小时,相应的每一段小区间内的逼近就会越来越好,从而整体的逼近效果就会越来越好。 利用复化梯形积分公式得:

可以看出,当节点数选取越来越多时,误差项越来越小,这从复合的梯形公式很好看出来,因为在每一段小区间内,都是用梯形法则去逼近,而每一段的误差都是由函数在该区间内2阶导数值和区间长度的2次方乘积决定的,当每一段小区间越来越小时,相应的每一段小区间内的逼近就会越来越好,从而整体的逼近效果就会越来越好。 【分析】 通过对上述两种法则的效果来看,复合Simpson法则的误差要比复合梯形法则收敛到0更快,说明复合Simpson法则逼近到原来的解更快,这主要是因为在每一段小区间内,复合Simpson法则利用得是Simpson法则,复合梯形法则利用得是梯形法则,前者的误差项要比后者的误差项小很多,因此造成了逼近速度的不一样。

选用复合梯形公式复合Simpson公式计算

数值分析实验 三 班级:10信计2班 学号:59 姓名:王志桃 分数 一·问题提出: 选用复合梯形公式,复合Simpson 公式,计算 (1) I =dx x ?-4 10 2sin 4 ()5343916.1≈I (2) I = dx x x ?1 sin ()9460831.0,1)0(≈=I f (3) I = dx x e x ?+1 024 (4) I = () dx x x ?++1 021 1ln 二·实验要求: 1.编制数值积分算法的程序 2.分别用两种算法计算同一个积分,并比较计算结果 3.分别取不同步长()/ a b h -=n ,试比较计算结果(如n = 10, 20 等) 4.给定精度要求ε,试用变步长算法,确定最佳步长 三·实验流程图: 复化梯形公式: 输入 端点 a , b 正整数 n 直接计算TN=h/2*[f(a)+2∑f(x k )+f(b)] k=1,2…,n-1 输出 定积分近似值TN 复化Simpson 公式 输入 端点 a , b 正整数 n 输出 定积分近似值SN (1) 置h=(b-a)/(2n) (2) F0=f(a)+f(b) , F1=0 , F2=0 (3) 对j=1,2,…,2n-1循环执行步4到步5 (4) 置x=a+jh (5) 如果j 是偶数,则F2=F2+f(x),否则F1=F1+f(x) (6) 置SN=h(F0+4F1+2F2)/3 (7) 输出SN,停机 四·源程序: #include #include using namespace std; #define n 20//此为步长 double f1(double x)

复化抛物线积分公式

摘要 求函数在给定区间上的定积分,在微积分学中已给出了许多计算方法,但是,在实际问题计算中,往往仅给出函数在一些离散点的值,它的解析表达式没有明显的给出,或者,虽然给出解析表达式,但却很难求得其原函数。这时我们可以通过数值方法求出函数积分的近似值。 在用近似值代替真实值时,遇到的问题就是近似值的代数精度是否足够。当代数精度不足够时,很显然提高插值函数的次数是一种方法,但是考虑到数值计算的稳定性,当次数过高时,会出现龙格现象,用增大n的方法来提高数值积代数精度是不可取的。因此,提出类似于分段插值,为了减少数值积分的误差,可以把积分区间分成若干个小区间,在每个小区间上采用低阶数值积分公式,然后把这些小区间上的数值积分结果加起来作为函数在整个区间上的近似值,这个就是复化数值积分的思想。 本实验针对在每个小区间上利用抛物线积分公式,即阶数为2,进行实验。 关键词:龙格现象复化数值积分代数精度复化抛物线积分公式

1、实验目的 1)通过本次实验体会并学习复化抛物线积分公式的优点。 2)通过对复化抛物线积分公式进行编程实现,提高自己的编程能力。 3)用实验报告的形式展现,提高自己在写论文方面的能力。 2、算法流程 已知定积分的抛物线积分公式及其误差为 根据数学知识,我们知道积分区间可划分,且不改变积分值,即如下所示:针对上式,在每一个小区间上利用抛物线积分公式有 得到 其中,令

当作为积分的近似值时,其误差为 若,则由介值定理推得 设,得到误差限 由上式可以进行计算精度控制。这样就给出了n+1点复化抛物线积分公式及其误差 3、算法实例 用复化抛物线积分公式计算积分 解:具体程序如下:

3.2复化求积公式习题及解答

3.2-3.5习题 一、填空题 1. 梯形求积公式和复化梯形公式都是插值型求积公式_____(对或错)。 (答案:错) 2.已知(1)1.2,(2)1.4,f f f = ==,则用复合梯形公式计算求得 3 1 ()f x dx ≈? , (答案:2.75) 3. 已知,在[0, 1] 内 ,有一位整数,用复合 梯形求积公式计算要保证有3位有效数字,至少应将[0, 1]( )等分。 A. 4 B. 5 C. 6 D. 7 4、(1)1,(2)2,(3)2f f f -===-,则[1,2,3]f -=_________,三点高斯求积公式 2 ()f x dx ≈? ______________. 答案: )531(95)1(98)531(95,1213+++-- f f f 二、计算题 1.建立Gauss 型求积公式111220 ()()A f x A f x ≈+? 答案 12120.0455363610.6421930581.035301293 0.964698706x x A A ==== 2. 试确定常数A ,B ,C 和,使得数值积分公式 有尽可能高的代数精度。试问所得的数值积分公式代数精度是多少?它是否为Gauss 型的? 答案: , 该数值求积公式具有5次代数精确度,它是Gauss 型的。 3、用Romberg 算法计算积分3 0?(只作两次外推)。 解:取2,0,3t a b === (0)11 (()())14.230249472 T f a f b =+=, 1t =,0 2(1)(0)1 10 1 111 (()11.17136992 222i T T f a b a =??=++ -= ? ?? ? ∑ ,

验证数值积分求积公式及复合梯形公式程序设计

《复合梯形公式》实验报告 实验名称:验证数值积分求积公式及复合梯形公式程序设计成绩:___________ 专业班级:数学与应用数学1202班姓名:王晓阳学号:2012254010228 实验日期:2014 年10月20日 实验报告日期:2014年11月3日 一.实验目的 1掌握定积分的数值求解方法,验证数值积分求积公式. 2.掌握数值积分的基本思想. 3.掌握matlab实现数值积分函数的调用格式. 4.编写复合梯形公式matlab程序及学会调用. 5.学会用复合梯形公式求函数近似解. 二、实验内容 1.数值积分的实现 (1)被积函数是一个解析式 Matlab提供了quad函数和quadl函数来求定积分.它们的调用格式为: Quad(filename,a,b,tol,trace) Quadl(filename,a,b,tol,trace)

其中filename 是被积函数名。a 和b 分别是定积分的下限和上限。Tol 用来控制积分精度,默认时取610tol -=。Trace 控制是否展现积分过程,若取非0则展现积分过程,取0则不展现,默认时取trace=0。 例6.20 用两种不同的方法求2 10x I e dx -=?. (2)被积函数由一个表格定义 在matlab 中,对由表格形式定义的函数关系的求定积分问题用trapz(X,Y)函数。其中向量X 、Y 定义函数关系Y=f(X).X 、Y 是两个等长的向量; ()12,,n X x x x =,()12,,n Y y y y =,并且12n x x x <<<,积分区间是[]1,n x x 。 例6.21用trapz 函数计算210 x I e dx -=?. (3)二重积分数值求解 Matlab 提供的dblquad 函数可以直接求出二重定积分的数值解。该函数的调用格式为:I=dblquad(f,a,b,c,d,tol,trace) 该函数求f(x,y)在[a,b]*[c,d]区域上的二重定积分。 例6.22 计算二重定积分()2 122212sin x e x y dxdy ---+? ? 2.复合梯形公式 由于牛顿-柯特斯公式在8n ≥时不具有稳定性,故不可能通过提高阶的方法来提高求积精度.为了提高精度通常可把积分区间分成若干子区间(通常是等分),再在每个子区间上用低阶求积公式,这种方法称为复合求积法. 将区间[],a b 划分为n 等份,分点0,0,1, k x x kh k n =+=,0,,n b a a x b x h n -=== ,在每个子区间[]1,k k x x +上采用梯形公式

复化梯形公式

2012-2013(1)专业课程实践论文 复化梯形公式 余良,0818180125,R数学08-1班

一、算法理论 求?baf ()?x baf 的值是科学技术中经常遇到的计算问题 ,但在很多情况下 ,()x f 的原函数不易求得 ,或非常复杂 ;另外 ,在一些应用中 ,函数 ()x f 是用函数表形式给出而没有解析式 ,这时就采用定积分的数值计算方法 ,以解决定积分的近似计算。数值求积公式的应用不仅在近似计算本身 ,在初等数学中 ,某些数列求前 n 项之和公式的推导颇为繁琐 ,应用复化梯形公式可方便地导出这些公式。复化梯形公式用牛顿——莱不尼茨公式来计算()?x baf 的值的前提是 :()x f 的原函数能够求出。当 ()x f 的原函数不易求出或找不到时 ,希望用一个易于求原函数的函数来近似代替被积函数 ,从而得到定积分的近似计算公式。下文中梯形公式T 就是()?x baf 常用的近似计算公式。 复化梯形公式的主要思想是利用若干小梯形的面积代替原方程的积分,利用微元法,可以求出坐标面上由函数与坐标轴围城的图像的面积的近似值,符合了计算机计算存储的思想。 下面,我们在探讨复化梯形公式的计算规律。 设将求积区间[]b a ,分成n 等份,则一共有1+n 个分点,按梯形公式 ()()[]()()()??????++=+=∑∑-=+-=b f x f a f h x f x f h T n k k k k n k n 1111 0222计算积分值n T ,需要提供1+n 个函数值。 注意,这里n a b h -= 代表步长,分点为kh a x k +=,.,1,0n k ???=

复化梯形公式和复化辛普森公式的精度比较

实验四、复化梯形公式和复化Simpson公式的精度比较 (2学时) 一、实验目的与要求 1、熟悉复化Simpson公式和复化梯形公式的构造原理; 2、熟悉并掌握二者的余项表达式; 3、分别求出准确值,复化梯形的近似值,复化Simpson的近似值,并比较后两 者的精度; 4、从余项表达式,即误差曲线,来观察二者的精度,看哪个更接近于准确值。 二、实验内容: 对于函数 sin () x f x x =,试利用下表计算积分1 sin x I dx x =?。 表格如下: 注:分别利用复化梯形公式和复化Simpson公式计算,比较哪个精度更好。 其中:积分的准确值0.9460831 I=。 三、实验步骤 1、熟悉理论知识,并编写相应的程序; 2、上机操作,从误差图形上观察误差,并与准确值相比较,看哪个精度更好; 3、得出结论,并整理实验报告。 四、实验注意事项

1、复化梯形公式,程序主体部分: for n=2:10 T(n)=0.5*T(n-1) for i=1:2^(n-2) T(n)=T(n)+(sin((2*i-1)/2^(n-1))/((2*i-1)/2^(n-1)))/2^(n-1);end end 2、复化Simpson公式,程序主体部分: for i=1:10 n=2.^i x=0:1/n:1 f=sin(x)./x f(1)=1 s=0 for j=1:n/2 s=s+f(2*j) end t=0 for j=1:(n/2-1) t=t+f(2*j-1) end S(i)=1/3/n*(f(1)+4*s+2*t+f(n+1)) end 五.实验内容 复化梯形公式和复化辛普森公式的引入

6.3 复化求积公式

§3 复化求积公式 ● 复化求积法的基本思想: 将积分区间],[b a n 等分,可得到1+n 个求积节 点:kh a x k +=,),,1,0(n k Λ=,其中n a b h -=,对 积分1 1 1 ()()k k n n b x k a x k k I f x dx f x dx I +--==== =∑∑?? 在每一个小区间1[,]k k x x +上利用n 阶牛顿-柯特斯公式计算,然后对每个区间的近似积分值求和,用所得的值近似代替原积分值。如此得到的求积公式称为复化求积公式。 ● 复化梯形公式:(每个小区间上利用梯形公式求积) 1 1 1 110 ()()(()()) 2k k n b x a x k n k k k k k I f x dx f x dx x x f x f x +-=-++===-≈+∑?? ∑ 求和展开得:

011211 1 (()())(()()) 2 (()()) (()2()())2n n n n k k h T f x f x f x f x f x f x h f a f x f b --==++++++=++∑L 其中,n a b h -= 复化辛甫生公式: (每个小区间上用辛甫生公式求积) 1、公式: 1 12 10 1 110 ()()(()4()())6k k n b x a x k n k k k k k k I f x dx f x dx x x f x f x f x +-=-+++===-≈++∑?? ∑ 12 k x +表示为区间1[,]k k x x +的中点。 求和展开得: 1322 12 01121((()4()())(()4()6 ())(()4()())n n n n h S f x f x f x f x f x f x f x f x f x --=+++++++++L

复化梯形求积公式

第二章 1.1 复合梯形求积公式 复合梯形求积公式是复合求积法的一种,在本章中,将从其原理、概念等方面对它做一个详细介绍。在本章的最后,会对复合梯形求积法进行程序设计,使得可以从不同的方面对这种方法有更深的理解。 1.1.1 复合梯形求积公式的理论 当积分区间[a ,b]的长度较大,而节点个数1+n 固定时,直接使用Newton-Cotes 公式的余项将会较大。但是如果增加节点个数,即1+n 增加时,公式的舍入误差又很难得到控制。为了提高公式的精度,又使算法简单易行,往往使用复化方法。 即将积分区间][b a , 分成若干子区间,然后在每个小区间上使用低阶Newton-Cotes 公,最后将每个小区间上的积分的近似值相加,这就叫做复合求 积法。而复合梯形求积公式就是复合求积法的一种。 1.1.2复合求积公式的原理 将区间[]b a ,划分为n 等分,分点,,,1,0,,n k n a b h kh a x k =-= += 在每个子区间[](),1,,1,0,1-=+n k x x k k 上采用梯形公式,则得 []) ()()(2)()(11 1 1 f R x f x f h dx x f dx x f I n k n k k b a n k x x k k ++===+-=-=∑?∑? + 记 ()[()]()[()()]∑∑-=+-=++=+=1 1 110222n k b k k n k k n x f x f a f h x f x f h T , (1.1) 称为复合梯形公式,其余项可由 )(). ,(),(12 ][''3 b a f a b f R ∈-- =ηη 得 ()()() 11 0''3,12+-=∈?? ? ???-=-=∑k k k n k k n n x x f h T I f R ηη 由于[],,)(2b a C x f ∈ 且 ()(),max 1min 1010 ' '' '10-≤≤-=-≤≤≤≤∑n k k n k k n k f n f ηη

复化求积公式的算法及其应用

摘要 在数值计算中,低阶牛顿柯特斯求积方法存在很多缺陷,从余项公式可以看出其要求提高求积公式的代数精度,必须增加结点个数,会导致插值多项式出现龙格现象,且数值稳定性不能保证.基于以上原因,我们往往采用复化求积方法,此方法不仅可以克服以上缺点而且便于在计算机上实现,值得研究和学习. 在本课程设计中,我们首先从复化求积公式的思想引入,然后详细介绍复化梯形求积公式、复化辛普森求积公式和复化柯特斯求积公式的推导过程和相关性质,再对三种求积公式进行比较和总结,其次画出三种求积公式的流程图,最后通过求解例题写出三种求积算法的程序设计. 关键词复化求积算法;流程图;程序设计

目录 引言 (1) 第一章复化求积算法 (2) §1.1复化求积公式 (2) §1.1复化求积公式的思想 (3) §1.2复化求积公式的构造 (3) §1.2复化梯形求积公式 (3) §1.2.1复化梯形求积公式的推导过程 (3) §1.2.2复化梯形求积公式的性质 (3) §1.3复化辛普森求积公式 (4) §1.3.1复化辛普森求积公式的推导过程 (4) §1.3.2复化辛普森求积公式的性质 (4) §1.4复化柯特斯求积公式 (5) §1.4.1复化柯特斯求积公式的推导过程 (5) §1.4.2复化柯特斯求积公式的性质 (5) §1.5三种复化求积公式的比较及总结 (6) 第二章复化求积公式算法的流程图及其应用 (9) §2.1 流程图 (9) §2.2 应用 (12) 参考文献 (15) 附录A (16) 附录B (17) 附录C (18)

引言 积分计算在分析数学领域里是个古老的问题,在数值分析中已被广泛应用.但在计算机上却不能像在分析数学中那样,用原函数[满足)()('x f x F =的函数)(x F 就是函数)(x f 的原函数]计算积分.这是因为在实际问题中,函数关系往往是用列表数据或曲线给出的.即使知道了函数的表达式,求其一个原函数并非一个简单问题.许多函数难以用初等函数表示(如2 ,/sin x e x x -等).在计算机上,通常利用函数的若干个离散值,以代数运算近似计算积分值,这类近似计算法称为数值积分法. 设给定区间],[b a 上的函数)(x f .需要建立计算积分dx x f f I b a ?=)()(的近似方法. 数值积分的基本思想是试图用一个简单又易于积分的函数逼近)(x f ,以计算积分 )(f I .显然插值多项式是一个很好的选择,因为插值多项式可由)(x f 的若干值构造出 来,其积分很容易计算.为此,需将],[b a 分为n 等分n i x x i i ,,2,1],,[1 =+,其中 b x x x x a n =<<<<=+1321 .分割步长h ,因此,1,3,2,/)1(1+=-+=n i h i x x i 对应的函数值)()(,),(),()(121b f x f x f x f a f n ==+ .显然)(f I 可以表示为所有小区间上各函数的积分的和,即 )()(1f I f I n i i ∑== 其中 dx x f I i i x x i ? +=1 )( 通常把为每个)(f I i 建立的计算公式简称为求积公式,而把)(f I 建立的求积公式 称为复化求积公式. 由于在实际计算时,不宜使用高阶的牛顿——柯特斯公式,但若积分区间较大,单独用一个低阶的牛顿——柯特斯公式来计算积分的近似值,显然精度不好,为了提高数值求积的精确度,可利用积分对区间的可加性来解决这个问题,这就是通常采用 的复合求积法.而且使用这种方法之后,求积公式的收敛性和稳定性也得到了改善.

复化辛普森公式和高斯求积公式方法计算积分,matlab程序

一、实验目的及题目 实验目的:掌握利用复化辛普森公式和高斯求积公式方法计算积分,熟悉matlab 的操作。 题目:1.利用复化辛普森公式计算积分: 1、xdx x ln 10? 2.利用高斯求积公式计算积分:1、xdx x ln 1 0?2、∫1 0sinx (1+x 2)dx 实验步骤: 1.利用复化辛普森公式计算积分: 1.1.建立M 文件 function y=f(x) y=sqrt(x)*log(x); 1.2.建立M 文件 function T_n=F_H_T(a,b,n) h=(b-a)/n; for k=0:n x(k+1)=a+k*h; if x(k+1)==0 x(k+1)=10^(-10); end end T_1=h/2*(f(x(1))+f(x(n+1))); for i=2:n F(i)=h*f(x(i)); end T_2=sum(F); T_n=T_1+T_2; 1.3.在命令窗口输入 T_n=F_H_T(0,1,20) 输出结果:

2.利用高斯求积公式计算积分: 2.1.建立M文件 function s=guassl(a,b,n) h=(b-a)/n; s=0.0; for m=0:(1*n/2-1) s=s+h*(guassf(a+h*((1- 1/sqrt(3))+2*m))+guassf(a+h*((1+1/sqrt(3))+2*m))); end s; I=int('sin(x)',0,1); c=(I-s)/I; d=vpa(c,10); 2.2.1.建立M文件 function y=guassf(x) y=sqrt(x)*log(x); 2.2.2.建立M文件 function y=guassf(x) y=sinx/(1+x*x); 2.3.运行结果 2.3.1.在命令窗口输入s=guassl(0,1,20) 2.3.2.在命令窗口输入s=guassl(0,1,20)

复合梯形公式

《复合梯形公式》实验报告 实验名称:复合梯形公式 成绩:___________ 专业班级:数学与应用数学1202班 姓名:张晓彤 学号:2012254010227 实验日期 : 2014年11月23日 实验报告日期: 2014年11月3日 一、实验目的 (1)掌握数值积分函数的调用格式 (2)掌握复合梯形公式的思想和构造过程 (3)能够应用matlab 软件编写复合梯形公式的程序并能熟悉应用,以此来解决 相关例题 (4)利用复合梯形公式求数值积分的近似值,以解决其它科学实验的计算问题 二、实验内容 2.1验证积分函数的调用格式并求函数积分值 例1:用两种不同的方法求:dx e I x ?-= 10 2 . 例2:计算二重积分dxdy y x e I x )sin(21 1 2 2 2 2 += ? ?--- 2.2编写复合梯形公式程序并验证 例:用符合梯形求积公式求积分2 1 0sin x I e xdx =?的近似值.要求将区间3等分, 4的等分,6等分,9等分,分别得到积分值,并与真值进行比较.能得到什么结 论?

三、实验环境 该实验应用matlab2014来进行实验的验证和设计. 四、实验步骤和实验结果 4.1验证积分函数的调用格式并求函数积分值 例3:(数值积分)用两种不同的方法求:dx e I x ?-= 1 02 . 法一:建立被积函数文件法: 先建立一个函数文件ex.m: function ex=ex(x) ex=exp(-x.^2); end 然后在MATLAB 命令窗口,输入命令: format long I=quad('ex',0,1) I = 0.746824180726425 I=quadl('ex',0,1) I = 0.746824133988447 法二:不建立关于被积函数的函数文件时: g=inline('exp(-x.^2)'); I=quadl(g,0,1) I = 0.746824133988447 例4:(数值积分)计算二重积分dxdy y x e I x )sin(21 1 2 2 2 2 +=? ?--- (1)建立一个m 文件fxy.m function f=fxy(x,y) global ki; ki=ki+1;

复化求积公式求数值积分

应用软件课程设计实验二:复化求积公式求数值积分 一、实验题目 已知积分精确值I=4.006994,分别用复化梯形公式和复化辛普森公式求积分 I =? 要求:不允许用MATLAB 内部函数;分析用复化梯形公式时,剖分区间n 对误差的影响;比 较两种方法哪种最接近精确值并分析原因;与MATLAB 中的quad 、quadl 命令比较结果。 附:复化梯形公式和复化辛普森公式 记 ,n a b h -= n i n a b i a x i ,,1,0, =-+= ? ∑? ?? ???+-++-=≈-=b a n i n b f n a b i a f a f n a b T dx x f 1 1)(21)()(21)( 1 111 111112()()()4()()62()()2()4()6i i n n b x i i i i a x i i n n i i i i x x h f x dx f x dx f x f f x h f a f b f x f x ---==--==+?? =≈++?? ? ?? ?=+++?? ?? ∑∑? ? ∑∑ 二、算法说明 复化梯形公式算法的N-S 图: 给定f 表示被积函数,[a,b]表示积分区间,n 表示积分区间被拆分成小区间个数 算法的伪代码描述: 1、定义函数function T=JF(f,a,b,n) 2、w= f(a)/2 %% f(a)表示在a 点函数的值 3、s=(b-a)/n; %%每个小区间的宽度 4、对于i=1,2,3,4,5 ……,n-1 yy=f (a+i*s); %%每一个i 都计算出一个yy ,形成一个向量 5、y=sum(yy);%%对向量yy 所有元素求和 6、z=f (b)/2;%% 在b 点函数的值 7、T=s*(w+y+z); %%形成最终值,既积分结果

复化梯形算法求解数值积分

复化梯形算法求解数值积分 摘要 求某函数的定积分时,在多数情况下,被积函数的原函数很难用初等函数表达出来,因此能够借助微积分学的牛顿-莱布尼兹公式计算定积分的机会是不多的。另外,许多实际问题中的被积函数往往是列表函数或其他形式的非连续函数,对这类函数的定积分,也不能用不定积分方法求解。由于以上原因,数值积分的理论与方法一直是计算数学研究的基本课题。 构造数值积分公式最通常的方法是用积分区间上的n 次插值多项式代替被积函数,由此导出的求积公式称为插值型求积公式。特别在节点分布等距的情形称为牛顿-柯茨公式,例如梯形公式与抛物线公式就是最基本的近似公式。但是它们的精度较差。而且高阶Newton-Cotes求积公式是不稳定的。因此,通常不用高阶求积公式得到比较精确的积分值,而是将整个积分区间分段,在每一小段上用低阶求积公式。这种方法称为复化求积方法。 本文从三个积分实例出发,主要讨论复化梯形公式以及精确程度分析。 关键词:数值积分;复化求积公式;复化梯形算法;MATLAB

THE REHABILITATION OF TRAPEZOID FORMULA TO SOLVE THE NUMERICAL INTEGRATION ABSTRACT Find the definite integral of a function, in most cases, the original integrand function is difficult toexpress the elementary functions, it can use calculus of Newton - Leibniz formula to calculate thedefinite integral of the few opportunities . In addition, many practical problems in the integrand is often a list of functions or other forms of non-continuous function, the definite integral of suchfunctions, indefinite integral method can not solve. For these reasons, the numerical integration oftheory and method has been the subject of calculation of the basic mathematical research. Structural formula for numerical integration method is used most often on the n-th integration interval polynomial interpolation instead of the integrand, thus derived is called interpolation-typequadrature formula quadrature formula. Especially in the case of equidistant distribution of nodesis called Newton - Keci formula, such as trapezoidal formula and the formula is the most basicparabolic approximation formula. But their accuracy is poor. And high-level Newton-Cotesquadrature formula is unstable. So it is usually not higher-order quadrature formula to be moreprecise integral values, but the whole range of sub-points, with each short on low-level quadrature formula. This method is called complex method of quadrature. This example from three points of departure, the main complex of the trapezoid formula anddiscuss the accuracy of the analysis. Key words: Numerical integration;Rehabilitation of numerical integration;Rehabilitation of trapezoid formula;MA TLAB

相关文档
相关文档 最新文档