数式処理ソフト DERIVE(デライブ) de ドライブ

61.多面体の体積公式

多角形の面積(ベクトルの外積)

「また、更新が遅れてしまったのう」

「おじさん。「また」、というより、「また・また・また」というべきでしょうが」


「そう言わんといてな。ともちゃん。
年寄りとはいえ、なかなか、浮き世のしがらみから抜けられへんのじゃよ」
「で、なんと。
またまた、「面積」のおさらいなの?。
数式処理ソフト DERIVE(デライブ)の第39回の「3次元空間における平面上の多角形の面積」で、終わってるじゃない。
それこそ、また~、て感じじゃん。」
「ま、いきなり「体積」に取りかかる前にウォーミングアップを兼ねて、面積をおさらいした方が、読者の方にとっても親切と思うんじゃ」
「おじさん自身にとってじゃないの。
ま、わかりやした! どんなふうにやるの」
「39回の場合は、面積公式、これは、3次元空間上の任意の平面にある多角形の各頂点の位置ベクトルを、rjとしたとき、
(添え字 jは、多角形を上から見て、反時計回りに1~nまで振ったものとしよう。n>=3)
面積 Sは、結局、次の式で求められることを調べたのじゃった。
 S=ABS(Σri×ri+1)/2、ここで、×は、ベクトルの外積を表す。また、ABS関数は、絶対値を求める関数とする」
「そうだったわね。
そのときは、ストークスの定理から導く方法とベクトルの外積から証明する方法の2つを使ったんだったわ。
下の図が、頂点をP1~P8とした場合の説明図ね。
ベクトルの外積を使う方法では、凸多角形の例で説明すると、
小三角形の面積ベクトル、ΔSは、相対ベクトルRR2の1/2なので、R1r2r1などと書くと(r1はP1の位置ベクトル、他も同様)、
S=(r2r1)×(r3r1)=r2×r3r1×(r3r2)。ここで、-r2×r1r1×r2を使っている。
以下、2つ目の小三角形についても、r1は変わらずに、
r3×r4r1×(r4r3)、
3つ目についても、
r4×r5r1×(r5r4)、
以下、同様なので、第2項のr1×(r3r2r4r3+・・)は、一回りすると、ゼロになることを使うと、
2Sr2×r3r3×r4+・・=Σ(ri×ri+1)となる、というものだったわ」

「一方、ストークスの定理を使う方法は、少し、回りくどいものじゃった。
後から消去する、方向余弦や多角形のおかれている平面の方程式の係数が出てきたんじゃったな」
「ベクトルの外積を使う方法は、直感的に分かりやすかったね」

多角形の面積(ストークスの定理)

「確かに、ベクトルの外積を使う方法は、面積については、直感的に分かりやすいじゃろう。
けれども、面積とは、異なる量、たとえばじゃ、重心などを計算する場合には、いつでも使えるというわけにはいかないじゃろう。
 そこで、ストークスの定理を使う方法を、もう少し丁寧に、おさらいして、多面体の体積の方法を考えるヒントにしよう」

「え~と。ストークスの定理(ストークスの公式ともいう)では、∫∫F・dS=∫Bdt
ここで、左辺は、面積分、右辺が線積分となっている。Fは、任意のベクトル関数とする。
単連結な領域(左の図のように島があっても切断線を入れて単連結にできればよい)であれば、任意の平面図形について成り立つんだけど、ここでは、多角形に限定しているわよ。
一方、F=rot(B)となる、ベクトル関数(ベクトルポテンシャルと言う)をBとしている。
また、dtは、辺の接線ベクトル。
覚えてる? DERIVEには、rot( )、ローテーションという関数が無かったのよ。
あるのは、curl( )、カールなの。思い出してくれたかな?」

「さて、面積を求めることをまずは、考えるが、煩雑なので、しばらくの間、ベクトルを太字で表さないことにする。
今、Fとして、定数ベクトルになるものを考えると、面の法線ベクトルを[nx,ny,nz]とするとき、左辺=定数(nx+ny+nz)となる。
さて、下図の小三角形P1→P2→P3について、2S=ABS(Σ(i=1~3)(ri×ri+1))が証明できれば、多角形全体に対しても成立することが分かる。
なぜなら、たとえば、P3→P1とP1→P3のところの線積分は、互いに打ち消しあう。
また、面積分の方は、各Pが同一平面上にあれば(このように仮定している)、小三角形毎の面積分の和になるからの。
このようにして、小三角形 Sについて、成り立てば、4角形、P1・・P4についても成り立つじゃろう。
以下同様に任意の多角形についても同じじゃ。
たとえば、B=[-y, x, 0]とすると、F=rot(B)=[0,0,2]ととることができる。
また、B=[z, 0,-x]とすると、同様に、[0,2,0]ととることができる。
更に、B=[0, -z, y]とすると、同様に、[2,0,0]ととることができる。
これら3つを足し合わせると、B=[z-y,x -z, y - x])となり、F=[2,2,2]ととることができる。
こうすると、左辺の面積分は、∫[nx,ny,nz]・[2,2,2] dS=2S(nx+ny+nz)、と表される」
「じゃあ。右辺の線積分は、P1~P2の間で、考える。
x=(x2-x1)p + x1, y=(y2-y1)p + y1, z=(z2-z1)p + z1、
ここで、pは、パラメーターで、0~1をとる。
dx=(x2-x1)dp, dy=(y2-y1)dp, dz=(z2-z1)dpとなるので、詳しく書くと、
∫((z2-z1)p + z1 - (y2-y1)p - y1)(x2-z1)dp + ((x2-z1)p+x1 - (z2-z1)p - z1)(y2-y1)dp + ((y2-y1)p + y1 - (x2-x1)p - x1)(z2-z1)dp
=∫(0-1)((x2-z1)(x2-x1)p - (y2-y1)(x2-x1)p+(x2-z1)(y2-y1)p - (x2-z1)(y2-y1)p + (y2-y1)(z2-z1)p - (x2-x1)(z2-z1)p )dp
=∫(x1(y2 - z2) + x2(z1 - y1) + y1z2 - y2z1)dp
=x1(y2 - z2) + x2(z1 - y1) + y1z2 - y2z1
つまり、赤字の部分のpの一次の項が消えるの。
同様に、P2からP3の間で、x2(y3-z3)+x3(z2-y2)+y2z3-y3z2
同じく、P3からP1の間で、x1(z3 - y3) + x3(y1 - z1) - y1z3 + y3z1
合計すると、
x1(y2 - y3 - z2 + z3) - x2(y1 - y3 - z1 + z3) + x3(y1 - y2 - z1 + z2) + y1(z2 - z3) + y2(z3 - z1) + y3(z1 - z2)
上式を(nx+ny+nz)で割ったものが面積Sの2倍になるはずだから、nxは、(r2-r1)/ABS(r2-r1)のx成分、などから。
すると、線積分は、
√(x1^2(y2^2 - 2y2y3 + y3^2 + (z2 - z3)^2) + 2x1(x3(y1(y2 - y3) - y2^2 + y2y3 + (z1 - z2)(z2 - z3)) - x2(y1(y2 - y3) - y2y3 + y3^2 + (z1 - z3)(z2 - z3))) + x2^2(y1^2 - 2y1y3 + y3^2 + (z1 - z3)^2) - 2x2x3(y1^2 - y1(y2 + y3) + y2y3 + (z1 - z2)(z1 - z3)) + x3^2(y1^2 - 2y1y2 + y2^2 + (z1 - z2)^2) + (y1(z2 - z3) + y2(z3 - z1) + y3(z1 - z2))^2)、となる。
これは、非常に複雑に見えるけど、r1×r2+r2×r3+r3×r1の絶対値(=2S)と同一となる」
「お疲れさんじゃった。
原理に忠実に計算しているので、とても「エレガント」とは言えないじゃろうがな。
一言、注意を付け足すと、第39回では、たとえば、線積分の、∫x dy - y dx を、直ちに、Σ(xi(yi+1-yi)-yi(xi+1-xi))などとしている。
今回のパラメーターを使う方法では、∫x dy - y dx=Σ∫((xi+1-xi)p + xi)(yi+1-yi)dp -∫((yi+1-yi)p + yi)(xi+1-xi))dp となるが、
右辺の赤字で示した pの一次の項が打ち消し合い、Σ(xi(yi+1-yi) - yi(xi+1-xi))となるため、結果的には、39回の記事は、正しい。
ただ、これは、直線であるためと計算式の対称性がよいためであり、一般には、必ずしもこのような置き換えが正しいとは限らないであろう。
※多角形と同一平面上の座標軸をとれば、z1=z2=z3=0となり、nx=ny=0、nz=1と置けるので、元の面積分は、単純に2Sとなる。
このとき、右辺の線積分も、x1y2 - x1y3 - x2y1 + x2y3 + x3y1 - x3y2 となり、これは、r1×r2+r2×r3+r3×r1=[0, 0, x1(y2 - y3) + x2(y3 - y1) + x3(y1 - y2)]のz成分と一致する。
なお、後者のベクトルは、z成分のみなので、その絶対値もz成分の絶対値に等しい。これから、2S=ABS(Σri×ri+1)であることは、すぐ分かる」
※今回は、3次元空間内の『平面』という扱いなので、『向き』が必ず、決まります。
 ストークスの定理そのものは、文中でも、述べているように、適当に切断を入れて、単連結にすることができれば、任意の閉曲面に適用できます。
 ただし、『メビウスの帯』のような、『向き』が決められない面に、一般には、適用できません。

多面体の体積(三角錐)

「ここからは、多面体の体積を考えるとしよう。
まずは、簡単なところで、下図のような三角錐の体積を求める。
ここで、点Hは、必ずしも、三角形P1-P2-P3の面内にあるとは限らんが、底面に対してAから引いた垂線の足じゃ」
「となると、三角錐の体積をVと書いて、三角形P1-P2-P3の面積をSとすれば、V=Sh/3、ここで、AHの長さをh。
これが中学校以来のおなじみの公式よね」
「第40回のベクトル解析(1)に出てきているのじゃが、AP1のベクトルをA1などと書くとき、A1・(A2×A3)がA1、A2、A3からなる平行6面体の体積じゃ。
これから、容易に、3角錐の体積 Vは、平行6面体の1/6であることが分かるので、V=A1・(A2×A3)/6となる」
「じゃ、この式から出発して、V=Sh/3となることを証明してみるよ。
これまでの記法にならい、P1の位置ベクトルをr1などとして、
また、あらたに相対ベクトルとして、R1r2-r1、R2r3-r1、また、A1αと略記して、
A2A1P1P2αR1A3A1P1P3αR2 から、
A1・(A2×A3)=(αR1)・(α×R2)=α・(α×R1)+R1・(α×R2
=(α×α)・R1-(R1×R2)・α=-(R1×R2)・α=-((r2-r1)×(r3-r1))・α
ここで、-R1×R2は、三角形P1P2P3の倍面積のベクトル(3角錐の内部から外向きが正としている)なので、結局、与式は、2(-S)・αと書ける。
今、αA1であり、このAP1とAHとのなす角をθとすると、与式は、2Sαcosθを意味している。図より、αcosθ=hである。
従って、与式は、2Shと書くことができるので、三角錐の体積Vは、この式の1/6として、2Sh×1/6=Sh/3となる」
「まとめると、三角錐の体積V=((r3-r1)×(r2-r1))・(r1-ra)/6、ここで、raは、点Aの位置ベクトルじゃ」
「三角形の倍面積を表すベクトルは、-Σ(i=1~3)(rri+1)と書けるので、V=(1/6)(rar1)・Σ(i=1~3)(rri+1)とも書けるわね」
「付け加えると、スカラー3重積は、スカラーとは言うものの、ベクトルの外積の符号の影響を受ける。このような量を「擬スカラー」と呼ぶ
上図の例では、R1×R2は、3角錐の内側を向くので、AからH方向を正の向きとする場合は、それとの内積は負となるので、上式ではマイナスを付けている」

多面体の体積(多角錐の体積)

「前節の最後で、ともちゃんが書いてくれた式を一般の多角錐に拡張することは容易じゃ。
すなわち、多角錐の体積は、V=(1/6)(rar1)・Σ(i=1~n)(rri+1)と書ける。
ここで、riは、底面の多角形の各頂点の位置ベクトル、raは、A点の位置ベクトルじゃ。


確認のため、具体的な例を計算してみよう」

「そうね。
簡単な例として、下図のピラミッドのような3角錐の体積を計算してみるよ。

P1:r1=[x1, y1, z1]
P2:r1+a=[ax + x1, ay + y1, az + z1]
P3:r1+b=[bx + x1, by + y1, bz + z1]
A:r1+c=[cx + x1, cy + y1, cz + z1]
ここで、a=[ax, ay, az]、b=[bx, by ,bz]、c=[cx, cy, cz]。
前節の公式に従うと、V=(1/6)(ax(by cz - bz cy) + ay(bz cx - bx cz) + az(bx cy - by cx))
スカラー3重積の公式では、a・(b×c)/6であるけど確かに一致するわ」
「スカラー3重積の場合は、前節でも注意したように、ここでも、a・(c×b)とすると、負になってしまうので、注意が必要じゃな」

多面体の体積公式の予想と凸多面体の例1

「多面体の中でも、凹んでいない多面体を凸多面体という。
この多面体内部の任意の点をAとすると、多面体が各面を底面とする多角錐で過不足なく分割できるのではないかと思われる。
その場合、多面体の体積は、V=Σ(多面体のすべての面についての和をとる)(1/6)(rar1)・Σ(i=1~n)(rri+1)となるのではないかと予想できる。
ここで、各riは、多面体の外から見て、各面で時計回りに計算するものとする。」

「えーと。
こいつは、予想であって、公式ではないのね」
「今のところは、予想としておこう。
それにしても、2つの問題があるのう。
一つは、多面体内部の任意の点 Aを具体的にどのように決定すればよいか?
もう一つは、多角錐で本当に過不足なく分割できるのか?」
「Aとしては、ra=Σ(頂点の位置ベクトル)/頂点の総数がいいんじゃない?」
「その点は、本当に内部なのかな?
外部になってしまうことはないのか?」
「そう言われるとちょっと自信がないわね。
平面上の凸多角形であれば、多角形の重心をAとすれば、確実に内部の点となるけど。
重心でない、ra=Σ(ri)/n が内部という証明はどうしたらいいのかな」
「そうじゃな。多角形の場合は、任意の頂点PiをAとするだけで、凸多角形がn-2個の三角形に分割できるじゃろう。
また、凸多面体では、任意の面の任意の頂点をAとすればよい」
「じゃ、とりあえず、下図のように、直方体上に4角錐の屋根が付いた家の体積を求めてみたよ。

ここで、P1=Aとして、原点とする。すなわち、r1=[0,0,0]=ra=[0,0,0]
また、各点を次のように決める。
P2: [a,0,0]、P3: [a,b,0]、P4: [0,b,0]、P5: [0,0,c]、P6: [a,0,c]、P7: [a,b,c]、P8: [0,b,c]、P9: [a/2,b/3,c+d]
ここで、パラメーター a,b,c,d は、正の実数とする。
この立体の体積Vの正解は、V=abc + abd/3=ab(c+d/3)となる。
一方、本節の冒頭の公式(予想)によれば、次のようになるわ。
なお、各面の頂点の固有番号(P1~P9)の添え字のうち、小なるものをそれぞれの面のr1として、各面を外から見て時計回りに計算してみた。
1面:P1-P2-P3-P4 -> 0
2面:P1-P5-P6-P2 -> 0
3面:P1-P4-P8-P5 -> 0
4面:P3-P7-P8-P4 -> (1/6)(ra-r3)・(r3 × r7 + r7 × r8 + r8 × r4 + r4 × r3)=abc/3
5面:P2-P6-P7-P3 -> (1/6)(ra-r2)・(r2 × r6 + r6 × r7 + r7 × r3 + r3 × r2)=abc/3
6面:P5-P9-P6 -> (1/6)(ra-r5)・(r5 × r9 + r9 × r6 + r6 × r5)=abc/18
7面:P6-P9-P7 -> (1/6)(ra-r6)・(r6 × r9 + r9 × r7 + r7 × r6)=ab(c+2d)/12
8面:P7-P9-P8 -> (1/6)(ra-r7)・(r7 × r9 + r9 × r8 + r8 × r7)=ab(2c+3d)/18
9面:P5-P8-P9 -> (1/6)(ra-r5)・(r5 × r8 + r8 × r9 + r9 × r5)=abc/12
合計で、V=ab(3c + d)/3=ab(c+d/3)となり、正解と一致する」
「いや。合っててよかったの。
ま、余談じゃが、上の図のような屋根を「方形屋根」と呼ぶようじゃ」
「へー。普通の屋根は、下のような形よね。

「そうじゃな。
上のようなものを「切妻」というが、こういう屋根が多い。
また、上の部分が、すぼまっているものを「寄棟」と呼ぶとのことじゃ」

多面体の体積(凸多面体の例2)

「前節の例は、かなり対称性のよい立体だったので、この節では、もう少し、ひしゃげた立体を取り上げよう。
ここで、P1=Aとして、原点とする。すなわち、r1=[0,0,0]=ra=[0,0,0]
また、各点を次のように決める。
P2: [a,0,0]、P3: [a,b,0]、P4: [0,b,0]、P5: [0,0,c]、P6: [a,0,f]、P7: [a,b,c]、P8: [0,b,c]、P9: [a/2,b/3,c+d]
ここで、パラメーター a,b,c,d,f は、正の実数とする。(図は、f <cの場合)
V=Σ(多面体のすべての面についての和をとる)(1/6)(rar1)・Σ(i=1~n)(rri+1)」




「前節と同様に、各面の頂点の固有番号(P1~P9)の添え字のうち、小なるものをそれぞれの面のr1と考え、各面を外から見て時計回りに計算する。
赤字の部分が前節の例と値が変化している個所。
1面:P1-P2-P3-P4 -> 0
2面:P1-P5-P6-P2 -> 0
3面:P1-P4-P8-P5 -> 0
4面:P3-P7-P8-P4 -> (1/6)(ra-r3)・(r3 × r7 + r7 × r8 + r8 × r4 + r4 × r3)=abc/3
5面:P2-P6-P7-P3 -> (1/6)(ra-r2)・(r2 × r6 + r6 × r7 + r7 × r3 + r3 × r2)=ab(c+f)/6
6面:P5-P9-P6 -> (1/6)(ra-r5)・(r5 × r9 + r9 × r6 + r6 × r5)=abc/18
7面:P6-P9-P7 -> (1/6)(ra-r6)・(r6 × r9 + r9 × r7 + r7 × r6)=ab(4c + 6d - f)/36
8面:P7-P9-P8 -> (1/6)(ra-r7)・(r7 × r9 + r9 × r8 + r8 × r7)=ab(2c+3d)/18
9面:P5-P8-P9 -> (1/6)(ra-r5)・(r5 × r8 + r8 × r9 + r9 × r5)=abc/12
合計で、V=ab(31c + 12d + 5f)/36 となる。
この式で、f=cとおくと、前節の例と同じく、V=ab(c+d/3)となる」

「よっしゃ。
では、正解を計算してみるかの。
なお、下図のように4つの多面体に分割して計算する。

1つは、底面がP5-P6-P8で頂点がP9の3角錐 V1
2つ目は、底面がP6-P7-P8で頂点がP9の3角錐 V2
3つ目は、底面がP1-P2-P4で上面がP5-P6-P8である立体 V3
4つ目が、底面がP2-P3-P4で上面がP6-P7-P8である立体 V4である。
V1=(r9-r5)・((r6-r5)×(r8-r5))/6=ab(c + 2d - f)/12、スカラー3重積の公式じゃ。
V2=(r9-r6)・((r7-r6)×(r8-r6))/6=ab(2c + 3d - 2f)/18、こちらも、同様。
V3を求めるために、P5-P6-P8の平面の方程式を、z=αx+βy+(c-f) とすると、
z=(2f-c)x/a + (f/b)y + (c-f) となる。
これから、V3=∫∫z(x,y) dx dy=∫(x=0-a)∫(y=0~(x/a)b) z dy dx=abc/3、
ここは、2重積分で体積を求めているが、xによって、yの変域に制限があるので、少し面倒じゃ。
同様に、V4=abc/3、これは、対称性からも、同じ体積となる。
合計すると、V=ab(31c + 12d + 5f)/36 となって一致している。
いやいや、正解を出すのがなかなか難しくて時間がかかってしまったのう。
P6とP8とを結ぶ線分のところは、実は、曲がっていた。
上部の屋根を4角錐的に考えてしまうと下の部分との面は、平らのように思えたが、そうではなかったということじゃな。
どうも、ともちゃんの計算した値と合わんので、おかしいと思って丁寧に図を描いたら分かったがな・・」
「そうよ。あたしの計算した方が正しかったでしょ。
もし、平面ならば、r8-r6とr7-r5は、交差するはず。
つまり、パラメーター c1、c2を使うと、c1(r8 - r6) + r6 = c2(r7 - r5) + r5 とおけるんだけど、
解くと、c1=c2=1/2、かつ、c/2+f/2=c となって、f=c、すなわち、前節の例でないと、交差しないもの」
「いや。もっともじゃの。
どうも、3次元は、直感が利かないので、苦手じゃな」

多面体の体積(凸でない多面体の例)

「凸でない多面体について、計算してみよう。

例1の「方形屋根」の逆向きの例じゃ。
もっとも、こんな形では、雨水が屋根にたまってしまうがの」


「えー!
これで計算できるのかな?」

「例1の結果を見ると、ab(c+d/3)となっているが、dがマイナスの場合も、正しいじゃろう。
だから、この例3のように、凸でない多面体についても、成り立つと思うのじゃ」
「じゃ、とりあえず、計算してみるよ。
ここで、P1=Aとして、原点とする。すなわち、r1=[0,0,0]=ra=[0,0,0]
また、各点を次のように決める。
P2: [a,0,0]、P3: [a,b,0]、P4: [0,b,0]、P5: [0,0,c]、P6: [a,0,c]、P7: [a,b,c]、P8: [0,b,c]、P9: [a/2,b/3,cd]
ここで、パラメーター a,b,c,d は、正の実数とする。ただし、d=<cとする
この立体の体積Vの正解は、V=abc - abd/3=ab(c-d/3)となる。
一方、公式(予想)によれば、次のようになる。※赤字の部分は、例1と異なるものを示す。
なお、各面の頂点の固有番号(P1~P9)の添え字のうち、小なるものをそれぞれの面のr1として、各面を外から見て時計回りに計算してみた。
1面:P1-P2-P3-P4 -> 0
2面:P1-P5-P6-P2 -> 0
3面:P1-P4-P8-P5 -> 0
4面:P3-P7-P8-P4 -> (1/6)(ra-r3)・(r3 × r7 + r7 × r8 + r8 × r4 + r4 × r3)=abc/3
5面:P2-P6-P7-P3 -> (1/6)(ra-r2)・(r2 × r6 + r6 × r7 + r7 × r3 + r3 × r2)=abc/3
6面:P5-P9-P6 -> (1/6)(ra-r5)・(r5 × r9 + r9 × r6 + r6 × r5)=abc/18
7面:P6-P9-P7 -> (1/6)(ra-r6)・(r6 × r9 + r9 × r7 + r7 × r6)=ab(c-2d)/12
8面:P7-P9-P8 -> (1/6)(ra-r7)・(r7 × r9 + r9 × r8 + r8 × r7)=ab(2c-3d)/18
9面:P5-P8-P9 -> (1/6)(ra-r5)・(r5 × r8 + r8 × r9 + r9 × r5)=abc/12
合計で、V=ab(3c - d)/3ab(c-d/3)となり、正解と一致する」
「よっしゃー。
では、次節で一般的に証明してみよう」

多面体の体積公式の証明(ガウスの定理)

「前節の例で、凸でない多面体についても、予想していた式から体積が求まったことにより、予想した公式、すなわち、
V=Σ(多面体のすべての面についての和をとる)(1/6)(rar1)・Σ(i=1~n)(rri+1)、
実は、予想ではなくて、一般的に成り立つんではないかと思えてくるじゃろう。
そこで、以下では、このことを証明してみよう。
面積の場合と類似したベクトル解析の公式を使うんじゃが、ともちゃんは、分かるかな。(豆助は分かったみたい)

「そこまで言われると(書かれるとですけど)、ガウスの公式を思い出さないわけにはいかんでしょうが」
「カール・フリードリッヒ・ガウスは、19世紀の最大の数学者の一人じゃ。
1777年4月30日、れんが工の家に生まれたが、領主の援助を受けて、大学に進み、1855年2月23日に亡くなった。
78才じゃから、当時としては、かなり長命というべきじゃろう。ゲッチンゲン大学の数学・天文学の教授として終生を送った。
小さい頃から才能を示したようで、次の逸話は、有名なので聞いたことがあろう。(小堀 憲 氏の『大数学者』(新潮社 1968年)によると8才の頃という)
1~100までの数の和を求めなさいと先生に言われたとき、ガウスが、(1+100)×100/2=5050とたちまち計算してしまったという話じゃ。
さすがに、ガウスが新しく発見したというわけではないが、誰からも教えられなかったから「再発見」したということになる。
その後も、その才能に驚いた教師らの熱心な説得により両親が上級の学校に進ませた。
代数学の基本定理(複素係数のn次方程式は、重根は、重複して数えるとn個の根(今は『解』という)を持つという定理)を証明して学位論文にしている。
整数論から応用数学や電磁気、天文学まで、ずば抜けた、才能を示した。ガウスの名前を冠して呼ばれる定理や公式は多い。
さて、ともちゃんが思い出してくれた、ガウスの定理によれば、任意の閉じた領域、ここでは、Vと書こうかの。
このVの内部で(表面も含む)、ベクトル関数、Fが定義されているとする。
このFに対して、∫∫∫div(F)dV=∫∫Fn dS が成り立つ。ここで、nは、面の法線(外向きを正)とする」

「なるほど。
よく似ているじゃない!」
「そのとおり。
答えそのものと言っても良い。
Fr=[x,y,z]と書くと、左辺の体積分の被積分関数は、div(r)=3となるので、∫∫∫div(F)dV=3Vとなる。
ここで、Vは、体積(スカラー)を表すことにしよう。
一方、右辺の面積分を考える。
上図では、これまでと同様に、すなわち、領域の外から見て、時計回りに頂点に番号を振っている。
Σ(i=1~n)(rri+1)は、-2ΔSnである。マイナスが付いているのは、内向きに向いて入るからじゃ。
AP1は、位置ベクトルrであると思えば、(rar1)(-2ΔSn)=2ΔS(r1-ra)・n=2ΔS rn となるじゃろう」
「なーるほど。
3V=Σ(各小表面について)ΔSrn=Σ(1/2)r・Σ(i=1~n)(rri+1)となるので、
V=Σ(各小表面について)(1/6)(r1-ra)・Σ(i=1~n)(rri+1)となる訳ね」
「そのとおり。
ただ、前節までと違って、多面体の外から見て、各面の頂点に反時計回りに添え字を振り、反時計回りに計算することにする。
また、raは、多面体全体で共通じゃが、r1やriなどは、各面毎に異なるものじゃよって、実際の計算では注意するようにな」
※多面体は、内部と外部とが明確に分かれている必要があります。
 面の場合の『メビウスの帯』に対応するような、たとえば、『クラインの壺』のように、内・外が分けられない立体全体には適用できません。

終わりに

以前から、多面体の体積公式を漠然と考えてきましたが、今回、ようやく、決着することができました。
 ガウスの公式を使うということは、自然に浮かんでいたのですが、div(rot(A))=0であるため、F=rot(A)と表せません。
このことから、面積の場合のストークスの公式、∫∫An dS=∫rot(A)・dtが使えないこととが混乱してしまい、なかなか十分な理解に達することができませんでした。
 分かってみると、何のことはなかったのですが。
 しかし、DERIVEの助けは、本当に有り難いです。
 この優れた道具がなければ、私には、今回の面倒なベクトルの計算を間違えずに、また、根気よく行うことは、はなはだ困難でした。
 このように実例を計算して、正しい(と思われる)公式を見つけ出す上で、DERIVEは、本当に疲れを知らない『右腕』といってもよいでしょう。
※今回、「DERIVEでドライブ」の本文の文字サイズを標準(100%。以前は95%程度でやや小となっていました)に変更しました。
 これは、私自身が老眼のためか、昔より見にくく感じられたためです。
 このため、共通のスタイルシートを使っている「今月のご挨拶」なども同様に文字が大きくなっています。筆者の我がままをお許し下さい。

体積公式 2015/10/17追記

本稿で掲げた多面体の体積公式は、V=Σ(各面の和)(1/6)(r1-ra)・Σ(i=1~n)(rri+1)、でしたが、第76回「多角形及び多面体の重心と高次のモーメント(2)」において、あらためて、考察しところ、raは、任意なので、簡単のため、ra=[0,0,0]としました。
 この結果、面の面積ベクトル S=(1/2)Σ(i=1~n)(rri+1)を使えば、V=(1/3)Σ(各面の和)(r1 ・ S))、と簡潔に表されることにも気がつきました。

最終更新日 2015/10/17