《複合梯形和複合辛普森MATLAB程式》由會員分享,可線上閱讀,更多相關《複合梯形和複合辛普森MATLAB程式(10頁珍藏版)》請在人人文庫網上搜尋。
1、實 驗 報 告課程名稱數值分析實驗項目名稱數值積分實驗類型上機實驗學時班級學号姓名指導教師實驗室名稱實驗時間2014.11.19實驗成績預習部分實驗過程表現實驗報告部分總成績教師簽字日期實驗三 數值積分一數值積分的基本思想1.複合梯形公式:Tn=2;2.複合辛普森公式:Sn=f(a)+f(b)+2+4;以上兩種算法都是将a-b之間分成多個小區間(n),則h=(b-a)/n,xk=a+kh, xk+1/2=a+(k+1/2)h,利用梯形求積根據兩公式便可。3.龍貝格算法:在指定區間内将步長依次二分的過程中運用如下公式(1)Sn=T2n-Tn(2)Cn=S2n-Sn(3)Rn=C2n-Cn4T =。
2、T - T,k = 1,2,二、計算流程圖1、複合梯形和複合辛普森算法框圖:下圖是龍貝格算法框圖:開始讀入a,b,ch=b-a,T1=hf(a)+f(b)/2,k=1S=0,x=a+h/2S=S+f(x)x=x+hxepsJ=J+1;h=h/2;S=0;for p=1:Mx=a+h*(2*p-1);S=S+sqrt(x).*log(x);endR(J+1,1)=R(J,1)/2+h*S;M=2*M;for k=1:JR(J+1,k+1)=R(J+1,k)+(R(J+1,k)-R(J,k)/(4k-1);enderr=abs(R(J+1,J)-R(J+1,J+1);endq=R(J+1,J+1)。
3、;控制台輸入代碼:(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)五 實驗結果比較與分析。
4、(1)h = 0.2時,結果如下:h = 0.02時,結果如下:h = 0.002時;得到的結果如下:由結果(1)可知對于同一步長h,複合辛普森法求積分精度明顯比複合梯形法求積的精度要高,且當步長取不同值時即h越小時,積分精度越高。實驗結果說明不存在一個最小的h,使得精度不能再被改善。又兩個相應的關于h的誤差(餘項)Rn(f)=-h2f();Rn(f)=-(h/2)4f(4)( ),其中屬于a到b。可知h愈小,餘項愈小,進而積分精度越高。(2)得到的結果如下圖所示:求的積分q = -0.0623(3)求得積分q = -0.2563六.學習心得對于同一步長h,複合辛普森法求積分精度明顯比複合梯形法求積的精度要高,且當步長取不同值時即h越小時,積分精度越高。但用龍貝格算法會比它們更加快速地逼近精确值,大大地提高計算速度和精度。