复化梯形公式和复化辛普森公式的精度比较
分别利用矩形法梯形法辛普森法对定积分进行近似计算并比较计算效果
![分别利用矩形法梯形法辛普森法对定积分进行近似计算并比较计算效果](https://img.taocdn.com/s3/m/0c115c4702d8ce2f0066f5335a8102d276a2618c.png)
分别利用矩形法梯形法辛普森法对定积分进行近似计算并比较计算效果定积分是微积分中重要的概念之一,表示在一个区间上函数的面积。
在计算定积分时,有时候我们无法通过解析方法求得精确的结果,这时候可以利用数值方法来进行近似计算。
常见的数值方法包括矩形法、梯形法和辛普森法。
本文将分别对这三种方法进行介绍并进行比较。
1.矩形法(矩形近似法):矩形法是最简单的数值方法之一,它的基本思想是将函数曲线上每个小区间的面积近似为一个矩形的面积,然后将这些矩形的面积相加,即可得到函数曲线下的面积。
根据矩形法的计算公式可以得到:∫f(x)dx ≈ Δx·(f(x₁)+f(x₂)+...+f(xₙ))其中,Δx为区间的长度,f(x)为函数在区间上的值。
2.梯形法(梯形近似法):梯形法同样是利用近似的思想,将函数曲线上每个小区间的面积近似为一个梯形的面积,然后将这些梯形的面积相加,即可得到函数曲线下的面积。
梯形法的计算公式为:∫f(x)dx ≈ (Δx/2)·[f(x₀)+2f(x₁)+2f(x₂)+...+2f(xₙ-1)+f(xₙ)]其中,Δx为区间的长度,f(x)为函数在区间上的值。
3.辛普森法(抛物线近似法):辛普森法是一种基于三次多项式插值的数值积分方法,它通过将函数曲线上每个小区间的面积近似为一个抛物线的面积,然后将这些抛物线的面积相加,即可得到函数曲线下的面积。
辛普森法的计算公式为:∫f(x)dx ≈ (Δx/3)·[f(x₀)+4f(x₁)+f(x₂)+4f(x₃)+...+4f(xₙ-1)+f(xₙ)]其中,Δx为区间的长度,f(x)为函数在区间上的值。
例:计算函数f(x)=√(1+x²)在区间[0,1]上的定积分。
接下来,我们分别利用矩形法、梯形法和辛普森法对这个定积分进行近似计算,并比较计算结果。
1)矩形法:将区间[0,1]平均分为n个小区间,取xᵢ=i/n,其中i=0,1,2,...,n。
(完整版)复合梯形公式与复合辛普森公式对比
![(完整版)复合梯形公式与复合辛普森公式对比](https://img.taocdn.com/s3/m/5b7d1256ba0d4a7303763a36.png)
SHANGHAI JIAO TONG UNIVERSITY题目名称:复合梯形公式与复合辛普森公式对比学生姓名:学生学号:班级:学院(系):目录1.概述 (3)2.问题提出 (4)3.算法推导 (5)4.算法框图 (6)4.1复合梯形公式算法流程图 (6)4.2 复合辛普森公式算法流程图 (7)5.MATLAB源程序 (8)6.结论与展望 (9)图表目录图4-1 复合梯形公式算法流程图 (6)图4-2 复合辛普森公式算法流程图 (7)图6-1 MATLAB计算结果 (9)表2-1函数计算结果表 (4)1.概述梯形求积公式和辛普森求积公式分别是牛顿-科斯特公式中n=1和n=2时的情形。
其中梯形求积公式可表示为由于牛顿-科斯特公式在n≥8时不具有稳定性,故不可能通过提高阶的方法来提高求积精度。
为了提高精度通常可把积分区间分成若干子区间(通常是等分),再在每个子区间上用低阶求积公式。
这种方法称为复合求积法。
本文主要讨论复合梯形公式和复合辛普森公式在同一数学问题中的应用。
首先给出了复合梯形公式和复合辛普森公式的推导过程以及其余项的表达形式,然后用流程图的形式介绍算法思路,再运用MATLAB编写代码计算结果,最后对结果进行对比讨论。
希望通过两个算法在同一个算例中的应用对比,更好的理解和掌握复合梯形公式和复合辛普森公式的适用范围和适用条件。
并且能够熟悉MATLAB编程求解问题的流程,掌握编程化的思想方法。
同时对两种方法的计算结果对比分析,讨论两种求积方法的计算精度。
2.问题提出对于函数f(x)=sinxx给出的函数表如下,试用复合梯形公式和复合辛普森公式计算积分I=∫sinxx dx1。
表 2-1函数计算结果表3. 算法推导3.1复合梯形公式根据梯形公式,将区间[a,b]划分为n 等份,分点x k =a +kℎ,h =b−a n,k =0,1,…,n ,在每个子区间[x k ,x k+1](k =0,1,…,n −1)上采用梯形公式,则得:记则T n 为复合梯形公式。
复合梯形公式与复合辛普森公式对比
![复合梯形公式与复合辛普森公式对比](https://img.taocdn.com/s3/m/29649e6483c4bb4cf6ecd127.png)
开始
输入区间断点 a,b 及等分数 n
求出步长 h,各节点 及相应得
各函节数点值函数值,k=1,2求,、、 与ns-u1m, k=1,2,、、n-1
输出积分值
结束
图 4-1 复合梯形公式算法流程图 4、2 复合辛普森公式算法流程图
开始
输入区间断点 a, b 及等分数 n
SHANGHAI JIAO TONG UNIVERSITY
题目名称:复合梯形公式与复合辛普森公式对比
学生姓名: 学生学号: 班 级: 学院(系):
目录
1、 概述 .............................................................................................................. 1 2、 问题提出 ...................................................................................................... 2 3、 算法推导 ...................................................................................................... 3 4、 算法框图 ...................................................................................................... 4
图表目录
图 4-1 复合梯形公式算法流程图 ...................................................................... 4 图 4-2 复合辛普森公式算法流程图 .................................................................. 5 图 6-1 MATLAB 计算结果..................................................................................6 表 2-1 函数计算结果表 .......................................................................................2
复合梯形公式、复合辛普森公式matlab
![复合梯形公式、复合辛普森公式matlab](https://img.taocdn.com/s3/m/826bc919591b6bd97f192279168884868762b8c3.png)
复合梯形公式、复合⾟普森公式matlab 1. ⽤1阶⾄4阶Newton-Cotes公式计算积分程序:function I = NewtonCotes(f,a,b,type)%syms t;t=findsym(sym(f));I=0;switch typecase 1,I=((b-a)/2)*(subs(sym(f),t,a)+subs(sym(f),t,b));case 2,I=((b-a)/6)*(subs(sym(f),t,a)+4*subs(sym(f),t,(a+b)/2)+...subs(sym(f),t,b));case 3,I=((b-a)/8)*(subs(sym(f),t,a)+3*subs(sym(f),t,(2*a+b)/3)+...3*subs(sym(f),t,(a+2*b)/3)+subs(sym(f),t,b));case 4,I=((b-a)/90)*(7*subs(sym(f),t,a)+...32*subs(sym(f),t,(3*a+b)/4)+...12*subs(sym(f),t,(a+b)/2)+...32*subs(sym(f),t,(a+3*b)/4)+7*subs(sym(f),t,b));case 5,I=((b-a)/288)*(19*subs(sym(f),t,a)+...75*subs(sym(f),t,(4*a+b)/5)+...50*subs(sym(f),t,(3*a+2*b)/5)+...50*subs(sym(f),t,(2*a+3*b)/5)+...75*subs(sym(f),t,(a+4*b)/5)+19*subs(sym(f),t,b));case 6,I=((b-a)/840)*(41*subs(sym(f),t,a)+...216*subs(sym(f),t,(5*a+b)/6)+...27*subs(sym(f),t,(2*a+b)/3)+...272*subs(sym(f),t,(a+b)/2)+...27*subs(sym(f),t,(a+2*b)/3)+...216*subs(sym(f),t,(a+5*b)/6)+...41*subs(sym(f),t,b));case 7,I=((b-a)/17280)*(751*subs(sym(f),t,a)+...3577*subs(sym(f),t,(6*a+b)/7)+...1323*subs(sym(f),t,(5*a+2*b)/7)+...2989*subs(sym(f),t,(3*a+4*b)/7)+...1323*subs(sym(f),t,(2*a+5*b)/7)+...3577*subs(sym(f),t,(a+6*b)/7)+751*subs(sym(f),t,b));endsyms xf=exp(-x).*sin(x);a=0;b=2*pi;I = NewtonCotes(f,a,b,1)N=1:I =N=2:I =N=3:I =(pi*((3*3^(1/2)*exp(-(2*pi)/3))/2 - (3*3^(1/2)*exp(-(4*pi)/3))/2))/4N=4:I =(pi*(32*exp(-pi/2) - 32*exp(-(3*pi)/2)))/452. 已知,因此可以通过数值积分计算的近似值。
球体体积计算-梯形公式与辛普森公式
![球体体积计算-梯形公式与辛普森公式](https://img.taocdn.com/s3/m/9ab013638762caaedc33d41b.png)
梯形公式和辛普森公式计算球体体积题目:分别用梯形公式和辛普森公式计算半径为1的球体体积解答:计算积分值:I=梯形公式:I=(b-a)/2*[]组合梯形公式:辛普森公式:I=(b-a)/6*[] 组合辛普森公式:+*(1)梯形公式计算定义函数function y=fx(x) function T_n=fht(a,b,n)源代码:function y=fx(x)y=3.14*(1-x^2);function T_n=fht(a,b,n)h=(b-a)/n;for k=0:nx(k+1)=a+k*h;endT_1=h/2*(fx(x(1))+fx(x(n+1)));for i=2:nF(i)=h*fx(x(i));endT_2=sum(F);T_n=T_1+T_2;(2)辛普森公式计算定义函数function G_n=sps(a,b,n)源代码:function G_n=sps(a,b,n)h=(b-a)/n;for k=0:nx(k+1)=a+k*hx_k(k+1)=x(k+1)+1/2*hendG_1=h/6*(fx(x(1))+fx(x(n+1)));for i=2:nF_1(i)=h/3*fx(x(i));endfor j=1:nF_2(j)=2*h/3*fx(x_k(j));endG_2=sum(F_1)+sum(F_2);G_n=G_1+G_2;结果分析:梯形公式:n=10,100,1000,T_n=fht(-1,1,10) T_n=4.1848T_n=fht(-1,1,100) T_n=4.1862T_n=fht(-1,1,1000) T_n=4.1867辛普森公式:n=10,100,1000G_n=sps(-1,1,10) G_n=4.1867G_n=sps(-1,1,10) G_n=4.1867G_n=sps(-1,1,10) G_n=4.1867通过对比,n值越大,球体体积的计算结果更加准确,并且辛普森公式计算比梯形公式更加准确V-n关系曲线梯形公式V-n曲线代码:辛普森公式V-n曲线代码:图形:。
梯形法则和辛普森法则
![梯形法则和辛普森法则](https://img.taocdn.com/s3/m/f78fc58c68dc5022aaea998fcc22bcd126ff42e0.png)
梯形法则与辛普森法则1. 概述梯形法则和辛普森法则是数值积分中常用的近似方法。
它们通过将曲线或曲面分割成若干个由直线或弧线组成的小区间,并在每个小区间内估计函数值来求解定积分。
这两种方法具有较高的精度和广泛的应用领域,本文将详细介绍这两种方法的原理、应用和优缺点。
2. 梯形法则梯形法则是一种利用梯形来近似曲线下面积的方法。
假设我们要计算函数f(x)在区间[a, b]上的定积分,梯形法则将该区间分成n个小区间,每个小区间的宽度为Δx=(b-a)/n。
然后,我们可以将每个小区间内的函数值连接起来,形成若干个梯形,计算每个梯形的面积,并将它们相加,即可得到函数在整个区间上的近似积分值。
梯形法则的近似积分公式如下:∫[a, b] f(x) dx ≈ Δx/2 * [f(a) + 2f(x1) + 2f(x2) + ... + f(b)]其中,x1, x2, …, xn-1 是分割点。
梯形法则的优点是简单易懂,容易推广到多维积分,适用于一般的函数。
然而,它的缺点是存在一定的误差,特别是在曲线弯曲的区域,误差较大。
3. 辛普森法则辛普森法则是一种利用拟合曲线来近似曲线下面积的方法。
与梯形法则类似,辛普森法则也将函数f(x)在区间[a, b]上分成若干个小区间,每个小区间的宽度为Δx=(b-a)/n,但不同的是,辛普森法则采用二次多项式来拟合每个小区间内的曲线。
辛普森法则的近似积分公式如下:∫[a, b] f(x) dx ≈ Δx/3 * [f(x0) + 4f(x1) + 2f(x2) + 4f(x3) + ... + f(xn)]其中,x0, x1, x2, …, xn 是分割点,且n为偶数。
辛普森法则的优点是相比于梯形法则,它的精度更高,尤其适用于曲线较为平滑的情况。
然而,辛普森法则的缺点是计算量较大,对于需要较高精度的计算而言,分割的区间数需要相对较多。
4. 应用场景梯形法则和辛普森法则在数值计算中有广泛的应用,特别是在求解无法用解析方法求得精确解的积分问题时,这两种方法成为重要的工具。
复合梯形公式和复合辛普森公式例题
![复合梯形公式和复合辛普森公式例题](https://img.taocdn.com/s3/m/7cd5d160777f5acfa1c7aa00b52acfc789eb9fa3.png)
复合梯形公式和复合辛普森公式例题复合梯形公式和复合辛普森公式例题数值计算是现代科学技术中重要的研究领域之一,而数值积分是数值计算中的一个重要分支。
数值积分是指在一定区间上用数值方法来逼近求解定积分的过程。
综合考虑精度和效率,梯形公式和辛普森公式是数值积分中比较常用的方法,而复合梯形公式和复合辛普森公式则是对前两种方法的改进和完善。
一、复合梯形公式(一)基本原理梯形公式是数值积分中运用最广泛的一种方法,其基本思想是将被积函数在区间[a,b]上的曲线用若干条梯形逼近,然后计算梯形的面积之和,得到函数曲线下的面积。
若将区间[a,b]分为n个小区间,梯形公式还可以推广为复合梯形公式。
复合梯形公式的基本原理是将整个区间[a,b]等分为n 个小区间,每个小区间的长度为h=(b-a)/n,然后对于每个小区间求出梯形的面积,并将所有梯形面积加起来得到函数曲线下的面积,并作为积分的近似值。
具体地说,复合梯形公式的表达式为:$$\int_a^b f(x)dx \approx \frac{h}{2}[f(a)+2\sum_{i=1}^{n-1} f(x_{i})+f(b)]$$其中,$x_1=a+h,x_2=a+2h,...,x_{i+1}=x_i+h,...,x_{n}=b-h$,h是小区间长度。
(二)例题现在考虑如下的积分:$$I=\int_0^1 e^{x^2} dx$$将整个区间[0,1]等分为4个小区间,得到$h=0.25$,对于每个小区间,可以分别求出梯形的面积,得到:$$\frac{h}{2}[f(0)+2f(0.25)+2f(0.5)+2f(0.75)+f(1)]$$代入函数$f(x)=e^{x^2}$,得到近似积分值为$1.4627$。
使用Matlab代码进行计算,得到具体结果为:>> f=@(x) exp(x.^2); h=0.25; x=0:h:1;I=h/2*(f(x(1))+2*sum(f(x(2:end-1)))+f(x(end))) sprintf('%.5f',I)ans =1.46270可以发现,与精确值$1.46265$相比,误差很小,说明复合梯形公式是一种很有效的近似积分方法。
梯形公式和辛普森公式计算积分
![梯形公式和辛普森公式计算积分](https://img.taocdn.com/s3/m/54da3421f4335a8102d276a20029bd64793e626d.png)
梯形公式和辛普森公式是用于计算定积分的数值逼近方法。
在实际应用中,我们经常会遇到需要计算函数在某个区间上的定积分值的情况,而对于一些复杂的函数,直接进行积分计算可能会十分困难,甚至是不可能的。
我们需要借助数值逼近方法来得到积分的近似值。
梯形公式和辛普森公式都是数值积分的基本方法,它们的原理都是通过将被积函数在积分区间上进行分割,然后利用分割后的小区间上的函数值,以及各个小区间的长度来进行计算,从而得到积分的近似值。
梯形公式是一种线性插值法,它的原理是将积分区间等分成n个小区间,然后用每个小区间的两个端点处的函数值进行线性插值,将每个小区间的面积近似为一个梯形,再将所有梯形的面积相加就得到了整个积分的近似值。
具体地,对于被积函数f(x)在区间[a, b]上的积分,我们可以利用梯形公式进行近似计算:1. 将区间[a, b]等分成n个小区间,记每个小区间的长度为h,即h=(b-a)/n。
2. 根据梯形面积的计算公式,我们可以得到每个小区间上梯形的面积为(h/2)*(f(x[i])+f(x[i+1])),其中x[i]和x[i+1]分别为第i个小区间的两个端点。
3. 将所有小区间上梯形的面积相加得到整个积分的近似值,即I ≈(h/2)*(f(a)+2*f(x[1])+2*f(x[2])+...+2*f(x[n-1])+f(b))。
梯形公式的优点在于其较为简单易懂,且可以很容易地通过计算机进行程序实现。
但是需要注意的是,当被积函数在积分区间上变化较大时,梯形公式可能会产生较大的误差。
与梯形公式类似,辛普森公式也是一种数值积分的方法,它是一种二次插值法,其原理是将积分区间等分成n个小区间,然后利用每个小区间的三个节点处的函数值进行二次插值,将每个小区间的面积近似为一个二次多项式曲线下的面积,再将所有小区间的面积相加就得到了整个积分的近似值。
具体地,对于被积函数f(x)在区间[a, b]上的积分,我们可以利用辛普森公式进行近似计算:1. 将区间[a, b]等分成n个小区间,记每个小区间的长度为h,即h=(b-a)/n。
复化梯形公式和复化辛普森公式的精度比较(共7页)
![复化梯形公式和复化辛普森公式的精度比较(共7页)](https://img.taocdn.com/s3/m/7acf99e9b9f67c1cfad6195f312b3169a451ea77.png)
- 让每一个人同等地提高(tí gāo)自我实验四、复化梯形(tīxíng)公式和复化Simpson 公式的精度(jīnɡ dù)比较(2 学时(xuéshí))一、实验目的(mùdì)与要求1、熟习复化 Simpson 公式和复化梯形公式的结构原理;2、熟习并掌握两者的余项表达式;3、分别求出正确值,复化梯形的近似值,复化Simpson 的近似值,并比较后两者的精度;4、从余项表达式,即偏差曲线,来察看两者的精度,看哪个更靠近于正确值。
二、实验内容:关于函数 f (x) sin x,试利用下表计算积分 I 1sin xdx 。
x x表格以下:x 0 1/8 1/4 3/8 1/2 5/8 3/4 7/8 1 f ( x)1注:分别利用复化梯形公式和复化Simpson 公式计算,比较哪个精度更好。
此中:积分的正确值I0.9460831。
三、实验步骤1、熟习理论知识,并编写相应的程序;2、上机操作,从偏差图形上察看偏差,并与正确值对比较,看哪个精度更好;3、得出结论,并整理实验报告。
四、实验注意事项11- 让每一个人同等地提高(tí gāo)自我1、复化梯形公式,程序主体(zhǔtǐ)部分:for n=2:10T(n)=*T(n-1)for i=1:2^(n-2);endend2、复化 Simpson 公式(gōngshì),程序主体部分:for i=1:10n=2.^ix=0:1/n:1f=sin(x)./xf(1)=1s=0for j=1:n/2s=s+f(2*j)endt=0for j=1:(n/2-1)t=t+f(2*j-1)endS(i)=1/3/n*(f(1)+4*s+2*t+f(n+1))end五.实验(shíyàn)内容复化梯形(tīxíng)公式和复化辛普森公式的引入22- 让每一个(yī ɡè)人同等地提高自我复化梯形(tīxíng)公式:T n n 1 h [ f (x k f ( x k 1 )] ;k 0 2复化辛普森公式:S n n 1 h4 f ( x 1 ) f (x k 1 )] ;[ f (x kk 0 6k2依据题意(tí yì)和复化梯形公式、复化辛普森公式的原理编写程序求解代码以下:Matlab 代码(dài mǎ)clcs=quad( 'sin(x)./x',0,1)p1=zeros(10,1);p2=zeros(10,1);for k=6:15s1=0;s2=0;x=linspace(0,1,k);y=sin(x)./x;z=(1/(2*(k-1))):(1/(k-1)):1;sz=sin(z)./z;y(1)=1;for i=1:(k-1)s1=s1+*(x(i+1)-x(i))*(y(i)+y(i+1));endfor j=1:(k-1)s2=s2+(1/6)*(x(j+1)-x(j))*(y(j)+y(j+1)+4*sz(j));endp1(k-5)=s1-s;p2(k-5)=s2-s;endp1;33- 让每一个人同等地提高(tí gāo)自我p2;s1=s+p1(4)s2=s+p2(4)format longfor k=1:length(p1)p1(k)=abs(p1(k));p2(k)=abs(p2(k));endp1p2plot(6:1:15,p1,'-r' )hold onplot(6:1:15,10000*(p2),'-c' )hold off部分(bù fen)程序结果输出:s=s1 =s2 =结果剖析1 sin( x);依据结果输出可知:积分 I dx 的正确值为: I=x44- 让每一个人同等(tóngděng)地提高自我经过复化梯形公式(gōngshì)和复化辛普森公式获得的积分值为:s1 =:s2 =;相对偏差为:S 1 I 100 4.15 10 4 ; 1I 100S 2 I 100 1.62 10 8 ; 2 I 100明显,从相对偏差可知经过辛普森公式获得(huòdé)的结果偏差小精度高。
复合梯形公式与复合辛普森公式对比
![复合梯形公式与复合辛普森公式对比](https://img.taocdn.com/s3/m/beb8ab5c04a1b0717fd5ddf2.png)
复合梯形公式与复合辛普森公式对比SHANGHAI JIAO TONG UNIVERSITY题目名称:复合梯形公式与复合辛普森公式对比学生姓名:学生学号:班级:学院(系):目录1.概述 (4)2.问题提出 (5)3.算法推导 (6)4.算法框图 (7)4.1复合梯形公式算法流程图 (7)4.2 复合辛普森公式算法流程图 (7)5.MATLAB源程序 (9)6.结论与展望 (10)图表目录图4-1 复合梯形公式算法流程图 (7)图4-2 复合辛普森公式算法流程图 (9)图6-1 MATLAB计算结果 (10)表2-1函数计算结果表 (5)1.概述梯形求积公式和辛普森求积公式分别是牛顿-科斯特公式中n=1和n=2时的情形。
其中梯形求积公式可表示为由于牛顿-科斯特公式在n≥8时不具有稳定性,故不可能通过提高阶的方法来提高求积精度。
为了提高精度通常可把积分区间分成若干子区间(通常是等分),再在每个子区间上用低阶求积公式。
这种方法称为复合求积法。
本文主要讨论复合梯形公式和复合辛普森公式在同一数学问题中的应用。
首先给出了复合梯形公式和复合辛普森公式的推导过程以及其余项的表达形式,然后用流程图的形式介绍算法思路,再运用MATLAB编写代码计算结果,最后对结果进行对比讨论。
希望通过两个算法在同一个算例中的应用对比,更好的理解和掌握复合梯形公式和复合辛普森公式的适用范围和适用条件。
并且能够熟悉MATLAB编程求解问题的流程,掌握编程化的思想方法。
同时对两种方法的计算结果对比分析,讨论两种求积方法的计算精度。
2.问题提出对于函数f(x)=sinxx给出的函数表如下,试用复合梯形公式和复合辛普森公式计算积分I=∫sinxx dx1。
表错误!文档中没有指定样式的文字。
-1函数计算结果表3. 算法推导3.1复合梯形公式根据梯形公式,将区间[a,b]划分为n 等份,分点x k =a +kℎ,h =b−a n,k =0,1,…,n ,在每个子区间[x k ,x k+1](k =0,1,…,n −1)上采用梯形公式,则得:记则T n 为复合梯形公式。
复化梯形公式和复化Simpson公式
![复化梯形公式和复化Simpson公式](https://img.taocdn.com/s3/m/9b5cafd6910ef12d2bf9e702.png)
数值计算方法上机题目3一、计算定积分的近似值:221x e xe dx =⎰ 要求:(1)若用复化梯形公式和复化Simpson 公式计算,要求误差限71021-⨯=ε,分别利用他们的余项估计对每种算法做出步长的事前估计;(2)分别利用复化梯形公式和复化Simpson 公式计算定积分;(3)将计算结果与精确解比较,并比较两种算法的计算量。
1.复化梯形公式程序:程序1(求f (x )的n 阶导数:syms xf=x*exp(x) %定义函数f (x )n=input('输入所求导数阶数:')f2=diff(f,x,n) %求f(x)的n 阶导数结果1输入n=2f2 =2*exp(x) + x*exp(x)程序2:clcclearsyms x%定义自变量xf=inline('x*exp(x)','x') %定义函数f(x)=x*exp(x),换函数时只需换该函数表达式即可f2=inline('(2*exp(x) + x*exp(x))','x') %定义f(x)的二阶导数,输入程序1里求出的f2即可。
f3='-(2*exp(x) + x*exp(x))'%因fminbnd()函数求的是表达式的最小值,且要求表达式带引号,故取负号,以便求最大值e=5*10^(-8) %精度要求值a=1 %积分下限b=2 %积分上限x1=fminbnd(f3,1,2) %求负的二阶导数的最小值点,也就是求二阶导数的最大值点对应的x值for n=2:1000000 %求等分数nRn=-(b-a)/12*((b-a)/n)^2*f2(x1) %计算余项if abs(Rn)<e %用余项进行判断break% 符合要求时结束endendh=(b-a)/n %求hTn1=0for k=1:n-1 %求连加和xk=a+k*hTn1=Tn1+f(xk)endTn=h/2*((f(a)+2*Tn1+f(b)))z=exp(2)R=Tn-z %求已知值与计算值的差fprintf('用复化梯形算法计算的结果 Tn=')disp(Tn)fprintf('等分数 n=')disp(n) %输出等分数fprintf('已知值与计算值的误差 R=')disp(R)输出结果显示:用复化梯形算法计算的结果Tn= 7.3891等分数n=7019已知值与计算值的误差R= 2.8300e-0082. Simpson公式程序:程序1:(求f(x)的n阶导数):syms xf=x*exp(x) %定义函数f(x)n=input('输入所求导数阶数:')f2=diff(f,x,n) %求f(x)的n阶导数结果1输入n=4f2 =4*exp(x) + x*exp(x)程序2:clcclearsyms x%定义自变量xf=inline('x*exp(x)','x') %定义函数f(x)=x*exp(x),换函数时只需换该函数表达式即可f2=inline('(4*exp(x) + x*exp(x))','x') %定义f(x)的四阶导数,输入程序1里求出的f2即可f3='-(4*exp(x) + x*exp(x))'%因fminbnd()函数求的是表达式的最小值,且要求表达式带引号,故取负号,一边求最大值e=5*10^(-8) %精度要求值a=1 %积分下限b=2 %积分上限x1=fminbnd(f3,1,2) %求负的四阶导数的最小值点,也就是求四阶导数的最大值点对应的x值for n=2:1000000 %求等分数nRn=-(b-a)/180*((b-a)/(2*n))^4*f2(x1) %计算余项if abs(Rn)<e %用余项进行判断break% 符合要求时结束endendh=(b-a)/n %求hSn1=0Sn2=0for k=0:n-1 %求两组连加和xk=a+k*hxk1=xk+h/2Sn1=Sn1+f(xk1)Sn2=Sn2+f(xk)endSn=h/6*(f(a)+4*Sn1+2*(Sn2-f(a))+f(b)) %因Sn2多加了k=0时的值,故减去f(a)z=exp(2)R=Sn-z %求已知值与计算值的差fprintf('用Simpson公式计算的结果 Sn=')disp(Sn)fprintf('等分数 n=')disp(n)fprintf('已知值与计算值的误差 R=')disp(R)输出结果显示:用Simpson公式计算的结果Sn= 7.3891等分数n=24已知值与计算值的误差R= 2.7284e-008用复化梯形公式计算的结果为:7.3891,与精确解的误差为:2.8300e-008。
复化梯形公式和复化Simpson公式
![复化梯形公式和复化Simpson公式](https://img.taocdn.com/s3/m/eab87fa5f61fb7360b4c65ca.png)
数值计算方法上机题目3一、计算定积分的近似值:221x e xe dx =⎰ 要求:(1)若用复化梯形公式和复化Simpson 公式计算,要求误差限71021-⨯=ε,分别利用他们的余项估计对每种算法做出步长的事前估计;(2)分别利用复化梯形公式和复化Simpson 公式计算定积分;(3)将计算结果与精确解比较,并比较两种算法的计算量。
1.复化梯形公式程序:程序1(求f (x )的n 阶导数:syms xf=x*exp(x) %定义函数f (x )n=input('输入所求导数阶数:')f2=diff(f,x,n) %求f(x)的n 阶导数结果1输入n=2f2 =2*exp(x) + x*exp(x)程序2:clcclearsyms x%定义自变量xf=inline('x*exp(x)','x') %定义函数f(x)=x*exp(x),换函数时只需换该函数表达式即可f2=inline('(2*exp(x) + x*exp(x))','x') %定义f(x)的二阶导数,输入程序1里求出的f2即可。
f3='-(2*exp(x) + x*exp(x))'%因fminbnd()函数求的是表达式的最小值,且要求表达式带引号,故取负号,以便求最大值e=5*10^(-8) %精度要求值a=1 %积分下限b=2 %积分上限x1=fminbnd(f3,1,2) %求负的二阶导数的最小值点,也就是求二阶导数的最大值点对应的x值for n=2:1000000 %求等分数nRn=-(b-a)/12*((b-a)/n)^2*f2(x1) %计算余项if abs(Rn)<e %用余项进行判断break% 符合要求时结束endendh=(b-a)/n %求hTn1=0for k=1:n-1 %求连加和xk=a+k*hTn1=Tn1+f(xk)endTn=h/2*((f(a)+2*Tn1+f(b)))z=exp(2)R=Tn-z %求已知值与计算值的差fprintf('用复化梯形算法计算的结果 Tn=')disp(Tn)fprintf('等分数 n=')disp(n) %输出等分数fprintf('已知值与计算值的误差 R=')disp(R)输出结果显示:用复化梯形算法计算的结果 Tn= 7.3891等分数 n=7019已知值与计算值的误差 R= 2.8300e-0082. Simpson公式程序:程序1:(求f(x)的n阶导数):syms xf=x*exp(x) %定义函数f(x)n=input('输入所求导数阶数:')f2=diff(f,x,n) %求f(x)的n阶导数结果1输入n=4f2 =4*exp(x) + x*exp(x)程序2:clcclearsyms x%定义自变量xf=inline('x*exp(x)','x') %定义函数f(x)=x*exp(x),换函数时只需换该函数表达式即可f2=inline('(4*exp(x) + x*exp(x))','x') %定义f(x)的四阶导数,输入程序1里求出的f2即可f3='-(4*exp(x) + x*exp(x))'%因fminbnd()函数求的是表达式的最小值,且要求表达式带引号,故取负号,一边求最大值e=5*10^(-8) %精度要求值a=1 %积分下限b=2 %积分上限x1=fminbnd(f3,1,2) %求负的四阶导数的最小值点,也就是求四阶导数的最大值点对应的x值for n=2:1000000 %求等分数nRn=-(b-a)/180*((b-a)/(2*n))^4*f2(x1) %计算余项if abs(Rn)<e %用余项进行判断break% 符合要求时结束endendh=(b-a)/n %求hSn1=0Sn2=0for k=0:n-1 %求两组连加和xk=a+k*hxk1=xk+h/2Sn1=Sn1+f(xk1)Sn2=Sn2+f(xk)endSn=h/6*(f(a)+4*Sn1+2*(Sn2-f(a))+f(b)) %因Sn2多加了k=0时的值,故减去f(a)z=exp(2)R=Sn-z %求已知值与计算值的差fprintf('用Simpson公式计算的结果 Sn=')disp(Sn)fprintf('等分数 n=')disp(n)fprintf('已知值与计算值的误差 R=')disp(R)输出结果显示:用Simpson公式计算的结果 Sn= 7.3891等分数 n=24已知值与计算值的误差 R= 2.7284e-008用复化梯形公式计算的结果为:7.3891,与精确解的误差为:2.8300e-008。
复化求积公式
![复化求积公式](https://img.taocdn.com/s3/m/cd032917443610661ed9ad51f01dc281e53a560b.png)
复化求积公式复化求积复化求积是数值计算中一种常用的数值积分方法,用于近似计算函数的定积分。
1. 方法介绍复化求积的基本思想是将要求解的定积分区间划分为若干个小区间,并对每个小区间采用数值积分方法进行近似计算,最后将各小区间的积分结果相加得到整个定积分的近似值。
2. 公式列表以下是复化求积的常用公式:矩形公式矩形公式是最简单的复化求积公式,将每个小区间近似为一个矩形,并取矩形的高度为该小区间上函数值的平均值。
矩形公式的表达式如下:∫[a, b] f(x) dx ≈ (b - a) * (f(a) + f(b)) / 2其中,a和b为积分区间的上下限。
梯形公式梯形公式是复化求积中常用的公式,将每个小区间近似为一个梯形,并取梯形的高度为该小区间上函数值的平均值。
梯形公式的表达式如下:∫[a, b] f(x) dx ≈ (b - a) * (f(a) + f(b)) / 2其中,a和b为积分区间的上下限。
辛普森公式辛普森公式是复化求积中精度更高的公式,将每个小区间近似为一个二次曲线,并取二次曲线的高度为该小区间上函数值的平均值。
辛普森公式的表达式如下:∫[a, b] f(x) dx ≈ (b - a) * (f(a) + 4 * f((a + b) / 2) + f(b)) / 6其中,a和b为积分区间的上下限。
3. 示例说明以求解函数f(x) = x^2在区间[0, 1]上的定积分为例,通过复化求积方法进行近似计算。
矩形公式计算将区间[0, 1]划分为n个小区间,每个小区间的宽度为h = (1 - 0) / n。
利用矩形公式计算每个小区间的积分值,然后将所得结果相加。
∫[0, 1] x^2 dx ≈ (1 - 0) * (f(0) + f(1)) / 2= (1 - 0) * (0^2 + 1^2) / 2= 1/2梯形公式计算同样将区间[0, 1]划分为n个小区间,每个小区间的宽度为h = (1 - 0) / n。
数值分析数值微积分实验
![数值分析数值微积分实验](https://img.taocdn.com/s3/m/98463c3f31126edb6f1a105e.png)
实验报告
一、实验目的
复化求积公式计算定积分。
二、实验题目
1.用复化梯形公式、复化辛普森公式求下列定积分,要求绝对误差为3
10-=ε,并将计算结果与精确解进行比较: dx e x e x 232
143
2⎰= 三、实验原理
复化求积公式程序,复化辛普森公式程序。
四、实验内容及结果
五、实验结果分析
实验1中复化梯形公式和复化辛普森公式的比较:
运行复化梯形公式的时候,因为要去找区分精度,所以花的时间比较长,需要将区间分为365份时才能达到规定的误差范围。
而复化辛普森公式则只需要将区间分为12份即可。
说明复化辛普森比较好。
梯形公式和辛普森公式例题
![梯形公式和辛普森公式例题](https://img.taocdn.com/s3/m/10f98ce93086bceb19e8b8f67c1cfad6195fe92a.png)
梯形公式和辛普森公式例题【原创实用版】目录1.梯形公式和辛普森公式的定义和用途2.梯形公式和辛普森公式的例题及解法3.梯形公式和辛普森公式的优缺点比较正文一、梯形公式和辛普森公式的定义和用途梯形公式和辛普森公式都是计算梯形面积的公式,但它们的应用范围和计算方法有所不同。
梯形公式,也叫梯形面积公式,是一个计算梯形面积的数学公式,它的公式为:(上底 + 下底)×高÷2。
梯形公式广泛应用于各种计算梯形面积的问题中。
辛普森公式,是一个计算梯形面积的近似公式,它的公式为:(上底 + 下底)×高÷2 + (上底 - 下底)×高÷4。
辛普森公式适用于对梯形面积的近似计算。
二、梯形公式和辛普森公式的例题及解法例题 1:一个梯形的上底长为 6cm,下底长为 10cm,高为 4cm,求这个梯形的面积。
解法:使用梯形公式,(6+10)×4÷2=16×4÷2=32(平方厘米),所以这个梯形的面积为 32 平方厘米。
例题 2:一个梯形的上底长为 6cm,下底长为 10cm,高为 4cm,要求梯形面积的近似值。
解法:使用辛普森公式,(6+10)×4÷2 + (6-10)×4÷4=16×4÷2 +4×4÷4=32+1=33(平方厘米),所以这个梯形的面积的近似值为 33 平方厘米。
三、梯形公式和辛普森公式的优缺点比较梯形公式的优点是计算简单,直接,适用于精确计算梯形面积。
缺点是如果梯形的上底和下底差距过大,那么计算结果可能会有较大的误差。
辛普森公式的优点是计算结果更为精确,尤其适用于梯形上底和下底差距较大的情况。
缺点是计算过程较为复杂,需要多出一步计算。
数值分析的实验报告
![数值分析的实验报告](https://img.taocdn.com/s3/m/52818decdc3383c4bb4cf7ec4afe04a1b171b077.png)
数值分析的实验报告数值分析的实验报告导言数值分析是一门研究数值计算方法和数值计算误差的学科,它在科学计算、工程技术和社会经济等领域具有广泛的应用。
本实验旨在通过对数值分析方法的实际应用,验证其有效性和可靠性。
实验一:方程求根方程求根是数值分析中的基础问题之一。
我们选取了一个非线性方程进行求解。
首先,我们使用二分法进行求解。
通过多次迭代,我们得到了方程的一个近似解。
然后,我们使用牛顿法进行求解。
与二分法相比,牛顿法的收敛速度更快,但需要选择一个初始点。
通过比较两种方法的结果,我们验证了牛顿法的高效性。
实验二:插值与拟合插值与拟合是数值分析中常用的数据处理方法。
我们选取了一组实验数据,通过拉格朗日插值法和最小二乘法进行插值和拟合。
通过对比两种方法的拟合效果,我们验证了最小二乘法在处理含有噪声数据时的优势。
同时,我们还讨论了插值和拟合的精度与样本点数量之间的关系。
实验三:数值积分数值积分是数值分析中的重要内容之一。
我们选取了一个定积分进行计算。
首先,我们使用复化梯形公式进行积分计算。
通过增加分割区间的数量,我们得到了更精确的结果。
然后,我们使用复化辛普森公式进行积分计算。
与复化梯形公式相比,复化辛普森公式具有更高的精度。
通过比较两种方法的结果,我们验证了复化辛普森公式的优越性。
实验四:常微分方程数值解常微分方程数值解是数值分析中的重要应用之一。
我们选取了一个常微分方程进行数值解的计算。
首先,我们使用欧拉方法进行数值解的计算。
然后,我们使用改进的欧拉方法进行数值解的计算。
通过比较两种方法的结果,我们验证了改进的欧拉方法的更高精度和更好的稳定性。
实验五:线性方程组的数值解法线性方程组的数值解法是数值分析中的重要内容之一。
我们选取了一个线性方程组进行数值解的计算。
首先,我们使用高斯消元法进行数值解的计算。
然后,我们使用追赶法进行数值解的计算。
通过比较两种方法的结果,我们验证了追赶法在求解三对角线性方程组时的高效性。
复化梯形公式和复化Simpson公式
![复化梯形公式和复化Simpson公式](https://img.taocdn.com/s3/m/f0825f26bcd126fff7050b14.png)
数值计算方法上机题目3一、计算定积分的近似值:221x e xe dx =⎰ 要求:(1)若用复化梯形公式和复化Simpson 公式计算,要求误差限71021-⨯=ε,分别利用他们的余项估计对每种算法做出步长的事前估计;(2)分别利用复化梯形公式和复化Simpson 公式计算定积分;(3)将计算结果与精确解比较,并比较两种算法的计算量。
1.复化梯形公式程序:程序1(求f (x )的n 阶导数:syms xf=x*exp(x) %定义函数f (x )n=input('输入所求导数阶数:')f2=diff(f,x,n) %求f(x)的n 阶导数结果1输入n=2f2 =2*exp(x) + x*exp(x)程序2:clcclearsyms x%定义自变量xf=inline('x*exp(x)','x') %定义函数f(x)=x*exp(x),换函数时只需换该函数表达式即可f2=inline('(2*exp(x) + x*exp(x))','x') %定义f(x)的二阶导数,输入程序1里求出的f2即可。
f3='-(2*exp(x) + x*exp(x))'%因fminbnd()函数求的是表达式的最小值,且要求表达式带引号,故取负号,以便求最大值e=5*10^(-8) %精度要求值a=1 %积分下限b=2 %积分上限x1=fminbnd(f3,1,2) %求负的二阶导数的最小值点,也就是求二阶导数的最大值点对应的x值for n=2:1000000 %求等分数nRn=-(b-a)/12*((b-a)/n)^2*f2(x1) %计算余项if abs(Rn)<e %用余项进行判断break% 符合要求时结束endendh=(b-a)/n %求hTn1=0for k=1:n-1 %求连加和xk=a+k*hTn1=Tn1+f(xk)endTn=h/2*((f(a)+2*Tn1+f(b)))z=exp(2)R=Tn-z %求已知值与计算值的差fprintf('用复化梯形算法计算的结果 Tn=')disp(Tn)fprintf('等分数 n=')disp(n) %输出等分数fprintf('已知值与计算值的误差 R=')disp(R)输出结果显示:用复化梯形算法计算的结果Tn= 7.3891等分数n=7019已知值与计算值的误差R= 2.8300e-0082. Simpson公式程序:程序1:(求f(x)的n阶导数):syms xf=x*exp(x) %定义函数f(x)n=input('输入所求导数阶数:')f2=diff(f,x,n) %求f(x)的n阶导数结果1输入n=4f2 =4*exp(x) + x*exp(x)程序2:clcclearsyms x%定义自变量xf=inline('x*exp(x)','x') %定义函数f(x)=x*exp(x),换函数时只需换该函数表达式即可f2=inline('(4*exp(x) + x*exp(x))','x') %定义f(x)的四阶导数,输入程序1里求出的f2即可f3='-(4*exp(x) + x*exp(x))'%因fminbnd()函数求的是表达式的最小值,且要求表达式带引号,故取负号,一边求最大值e=5*10^(-8) %精度要求值a=1 %积分下限b=2 %积分上限x1=fminbnd(f3,1,2) %求负的四阶导数的最小值点,也就是求四阶导数的最大值点对应的x值for n=2:1000000 %求等分数nRn=-(b-a)/180*((b-a)/(2*n))^4*f2(x1) %计算余项if abs(Rn)<e %用余项进行判断break% 符合要求时结束endendh=(b-a)/n %求hSn1=0Sn2=0for k=0:n-1 %求两组连加和xk=a+k*hxk1=xk+h/2Sn1=Sn1+f(xk1)Sn2=Sn2+f(xk)endSn=h/6*(f(a)+4*Sn1+2*(Sn2-f(a))+f(b)) %因Sn2多加了k=0时的值,故减去f(a)z=exp(2)R=Sn-z %求已知值与计算值的差fprintf('用Simpson公式计算的结果 Sn=')disp(Sn)fprintf('等分数 n=')disp(n)fprintf('已知值与计算值的误差 R=')disp(R)输出结果显示:用Simpson公式计算的结果Sn= 7.3891等分数n=24已知值与计算值的误差R= 2.7284e-008用复化梯形公式计算的结果为:7.3891,与精确解的误差为:2.8300e-008。
数值计算考题五——复合梯形求积公式与复合辛普森求积公式求积分
![数值计算考题五——复合梯形求积公式与复合辛普森求积公式求积分](https://img.taocdn.com/s3/m/e2acc7b769dc5022aaea0058.png)
数值计算考题五1. 分别用复合梯形求积公式与复合辛普森求积公式求积分I=⎰102x e sinx dx 的近似值,要求误差不超过ε=0.5⨯10-5.解:方法一: 复合梯形求积公式复合梯形求积公式是将积分区间划分为n 个很小的区间,然后将各个小区间的面积相加而得到在整个积分区间上的积分,当分成的小区间数n →∞时,求得的面积就等于积分的精确值。
由复合梯形求积公式的余项R n T 可得满足精度要求≤ε0.5⨯10-5时区间()b a ,被分成的区间数n 的最小值为700,所以在编程时循环次数应大于等于这个值,方可满足精度要求。
以下是编写的C 语言程序:#include<stdio.h>#include<math.h>void main(){int n=700,i;double x,f=0.0,t,h,T=0.0,c=2.0,a=0.0,b=1.0;h=(b-a)/n;for(i=0;i<n;i++){x=a+i*h;f=f+exp(pow(x,c))*sin(x);}t=(h/2)*(2*f+sin(1)*exp(1));printf("T=%f\n",t);}输出结果为T=0.778746.方法二:复合辛普森求积公式:复合辛普森求积法是将积分区间分割之后,在每个小区间[x i ,x i+1]上运用辛普森求积公式。
以下是编写的c 语言程序:#include<stdio.h>#include<math.h>void main(){int n=700,i;double x1,x2,f1=0.0,f2=0.0,t,h,T=0.0,c=2.0,a=0.0,b=1.0;h=(b-a)/n;for(i=0;i<n;i++){x1=a+i*h;x2=a+(i+0.5)*h;f1=f1+exp(pow(x1,c))*sin(x1);f2=f2+exp(pow(x2,c))*sin(x2); }t=(h/6)*(2*f1+sin(1)*exp(1)+4*f2); printf("T=%f\n",t);}程序输出结果为0.778745.2. 用高斯求积法求上述积分的近似值。
数值分析复化Simpson积分公式和复化梯形积分公式计算积分的通用程序培训讲学
![数值分析复化Simpson积分公式和复化梯形积分公式计算积分的通用程序培训讲学](https://img.taocdn.com/s3/m/3e511050cc17552706220806.png)
数值分析复化S i m p s o n积分公式和复化梯形积分公式计算积分的通用程序数值分析第五次程序作业PB09001057 孙琪【问题】分别编写用复化Simpson积分公式和复化梯形积分公式计算积分的通用程序;用如上程序计算积分:取节点并分析误差;简单分析你得到的数据。
【复化Simpson积分公式】Simpson法则:使用偶数个子区间上的复合Simpson法则:设n是偶数,则有将Simpson法则应用于每一个区间,得到复合Simpson法则:公式的误差项为:其中δ【复化梯形积分公式】梯形法则:对两个节点相应的积分法则称为梯形法则:如果划分区间[a,b]为:那么在每个区间上可应用梯形法则,此时节点未必是等距的,由此得到复合梯形法则:对等间距h=(b-a)/n及节点,复合梯形法则具有形式:误差项为:【算法分析】复合Simpson法则和复合梯形法则的算法上述描述中都已介绍了,在此不多做叙述。
【实验】通过Mathematica编写程序得到如下结果:1.利用复化Simpson积分公式得:可以看出,当节点数选取越来越多时,误差项越来越小,这从复合的Simpson公式很好看出来,因为在每一段小区间内,都是用Simpson法则去逼近,而每一段的误差都是由函数在该区间内4阶导数值和区间长度的4次方乘积决定的,当每一段小区间越来越小时,相应的每一段小区间内的逼近就会越来越好,从而整体的逼近效果就会越来越好。
2.利用复化梯形积分公式得:可以看出,当节点数选取越来越多时,误差项越来越小,这从复合的梯形公式很好看出来,因为在每一段小区间内,都是用梯形法则去逼近,而每一段的误差都是由函数在该区间内2阶导数值和区间长度的2次方乘积决定的,当每一段小区间越来越小时,相应的每一段小区间内的逼近就会越来越好,从而整体的逼近效果就会越来越好。
【分析】通过对上述两种法则的效果来看,复合Simpson法则的误差要比复合梯形法则收敛到0更快,说明复合Simpson法则逼近到原来的解更快,这主要是因为在每一段小区间内,复合Simpson法则利用得是Simpson法则,复合梯形法则利用得是梯形法则,前者的误差项要比后者的误差项小很多,因此造成了逼近速度的不一样。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验四、复化梯形公式和复化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
五.实验内容
复化梯形公式和复化辛普森公式的引入
复化梯形公式:
1
10[(()]2n n k k k h T f x f x -+==+∑;
复化辛普森公式:
1
1102[(4()()]6n n k k k k h S f x f x f x -++==++∑; 根据题意和复化梯形公式、复化辛普森公式的原理编辑程序求解代码如下: Matlab 代码
clc
s=quad('sin(x)./x',0,1)
p1=zeros(10,1);
p2=zeros(10,1);
for k=6:15
s1=0;
s2=0;
x=linspace(0,1,k);
y=sin(x)./x;
z=(1/(2*(k-1))):(1/(k-1)):1;
sz=sin(z)./z;
y(1)=1;
for i=1:(k-1)
s1=s1+0.5*(x(i+1)-x(i))*(y(i)+y(i+1));
end
for j=1:(k-1)
s2=s2+(1/6)*(x(j+1)-x(j))*(y(j)+y(j+1)+4*sz(j));
end
p1(k-5)=s1-s;
p2(k-5)=s2-s;
end
p1;
p2;
s1=s+p1(4)
s2=s+p2(4)
format long
for k=1:length(p1)
p1(k)=abs(p1(k));
p2(k)=abs(p2(k));
end
p1
p2
plot(6:1:15,p1,'-r')
hold on
plot(6:1:15,10000*(p2),'-c')
hold off
部分程序结果输出:
s =
0.0076534
s1 =
0.3582701
s2 =
0.5384947
结果分析 根据结果输出可知:积分1
sin()x I dx x =⎰的准确值为:I= 0.0076534; 通过复化梯形公式和复化辛普森公式得到的积分值为:
s1 =0.3582701:
s2 =0.5384947;
相对误差为:
411100 4.1510100S I I
δ--=⨯=⨯; 822100 1.6210100S I I
δ--=⨯=⨯; 显然,从相对误差可知通过辛普森公式得到的结果误差小精度高。
由于以上的算法只算了结点个数为9的情况,只能横向比较两公式的精确程度,而不能分别比较两公式随节点个数变化精度的变化,故而将以上程序重新编(以上程序为最终程序)可得出两公式随节点个数变化精度的变化情况所取得节点个数为从6到15,共计10种情况对应的误差值如下表:
T 0.00025 0.00021 0.00017 0.00015 0.00013
S*10000 0.06441 0.04491 0.03257 0.02444 0.01892
(表1)
注:由于辛普森公式的精度较高,所得的误差值较小不宜比较,故而将辛普森公式计算出的误差值乘上10000得到以上表1的结果,其相应的曲线图如下(图1)。
(图1:两误差曲线比较)
备注:红色,青色分别比奥斯曲线复化梯形公式和复化辛普森公式的误差值曲线从曲线图可知复化梯形公式和复化辛普森公式的随着节点个数的增加误差值越小即其精度逐渐增大,且复化辛普森公式的精度远高于复化梯形公式的精度。