各種數(shù)值積分_第1頁(yè)
各種數(shù)值積分_第2頁(yè)
各種數(shù)值積分_第3頁(yè)
各種數(shù)值積分_第4頁(yè)
各種數(shù)值積分_第5頁(yè)
已閱讀5頁(yè),還剩80頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

各種數(shù)值積分第一頁(yè),共八十五頁(yè),2022年,8月28日5.1引言利用牛頓—萊布尼茲(Newton—Leibniz)公式(5.1)解決函數(shù)在上的積分問(wèn)題在理論和應(yīng)用上都有重大的意義。然而,在實(shí)際問(wèn)題中,往往會(huì)遇到一些困難。有些形式上較簡(jiǎn)單的函數(shù),其原函數(shù)不易求出或不能用初等函數(shù)表示成有限形式;有些被積函數(shù)的原函數(shù)過(guò)于復(fù)雜;而有些函數(shù)的函數(shù)值是由實(shí)驗(yàn)、觀測(cè)等方法得出,并沒有給出具體的解析表達(dá)式。這些情形說(shuō)明公式(5.1)在應(yīng)用上是有局限性的,因此研究定積分的數(shù)值計(jì)算問(wèn)題就顯得十分必要。本章主要介紹一些常用的數(shù)值積分方法,包括梯形積分法、辛卜生積分法、變步長(zhǎng)積分法、牛頓—柯特斯積分法、高斯積分法、龍貝格積分法以及高振蕩函數(shù)的積分法。第二頁(yè),共八十五頁(yè),2022年,8月28日5.2梯形積分法

5.2.1梯形積分法的基本思想梯形積分法的基本思想:在積分區(qū)間上,根據(jù)給定的插值條件和,構(gòu)造一個(gè)一次二項(xiàng)式,并以的積分值近似地代替。從幾何角度而言,是以梯形面積近似地代替曲邊梯形的面積。第三頁(yè),共八十五頁(yè),2022年,8月28日5.2.2梯形求積公式

依據(jù)梯形積分法的基本思想,將區(qū)間分成個(gè)相等的小區(qū)間,則每個(gè)小區(qū)間的長(zhǎng)度為,對(duì)每個(gè)小區(qū)間均實(shí)施如下的梯形求積:將這些小梯形的求積值加起來(lái),可以得到如下梯形求積公式:

其中,第四頁(yè),共八十五頁(yè),2022年,8月28日5.2.3實(shí)現(xiàn)梯形積分法的基本步驟

(1)輸入?yún)^(qū)間的端點(diǎn)值以及分割數(shù);

(2)將區(qū)間等分成個(gè)小區(qū)間,每一個(gè)小區(qū)間的長(zhǎng)度;

(3)計(jì)算每一個(gè)等分點(diǎn)的函數(shù)值

(4)計(jì)算

(5)輸出的值;

(6)結(jié)束。

第五頁(yè),共八十五頁(yè),2022年,8月28日?qǐng)D5.2梯形積分法的N-S圖描述

第六頁(yè),共八十五頁(yè),2022年,8月28日例5.1使用梯形求積公式求下列定積分的值。第七頁(yè),共八十五頁(yè),2022年,8月28日#defineN16/*等分?jǐn)?shù)*/floatfunc(floatx){floaty;y=4.0/(1+x*x);return(y);}voidgedianzhi(floaty[],floata,floath){inti;for(i=0;i<=N;i++)y[i]=func(a+i*h);}floattrapeze(floaty[],floath){floats;inti;s=(y[0]+y[N])/2.0;for(i=1;i<N;i++)s+=y[i];return(s*h);}第八頁(yè),共八十五頁(yè),2022年,8月28日main(){floata,b,h,s,f[N+1];clrscr();printf("inputa,b=");scanf("%f,%f",&a,&b);h=(b-a)/(float)N;gedianzhi(f,a,h);s=trapeze(f,h);printf("s=%f\n",s);}程序運(yùn)行結(jié)果:inputa,b=0,1↙s=3.140942第九頁(yè),共八十五頁(yè),2022年,8月28日

辛卜生積分法的基本思想:在積分區(qū)間上,根據(jù)給定的插值條件、和,構(gòu)造—個(gè)二次插值求積多項(xiàng)式,并以的積分值近似地代替。從幾何角度而言,是用過(guò)三點(diǎn)的拋物線面積近似地代替積分的曲邊面積。

5.3辛卜生(Simpson)積分法

5.3.1辛卜生積分法的基本思想第十頁(yè),共八十五頁(yè),2022年,8月28日5.3.2辛卜生求積公式

依據(jù)辛卜生積分法的基本思想,將區(qū)間分成(必須是偶數(shù))個(gè)相等的小區(qū)間,則每個(gè)小區(qū)間的長(zhǎng)度為,在小區(qū)間均實(shí)施如下的辛卜生求積:將這些求積值加起來(lái),可以得到如下辛卜生求積公式:其中:

為寄數(shù)項(xiàng)的函數(shù)值之和。為偶數(shù)項(xiàng)的函數(shù)值之和。第十一頁(yè),共八十五頁(yè),2022年,8月28日5.3.3實(shí)現(xiàn)辛卜生積分法的基本步驟(1)輸入?yún)^(qū)間的端點(diǎn)的值以及分割數(shù);(2)將區(qū)間等分成個(gè)小區(qū)間,每一個(gè)小區(qū)間的長(zhǎng)度;(3)計(jì)算每一個(gè)等分點(diǎn)的函數(shù)值;(4)計(jì)算:

(計(jì)算奇數(shù)項(xiàng)的函數(shù)值之和)(計(jì)算偶數(shù)項(xiàng)的函數(shù)值之和)(5)計(jì)算;(6)輸出的值;(7)結(jié)束。第十二頁(yè),共八十五頁(yè),2022年,8月28日?qǐng)D5.4辛卜生積分法的N-S圖描述第十三頁(yè),共八十五頁(yè),2022年,8月28日例5.2

使用辛卜生求積公式求下列定積分的值。第十四頁(yè),共八十五頁(yè),2022年,8月28日#include<stdio.h>#defineN16/*等分?jǐn)?shù)*/floatfunc(floatx){floaty;y=4.0/(1+x*x);return(y);}voidgedianzhi(floaty[],floata,floath){inti;for(i=0;i<=N;i++)y[i]=func(a+i*h);}第十五頁(yè),共八十五頁(yè),2022年,8月28日f(shuō)loatsimpson(floaty[],floath){floats,s1,s2;inti;s1=y[1];s2=0.0;for(i=2;i<=N-2;i=i+2){s1+=y[i+1];/*計(jì)算奇數(shù)項(xiàng)的函數(shù)值之和*/

s2+=y[i];/*計(jì)算偶數(shù)項(xiàng)的函數(shù)值之和*/}

s=y[0]+y[N]+4.0*s1+2.0*s2;return(s*h/3.0);}main(){floata,b,h,s,f[N+1];scanf("%f,%f",&a,&b);h=(b-a)/(float)N;gedianzhi(f,a,h);s=simpson(f,h);printf("s=%f\n",s);}程序運(yùn)行結(jié)果:inputa,b=0,1↙s=3.141593第十六頁(yè),共八十五頁(yè),2022年,8月28日5.4變步長(zhǎng)求積分法

5.4.1變步長(zhǎng)求積分法的基本思想

變步長(zhǎng)求積分法是以梯形公式為基礎(chǔ),逐步改變步長(zhǎng),以達(dá)到預(yù)先所要求的精度。變步長(zhǎng)求積分法主要有變步長(zhǎng)梯形求積分法和變步長(zhǎng)辛卜生求積分法,本節(jié)我們將介紹這兩種方法。第十七頁(yè),共八十五頁(yè),2022年,8月28日5.4.2變步長(zhǎng)梯形求積分法變步長(zhǎng)梯形求積分法的基本過(guò)程:(1)利用梯形公式,將積分區(qū)間一等分,即

其中(2)將每一個(gè)求積小區(qū)間再二等分一次(即由原來(lái)的等分變成等分),則有第十八頁(yè),共八十五頁(yè),2022年,8月28日

其中,為再二等分一次后新增加的結(jié)點(diǎn),它們都是原來(lái)各小區(qū)間的中點(diǎn)。由上式可以看出,在對(duì)每一個(gè)小區(qū)間在二等分后,在積分值的第一項(xiàng)中只包含再二等分之前的各結(jié)點(diǎn)上的函數(shù)值,并且第一項(xiàng)的值正好是再二等分之前積分值的一半,顯然,這一項(xiàng)中所包含的函數(shù)值就不必計(jì)算了。再二等分后需要計(jì)算的函數(shù)都包含在第二項(xiàng)中,它們都是二等分后出現(xiàn)的新的結(jié)點(diǎn)。因此有

(3)若,二等分后的積分值就是最后的結(jié)果;否則保存當(dāng)前的等分?jǐn)?shù)、積分值與步長(zhǎng),即轉(zhuǎn)到第(2)步繼續(xù)做二等分處理。

第十九頁(yè),共八十五頁(yè),2022年,8月28日5.4.3實(shí)現(xiàn)變步長(zhǎng)梯形積分法的基本步驟(1)輸入?yún)^(qū)間的端點(diǎn)的值以及容許誤差ε;(2)計(jì)算區(qū)間的長(zhǎng)度;(3)首先將區(qū)間進(jìn)行一等分,并設(shè);(4)再將每一個(gè)求積小區(qū)間,由原來(lái)的等分變成等分,即,;(5)計(jì)算

(6)成立,則繼續(xù);否則,轉(zhuǎn)(4);(7)輸出的值;(8)結(jié)束。第二十頁(yè),共八十五頁(yè),2022年,8月28日?qǐng)D5.5變步長(zhǎng)梯形積分法的N-S圖描述

第二十一頁(yè),共八十五頁(yè),2022年,8月28日f(shuō)loatbtrapeze(floata,floatb){inti,n;floath,p,t1,t2,s,x;n=1;h=b-a;t1=h*(func(a)+func(b))/2.0;p=eps+1.0;while(p>=eps)/*判斷是否達(dá)到精度要求,若沒有達(dá)到,繼續(xù)循環(huán)*/{s=0.0;for(i=0;i<=n-1;i++){x=a+(i+0.5)*h; s=s+func(x);}t2=(t1+h*s)/2.0;/*計(jì)算*/

p=fabs(t1-t2);/*計(jì)算精度*/

t1=t2;n=n+n;h=h/2.0;}return(t2);}第二十二頁(yè),共八十五頁(yè),2022年,8月28日voidmain(){floata,b,t;clrscr();printf("inputa,b=");scanf("%f,%f",&a,&b);t=btrapeze(a,b);printf("t=%f\n",t);}程序運(yùn)行結(jié)果:inputa,b=0,1↙t=0.746824第二十三頁(yè),共八十五頁(yè),2022年,8月28日5.4.4變步長(zhǎng)辛卜生求積分法變步長(zhǎng)辛卜生求積分法的基本過(guò)程:(1)利用梯形公式,將積分區(qū)間一等分,(2)將其中的每一個(gè)求積小區(qū)間再二等分一次(3)根據(jù)上面兩式和的余項(xiàng)、,可以推導(dǎo)出如下的變步長(zhǎng)辛卜生求積公式。進(jìn)一步得到再二次等分一次后的變步長(zhǎng)辛卜生求積公式為(4)若,二等分后的積分值就是最后的結(jié)果;否則保存當(dāng)前的變步長(zhǎng)梯形積分值、等分?jǐn)?shù)、積分值與步長(zhǎng),轉(zhuǎn)到第(2)步繼續(xù)做二等分處理。第二十四頁(yè),共八十五頁(yè),2022年,8月28日5.4.5實(shí)現(xiàn)變步長(zhǎng)辛卜生積分法的基本步驟第二十五頁(yè),共八十五頁(yè),2022年,8月28日第二十六頁(yè),共八十五頁(yè),2022年,8月28日變步長(zhǎng)梯形積分法的N-S圖描述第二十七頁(yè),共八十五頁(yè),2022年,8月28日例5.4使用變步長(zhǎng)辛卜生求積分法求下列定積分的值。#include<stdio.h>#include<math.h>#defineeps0.000001/*容許誤差*/floatfunc(floatx){floaty;y=sqrt(1-x*x);return(y);}第二十八頁(yè),共八十五頁(yè),2022年,8月28日f(shuō)loatbsimpson(floata,floatb){inti,n;floath,p,e,s;floatt1,t2,s1,s2,x;n=1;h=b-a;t1=h*(func(a)+func(b))/2.0;s1=t1;/*用代替*/

e=eps+1.0;while(e>=eps){s=0.0;for(i=0;i<=n-1;i++){x=a+(i+0.5)*h; s=s+func(x);}t2=(t1+h*s)/2.0;/*計(jì)算*/

s2=(4*t2-t1)/3.0;/*計(jì)算*/

e=fabs(s2-s1);/*計(jì)算精度*/

t1=t2;s1=s2;n=n+n;h=h/2.0;}return(s2);}第二十九頁(yè),共八十五頁(yè),2022年,8月28日voidmain(){floata,b,s;clrscr();printf("inputa,b=");scanf("%f,%f",&a,&b);s=bsimpson(a,b);printf("s=%f\n",s);}程序運(yùn)行結(jié)果:inputa,b=0,1↙s=0.785398第三十頁(yè),共八十五頁(yè),2022年,8月28日5.5牛頓—柯特斯(Newton—Cotes)積分法

5.5.1牛頓—柯特斯積分法的基本思想

牛頓—柯特斯積分法的基本思想:用高次的插值求積多項(xiàng)式去逼近被積函數(shù),以獲得高精度的積分值。事實(shí)上,梯形積分是當(dāng)時(shí)的牛頓—柯特斯積分,辛卜生積分是當(dāng)時(shí)的牛頓—柯特斯積分,它們都是牛頓—柯特斯積分的特例。第三十一頁(yè),共八十五頁(yè),2022年,8月28日5.5.2牛頓—柯特斯求積公式下面給出三到五階牛頓—柯特斯求積公式。第三十二頁(yè),共八十五頁(yè),2022年,8月28日實(shí)現(xiàn)三階牛頓—柯特斯求積公式的基本步驟如下:第三十三頁(yè),共八十五頁(yè),2022年,8月28日三階牛頓—柯特斯求積公式的N-S圖描述第三十四頁(yè),共八十五頁(yè),2022年,8月28日例5.5使用牛頓—柯特斯求積公式求下列定積分的值。第三十五頁(yè),共八十五頁(yè),2022年,8月28日#include<stdio.h>#defineN5floatfunc(floatx){floaty;y=4.0/(1+x*x);return(y);}voidgedianzhi(floaty[],floata,floatb,intn){floath,s;inti;h=(b-a)/(float)n;for(i=0;i<=n;i++)y[i]=func(a+i*h);}第三十六頁(yè),共八十五頁(yè),2022年,8月28日f(shuō)loatnc3(floaty[],floata,floatb,intn){floath,s,s0,s1;inti;h=(b-a)/(float)n;s0=s1=0.0;for(i=0;i<=n-3;i=i+3){s0+=y[i]+y[i+3];s1+=y[i+1]+y[i+2];}s=s0+3.0*s1;return(s*h*3.0/8.0);}main(){floata,b,h,s,f[N+1];floatn3,n4,n5;printf("inputa,b=");scanf("%f,%f",&a,&b);gedianzhi(f,a,b,3);n3=nc3(f,a,b,3);printf("\n3-nc4-nc5-nc\n");printf("%f%f%f\n",n3,n4,n5);}第三十七頁(yè),共八十五頁(yè),2022年,8月28日程序運(yùn)行結(jié)果:inputa,b=0,1↙3-nc4-nc5-nc3.1384613.1421183.141878第三十八頁(yè),共八十五頁(yè),2022年,8月28日5.6高斯積分法

5.6.1高斯積分法的基本思想前面介紹的幾種數(shù)值積分方法,都是先尋找一個(gè)插值求積多項(xiàng)式,并以近似代替函數(shù)進(jìn)行積分而獲得積分的近似值,即

(5.2)

表明,函數(shù)在區(qū)間上的積分可以用函數(shù)在該區(qū)間上的個(gè)點(diǎn)的函數(shù)值的線性組合來(lái)近似代替。但是,由于插值求積公式是利用插值多項(xiàng)式的積分得到的,因此,如果被積函數(shù)為次數(shù)不超過(guò)的多項(xiàng)式,則利用插值求積公式計(jì)算得到的積分值是準(zhǔn)確的。

在實(shí)際應(yīng)用中,為了提高數(shù)值求積公式的精度,一般要求數(shù)值求積公式對(duì)于次數(shù)盡可能高的多項(xiàng)式能準(zhǔn)確成立。由此提出了高斯積分法。即:如果插值求積公式(5.2)具有次代數(shù)精度,那么稱該插值求積公式為高斯求積公式。其節(jié)點(diǎn)稱為高斯點(diǎn),稱為高斯求積系數(shù)。下面具體介紹幾個(gè)常用的高斯求積公式。

第三十九頁(yè),共八十五頁(yè),2022年,8月28日5.6.2勒讓德—高斯(Legendre-Gauss)求積公式勒讓德—高斯求積公式,特別適合于計(jì)算區(qū)間[-1,1]的積分,其求積公式可以表示為以下形式:而對(duì)于一般區(qū)間,通過(guò)變換可以得到以下形式的求積公式:

高斯點(diǎn)及高斯求積系數(shù),參見表5.1(表示階數(shù))。第四十頁(yè),共八十五頁(yè),2022年,8月28日第四十一頁(yè),共八十五頁(yè),2022年,8月28日第四十二頁(yè),共八十五頁(yè),2022年,8月28日第四十三頁(yè),共八十五頁(yè),2022年,8月28日第四十四頁(yè),共八十五頁(yè),2022年,8月28日第四十五頁(yè),共八十五頁(yè),2022年,8月28日第四十六頁(yè),共八十五頁(yè),2022年,8月28日第四十七頁(yè),共八十五頁(yè),2022年,8月28日第四十八頁(yè),共八十五頁(yè),2022年,8月28日例5.6使用勒讓德—高斯求積公式求下列定積分的值。第四十九頁(yè),共八十五頁(yè),2022年,8月28日#include<math.h>doublefunc(doublex){doubley;y=x*x+sin(x);return(y);}doublelegendre_gauss(doublea,doubleb,intm,intn){doubleh,hx,y,s,dx,x0;inti,k;staticdoublex[]={-0.9061798459,-0.5384693101,0.0000000000, 0.5384693101,0.9061798459};staticdoublew[]={0.2369268851,0.4786286705,0.5688888889, 0.4786286705,0.2369268851};dx=(b-a)/(double)m;hx=dx/2;s=0.0;for(k=0;k<m;k++){x0=a+(double)k*dx+hx;for(i=0;i<n;i++){y=x0+x[i]*hx; s=s+w[i]*func(y);}}return(s*hx);}第五十頁(yè),共八十五頁(yè),2022年,8月28日main(){doublea,b,s;intm,n;clrscr();printf("inputduandiana,b=");scanf("%f,%f",&a,&b);printf("inputjieshum=");scanf("%d",&m);printf("inputfengeshun=");scanf("%d",&n);s=legendre_gauss(a,b,m,n);printf("s=%lf\n",s);}程序運(yùn)行結(jié)果:inputduandiana,b=2.5,8.4↙inputjieshum=10↙inputfengeshun=5↙s=192.077774第五十一頁(yè),共八十五頁(yè),2022年,8月28日5.6.3埃爾米特—高斯(Hermite-Gauss)求積公式

埃爾米特—高斯求積公式,特別適合于計(jì)算如下形式的積分:其求積公式可以表示為以下形式:

高斯點(diǎn)及高斯求積系數(shù),參見表5.2(表示階數(shù))。第五十二頁(yè),共八十五頁(yè),2022年,8月28日第五十三頁(yè),共八十五頁(yè),2022年,8月28日第五十四頁(yè),共八十五頁(yè),2022年,8月28日埃爾米特—高斯求積公式的N-S圖描述

第五十五頁(yè),共八十五頁(yè),2022年,8月28日例5.7使用埃爾米特—高斯求積公式求下列定積分的值。第五十六頁(yè),共八十五頁(yè),2022年,8月28日#include<math.h>doublefunc(doublex){doubley;y=x*x;return(y);}doublehermite_gauss(intn){doubles;inti,k;staticdoublex[]={-2.02018287046,-0.95857246461,0.00000000000,0.95857246461,2.02018287046};staticdoublew[]={0.01995324206,0.39361932315,0.94530872048,0.39361932315,0.01995324206};s=0.0;for(i=0;i<n;i++)s=s+w[i]*func(x[i]);return(s);}第五十七頁(yè),共八十五頁(yè),2022年,8月28日main(){doubles;intn;clrscr();printf("inputn=");scanf("%d",&n);s=hermite_gauss(n);printf("s=%lf\n",s);}程序運(yùn)行結(jié)果:inputn=5↙s=0.886227第五十八頁(yè),共八十五頁(yè),2022年,8月28日5.6.4拉蓋爾—高斯(Laguerre-Gauss)求積公式

拉蓋爾—高斯求積公式,特別適合于計(jì)算如下形式的積分:其求積公式可以表示為以下形式:

高斯點(diǎn)及高斯求積系數(shù),參見表5.3(表示階數(shù))。第五十九頁(yè),共八十五頁(yè),2022年,8月28日第六十頁(yè),共八十五頁(yè),2022年,8月28日第六十一頁(yè),共八十五頁(yè),2022年,8月28日拉蓋爾—高斯求積公式的N-S圖描述第六十二頁(yè),共八十五頁(yè),2022年,8月28日例5.8使用拉蓋爾-高斯求積公式求下列定積分的值。第六十三頁(yè),共八十五頁(yè),2022年,8月28日#include<stdio.h>doublefunc(doublex){doubley;y=x;return(y);}doublehermite_gauss(intn){doubles;inti,k;staticdoublex[]={0.26356031972,1.41340305911,3.59642577104,7.08581000586,12.64080084428};staticdoublew[]={0.52175561058,0.39866681108,0.07594244968,0.00361175868,0.00002336997};s=0.0;for(i=0;i<n;i++)s=s+w[i]*func(x[i]);return(s);}

第六十四頁(yè),共八十五頁(yè),2022年,8月28日main(){doubles;intn;clrscr();printf("inputn=");scanf("%d",&n);s=hermite_gauss(5);printf("s=%lf\n",s);}程序運(yùn)行結(jié)果:inputn=5↙s=1.000000第六十五頁(yè),共八十五頁(yè),2022年,8月28日5.7龍貝格(Romberg)積分法

5.7.1龍貝格積分法的基本思想前面講述的各種求積方法是插值求積的思想,而龍貝格積分法的基本思想是,使用一個(gè)諸如梯形求積法等代數(shù)精度較低的求積公式,相繼以步長(zhǎng)和求得定積分的兩個(gè)近似結(jié)果,然后再做它們適當(dāng)?shù)木€性組合,就可以得到一個(gè)代數(shù)精度更高的公式。

第六十六頁(yè),共八十五頁(yè),2022年,8月28日5.7.2實(shí)現(xiàn)龍貝格積分法的基本步驟(1)輸入?yún)^(qū)間的端點(diǎn)的值,最大迭代次數(shù)以及容許誤差ε;(2)計(jì)算區(qū)間的長(zhǎng)度;(3)用梯形積分法計(jì)算積分近似值;(4)對(duì)計(jì)算對(duì)計(jì)算,如果,則退出循環(huán)。(5)如果,則繼續(xù);否則輸出無(wú)解信息,轉(zhuǎn)(7);(6)輸出的值;(7)結(jié)束。第六十七頁(yè),共八十五頁(yè),2022年,8月28日

表5.1龍貝格求積算法元素進(jìn)行運(yùn)算的順序

實(shí)現(xiàn)龍貝格積分法的N—S圖,如圖5.11所示。

第六十八頁(yè),共八十五頁(yè),2022年,8月28日例5.9使用龍貝格求積公式求下列定積分的值。第六十九頁(yè),共八十五頁(yè),2022年,8月28日#include<stdio.h>#include<math.h>#defineDFS_N20/*等分?jǐn)?shù)*/#defineMAX_N10/*最大循環(huán)次數(shù)*/#defineeps0.00001/*容許誤差*/doublefunc(doublex){doubley;y=4.0/(1+x*x);return(y);}doublesum(doubleaa,doublebb,longintn){doubleh,s;inti;h=(bb-aa)/n;s=0.0;for(i=1;i<n;i++)s+=func(aa+i*h);s=s+(func(aa)+func(bb))/2.0;return(h*s);}第七十頁(yè),共八十五頁(yè),2022年,8月28日voidromberg(doublea,doubleb){doubles,t[MAX_N+1][2];inti,flag=0;longintn=DFS_N,m;t[0][1]=sum(a,b,n);n*=2;for(m=1;m<MAX_N;m++){for(i=0;i<m;i++)t[i][0]=t[i][1];t[0][1]=sum(a,b,n);n*=2;for(i=1;i<=m;i++) t[i][1]=t[i-1][1]+(t[i-1][1]-t[i-1][0])/(pow(2,2*m)-1);if(fabs(t[m][1]-t[m-1][1])<eps) {printf("t[%ld][0]=%lf\n",m,t[m][1]);flag=1; break;}}if(flag==0) printf("Returnnosoloved\n");}第七十一頁(yè),共八十五頁(yè),2022年,8月28日main(){doublea,b;clrscr();printf("inputa,b=");scanf("%lf,%lf",&a,&b);romberg(a,b);}程序運(yùn)行結(jié)果:inputa,b=0,1↙t[2][0]=3.141570第七十二頁(yè),共八十五頁(yè),2022年,8月28日5.8高振蕩函數(shù)的積分法

5.8.1高振蕩函數(shù)的積分法的基本思想在工程實(shí)際問(wèn)題中,經(jīng)常會(huì)遇到如下形如的積分,當(dāng)m充分大時(shí)為高振蕩函數(shù)的積分。對(duì)于高振蕩函數(shù)的積分,如果采用插值求積法進(jìn)行積分,則在建立被積函數(shù)或的插值多項(xiàng)式時(shí),為了使能夠很好地逼近它們,就要求也要振蕩得厲害,即要求插值多項(xiàng)式的次數(shù)足夠高。但是,高次插值實(shí)際的逼近性質(zhì)很不好,實(shí)用價(jià)值不大。即使采用分段低次插值,效果也不會(huì)很理想。因此,引進(jìn)計(jì)算高振蕩函數(shù)的積分的重要方法分部積分法。

第七十三頁(yè),共八十五頁(yè),2022年,8月28日分部積分法的基本思想是,令:其中:則有:反復(fù)利用分部積分法可以得到分離出實(shí)部和虛部后就得到以下分部積分公式。第七十四頁(yè),共八十五頁(yè),2022年,8月28日5.8.2分部積分公式當(dāng)積分區(qū)間為時(shí),則變?yōu)?/p>

第七十五頁(yè),共八十五頁(yè),2022年,8月28日實(shí)現(xiàn)高振蕩函數(shù)積分的N—S圖第七十六頁(yè),共八十五頁(yè),2022年,8月28日例5.10用分部積分法計(jì)算下列高振蕩積分的值。

其中,,。取,,,則有

第七十七頁(yè),共八十五頁(yè),2022年,8月28日#include<math.h>voidpart(doublea,doubleb,intm,intn,doublefa[],doublefb[],doubles[]){intmm,i,j;doublesma,smb,cma,cmb;doublesa[4],sb[4],

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論