matlab 复合辛普森公式,复合梯形和复合辛普森MATLAB程序.doc
####
實 驗 報 告
課程名稱數(shù)值分析實驗項目名稱數(shù)值積分實驗類型上機實驗學時班級學號姓名指導(dǎo)教師實驗室名稱實驗時間2014.11.19實驗成績預(yù)習部分實驗過程
表現(xiàn)實驗報告
部分總成績教師簽字日期
實驗三 數(shù)值積分
一.數(shù)值積分的基本思想
1.復(fù)合梯形公式:Tn=2;
2.復(fù)合辛普森公式:Sn=[f(a)+f(b)+2+4];
以上兩種算法都是將a-b之間分成多個小區(qū)間(n),則h=(b-a)/n,xk=a+kh, xk+1/2=a+(k+1/2)h,利用梯形求積根據(jù)兩公式便可。
3.龍貝格算法:在指定區(qū)間內(nèi)將步長依次二分的過程中運用如下公式
(1)Sn=T2n-Tn
(2)Cn=S2n-Sn
(3)Rn=C2n-Cn4
T =T - T,k = 1,2,…
二、計算流程圖
1、復(fù)合梯形和復(fù)合辛普森算法框圖:
下圖是龍貝格算法框圖:
自適應(yīng)辛普森積分算法流程框圖:
二.實驗題目及實驗?zāi)康?/p>
實驗題目:用不同數(shù)值方法計算積分 = -。
(1)取不同的步長h。分別用復(fù)合梯形及復(fù)合辛普森求積計算積分,給出誤差中關(guān)于h的函數(shù),并與積分精確值比較兩個公式的精度,是否存在一個最小的h,使得精度不能再被改善?
(2)用龍貝格求積計算完成問題(1)。
(3)用自適應(yīng)辛普森積分,使其精度達到10。
實驗?zāi)康?#xff1a;
了解并掌握matlab軟件的基本編程、操作方法;
初步了解matlab中的部分函數(shù),熟悉循環(huán)語句的使用;
通過上機進一步領(lǐng)悟用復(fù)合梯形、復(fù)合辛普森公式,以及用龍貝格求積
方法計算積分的原理。
三.實驗手段:
指操作環(huán)境和平臺:win7系統(tǒng)下MATLAB R2009a
程序語言:一種類似C語言的程序語言,但比C語言要寬松得多,非常方便。
四.程序
①復(fù)合梯形求積程序
function t=TiXing_quad(a,b,.h)
format long
x=a:h:b;
y=sqrt(x).*log(x);
y(1)=0;
t=0;
for k=1:(b-a)/h,
t= t+y(k)+y(k+1);
end
t=t*h/2;
②復(fù)合辛普森求積程序
function s=Simpson_quad(a,b,h)
format long
x=a:h:b;
y=sqrt(x).*log(x);
z=sqrt(x+h/2).*log(x+h/2);
y(1)=0;
s=0;
for k=1:(b-a)/h,
s= s+y(k)+y(k+1)+4*z(k);
end
s=s*h./6;
③龍貝格求積程序
function [q,R]=Romberg(a,b,eps)
h=b-a;
R(1,1)=h*(0+sqrt(b).*log(b))/2;
M=1;
J=0;
err=1;
while err>eps
J=J+1;
h=h/2;
S=0;
for p=1:M
x=a+h*(2*p-1);
S=S+sqrt(x).*log(x);
end
R(J+1,1)=R(J,1)/2+h*S;
M=2*M;
for k=1:J
R(J+1,k+1)=R(J+1,k)+(R(J+1,k)-R(J,k))/(4^k-1);
end
err=abs(R(J+1,J)-R(J+1,J+1));
end
q=R(J+1,J+1);
控制臺輸入代碼:
(1)
>> a=0;
>> b=1;
>> h=0.2;
>> t=TiXing_quad(a,b,h)
>> s=Simpson_quad(a,b,h)
>> h=0.02;
>> t=TiXing_quad(a,b,h)
>> s=Simpson_quad(a,b,h)
>> h=0.002;
>> t=TiXing_quad(a,b,h)
>> s=Simpson_quad(a,b,h)
(2)
>> a=0;
>> b=1;
>> eps=10^-8;
>> [quad,R]=Romberg(a,b,eps)
(3)
>> a=0;
>> b=1;
>> eps=10^-4;
>> q=ZiShiYingSimpson('sqrt(x).*log(x)',a,b,eps)
實驗結(jié)果比較與分析
(1)
h = 0.2時,結(jié)果如下:
h = 0.02時,結(jié)果如下:
h = 0.002時;得到的結(jié)果如下:
由結(jié)果(1)可知對于同一步長h,復(fù)合辛普森法求積分精度明顯比復(fù)合梯形法求積的精度要高,且當步長取不
總結(jié)
以上是生活随笔為你收集整理的matlab 复合辛普森公式,复合梯形和复合辛普森MATLAB程序.doc的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: patch命令用法
- 下一篇: matlab没有找到图形用户界面,MAT