用MATLAB来实现变步长梯形和变步辛普森求积法
1、 变步长梯形求积法原理:变步长求积法的思想是利用若干小梯形的面积代替原方程的积分,当精度达不到要求时,可以通过增加点数对已有的区间再次划分,达到所需精度时即可;其中由于新的式子中有原来n点中的部分项主要公式:T2n=Tn/2+ (h/2)*Σf (xk+0.5);
2、 变步长辛普森求积算法,是计算数值积分里面的一个常用算法。与变步长梯形公式一样,将求积区间逐步二分,在每个子区间上运用辛普森公式,最后累加起来。与变步长梯形公式相比,该算法就是运算次数较少,比复合梯形公式计算速度快。但是精度是一样的。
3、 题目1
复合梯形公式
在matlab编辑窗口输入以下程序:
function T = myInt3(f,a,b,e)
h = b-a;
T1 = h*(f(a)+f(b))/2;
T2 = T1/2 + h/2*f(a+h/2);
n = 2;
while abs(T2-T1) >= e
T1 = T2;
S = 0;
for j=0:n-1
x = a + (2*j+1)*(b-a)/(2*n);
S = S+ f(x);
end
T2 = T1/2 +S*(b-a)/(2*n);
n = n*2;
end
T = T2;
再在命令符窗口输入
F=@(x)exp(-x.^2);
myInt3(F,0,1,0.000001)
即可得到