奈良教育大学学術リポジトリNEAR
コンピュータ教材としての数値積分について
著者 坂口 杲一
雑誌名 奈良教育大学教育工学センター研究報告
巻 6
ページ 25‑36
発行年 1983‑03‑16
その他のタイトル On numerical integration as a
teaching‑material in computer education URL http://hdl.handle.net/10105/4617
コンビュ‑タ教材としての数値積分について
坂 口 栄 一 (数学教室)
On numerical integration as a teaching‑material in computer education
Koichi Sakaguchi ( Department of Mathematics)
Abstract
The general purpose of computer education is to develop the ability to use computers effectively. But the computer education for mathematics‑major students, especially, aims at having them study mathematics through using computers in addition to the above general purpose. From this point of view, the author attempts to discuss numerical integration as a teaching‑material in computer education.
Key words: computer education, numerical integration, interpolating polynomial
I.序 言
利用者の側におけるコンピュータ教育の一般的な目標は、機械の構造と機能について概括的な 知識を与え、併せて(むしろおもに)プログラムを作成して機械を利用する能力を養うことにあ
ると考えられるが、数学科におけるコンピュータ教育には、このほかに、コンビュ‑夕によって 数学を学ぶという意味が強く含まれているように患われる。
数値積分は、コンピュータ教育の中では、好個の教材としてよく取り上げられる。大抵は、台 形公式とSimpson公式を導き、これらの公式を使って定積分の近似計算をコンピュータに実行 させ、併せて誤差の大きさを吟味するという取り扱いになっている。この教材は、数学や数学の 応用という面で大事な意味を持っているが、プログラミングの面から見ても、配列、定義関数、
反復計算などの使い方に習熟するという意味がある。
ところで筆者は、この数値積分は、上記のような取り扱いの範囲から一歩踏み出すと、予想以 上の優れた教材価値を現してくれるものであることを知った。特に、数学的内容の発展的考察か ら統合的把握へという学習活動が、コンピュータを伴侶として展開される所に意義があるように 思った。そこで、その時の体験をもとにして、数値積分に関して筆者が興味を持った教育内容を 数学科におけるコンピュータ教材という観点からまとめてみようと思う。
n.発展的考察
坂 口 栄 一
被積分関数を/(x)、積分区間を[a,b]とし、 / (a,b)‑ fZ/(x')dx とおく。
台形公式は、区間[a,b]をn等分して、各小区間においてfix)に近似する1次関数を考 え、 /(x)の代りにその1次関数を積分して、 /(a,b)の近似値を得ようとするものであったO また、 Simpson公式は、区間[a,blを2n等分して、隣接する2つの小区間の合併区間をn個 作り、各合併区間においてf(x)に近似する2次関数を考え、 fix)の代りにその2次関数を積 分して、 /(a,b)の近似値を得ようとするものであった。そうして、台形公式よりも Simpson 公式の方が近似の精度が高かった。
これらのことを理解している者ならば、ちょっとした示唆によって、近似関数の次数を2から 3へ、 3から4へと高めて行けば、それだけ精度の高い近似式が得られるのではなかろうかとい う予想が立てられるに違いない。予想が立てられたら、次はその予想を確かめて見ようという意 欲が起って、発展的考察が自発的に展開されることになる。あるいはそこまでは望めない場合で も、これから先に展開される学習に大きな興味を示すことになるだろう。そこで、先ず3次関数 による近似から考察してみよう。
1. 3n等分法
区間[a,b]を3n等分して、分点をa‑xo, %i, ‑,%zn‑bとし y^f(xt), h‑(.b
‑a)/2nとおく。隣接する3つの小区間[xo, x¥], [xj,x2],[x2, #3]の合併区間を考 え、その中点に原点を移すと、 3つの小区間の境界点は‑3/2/2, ‑h/2, h/2, 3/z/2となる。
この4点における値がそれぞれ yo, y】 y2, y3であるような3次関数を
P{x)‑aox3十a^x2+a2x+a3
とおけば、
(2.1 /(*。,*3)÷∫
蝣Ah/2
P(x)dx‑冒‑axh3+iazh 3A/2
他方 y0‑‑27h3ao/8+9h2aL/4‑3ha2/2+a3
^1‑‑/Z3ォO 十h2al/A‑ha2/2+al y2‑ /z3ォo/8+/z2ォi/4+/z<22/2+f13 y3‑27h3ao/8+9h2al/4+3ha2/2十a3
が成り立つので、この連立方程式を解いて、
ai‑(yo‑yi‑y2+y3)/4h2 a3‑C‑3'o+9J'1 +9J'2‑J'3)/16 この2式を(.2.1)に代入すると
(2.2) I(x。, x3)÷÷ ;{y。+33^1+3^2+J'3)
が得られるO これが区間[xo, x3 ]における近似公式である。同様に区間[x3, X6 ],‑'> [x3n‑3,
∬3柁]における近似公式を求めて加えると、
(2.3) I(a,b)≒音‑h{y。+y3n+2(y3+y6十‑ ‑y3n‑3)+蝣so¥+y2十 y3n一十
y3n一.) . h‑(b‑a)/3n
が得られる (2.2)と(2.3)をどちらも3n等分公式と呼ぶことにしようo
この公式によって果して近似の精度が高まるかどうかを、 辛U+xy2 dx(‑1)の数値計算を 例にとって確かめてみた。 [0, 1]を12等分してSimpson公式と3n等分公式を用いて計算する
コンピュータ教材としての数値積分について
と、それぞれ1.∽00008, 1.0000017となり、期待に反して3乃等分法の方がむしろ精度が悪いと いう結果になった。用いたのはパーソナルコンピュータMZ‑80Bである。
はかにも二、三の例について試みてみたが、どの場合にも同じような結果が現れた。しかし、
ここで落胆せずに、次数を更に1つ高めて、 4次関数による近似について考察してみよう。
2. An等分法
Ia,b]を4n等分して、分点をa‑x。, xx xm‑bとし、 yi‑/(*;), h‑(b‑a)/4n とおいて、初めの4つの小区間の合併区間「go, ∬4]での近似4次関数を考え、 1.と同様の計 算を行えば、
(2.4) /(xo,xA)≒孟h(jyQ+32yl+i2y2+32y3+7y4) が得られる。従って全区間[a, b]では
(2.5) l(a, b)÷孟h{7(y。+ym)十32(>'1+>y ‑y*n‑1)+12(^2+3'6+‑A 十ym‑2)+14(^4十y%+‑‑‑+yin‑,)主
h‑(b‑a)/4n
となる。これを4n等分公式と呼ぶことにしよう。
この公式によって、 1.の最後の部分で取り上げたのと同じ積分の数値計算を、同じ機械を使 って行ってみたら、 1.0000000という素暗しい結果が出た。はかにも二、三試してみたが、どの 場合にも精度の著しい向上が見られた。
近似関数の次数を1から2に上げると精度が良くなることはよく知っていたが、今また3から 4に上げると精度が良くなった。ところが2から3に上げた場合は良くならなかった。それはど うしてなのだろうか。ここに又探求心をそそる1つの問題が現れたことに注意したい。
なお、数値計算の分野では、 3n等分公式をSimpsonの8分の3公式、 4n等分公式を4次 のNewton‑Cotesの公式と呼んでいるが1),2)、多くの人にはなじみのない名称なので、ここでは 上で約束したように呼ぶことにする。
Ⅲ.統合的把握とコンピュータの利用
前節の考察を更に拡げて、近似関数の次数を5, 6, ‥・と高めて行くと、公式を求める計算が 次第に繁雑になって来るO そこで、これらの公式をコンビェータを使って求められないだろうか という欲求が起ってくる。この欲求に応えるためには、一般のkn等分法の場合の公式の求め方 を探ってみることであるO これが見っかれば, kの値を1, 2,日・とおくことによって、台形公 式、 Simpson公式から始めて何〃等分公式まででも求められることになる。
さて、区間[a,b']をkn等分して、分点をa‑‑Xg,xi,蝣'蝣'xkn‑"とし、 yl‑f(xt), h‑
(b‑a)/knとおく。この場合、隣接するkJL司の小区間の合併区間をn個考えることになるが、
このn個の区間をkn等分法の基本区間と呼ぶことにする。
最初の基本区間[*O,**]における、fix)のk次の近似関数をP(x)とおくと、 P(x)紘 p(.xl)‑f(xt)‑yt, ‑ 1, を満たすk次の多項式である。このP(x)は次のような ヒントがあると、割合たやすく求められる。
xo, xtにおいてyo,j¥なる値を取る1次関数は、 xoとxlにおける値がyoと0であるような ]次関数と、 0とylであるような1次関数との和で表される、即ち
坂口栄‑
芸諾3*o+笠yl
である。また、xq,%i,X2においてyo,yi.yzなる値を取る2次関数は、%oi%li%2における値 がJVo,0,0であるような2次関数と、O,yuoであるような2次関数と、0,0,y2であるよ うな2次関数との和で表される。
この考えを拡げて行くと,白然に
・3.1)/>(*)‑」
1=。霊告岩霊霊霊霊yl
に到達できる。これはよく知られたLagrangeの補間多項式である。
我われの目的は
・3.2) I
XkP(x)dx‑Xoyd+右yi+‑+hyk0
とおいた時の右,右'・・蝣蝣*kをコンピュータを使って求めることにある。基本区間[xo,xk]の 中点に原点を移すと、xiは(i‑/2)h¥こ変るが、ここではhを省いて係数だけを取って、それ を改めてXiとおくことにする。そうして、先ず
・0‑窓/0‑鉦‑,β蝣a
‑TT(xo‑xi) を求める。
Boは簡単に求められるし、Ioは、‑x.‑x2,‑Xkによって作られる基本対称式Ax.At., .Akの値を求めた上で,
・3.3)/0‑2[‑^zJ一㌢D3・‑+4笠‑D‑],D‑xk,m‑:2[k/2]十l,/40‑l によって求められる。こうして^Oが求められるo
次に、∬Oと∬1の値を入れかえて同じことを行えば右が求まり、更に∬Oと∬2の値を入れかえ ると12が求まる、という貝合にすべてのiiが求められる。ただし、DはXoとxkを入れかえる 前のXkの値である。なおここでは、整数計算を行って答を分数で出したいために、(1)kが奇数 のときはすべてのXz‑i‑k/2を2倍して、それをまたxiとおく。つまり、hを単位にして表さ れていた数をh/2を単位にした表し方に改める。そのため、出て来た答の分母を2倍する(2)複 数個の分数の足し算を行って、答が既約分数で求められるような工夫をするO
次に、筆者が作った、k‑8までの計算ができるプログラムとそれによる計算結果を示そうO プアグラムはベイシックによるもので、機械はシャ‑プMZ‑80BであるO
〔プログラムの説明〕
20:X(t)にi一々/2を入れるO
30:kが奇数の時は2XU)をXd)におき直す。
40‑45:X(0)とX(g)の入れ換え。
100‑105:βo(‑β)を求める。
110‑125:‑X(1),‑,‑X(k)の基本対称式の値A(k,¥),A(k,2),‑,A(k,k)を求める。
28
コンピュータ教材としての数値積分について
〔プログラム〕
1(二i lJII'蝣1 A<日,日),E<9),X<81
1ミラ F(コR K=l T(コ 8:PRINT/P:PRINT/PsPRIfqT/P "ド::日昌STRS<ト::);I :?(::) FOR 工=I.二I T(二)ド:;:X( I)=I‑‑・K::I/コsNEXT エ
コ5 IF 卜::‑1NTく卜::./コ) *2ご=・::> THEN こ:T5
:SE二) FOR T‑(二) TO K:X(王¥ コ*X<I):NEXT I コ:ヨ D=X<ト::)
Ll(二) FOR G‑(二I TC〕卜
JI::ラ Eご=x<<::)) 5Xくく:り くG) S X<6)=・‑‑」
50 GQSL旧 10(:) NE:XT G,K 60 END
IO>∴ B=l
いT.:ヨ FOR l=1 TO 卜:..ォ討=B*くX日.:り‑X<I)):NEEXT ]:
110 FCIR I=(二) TO卜::=鞘くIq(二>)‑15NEXT I l15 F〔〕R !=蝣・! TCコト:::F〔m ,了=1 TC〕 I
120 杓<I,.J)=A<トー1,.J‑‑1>*X<]:)*く‑1)+A(I‑1,.J) 1ニ!5 NEXT .J,I
コ(二日二I Mニごコ*INT<ト:'./ニ::) +1sE三( 1) =D
コ(二)5 FuR l=こ写 To M STEP 2:E(I)‑E<I‑コ)*D*D:NE:XT I コい:> pi‑<:H Qlニ=1
215 FOR l=1 TO M STEP 2
22O P2=‑A<K,K+1‑I)串だくI) gQ2=ごj:!(ヨ亡.7SUB 500 225 NEXT I
コ7¥(:) 51=ニSGN<Pl) :Sコ=SGN<日) :U=ABS<Pl) sV=ABS<B/ご:I 235 BOSUB も(:)("サ
コ4I'二j S㌫S.1.串S2削」ユ: l‑'=Vl *(コ.1
コ0<二IJ 王F K‑‑】:NTくK/2.)*コ㌫O THE:N :315
丁り5 PRINT,'F 'l 、凸tlく101. y,..STF:削G);" *";TAEK L<コ>;"<";
コ06 PRエNT/F:̀ S賀"/'一芸STR尊くT*コテ葺‖ ) *h"
さい:I GtコTO 3;≡(コ
31!ヨ PRIN!̀VP TAB<1<二りぢ"Y'l葺STFほ<G>貫目 #・'貫1°判別16ユ)買"・:";
コ1ム PR工NT/P Si‖/l'完57°F綿(T)5‑I )ヰ叶l'!
ココ(二I iRETURN
50<二I REM BUNSUU r\旧 T凸SHIZ榊tJ St:㍗. U=ABSくF.コ) :∨='(コ:GOSUB かニーIC)
㌢≡:<Ob Xコ=Ul*SGN<Pご:) : Y:'.ヨ=Vl
‑三日!.0 (J‑‑Ql!\ノ‑y.三sGロSU王ヨ 古く二)0 515 X=Pl*Sノ1+メ::i#Ul:Y=W 5コo u芯ABS< X) :V㌫Y."GCほ5UB 占(二川二I 5ニ Pl‑Ul*SG│‑\K X) sQl=VI P̲:ii::≡>u RE:TURN
t>(.:)(::I REM t'ヨCM, LC卜1 NO Kt≡:I 3AIM 占(・;H UO=U."V(二 リ
ムoEiドニ ト】:NT<LJ/V)串:V ム10 IF R=O THEN もコ(:) も1≡三i U=V: lノ=R日ヨ〔:nl:〕 6C:iEラ
ムコ(:> Ul=UO/V VI㌶∨(::)/V:川=LJl*Vl凍V も二㌢:< RETURN
届 書 r^B
〔計算結果〕
K=l Y(.二) 求
\′ 1 本
串
* 中 平
︒ (M
⁚ Y
⁚ y Y
mニド
☆ 爪 r
*
・
*
・
*
f‑‑1 V⁚"> > > >
†ユー1
t::: Y<二) *
Yl * Y2 * Yコ * Y4 *
ト:: Y<::〉 *
Y1 * Y‑ご I:
Y3 * Y4 * 曲RK
K‑6 、1!J:二1 a:
Y1 * Y2 *
HMK ncK
Y5 * Y占 本
K=7 YO *
田HH
Y2 *
Y二三;斗:
\′4 * Y*.う *
H2K
Hi 門
< 1/2 ) 削・l
< 1/2‑ ) *h
1/3 4/:
.1 /..‑.
HH渥
?.!8 9/、日 ::3 /a
卜 L t 卜
F巧仙 E^^E^仙 r i‑. 1 hIL = I A.I
*
蝣
*
*
蝣
*
14/45 ) * 64/45 ) *h 8/15 ) *h 占4/45:: ) *卜1
14/45 ) *h
95/29日) 糾L・I lコ5/96 *h j. Z5/144 ) *rl lコi/144 ) *h
ユニ三5/甲蝣b ) #h 9=,/コ日日) *h
41/140 #h 54/35 ) 削・l
:ヨ7/14<::) :J 増叶・1 占臼/:35 ) *h ::!ア/14(二) ) 糾・1 54/::35 ) *h 41/14・:::) ) #h
5コ57/17コ8C) ) 削1 二2bO39;.''172日(二I ) 削''l コ43/占40 ) 利1 コ09ココ/17二Ia80 ) *l‑1
≡(ニー]?ココ/17ニ三日(:) ) *h ::543/ム40 ) 削1
2ミラCi二ヨ9/17コ8O ) *h 5=Ef.7/17ニ:uqt:) ) *h
〔ウエイト表示〕
YO Yl
I
‑ 1 2
2
//1 1
ヽ
‑ ノ ヽ
‑ ノ ) 6 6 た り 相 川
Ⅶ
・‑ I"
"
*
‑H
̲t*
*
* h h h 2 2 2
*
*
* 0 1 2
Y Y Y
ヽ
1 1
・ 1 1 1
oo co oo oo
/ / / / .‑
>
co m i
‑i
S i月
*
*
*
#
̲C‑G J3̲C m m o o m
*
#
*
*
0 ‑h oq oo
>H
>.
>,
>,
) ) ) ) ) C D O O O O a>
e n cd O 5 cr
;
川 "ⅦJ
t‑ CM CS] 00 b‑
3 1 3 ( ( ( ( (
*
#
*
*
*
hH
̲C S Z̲ C̲ C 蝣 ^+ t T^ * T^ f l ^ t
" T
^ H
*
*
*
*
*
CD i‑I 00 CO ^
>‑
>‑
>*
>H
>‑
, /
‑ , ,. / . ,
C
O
0
0
0
0
0
0
O
O
n
×
u
00 CO CO CO CO CO
eg c m cm o ci o j (N i / / / / / / C n I O O O L O Q
‑‑i n in in n rl
( ( ( ( ( (
*
*
*
*
*
*
̲c
̲c
̲c j s js
̲c
LO IO un LO IO lo
*
*
*
*
*
* 00 C O‑
^F L O
>‑>‑>‑>H>‑>‑
( ( ( ( ( ( (
*
*
*
*
*
*
*
Xi
‑G
‑C
̲C J 3‑ C Si
to to en tO tO t‑D tD
*
*
*
*
*
*
*
O
J
C
O
蝣
*
L
O
t
o
>H
>H
>H
>H
>H
>H
>H
( ( ( ( ( ( ( (
*
*
*
*
*
*
*
*
̲c
̲c
̲c x :̲ c: .i : j3 ,c
r‑ c‑ c‑ c‑ c‑ c‑ c‑ c‑
*
*
*
*
*
*
*
* O
^ N m
^ f l D t D t
‑
>H
>H
>H
>.
>H
>H
>H
>,
41/840 216/840 27/840 272/840 27/840 216/840 41/840
751 577 3''3 989 989 323 577 751
0 0
8 8
2 2
7 7
.‑1 I.I,
in"川Ⅶ ii"川Ⅶ
/172 172
0 0
8 8
/I728
月728
0 0
OC C0
2 2 7 7
1
‑
‑ 日Ⅶ 1
コンピュータ教材としての数値積分について
r^J^E^^ET山 Flは Fl"Fl仙 Fl"Fl州 Fl仙
0
‑ n r
‑ 1 f
‑ ' . i
*
¥ T
; 占 7 8
>
>
>>
>
>
>
>
>
R一‑一
( コ95も/14175 ) *h
・.'コ355コ/14175 ) *h (‑コ71ニヨ/14175 ) *h く 41984/1417J:≡; ) 削1 ( ‑‑コムココ/2日yci 削1
< 419日4/14175≡; ) 削・1 ド‑3712/14175 ) *h l' ココ:552../1417:5 *h ( 395占/141'75 ) *h
( ( ( ( ( ( ( ( (
*
*
*
*
*
*
*
*
*
﹂
﹂
﹂
﹂
﹂ j
;
﹂
﹂
﹂
oo oo oo oo oo oo oo oo oo
*
*
*
*
*
*
*
*
*
O
蝣
ォ
ー
i
N
C
O
"
^
L
D
^
)
t
^
‑
C
O
>
‑
>
H
>
ォ
>
.
>
H b
>
H
>
‑ ,
;
>
H
989/28350 5888/28350
0
4 .
・
l
一
2 9
9 4 101
5 94
0
1
8/
6/
0 0
5 5
3 3
8 8
2 2
0/2 6/
28/2
0 0
5 5
3 3
8 8oO
5888/28
0 0
5 5
3 3
989/28350
yo‑y1‑‑‑^‑iのときはP(x)…1となるから、 (3.2)においてXo+^lH <rXfc‑khが成り立 つ。右側は、このことを念頭においたウエイト表示である。
200‑205 : Dlを求める。
210‑225 : ( 3.3)の大括弧の中の分数の和を既約分数Pi/Q の形で求める。
230‑240 : Io/Ba (‑ら)を既約分数S/Tの形で求める。
300‑ 316 :結果の出力命令。
500‑530 : P2/Q2を既約分数に直してPi/Qiに加え、その和を既約分数に直して改めてPl/
Qlとおくサブプログラム。
600‑625 : U, Vの最大公約数g (これを又Vとおく)と、 Ui‑U/g,V,‑V/g及び最小公倍 数lγを求めるサブプログラム。
Ⅳ.誤差解析(1)
学生は誤差解析を敬遠し勝ちである。しかし、数学科の数値積分ではこれを省くわけにはいか ない。そこで、なるべく分り易いと思われる誤差解析の方法を探ってみた。筆者の考えたTaylor 展開を用いる方法は比較的分り易いと思われるので、それについて述べてみよう。ただし、Taylor 展開の可能性を仮定する。
今まで考察して来たkn等分法ならば、どれについても全く同じ方法が適用できるので、ここ では、例としてSimpson公式(2n等分法)の誤差について考える。
基本区間[*o> x2¥ におけるSimpson公式は
(4.1) I(x。,x2)≒‑告(J'。+43'i+3'2)
であった。区間[>O,xz¥の中点をCとすると、実はc‑xxであるが、
(4.1)の左辺 rn ‑x)dx sf{c)
h!浮x+f"(c) 2!蝣dx
rf"(r)h3聖‑筈十一)
・4.1)の右辺‑号{f(c‑h)+Af{c)+f(c+h)}
‑2[f(c)h+∠許%3・告;5・つ
Jk ll Iさ ・
(4.1 )の右辺から左辺を引いたものが、この区間におけるSimpson公式の誤差であるから、そ れをE(xo, x2)で表せば、
(4.2) EUo,x2)
‑∠獣hb+o(/z5), c‑xx
となるoそれ故、全区間La,*]での誤差を且(a,b)で‑、G(4)‑‑ax a<,x≦J/&圧おけば、
(4.3)E(a,b)匡笠h5・n+o(hb) j憲Gwhi+o(hi)
となる。これが従来使われて来た誤差の評価式だが、(4.2)の形の誤差表示を乃個の基本区間 にわたって加えると,
・4.4)E(a,b)‑一芸差f‑(ct)2h+o(h5)n,ct‑‑x21^
An{fw<.b)‑f (a)}+o(h*) 180
となる。これは最近森口繁‑氏3)によって示された興味ある誤差表示である。ただし、kn等分 法でkhの値が大きいと難点がある。
上で示した、Taylor展開を用いる誤差解析は、プロセスが単純なので分りやすいと思う。こ の方法で中点法、台形法から4乃等分法までの誤差を求めたら、次の表のようになる。ただし、
hGこ関する高次の項は省略してある。
方 法 名 基 本 区 間 で の 誤 差 全 区 間 で の 誤 差
中 点 法 】 f ′′( c ) h V 2 A ( b ‑ a ) h 2 G ( 2 ) / 2 4 台 形 法 f " { c ) h V ¥ 2 ( b ‑ a ) /z 2 G < 2 ) / 1 2 S i m p s o n 法 / < 4 J ( c ) /z 6/ 9 0 ( b ‑ a ) /z 4 G ( 4 ) / 1 8 C
3 n 等 分 法 3 / ( 4 ) ( c ) /z 5 / 8 0 ( b ‑ a ) /? 4 G ( 4 ) / 8 0 4 n 等 分 法 8 / ォ > ( c ) /2 V 9 4 5 2 ( b ‑ a ) ォ 6 G ( 6 )/ 9
hは最小区間の長さ・ Cは基本区間の中点、 GU)はmax,bげ(2>(*月を表す。
この表によれば、近似関数の次数をkからk+ 1に上げると、 kが奇数の時は精度は良くなる が、 kが偶数の時は精度は良くならない。その理由の解明が探求心、をそそる問題として残ってい る。
V.誤差解析(2)
前節の方法で、 5 n第分法から後のものについても誤差表示が得られるが、計算が次第に繁雑 になるので、ここでもコンピュータ計算に依れたらという欲求が起るo この欲求と前節の末尾で 述べた理由解明への欲求とは、もしも一般のk n等分法に対する誤差表示が得られたならば、一 度に解決する問題であると思われる。
その方法を探って、筆者は補間多項式の誤差解析を利用するのがうまい方法であることに気が ついた。
kn等分法の基本区間[xo, xk]におけるk次の近似関数をP(x)とし、この区間内の任意の 実数α(≒ 3‑0, ‑,A)に対して
K
コンビュ‑夕教材としての数値積分について
f(α)‑p(α) (cc‑xo)(α‑*l)‑・(α‑**) とおき、関数
(5.1 ) 甲(*)‑/(*トP(x主K(I‑xo)(x‑∫ )‑(*‑xk)
を作れば、甲Uo)‑甲Ui)‑蝣・蝣‑<?(*」)‑<?(α)‑0となる。それ故、 Rolleの定壬馴こより、
甲′(I)は開区間Uo,xk)上の少くともk十1個の異る点で0になる。従ってまた、甲′′(X)紘 同じ区間の少くともk個の異る点で0になる。同様の議論を続けて行くと、結局区間(xo, xk) 上の少くとも1点で甲(*+D(AT)‑Oとなる。その上点をEとおけば、自まαに依存するが、
甲(」+サ(」)‑f(k十>(」)‑(*+l)!/f‑O
となる。
それゆえ、 K‑/ik+1Hn/(k+¥)¥
また,甲(d)‑0なので, (5.1)から
・5.2) f(cc)‑p(α)+∠芸告1α‑∬o)(α‑xl)‑(α‑**)
となるo aは#,‑(2‑0,1,・・・,k)と異る、区間[*O,xk]上の任意の値であったが、 (5.2)は α‑xiのときにも成り立つので、 αをxに書き直して
(5.3) f(x)‑p(x)+ /(ォ+1>(<f)
‑ (x‑xq)(X‑xl)・蝣(x‑xk), xO≦x≦Xk (k+¥)¥
が得られるO ここでEはxに依存する、区間(*O, xk主Lの値である。
(5.3)は/(*)の近似式P(x)の誤差P(x)‑f(x)を与える式である4)。
[*O, xk]上でのkn等分公式の誤差をE(xo, xk)、同じ区間上でのi′(」+O(x月の最大値 をGで表せば、 (5.3)から
E(xo,xk) fk(p(x)‑f(x))dx
63l
(k+¥)l
・て首菩衰
I (ォ+D!
fx:粒xQ)(X‑*,)・蝣・(‑斤) dx
rxk.I:k2‑2h
k!hk+1kh
3h kh dx
:gf
それゆえ、E(x。,xk)をhのべき級数に展開すると、frk+2の項から始まるべき級数になる(少 くともhk+iまでの項は0になる)。ところが、[*。,xk]の中点をCとすれば、
E(xQ,xk)‑I(p(
"^C‑kh/2∬トf(∫))dx
なので、E(xo,xk)はhの奇関数である。従って、kが偶数のときは.E(xo,xk)をhのべき
級数に展開すると、hk十3の項から始まる級数になる。しかしkが奇数のときは、frk+2の項から始 まる級数になっているOそれゆえ、E(xQ,xk)の展開式は
(5.4)EUo,xk)‑alhl+ai+1hl+i+‑,rft ./‑2[y]+3
坂口栄一 の形をしている。
このことから、前節の末尾で述べたことの理由が解明されたが、次の目標はα/の値を計算する ための一般式を求めることである。
さて、(3.2)において、[*O,Xk]の中点をCとおけば、xi‑c+(i‑k/2)hなので、鋸ま yi‑云聖(c)
‑s‑;{(サー*/2)h}i
;‑on
のように展開できる。そこで、Il‑Xl/hとおけば、(3.2)の右辺をhのべき級数に展開した 時のhlの係数は、l'iの対称性と(k‑i主点蝣/2‑‑{i‑k/2)であることにより、
・5・5)2荒浮芦x' iti‑k/2)l‑{,m‑[㌢]l であることが分る。他方 rxkJrJ
7(JU*‑f̲:hi2 f{c+x)dx h/2 r‑kkl
J‑khi:{/(OKcアx+」・2x2‑
1!2!‑つdx
なので、この式のhlの係数は
/ォ‑サ(」・)
(/‑1)! I K‑2)
である。これを(5.5)から引いたものがα/であるから、
ai‑Af(/ー¥c), (5.6) A‑
(/‑D! (芦^・(サー言上
(㌢),
m‑[(&+l)/2]‑1
となる。それゆえ、 Aの値が求められたならば、基本区間[*O,xk]における誤差は
・5.7) E(xo,xk)‑Afu‑x){c)hl+o(h'),/‑2[^]+3
で与えられる。
さて、 kの1から8までの値に対して、右の値は、第3節でコンビュ‑夕計算によって既約分 方 法 名 基 本区間での誤差
5 〝等分法 了書誌 / (6)(c) h1 6 n 等分法
7 〃等分法 8 n 等分法
孟 f W ( C ) hつ
全区間での誤差の限界
55(b‑a)
霊謡G(8)^8
1169(6‑a)
Gwhs 296(6‑g)r(
467775‑川)h"
(使用している文字や記号の意味は前表と同様である)
・>i
コンビュ‑夕教材としての数値積分について
数の形で求めてある。その値を入力して、 (5.6)によってAの値を求めると、 E(x, xk)が 求められる。その際、 Aを既約分数の形で求めるプログラムが作れたらよい。その要領は第3節 のものと同様だから、ここではプログラムを示すのをやめて、 A‑5から後の結果だけを記すこ とにする(前ページ末尾の表)。なお、基本区間における数値積分公式と公式の誤差は、文献1) の中で7n等分法までのものが記載されているO
Ⅵ.ま と め
最後に、 kn等分法では、 kが変れば結果はどのように変るかということを、実例を用いて示 しておこう。精度を比べたら分るように、 k‑3, 5 の場合は実際に使用されることがない と思われるので、 *‑ 1 の場合について示すo実例は第2節でも用いた
I (1+x)2 dx(‑1)
で、どれも積分区間を24等分したものである。
方 法 数 値 積 分 の 結 果 誤 差 の 限 界
台 形 法 1.0 0 0 ,5 0 6 ,1 7 1 ,3 2 7 0 .0 0 1 ,7 3 6 ,1 1 1 ,l l S im p s o n 法 1.0 0 0 ,0 0 0 ,7 7 3 ,7 4 3 0 ▼0 0 0 ,0 0 4 ,0 1 8 ,7 7 4 n 等 分 法 1 ▼0 0 0 ,0 0 0 ,0 1 5 ,0 6 0 0 .0 0 0 ,0 0 0 , 1 1 1 ,6 3 6 〝 等 分 法 1.0 0 0 ,0 0 0 ,0 0 0 ,6 5 6 0 ー0 0 0 ,0 0 0 ,0 1 4 ,8 6 8 " 等 分 法 1.0 0 0 ,0 0 0 ,0 0 0 ,0 4 6 0 .0 0 0 ,0 0 0 ,0 0 0 ,7 9
数値積分には教育工学センタ‑のHitac L一一一340を用い、誤差の限界の計算には電卓を用いた。
さて、この拙論で述べた内容がコンビュ‑夕教材として用いられるのは、数値計算のための授 業の中か、あるいは数値計算を卒業研究とする学生に対してであろう。その場合、教材価値とし ては次のような事柄があげられると思う。
(1)発展的考察から統合的把握へという望ましい学習活動がコンピュータを伴侶として展開さ れる。実際、結果の良さを確かめたり、結果を使ったりするのにコンピュータが必要だったし、
又コンピュータ計算をさせたいために理論を発展させたり整理したりする必要があった。
(2)数学の研究は、疑問、予想、願望などが動機となって始動し、曲折を経て目標、あるいは 予期しない興味ある結果に到達し、研究の喜びを昧うというプロセスを持つものだが、この教材
は小規模ながらそのような経験を与えてくれる。
(3)数学の内容の面では、積分と数値積分の外に、 Taylor展開、補間公式、 Rolleの定理の一 般化などが含まれる。
(4)プログラミングの面では、基本対称式の値を求める方法、分数を既約分数に直して他の分 数に加え、結果を既約分数の形で求める方法などが、特有なものとして含まれる。
なお、初めはNewtonの補間多項式を用いる方法についても触れる予定であったが、紙面の都 合で割愛する。
坂 口 栄 一
参考文献
1)藤野精一編、計算数学‑ンドブック、朝倉書店、 337‑338百 2)森口繁‑著、計算数学夜話、日本評論社、 137‑139頁 3)同上、 131貢
4) K.W.サウスワース, S.L.デロー著、岩Ell倫典訳、電子計算機のための数学fl、共立社、 315貢