2012年4月1日日曜日

楕円を円に1次変換する(その2)



大学への数学Ⅲ&Cの勉強
行列と連立1次方程式


【解説】


上図のように、回転した楕円の位置座標(X,Y)を行列Aksにより(X’,Y’)に一次変換して楕円を円に変形する問題の続きを考える。

【総合解答の復習】
先の計算を復習する。
全ての Atmの解は以下のように計算できた。
bX+2dXY+cY=1 (1)

以下の形のX、Yに関する恒等式を組み立てる。
bX+2dXY+cY=(fX+gY)+(hX+kY) (2)
X’=fX+gY
Y’=hX+kY

上の恒等式2を組み立てると、最初の式1は以下の式3に書き換えることができる。
X’+Y’=1 (3)
以下では、先の式2が恒等式になるために必要なf,g,h,kの条件を求める。
+h=b (4)
+k=c (5)
2fg+2hk=2d (6)
必要な条件は以上の式4から6である。


式4から式6の連立方程式を解く。
f=(√b)cosα (7)
h=(√b)sinα (8)
g=(√c)sinβ (9)
k=(√c)cosβ (10)
上のように式7から式10でf,g,h,kを定めると、式4と式5が成り立つ。
式6に式7から式10を代入し、2で割ると以下の式を得る。
(√(bc)){cosα・sinβ+sinα・cosβ}=d
sin(α+β)=d/(√(bc)) (11)
ここで、
α+β=θ (12)
とおいて、式11を書き換えると、
sin(θ)=d/(√(bc)) (13)
この式13により、θが定まる。
任意のαと、固定した値のθとで、f,g,h,k全てがあらわされる。

式7から式10は以下の行列の式であらわされる。
また、その行列の余因子行列及び逆行列は以下の式になる。


【回転した楕円の軸ベクトルを計算する】
 このように、楕円を描くベクトルを変換行列で円に変換できることがわかった。その変換行列のうち、以下のような特別な変換行列を求めて、それにより楕円の軸ベクトルを計算する問題を考える。
 楕円を円に変換する変換行列の逆行列は、円を楕円に変換する。その円を楕円に変換する変換が、円を描くベクトルを、X軸方向とY軸方向で縮尺を変えて拡大・縮小して楕円を描かせ、そのベクトルを角度γで回転させる変換であるものとする。
 そうして描かれた楕円をその操作を逆にして元の円に戻す変換の行列を計算する。


 式7から式13で定められる、楕円を円に変換する行列のうち、そのような条件を満足する変換の行列を計算する問題です。


(基本的解析方法)
 この変換の逆変換によりを楕円に変換する式を計算して、その回転角度γに由来して楕円をあらわす方程式を計算して、その方程式の形とその楕円の回転角度との関係を計算する、のが一番良い解決方法と考える。


(別解その1)
 その基本的解析方法は既に解説した。そのため、ここでは、その基本的解析結果の楕円の式からの情報を得ずに、楕円の式を円に変換する式を計算するのみの操作によって、そのように回転した楕円の軸のベクトルを計算することを考える。
 その別解は、楕円の式から固有ベクトルを計算することが、良い解析方法と考える。

(別解その2)
 固有ベクトルを計算する方法も既に解説したので、ここでは、固有ベクトルという便利な概念を使わずに、 楕円の式を円に変換する式を計算するのみの操作によって、そのように回転した楕円の軸のベクトルを計算する。
 すなわち、楕円を円に変換する変換を逆にして、円を楕円に変換する変換が:
(1)円を描くベクトルを、X軸方向とY軸方向で縮尺を変えて拡大・縮小して楕円を描かせる。
(2)そのベクトルを角度γで回転させる変換。
という変換である特別な変換をあらわす行列を計算する。
  このアイデアは、一見すると、楕円の軸ベクトルを計算する方針が明確であり、軸ベクトルを計算するのに良い方法のように見えるかもしれない。
 しかし、正しく方程式を設定しても、それで問題を解き始めたら、解き方が難しい問題になった。
 そのため、以下では、この問題を解き易くする計算技術を解説します。

【問題の条件の変換をあらわす方程式を求める】
変換行列Aの逆行列A-1は余因子行列に比例する。
その逆行列A-1が、
(1)円を描くベクトルを、X軸方向とY軸方向で縮尺を変えて拡大・縮小して楕円を描かせる。
(2)そのベクトルを角度γで回転させる。
という変換であるための条件は以下のように計算できる。
 すなわち、その行列A-1の列ベクトル同士が直交して、内積が0になることが、求める条件である。
一方、先の計算の結果、 楕円を円に変換する行列の満たすべき条件が、式7から式13で得られている。
それらは以下の式であらわされる。
この式に、逆行列A-1の列ベクトル同士が直交して、内積が0になる条件を加えることで、問題を解くための連立方程式が完備し、以下の式になった。
しかし、これらの方程式を連立して解く問題は難しそうに思う。
そのため、少し遠回りになるかもしれないが、
未知数γとsとtを追加して、問題を以下のようにあらわす。 
ここで、 γは、楕円の軸の回転角度をあらわす、問題が求める目的のパラメータを直接にあらわすものである。
  なお、以上の式でパラメータk,h,g,fは、式を区別する記号として利用することにし、その値を計算する未知数としては扱わないことにする。

 以上の4つの式であらわすことで、ベクトルの内積が0になる条件式は既に組み込まれている。
そのため、問題が、上の4つの式に、sinθが定数になる式を加えた連立方程式を解く問題に変わった。すなわち、問題が、未知数γとsとtを求める問題に変換された。

これらの未知数の間の関係を以下のように計算する。

 以上により角度γが求められた。
以上によりパラメータtとsが求められた。
蛇足だが、もう少しsとtを調べる。
式14と式15から、

この結果を用いて変換行列Aをあらわすと、以下のようになる。
(sとtについては、表示を見易くするために、その計算結果は代入しないで、そのままsとtであらわす)

 この変換行列の逆行列(それに比例する余因子行列)は以下のように計算できる。
その列ベクトルが求める楕円の軸ベクトルをあらわす。 

 以上の通り、楕円の軸ベクトルを計算できた。

(計算の反省)
以上のようにして楕円の軸ベクトルを計算できた。
しかし、その計算には煩雑な計算を必要とした。

 楕円の軸ベクトルを計算する方法は、やはり、固有ベクトルを計算する方法が、より簡単に計算できる優れた方法であると考える。

【別解その2の別解】
総合解答の結果を利用せずに、以下のように直接に計算することもできる。
すなわち、変換行列Aに関する式
を元にして、以下のように計算を行なう。
以上で、変換行列を定めるパラメータsとtとγが求められた。
この計算の形は、固有値を求めて固有ベクトルを求める計算のパターンと良く似ていると思う。

 




リンク:
追加講:三角形の面積と行列式
高校数学の目次

0 件のコメント:

コメントを投稿