正則行列、逆行列を複雑な行列から求める例

今回は、正則行列の逆行列を複雑な実例を元に算出したいと思います。

4×4行列も3×3行列でも計算方法は変わらないので、簡単な3×3行列を使って説明しようと思います。

今回は、次の話の続きです。
1.3次元計算では左手系座標系の方が理解し易い
2.3次元空間の回転方向とおかしな例
私は左手系座標系を使い、時計回りに回転させています。

今回は、コンピューターで計算した結果から小数点を切り捨てて使用していますので、四則演算の計算結果に多少誤差があります。

1.0÷3.0=0.33333333333333333333333333333333
0.33333333333333333333333333333333×3.0
=0.99999999999999999999999999999999

1-0.99999999999999999999999999999999
=0.00000000000000000000000000000001(誤差)
誤差の計算。

小数点を切り捨てると
0.3333

0.3333×3.0=0.9999
1.0-0.9999=0.0001(誤差)
切捨てを頻繁にしていることと、計算結果と整合性を保つ意図から、1.0÷3.0=0.33, 1.0-0.33=0.66の様にずれます。

誤差の例
2.4184-2.4184, 7.0710-(-7.0709), 6.6446-6.6443, 0.0-(-1.0), 1.0-0.0, 0.0-0.0
本当の答え
=0.0, 14.1419, 0.0003, 1.0, 1.0, 0.0
つじつまを合わせる答え
=0.0, 14.1421, 0.0, 1.0, 1.0, 0.0

まずは、計算元となるマトリックスを算出しましょう。


Z軸を45度回転させるマトリックス。


Y軸を110度回転させるマトリックス。


各座標を10倍へ拡大するマトリックス。


3つのマトリックスを掛け合わせた変換元の行列です。

次は、正則行列の逆行列を算出したいと思います。


掛け合わせたマトリックスから、逆行列を算出したいと思います。
まず、1行目の1列目を1にするには、-2.4184で変換元の行列、そして逆行列の1行目を割ります。
-2.4184÷(-2.4184)=1.0
-2.4184÷(-2.4184)=1.0
-9.3969÷(-2.4184)=3.885585511081706913661925239828
1.0÷(-2.4184)=-0.41349652662917631491895468078068
0.0÷(-2.4184)=0.0
0.0÷(-2.4184)=0.0


すると、図の様なマトリックスになります。
次は、2行目と3行目の1列目をゼロにします。

2行目1列目の-7.0710を1行目に掛け合わせます。
1.0000×(-7.0710), 1.0000×(-7.0710), 3.8855×(-7.0710), -0.4134×(-7.0710), 0.0000×(-7.0710), 0.0000×(-7.0710)
=-7.0710, -7.0710, -27.4743705, 2.9231514, 0.0, 0.0

求めた数で、2行目を引きます。
-7.0710-(-7.0710), 7.0710-(-7.0710), 0.0000-(-27.4743705), 0.0000-2.9231514, 1.0000-0.0, 0.0000-0.0
=0.0, 14.142, 27.4743705, -2.9231514, 1.0, 0.0

3行目1列目の6.6446を1行目に掛け合わせます。
1.0000×6.6446, 1.0000×6.6446, 3.8855×6.6446, -0.4134×6.6446, 0.0000×6.6446, 0.0000×6.6446
=6.6446, 6.6446, 25.8175933, -2.74687764, 0.0, 0,0

求めた数で、2行目を引きます。
6.6446-6.6446, 6.6446-6.6446,-3.4202-25.8175933, 0.0000-(-2.74687764), 0.0000-0.0, 1.0000-0.0
=0.0, 0.0, -29.2377933, 2.74687764, 0.0, 1.0


すると、図の様なマトリックスになります。

次は、2行目の2列目を1にしなければならないので、14.142136で変換元の行列、そして逆行列の2行目を割ります。
次は、2行目の2列目を1にしなければならないので、14.142136で変換元の行列、そして逆行列の2行目を割ります。
0.000000÷14.142136=0.0
14.142136÷14.142136=1.0
27.474764÷14.142136=1.9427591419004880168031194156243
-2.9238÷14.142136=-0.20674387518264567672097058039889
1.0÷14.142136=0.07071067623730955493569005417569
0.0÷14.142136=0.0


すると、図の様なマトリックスになります。

次は、3行目と1行目の2列目をゼロにします。

3行目2列目の0.0を2行目に掛け合わせます。
0.0000×0.0, 1.0000×0.0, 1.9427×0.0, -0.2067×0.0, 0.0707×0.0, 0.0000×0.0
=0.0, 0.0, 0.0, 0.0, 0.0, 0.0

求めた数で、3行目を引きます。
0.0000-0.0, 0.0000-0.0,-29.2380-0.0, 2.7474-0.0, 0.0000-0.0, 1.0000-0.0
=0.0, 0.0, -29.2380, 2.7474, 0.0, 1.0

1行目2列目の1.0を2行目に掛け合わせます。
0.0000×1.0, 1.0000×1.0, 1.9427×1.0, -0.2067×1.0, 0.0707×1.0, 0.0000×1.0
=0.0, 1.0, 1.9427, -0.2067, 0.0707, 0.0,

求めた数で、1行目を引きます。
1.0000-0.0, 1.0000-1.0, 3.8855-1.9427, -0.4134-(-0.2067), 0.0000-0.0707, 0.0000-0.0
=1.0, 0.0, 1.9427, -0.2067, -0.0707, 0.0


すると、図の様なマトリックスになります。

次は、3行目の3列目を1にしなければならないので、-29.2380で変換元の行列、そして逆行列の3行目を割ります。

0.0000÷(-29.2380)=0.0
0.0000÷(-29.2380)=0.0
-29.2380÷(-29.2380)=1.0
2.7474÷÷(-29.2380)=-0.09396675559203775908064847116766
0.0000÷(-29.2380)=0.0
1.0000÷(-29.2380)=-0.03420206580477460838634653533073


すると、図の様なマトリックスになります。

次は、1行目と2行目の3列目をゼロにします。

1行目3列目の1.9427を3行目に掛け合わせます。
0.0000×1.9427, 0.0000×1.9427, 1.0000×1.9427, -0.0939×1.9427, 0.0000×1.9427,-0.0342×1.9427
=0.0, 0.0, 1.9427, -0.18241953, 0.0, -0.06644034

求めた数で、1行目を引きます。
1.0000-0.0, 0.0000-0.0, 1.9427-1.9427, -0.2067-(-0.18241953),-0.0707-0.0, 0.0000-(-0.06644034)
=1.0, 0.0, 0.0, -0.02428047, -0.0707, 0.06644034

2行目3列目の1.9427を3行目に掛け合わせます。
0.0000×1.9427, 0.0000×1.9427, 1.0000×1.9427, -0.0939×1.9427, 0.0000×1.9427,-0.0342×1.9427
=0.0, 0.0, 1.9427, -0.18241953, 0.0, -0.06644034

求めた数で、2行目を引きます。
0.0000-0.0, 1.0000-0.0, 1.9427-1.9427, -0.2067-(-0.18241953), 0.0707-0.0, 0.0000-(-0.06644034)
=0.0, 1.0, 0.0, -0.02428047, 0.0707, 0.06644034


すると、図の様な逆行列が出来ます。

最後に、逆行列により元の数値へ戻るか確認したいと思います。

まず、マトリックスを使用しない場合にどうなるか考えてみましょう。


ベクトル(10.0, 20.0, 30.0)を変形させましょう。


左手系座標系でZ軸を時計回りに45度回転させると、(21.21, 7.07, 30.00)になります。


左手系座標系でY軸を時計回りに110度回転させると、(-35.45, 7.07, 9.67)になります。


10倍拡大すると、(-354.46, 70.71, 96.73)になります。

次に、マトリックスを使用した計算結果を見てみましょう。


変換元の行列に、ベクトル(10.0, 20.0, 30.0)を掛け合わせましょう。
-2.4184×10.0+(-2.4184×20.0)+(-9.3969)×30.0=-354.459
-7.0710×10.0+ 7.0710×20.0+ 0.0000×30.0=70.71
6.6446×10.0+ 6.6446×20.0+(-3.4202)×30.0=96.732


先程算出した計算結果と逆行列を掛け合わせると元の数値へ戻るはずです。
掛け合わせて見ましょう。
-0.0241×(-354.4612)+(-0.0707)×(70.7106)+0.0664×(96.7328)=9.96633342
-0.0241×(-354.4612)+ 0.0707×(70.7106)+0.0664×(96.7328)=19.96481226
-0.0939×(-354.4612)+ 0.0000×(70.7106)+(-0.0342)×(96.7328)=29.97564492

ほぼ元の数値へ戻りましたので、正しい逆行列を算出できているはずです。

斜めの行列に0が含まれる場合の解き方もあるのですが、逆行列に関してはここまでにしたいと思います。

2006年頃マトリックスを使っていたので多少特性を知っていますが、今は少し忘れています。

「間違えたくない」という気持ちがあるので、コンピューターで試行して試しながら解きました。

実は、最近Youtubeに解けない数学問題があるな~とか、小学校で習う割り算の解き方を忘れていたりします。(^^;

誰が見るのかな~と思いつつ、しばらく難しい数学はお休みしましょう。(^^)

以上

3次元空間の回転方向とおかしな例

前回は、右手系座標系と左手系座標系の話をしました。

今回は、回転方向についてお話したいと思います。

私は数系の人間で、数学をやっていると子供の頃は学校で式を習ります。
式を習っていくと、文章問題の壁にぶち当たります。(^^;

何れ大人になりますが、そのままでは大人として通用せず、大人になると自分で正しいことを考えられなければなりません。

何が正しいことかと言うと、実際に起こっていることが正しいことであり、現実で起こっていることを学者さん方が紐解いたものが学問だと思います。


例えば、3次元空間では図の様に軸を回転させます。
図の例は、数学的に誤った考え方であり、X軸は軸の方向へ対して反時計回り、Y軸は軸の方向へ対して時計回り、Z軸は軸の方向へ対して反時計回りで回転しています。

私からすると、あべこべです。

この誤った左手系座標系の回転例を元に、右手系座標系の回転方向を適当に考えると、次のように成ります。


この右手系座標系の回転方向は、左手系座標系の回転方向を真似しただけで、Z方向に対しては軸の方向とは逆、つまり負の方向へ対して反時計回りしています。

この様に、まず左手座標で考えた回転方向が間違っていると、次に考える右手座標での回転方向も間違えます。
そして、左手系座標系の回転方向を真似しただけなので、右手系座標系になり軸の方向が変わった事にも気づきません。

これが数学であり、1つ間違えると後に考えた法則が間違いだらけになってしまうことがあります。

では、3次元空間での回転方向を真剣に考えると、どのようになるのか考えてみましょう。


まず、3次元には軸があり、軸には方向があります。
この方向も大切な数学的要素です。

私たちが生活をしていく上で、身の回りに有る回転するものと言えば時計です。
時計は、時計回りに回転するものです。

ですので、3次元の軸を回転させる場合は、軸の方向へ対して時計回りに回転させると理解し易いと思います。


回転させる場合、軸の方向へ対して時計回りに考えると、図の様な回転方向になります。

学校で物を習っている内は、習っていることが正しく、習っている通りに解こうとしますが、習っている事は何なのか、本当によく理解できているでしょうか?

疑問に思いますね。


例えば、ヨー・ピッチ・ロールという回転方法があるのですが、上記のように数学的な考え方をすると、回転方向に一貫性が無いことがわかります。(^^;

つまり、ヨー・ピッチ・ロールで物体を回転させる場合、X軸、Y軸、Z軸の回転方向を別々に暗記する、もしくは回転方向を確認しながら考えなければ成らなくなり、習っている人が理解し辛くなります。
ただし、個人的には考え方が素晴らしいと思います。(^^;

以上

2021年09月17日~10月30日

記事を修正しました。

変更前
一般相対性理論の光とロケットを使った時間のおかしな話

変更後
特殊相対性理論の光とロケットを使った時間のおかしな話

「mRNAワクチンから抗体が出来るまでの過程とコロナウィルスへの効果について」の記事内で、抗体の付き方に誤りがあったので修正しました。

「3次元計算では左手座標系の方が理解し易い」を修正しました。
左手座標系ー>左手系座標系
右手座標系ー>右手系座標系

どれがどれか分からないことがありますよね。(^^;

2021-2030 エルニーニョ現象/ラニーニャ現象 情報

ここでは、データを元にエルニーニョ現象、もしくはラニーニャ現象であるか分析しています。
ここに掲載している内容は私の個人的な見解ですので、間違いがあるかも知れません。

エルニーニョ現象とは、太平洋の中部、東部で1年以上に渡って海水温が1度以上上昇することです。
私がここで説明するエルニーニョ現象は、6ヶ月であってもエルニーニョ現象として説明しています。

2021年

ラニーニャ現象です。
理由
1.右図を見ると、赤道東の海水温が下がっています。
2.左図を見ると、赤道付近の強い東風により海水が流されているので、暖かい海水が太平洋の西へ偏っています。
3.右図を見ると、赤道付近の強い東風により海水が流されているので、暖かい海水が日本海付近へ流れ込んでいます。


平年並みと言えるほど、かなり弱いラニーニャ現象です。
理由
1.右図を見ると、赤道東の海水温が低いと思います。
2.左図を見ると、やや海水が西へ偏っているように思えます。
3.右図を見ると、赤道西の海水温がやや高い。

2022年

ラニーニャ現象です。
理由
1.右図を見ると、赤道東の海水温が下がっています。
2.左図を見ると、赤道付近の強い東風により海水が流されているので、暖かい海水が太平洋の西へ偏っています。


ラニーニャ現象でしたね。
1.右図を見ると、赤道東の海水温が低い。
2.左図を見ると、海水が西へ偏っているように思えます。

2023年

2023-1.png
ややラニーニャ現象気味です。
1.右図を見ると、赤道東の海水温がやや低い。
2.左図を見ると、海水がやや西へ偏っているように思えます。


エルニーニョ現象が発生しました。
1.右図を見ると、赤道東の海水温がやや高い。
2.左図を見ると、赤道で高温の海水が東から西へ伸びています。
※最近は海水温が全般的に高くなっているからか、エルニーニョ現象の年に日本付近で海水温が高い模様。

2024年

ややエルニーニョ現象気味です。
1.右図を見ると、赤道東の海水温がやや高い。
2.左図を見ると、赤道で高温の海水が東から西へ伸びています。


ややラニーニャ現象気味です。
1.右図を見ると、赤道東の海水温がやや低い。
2.左図を見ると、赤道で高温の海水が西へ偏っています。

太平洋上の赤道東側で海水温が大きく変化していますね。


ラニーニャ現象気味です。
1.右図を見ると、赤道東の海水温が低い。
2.左図を見ると、赤道で高温の海水が西へ偏っています。
3.右図を見ると、インド洋やや東の海水温が低い。

1月~3月は、寒い冬でした。

出典:気象庁ホームページより (太平洋 旬平均海面水温

太陽の中心核は個体である

今回は、太陽の中心核について考えたいと思います。

wikipediaでは、「2500億気圧で温度は1500万Kあり、個体や液体ではなく理想気体的な性質を持つ」と書かれています。

では、いつもの様に考えてみましょう。


まず、気体、液体、固体は図の様に熱で動いていると習います。
個体に熱を加えると液体になり、さらに熱を加えると気体になります。

ただ、これだけではありません。
分子へ圧力を加えた場合も分子は変化します。


水蒸気に圧力を加えると(多分)水になり、常温の水に圧力を加えると氷になります。

個体とは分子が密集している状態であり、気体は密度が低い状態となります。


太陽の表面は圧力が低く気温が高いので、分子は離れ離れになり気体として存在しています。


では、中心核はどうでしょうか?

太陽の太陽系で最も大きく、多くの物質が集まっています。
太陽の表面から中心へ進むほど、上空にある気体の圧力により気圧が高くなります。

圧力が高くなると、先程説明したように分子が密集し、分子は気体から液体、液体から固体へと姿を変えていきます。


ですので、太陽の核を考えると、図の様な核を想像してしまいます。

中心ほど圧力により硬い個体があり、次に液体があり、表面には気体がある可能性が高いように思えますね。


太陽を分子で表した場合のイメージ。

さて、最後になります。
分子が固体になりやすい温度があるらしいのですが、今回は当たっているのか間違っているのか・・・。(^^;

私は、小さな範囲で行う研究が、実際に起こっている自然現象とは違う場合があると思っていまして、今回も弁証法哲学的な考えで挑んでみました。(^^;

テストでこのような答えを書くと間違うので、テストで答えては成りません。

勿論、これは私の推測ですので、間違っているかも知れません。

以上。