2013年8月15日木曜日

三角形の面積をベクトルで分解して計算する


佐藤の数学教科書「ベクトル」編の勉強

 以下の内容は、高校の検定教科書では教えないことになっています。多分、これを教えると、その説明が分からない人が続出して、先生までも分からなくなる恐れもあり、学校にとってとても危険な教えだから、教える事が禁じられているのかもしれません。
 そのため、以下の内容は禁止された教えであるので、この教えを知っている事を隠して生活するのが望ましいのではないかと考えます。

 また、以下の内容が理解できなくても、それは、”正常”な人のあかしですので、理解できなかったからといって、決して、理解できなかった事を恥じたりしないで欲しい。また、理解できないからと言って、決して、理解できた人を迫害したりしないで欲しいと思います。
(なお、3Dゲームのソフトウェアを作るには、以下で説明する外積が必須知識だそうです。そのために外積を使うには、公式だけ覚えれば十分みたいですが。)

【課題】下図のように頂点の1つが原点Oにあり、他の2頂点が、A(a,a)とB(b,b)である三角形BOAの面積を計算する。
 三角形の辺を成すベクトルを分解して、その分解したベクトルで作った複数の三角形の面積を足し算することで、三角形の面積を計算する。
 上図のように、2つのベクトルの成す平行四辺形DBOAの面積をベクトルの掛け算(×)であらわす。
このベクトルの掛け算のことをベクトルの外積と呼ぶ。

(注意)
 ベクトルの外積の定義を厳密に言うと、
「2つのベクトルどちらにも垂直な方向(この図の場合は紙面に垂直な方向)のベクトルを計算すること。そのベクトルの長さは、平行四辺形DBOAの面積にする。」
です。
 平面(紙面)上のベクトルの外積を計算した結果は、いつでも紙面に垂直なベクトルで、その方向が変わることがありません。
そのため、以下の説明(計算)では、そのベクトルの長さをベクトルの外積であるものとして、ベクトルの外積を利用して計算する。

三角形BOAの面積Sはこの平行四辺形DBOAの面積の2分の1です。

三角形BOAはベクトルOBとベクトルOAで作られる三角形です。

①三角形OVBの頂点Vを対向辺OBに平行に点Mまで移動し、三角形の面積を同じ値に保つ。
②三角形AMEの頂点Eを対向辺MAに平行に点Fまで移動し、三角形の面積を同じ値に保つ。

 この操作を、以下のように、三角形OABを張るベクトルを2つのベクトルに分解して2つの三角形に分けて全体の面積を計算する操作を行っているものとみなす。
 すなわち、この三角形を作る2つのベクトルのうちの1つのベクトルOAを、下図のように、2つのベクトルに分解する。

すなわち、ベクトルOAを、ベクトルOM(単位ベクトルxのa倍)とベクトルMA(単位ベクトルyのa倍)に分解する。

上図のように、分解されたそれぞれのベクトルを使って2つの三角形を作る。
1つ目の三角形は、ベクトルOM(単位ベクトルxのa倍)とベクトルOBで作られる三角形BOMです。
2つ目の三角形は、ベクトルMA(単位ベクトルyのa倍)とベクトルME(=ベクトルOB)で作られる三角形EMAです。
上図を見ると、その2つの三角形の面積の和が三角形BOAの面積になっていることがわかる。

ただし、ベクトルOMとベクトルOBで作られる三角形BOMは正の面積だが、
ベクトルMAとベクトルME(=ベクトルOB)で作られる三角形EMAは負の面積を持つものとする。

この2つのベクトルで作られる三角形の面積が正であるか負であるかの区別は、三角形を作る2番目のベクトルが1番目のベクトルよりも左回りに回転した方向を向いていれば面積が正であり、右回りに回転した方向を向いていれば面積が負であるとして、区別する。

下図のように、それぞれの三角形を面積が同じ直角三角形に変形する。
三角形BOMは直角三角形NOMに変形し、
三角形AMEは直角三角形AMF変形する。
こうして、それぞれの三角形の面積を計算する。
以上のように、元の三角形を構成するベクトルを分解することで三角形を2つに分解して、その2つの三角形の面積の和で元の三角形の面積を計算することができることが確認できた。

なお、上図では、ベクトルOAをベクトルOMとベクトルMAに分解したが、ベクトルOAをその他のどんなベクトルの和に分解した場合でも、それらのベクトルが作る2つの三角形の面積の和は必ず三角形BOAの面積になる。

 以上の計算は、以下の式のように単純なルールに基づいて計算できる。
(1)ベクトルxと、(同じ)ベクトルxが作る平行四辺形は1本の線分につぶれているので、その面積は0です。
(平行な2つのベクトルが作る平行四辺形の面積は0です。)
(2)ベクトルの順番を入れ替えて外積を計算すると、そのべクトル同士の回転方向が逆回りになるので、面積の正と負が逆になる。

上のベクトルの外積の計算は、三角形BOAがどんな形の場合であっても計算結果が変わらず、
三角形の面積S=(a-a)/2 (式1)
となる。
すなわち、どんな三角形の場合でも成り立つ式(ただし、面積が負になる場合もありますが)です。
そのため、どんな三角形の場合でも上の式が成り立つことが証明できた。

上の式1でクロス積の形をした部分は、行列式とも呼ばれている。

(ベクトルの内積で面積をあらわす)
 この三角形の面積Sは、ベクトルAを90度回転させたベクトルAを使って、以下の様にあらわすことができる。
(式1’が三角形の面積Sの公式)
こうして得た式1’は、先に得た式1と同じ式になった。

  【追加:以上の式から三角関数の加法定理を導き出せる】
以上の証明は数学的な厳密性があるので、この結果を利用して、以下のようにして、三角関数のsinの加法定理を導き出すことができる。

この三角形を下図のように、偏角αとβ(頂点の角度θ=β-α)と辺の長さsとtであらわす。
=s・cosα
=s・sinα
=t・cosβ
=t・sinβ
先に得られた式1は、以下の式に書き直せる。
△BOAの面積S
=s・t(cosα・sinβ-cosβ・sinα)/2 (式2)

一方、2辺と侠角θ=β-αで三角形の面積が計算でき、その面積は、以下の式であらわせる。
△BOA
=s・t・sinθ/2=s・t・sin(β-α)/2 (式3)
式2と式3から、以下の関係が成り立つ。
sin(β-α)=cosα・sinβ-cosβ・sinα (式4)
この式は、後に学ぶ、三角関数の加法定理です。
この、三角関数の加法定理を覚え易い形の式に直すと、以下の式になる。
sin(β+γ)=cosγ・sinβ+cosβ・sinγ


(平行四辺形の面積の計算)
 以下で、大学レベル以上での、2つのベクトルの張る平行四辺形の面積をベクトルで分解して計算する方法を書きます。以下の内容は大学生でも理解が難しい事も含まれていると思いますので、理解出来なくても気にしないで下さい。また、どの説明が理解し難い(あるいは間違っている)ことを教えて頂けると有り難いと考えています。

 平行四辺形を張るベクトルを要素に分解して要素のベクトルの張る平行四辺形の面積計算し、その要素の平行四辺形の面積を合計して元のベクトルの張る平行四辺形の面積を計算します。
 以下のように、座標系が回転しても結果が変わらないように面積の計算規則を定める点がポイントです。
 X座標軸を反時計まわりに90°回転させてY座標軸に重ねると、Y座標軸は反時計まわりに90°回転してX座標軸の負の方向を向いて重なる。そのため、XベクトルとYベクトルの張る(ベクトルの順と成す角の向きを考えた)平行四辺形の面積を正にした場合、このように座標を回転させても面積が変わらないようにするには、必然的に、ベクトルの順と成す角の向きを考えた、Yベクトルと、X方向の負の方向を向いたベクトルの張る平行四辺形の面積を正にする必要がある。それは、YベクトルとX方向の正の方向を向いたベクトルの張る平行四辺形の面積を負にしなければならない事を意味する。

 下図の様に、ベクトルAとBが平行な場合にベクトルAとBが張るつぶれた平行四辺形の面積は0である。
その平行四辺形の面積を、ベクトルAとBをそれぞれ、X方向のベクトルとY方向のベクトルの和で表し、その和のベクトルAとBの積を、X方向のベクトルとY方向のベクトルの積の和に展開して、以上で定めた計算規則に従って計算すると、その計算結果も0になる。
また、同じ方向を向くベクトルAとBが張るつぶれた平行四辺形は、その平行四辺形を回転させてどの方向を向かせても、同じ0の値の面積が計算できる。
 平行四辺形を張るベクトルA及びBをX方向のベクトルとY方向のベクトルに分解すると、ベクトルAの分解されたベクトルとベクトルBの分解されたベクトルの積の組み合わせが作る平行四辺形が4個できる。その4個のうち2つの平行四辺形は、同じ方向のベクトルの張るつぶれた平行四辺形であり、その面積が0なので無視できる。
そして、その4個の平行四辺形の面積の和で、ベクトルAとBの張る平行四辺形の面積を計算したい。
上の例では、少なくとも面積が0のつぶれた平行四辺形の面積の計算では、その0の面積が、ベクトルAの分解されたベクトルとベクトルBの分解されたベクトルの積の組み合わせが作る4個の平行四辺形の和と同じになる演算ができる様になった。

 次に、下図のように、ベクトルAとベクトルBの張る平行四辺形の面積を、同じ面積を維持するように高さを保たせて変形した平行四辺形にして面積を求める手法を、ベクトルAを分解したベクトルとベクトルBとの積の和を計算する手法に対応させて面積を計算する。
 上図の、平行四辺形の変形と分解操作に対応するベクトルの積の式の分解操作の計算が以下の式であらわせる。
 
式0の様に、ベクトルAとベクトルBの(順番を考えた)積はそのベクトルAを分解した各ベクトルとベクトルBの張る各平行四辺形の面積の和に対応付けられる。

すなわち:
(ベクトルAのベクトルBに対する垂直成分の長さ)×(ベクトルBの長さ)
が平行四辺形の面積を表す。
一方、ベクトルAを分解して、
ベクトルA=ベクトルA1+ベクトルA2
とすると:
ベクトルA1のベクトルBに対する垂直成分の長さと、
ベクトルA2のベクトルBに対する垂直成分の長さの和は、
ベクトルAのベクトルBに対する垂直成分の長さに等しい。
そのため、
ベクトルAとベクトルBが張る平行四辺形の面積
=(ベクトルA1とベクトルBが張る平行四辺形の面積)
+(ベクトルA2とベクトルBが張る平行四辺形の面積)
の関係が成り立つ。
その関係は、
ベクトルA×ベクトルB
=(ベクトルA1×ベクトル B)
+(ベクトルA2×ベクトルB)
に分解した式で表すことができる。

すなわち、ベクトルが張る平行四辺形の面積についての分配法則に対応して、ベクトルの加法と(ベクトルの順番を考えた)乗法についての分配法則が共に成り立っている。

 また、上図の様に、ベクトルAとベクトルBの張る平行四辺形を、
その平行四辺形を構成する2番目のベクトルBを、ベクトルAのk倍のベクトルを加えて、ベクトルAに対する高さを保たせて歪めたベクトルB2に変える。
そうして、ベクトルAとベクトルB2の張る平行四辺形を考える。
その場合、以下の式が成り立つ。
ベクトルの加法と乗法についての分配法則により、
ベクトルA×ベクトルB2
=(ベクトルA×ベクトルB)
+(ベクトルA×k(ベクトルA))
と表すことができる。

ここで、
(ベクトルA×k(ベクトルA))
は面積が0のつぶれた平行四辺形をあらわしているので、その面積は0である。

それゆえ、
ベクトルA×ベクトルB2=ベクトルA×ベクトルB
が成り立つ。
この式は、底辺の長さが同じで高さが等しい平行四辺形の面積が等しい事実と一致している。
この様に、平行四辺形の面積を表すベクトルの加法と乗法の分配法則が、変形した平行四辺形の面積の法則と一致して、成り立っている。

 以上の演算規則で定めた、X座標方向の単位ベクトルとY座標方向の単位ベクトルが作る平行四辺形の面積の符号に合わせて、エディントンの計算記号εmpを定める。
それにより、ベクトルAの分解されたベクトルとベクトルBの分解されたベクトルの積の組み合わせが作る4個の平行四辺形の面積の和は、
(m=1,2; p=1,2) {εmp}=a-a
で表せる。
この面積の和が、ベクトルAとベクトルBの張る平行四辺形の面積である。

リンク:

0 件のコメント:

コメントを投稿