




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、實驗六一、實驗名稱 復(fù)合梯形積分和復(fù)化3點Gauss積分計算數(shù)值積分二、實驗?zāi)康呐c要求:實驗?zāi)康? 掌握復(fù)合梯形積分和復(fù)化3點Gauss積分算法。實驗要求:1.給出復(fù)合梯形積分和復(fù)化3點Gauss積分算法思路,2.用C語言實現(xiàn)算法,運行環(huán)境為Microsoft Visual C+。三、算法思路:1復(fù)合梯形積分我們把整個積分區(qū)間a,b分成n個子區(qū)間xi,xi+1,i=0,1,2,n,其中x0=a,xn+1=b。這樣求定積分問題就分解為求和問題: 當(dāng)這n+1個結(jié)點為等距結(jié)點時,即,i=0,1,2,n,復(fù)化梯形公式的形式是算法:input nfor i=1 to n do end do output
2、 S2復(fù)化3點Gauss積分根據(jù)書上6.8節(jié)定理5,可以用遞推法求正交多項式如下:,求的根,得到,則積分可近似表示為如下形式,將帶入其中得到,帶入上式得到復(fù)化3點Gauss積分公式。分別在每個小區(qū)間上應(yīng)用三點Gauss積分并求和,便得到復(fù)合三點Gauss積分法數(shù)值積分值。算法:input n,a,bh=(a+b)/2for i=1 to ndo ,end dooutput S四、實驗題目:為了方便起見,我們采取復(fù)合梯形積分的方法取N充分大時(這里取N等于2的20次方)得到的積分值近似看作積分的真實值,因為題中的積分函數(shù)在積分閉區(qū)域上是一致連續(xù)的,所以由黎曼積分的定義知在N充分大的情況下,復(fù)化梯
3、形積分的值充分接近原積分值,故我們這樣做是合理的。五、問題的解:編寫程序(程序見后面附錄),輸出結(jié)果如下:為了便于看清數(shù)值積分結(jié)果與原函數(shù)積分實際結(jié)果的差異。我在運行程序時故意計算了一下原函數(shù)積分的近似真實結(jié)果。分析并比較得到的數(shù)據(jù)可以看出,當(dāng)k越來越大時,error1和error2越來越接近于零,數(shù)值積分的結(jié)果越來越靠近原函數(shù)積分實際結(jié)果,并且error2 比error1 更快地接近于零。誤差比率總是大于零的,當(dāng)誤差比率越大,誤差減小得越快。復(fù)合梯形積分的誤差項是.,當(dāng)h趨于零時,顯然積分的誤差項更快地趨于零,實驗結(jié)果復(fù)符合這一結(jié)論。觀察復(fù)化3點Gauss積分結(jié)果,發(fā)現(xiàn)每個結(jié)果的誤差已經(jīng)早早
4、地為零了,而三個復(fù)合梯形積分的誤差還是大于零的,所以我們可以得到結(jié)論,使用復(fù)化3點Gauss積分能夠更精確地得到積分值。六、附錄:實驗編程,運行環(huán)境為Microsoft Visual C+第一個積分的程序:#include <math.h>#include <stdio.h>#include <stdlib.h>double f(double x) /定義函數(shù)f(x)/double y;y=exp(-x*x);return(y);double R(int N,double a,double b) /建立復(fù)合梯形積分/double s,h;int i;h=(b
5、-a)/N; s=0.0;for(i=1;i<=N;i+)s=s+h*(f(a+(i-1)*h)+f(a+i*h)/2.0;return(s);double T(int N,double a,double b) /建立復(fù)化3點Gauss積分/double s,h,A1,A2,A3,x1,x2,x3;int i;h=(b-a)/N; s=0.0;for(i=1;i<=N;i+) A1=A3=5.0*h/18.0;A2=4.0*h/9.0;x1=a+(i-1/2.0)*h-sqrt(3.0/5.0)*h/2.0;x2=a+(i-1/2.0)*h;x3=a+(i-1/2.0)*h+sqr
6、t(3.0/5.0)*h/2.0;s=s+A1*f(x1)+A2*f(x2)+A3*f(x3);return(s);void main() /main函數(shù)進行最終運算并輸出結(jié)果/int k,N;double s18,s28,s,error18,error28;printf("對第一個積分n"); s=R(pow(2,20),0.0,1.0);printf(" s1代表復(fù)合梯形積分n");error10=0.0;for(k=1;k<=7;k+) N=pow(2,k);s1k=R(N,0.0,1.0);error1k=fabs(s1k-s);print
7、f("N=%d, s1=%.12f, error1=%.12f, 比率=%.12fn",N,s1k,error1k,error1k-1/error1k);printf("n s2代表復(fù)化3點Gauss積分n");error20=0.0; for(k=1;k<=7;k+) N=pow(2,k);s2k=T(N,0.0,1.0);error2k=fabs(s2k-s);printf("N=%d, s2=%.12f, error2=%.12f, 比率=%.12fn",N,s2k,error2k,error2k-1/error2k);第
8、二個積分的程序:#include <math.h>#include <stdio.h>#include <stdlib.h>double f(double x) /定義函數(shù)f(x)/double y;y=1.0/(1.0+x*x);return(y);double R(int N,double a,double b) /建立復(fù)合梯形積分/double s,h;int i;h=(b-a)/N; s=0.0;for(i=1;i<=N;i+)s=s+h*(f(a+(i-1)*h)+f(a+i*h)/2.0;return(s);double T(int N,d
9、ouble a,double b) /建立復(fù)化3點Gauss積分/double s,h,A1,A2,A3,x1,x2,x3;int i;h=(b-a)/N; s=0.0;for(i=1;i<=N;i+) A1=A3=5.0*h/18.0;A2=4.0*h/9.0;x1=a+(i-1/2.0)*h-sqrt(3.0/5.0)*h/2.0;x2=a+(i-1/2.0)*h;x3=a+(i-1/2.0)*h+sqrt(3.0/5.0)*h/2.0;s=s+A1*f(x1)+A2*f(x2)+A3*f(x3);return(s);void main() /main函數(shù)進行最終運算并輸出結(jié)果/in
10、t k,N;double s18,s28,s,error18,error28;printf("對第二個積分n"); s=R(pow(2,20),0.0,4.0);printf(" s1代表復(fù)合梯形積分n");error10=0.0;for(k=1;k<=7;k+) N=pow(2,k);s1k=R(N,0.0,4.0);error1k=fabs(s1k-s);printf("N=%d, s1=%.12f, error1=%.12f, 比率=%.12fn",N,s1k,error1k,error1k-1/error1k);prin
11、tf("n s2代表復(fù)化3點Gauss積分n");error20=0.0; for(k=1;k<=7;k+) N=pow(2,k);s2k=T(N,0.0,4.0);error2k=fabs(s2k-s);printf("N=%d, s2=%.12f, error2=%.12f, 比率=%.12fn",N,s2k,error2k,error2k-1/error2k);第三個積分的程序:#include <math.h>#include <stdio.h>#include <stdlib.h>#define PI
12、3.1415926double f(double x) /定義函數(shù)f(x)/double y;y=1.0/(2.0+cos(x);return(y);double R(int N,double a,double b) /建立復(fù)合梯形積分/double s,h;int i;h=(b-a)/N; s=0.0;for(i=1;i<=N;i+)s=s+h*(f(a+(i-1)*h)+f(a+i*h)/2.0;return(s);double T(int N,double a,double b) /建立復(fù)化3點Gauss積分/double s,h,A1,A2,A3,x1,x2,x3;int i;h
13、=(b-a)/N; s=0.0;for(i=1;i<=N;i+) A1=A3=5.0*h/18.0;A2=4.0*h/9.0;x1=a+(i-1/2.0)*h-sqrt(3.0/5.0)*h/2.0;x2=a+(i-1/2.0)*h;x3=a+(i-1/2.0)*h+sqrt(3.0/5.0)*h/2.0;s=s+A1*f(x1)+A2*f(x2)+A3*f(x3);return(s);void main() /main函數(shù)進行最終運算并輸出結(jié)果/int k,N;double s18,s28,s,error18,error28;printf("對第三個積分n"); s=R(pow(2,20),0.0,2*PI);printf(" s1代表復(fù)合梯形積分n");error10=0.0;for(k=1;k<=7;k+) N=pow(2,k);s1k=R(N,0.0,2*PI);error1k=fabs(s1k-s);printf("N=%d, s1=%.12f, error1=%.12f, 比率=%.12fn",N,s1k,error1k,error1k-1/error
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025貴州遵義茅臺機場有限責(zé)任公司招聘12人筆試歷年參考題庫附帶答案詳解
- 江蘇省蘇州市蘇州工業(yè)園區(qū)2024-2025學(xué)年七年級下學(xué)期期末語文試題
- 大學(xué)生健康網(wǎng)絡(luò)構(gòu)建路徑
- 動漫介紹課件圖片素材
- 2025年中國濟南市智慧燈桿市場全面調(diào)研及行業(yè)投資潛力預(yù)測報告
- 2025年中國生物轉(zhuǎn)盤行業(yè)市場發(fā)展監(jiān)測及投資戰(zhàn)略咨詢報告
- 2025年服務(wù)機器人項目立項申請報告
- 2022-2027年中國木材行業(yè)市場供需現(xiàn)狀及投資戰(zhàn)略研究報告
- 市管企業(yè)安全生產(chǎn)監(jiān)督管理暫行辦法
- 網(wǎng)絡(luò)安全等級保護工作會議
- 爆破三員培訓(xùn)
- 浙江首考2025年1月普通高等學(xué)校招生全國統(tǒng)一考試 歷史 含答案
- 2025重慶電費收費標準
- 露天采石場應(yīng)急預(yù)案
- 2025-2030中國水溶性肥料行業(yè)市場發(fā)展分析及前景趨勢與投資研究報告
- 復(fù)雜特征點云的高精度快速配準技術(shù)
- 2024年1月國家開放大學(xué)漢語言文學(xué)本科《古代詩歌散文專題》期末紙質(zhì)考試試題及答案
- DBJ50T-098-2019 城市綠化養(yǎng)護質(zhì)量標準
- 消防接警調(diào)度(一級)理論考試題庫(含答案)
- 教材教法基礎(chǔ)培訓(xùn)
- DB3301T 0410-2023 城市河道生態(tài)清淤管理規(guī)范
評論
0/150
提交評論