* 数学の先生ではありません。間違いがないとはいいきれません...

大圏コース 計算

マイクロソフトフライトシミュレーターで、外国へ行くには、大圏航法が必要だとおもいました。

大圏航法は大圏コースを通る航法で、国土地理院地図でも簡単に引くことができるようです。

しかし、より、具体的に飛行ルートを知りたいとおもいました。

まず、飛行距離を求めることからはじめました。

飛行距離は、JavaやPythonのライブラリーにもあるようです。

しかし、自分で計算してみたくなりました。

東京からニューヨークまでの距離を球面三角法の余弦定理をつかって計算しましたぁ🐶

大円

東京を出発して、ニューヨークへ向かう大圏コース(大圏航法で通るコース)は、次の3つの大円を考えます。

  1. 北極点、出発点(東京)、地球の中心点
  2. 北極点、到着点(ニューヨーク)、地球の中心点
  3. 出発点(東京)、到着点(ニューヨーク)、地球の中心点

三角形

この3つの大円が地球表面に3角形を作りますね。

この三角形の、
北極点から出発点までの辺は、大円の弧、(辺1とします、)
北極点から到着点までの辺も、大円の弧、(辺2とします、)
出発点から到着点までの辺も、大円の弧、(辺3とします、)
ですなぁ🐶

弧度法

弧度法というのはぁ
半径1の円があるとして、
その半径と同じ長さの円周で切り取ったときの角度
(扇型のかなめのほうの角の角度)
を、
1ラジアンとする角度の表し方ですなぁ🐶

なので、
辺1の長さを地球の半径で割り算すると、
辺1の長さのラジアン値に、
辺2の長さを地球の半径で割り算すると、
辺2の長さのラジアン値に、
辺3の長さを地球の半径で割り算すると、
辺3の長さのラジアン値に、
なりますなぁ...🐶

コサイン

辺1についてみれば、
北極点から赤道までの長さから出発点の分を引き算した長さ、
と考えることができます。

弧度法で円の1周分は、2πであらわされ、円の1/2周分はπであらわされ、円の1/4周分はπ/2で表されます。

なので、
辺1の長さは、π/2 - 出発点の緯度でしょう。

辺2についても
同様ですね。

ここはちょっと不思議な気持ちがしましたが、
弧度法というのが角度と辺の長さが関連した考え方ゆえの妙味(?)のようです。

辺3についても、
出発地点の経度を基準にしてみる到着地点の経度の関係で同様に考えるのですが、
経度は北極点から伸びる子午線であらわされ、
子午線は地球表面にあり、地球内部には入っていかないものですねぇ・・・

ここで、とりあえず(?)、辺3については、
大円で考えるというよりもむしろ、
北極点、出発点、到着点がつくる地球表面上にある3角形
(球体のうえにあるので普通の三角形ではないですね、🐶)
における経度差(到着地点経度と出発地点経度)で考える、
のでしょうなぁ🐶

これは、角度なのだが、弧度法なので、同時に辺の長さも表していると理解しましたぁ。

辺1も、辺2も、辺3もラジアン値ですね。

余弦定理

ここで、球面三角法の余弦定理という公式が
イキナリでます🐶

何故だぁ・・・調子が良すぎるではないか・・・🐶

個人的な気持ちは、こうなのだが、しかし、
ここは、ひとつ、試行錯誤して老人になっても仕方ありませんので、
先人の知恵にありがとうございます。

cos a = cos b × cos c + sin b × sin c × cosA
という公式ですね。

ここで、cos a は辺を表し、cos Aは角を表していると理解するようです。

東京・ニューヨーク 距離

東京から大圏コースでニューヨークへ行く航路の距離は、
辺3を求めたいので、公式の左辺に辺3をあてはめる。

そして、辺1と辺2を右辺のほうへあてはめる。

すると、左辺が求まるので距離が求まってゆく、
そのようなことだと理解しました。

疑問

ところで、辺1の長さは、北極点から出発点までの距離を地球の半径で割り算したものであって、
cos b と等しいかというと、あれれ?そうなの?という気持ちが隠し切れません。

出発地点が東京の南、緯度0の地点だった場合を考えると、
π/2が辺1の長さに相当するわけで、
cosと出てくれば、北極から東京の南、緯度0の地点までは平面の三角形とは違いますが、
ここは、ひとつ、そういうことで(?)考えてみると
地球の半径 ÷ 北極から東京の南、緯度0の地点
地球の半径 ÷ 東京の南、緯度0の地点から北極
(地球中心~北極 、地球中心から東京、北極から東京、
この3つの辺のうち、どの辺とどの辺の割り算なのか、
わたくし🐶は、わかってない!!??)
といったイメージになりました。

すでにみたように、弧度法、ラジアン、
ですので、
地球の半径は1とみたてており、
まぁ、そうか・・・と🐶

このようなイメージをもって、
辺1,辺2、辺3、角(出発地点 ・ 北極 ・ 到着地点)を公式にあてはめると、
あ~ら不思議、
なんどなくバッチリな気がしてきた🐶

* 数学の先生ではありません。🐶

東京・ニューヨーク 距離 計算

cos a = cos b × cos c + sin b × sin c × cosA
ですが、
cos b ,sin b と cos c, sin cとありますが、
どっちでもいいとおもうのですが、
ここは、 辺1のほうをcos b, sin bに対応させ、
辺2のほうをcos c, sin cに対応させます。

cos b, sin b というとき、bは角度だと、
中学生のころ   学習させられ   学習しましたが、
そうだと思います!!🐶
ですから、
bは、北極点と地球中心と出発地点の3点が織りなす3角形における、
角(北極点 ・ 地球中心点 ・ 出発地点 ) !!
でしょうね。

なので、cos b といえば、角(北極点 ・ 地球中心点 ・ 出発地点 )引き数にしたcos 、
と、おもいました。

弧度法なので
角は、辺をも表していると理解しまして、
cos bは、辺1を意味する、
このような理解の仕方をしましたぁ🐶

角(北極点 ・ 地球中心点 ・ 出発地点 )は、
すでにみたように、
角(北極点 ・ 地球中心点 ・ 出発地点(東京)の南、緯度0の地点 )から、 角(出発地点(東京)・地球中心点 ・ 出発地点(東京)の南、緯度0の地点 )の分を引いた分、
このように考えまして、
すでにみたように、
地球1/4周分の長さは、π/2であらわされる、
ということで、
cos b における、bは、π/2 - 出発地点(東京)緯度。

辺2、cos c , sin c についても同様に考える。

すると、cos b とは、cos(π/2 - 出発地点(東京)緯度)という調子で、
cos a=cos(π/2 - 出発地点(東京)緯度)×cos(π/2 - 到着地点(ニューヨーク)緯度)+sin(π/2 - 出発地点(東京)緯度)×sin(π/2 - 到着地点(ニューヨーク)緯度) × cos(到着地点(ニューヨーク)と出発地点(東京)の経度差)
このようになりますなぁ🐶

ここで、気を付けることは、東京の緯度は、約35度くらいですが、
この35という数字は、分度器などでおなじみの、
度数法(360度で角度をあらわす方法)での数字なので、
この35度をラジアンに変換することを忘れないことです。

インターネットにはラジアン変換するサイトや、
学生向けに先生が解説するサイトがありますが、
わたくしはJavaでやりましたので、Math.toRadians(35)、
このようにしました。

こうして、右辺の小数点だらけの計算して得られた値は
左辺(cos a )と等しい、
それは、大圏航路の出発点、地球中心点、到着地点で見る大円の弧の長さを引き数にしたcosの値に等しい、
そういうことになりますなぁ

* 数学の先生ではありません。自宅用固定翼操縦士いぬ機長です。🐶
アークコサイン

ということですので、
cos a を アークコサインの引き数に与えてやると、
角度がでます。

この角度は弧度法なので辺の長さも意味しており、
(この角度は地球表面に想定上できた3角形(のような三角)の北極点の角であって、大円の地球中心のところの角ではないのだがぁ)
弧度法は半径1の円を前提にしており、これまでの計算でも地球の半径で割り算してますので、
ここは、ひとつ、地球半径分を掛け算すれば、
地球上における、大圏航路の長さ、つまり大圏航路の距離が求まる、
こういうことだと理解しましたぁ🐶