高斯-勒讓德二十一點定積分(II)

程式編寫日期: 2008年3月24日

以下程式使用了高斯-勒讓德法二十一點方法(Gauss-Legendre Quadrature)計算一個定積分的近似值,現時不少圖像計算機亦是使用相似的方法計算定積分的近似值。 準確度將取決於方法使用的點數及分割的區間數目,點數及區間越多準確度越高,但計算時間亦越長。

程式 (509 bytes,不包括綠色的函數方程)

ClrMemory: ?→A: ?→B: ?→C: . 5C-1(B - A→B:

Lbl 0: A + B + BX: ln( Ans: Ans ( .1460811336(Y=0)

+ .0160172283(Y2+2=3Y) + .0369537898(Y>2)(5>Y)

+ .0571344254(Y>4)(7>Y) + .0761001136(Y>6)(9>Y)

+ .0934444235(Y>8)(11>Y) + .1087972992(Y>10)(13>Y)

+ .1218314161(Y>12)(15>Y) + .1322689386(Y>14)(17>Y)

+ .1398873948(Y>16)(19>Y) + .144524404(Y>18M+: 1+Y→Y: -X→X:

Y=1 => .9937521706→X: Y=3 => .9672268386→X:

Y=5 => .9200993342→X: Y=7 => .8533633646→X:

Y=9 => .7684399635→X: Y=11 => .6671388042→X:

Y=13 => .5516188359→X: Y=15 => .4243421202→X:

Y=17 => .2880213168→X: Y=19 => .1455618542→X:

Y-21 => Goto 0: A + 2B→A: Rec( 0 , 0: C-1→C: Ans => Goto 0: MB

註: 綠色的 ln( Ans是函數方程(變數是Ans),若果想計算其它函數的積分,只要修改綠色的部份。

 

例題: 利用高斯-勒讓德二十一點方法(Gauss-Legendre Quadrature)及區間數目為2,計算

按 Prog 1 再按 1 EXE 2 EXE 2 EXE (顯示答案為0.386294361)

 

參考資料:

http://mathworld.wolfram.com/Legendre-GaussQuadrature.html

http://en.wikipedia.org/wiki/Gaussian_quadrature

 

返回 CASIO fx-50FH 及 fx-50F PLUS 程式集

Free Web Hosting