2018年10月27日土曜日

天体の位置

 太陽や月、いくつかの惑星、いくつかの恒星の位置を計算するための方法は、海上保安庁の天文・暦情報に計算方法やパラメータが書いてある。
 パラメータはテキストファイルで渡されるが、parseが非常に面倒。いちおう太陽と惑星の関係だけはparseできたが、なんかきれいじゃない。もっとうまいやり方を考える必要がある。

 パラメータは1年毎に更新する必要があり、数字の数が膨大なので、手作業でやるのは現実的じゃない。機械的に処理するべきだが、その機械的な処理の信頼性が低い。


 とりあえず、パラメータは別の方法でプログラムに埋め込んでおいて、指定した日時の太陽のRa/Dec/Auを計算する、というのはなんとなく動くようになった。
 もっとも、Ra/Decでしかないので、ここからAziEleにするにはまた別の面倒な処理が必要になるのだが。


 面白いのは、いくつかの主要な恒星のRa/Decを求めるパラメータも付属している点。恒星位置なんてそうぽんぽん動くものじゃないだろうから、そうそう補正しなくても事足りるだろうに。それとも恒星ってそんなに動くんだろうか。

 海保の情報だから主に天測航法を行うもので、揺れる洋上での肉眼観測程度の精度だと思うのだが、どれくらいの精度まで想定しているんだろうか。

 赤道上で東西方向に1度ズレれば100kmを超える誤差になってしまう。
 六分儀を使った天測航法では5km程度の精度で測位できるそうだから、0.05度(3分度)程度の精度で角度を計測できるのか。
 ちなみに、地球は0.05度回転するのに12秒しかかからない。天測航法を行う場合、恒星の高さを0.025度の精度で観測できたとして、時計のズレを6秒未満にしておく必要がある。
 ヨットで太平洋を横断するのは、最速で数週間、ゆっくり行って2ヶ月前後、という感じ? 最速で行く場合、月差10秒程度の時計でいいので、比較的精度のいいデジタル時計なら達成できる。それでも、クォーツ時計でも月差20秒程度とのことなので、事前に信頼できる時計と比較して精度の高い時計を選ぶ必要がある。
 2ヶ月で横断するとなると、月差2秒程度の時計が必要になるので、市販のクォーツ時計より10倍精度の高い時計が必要になる。
 今の時代でもこの有様なんだから、昔の航海に使われてた時計というのはどのようなものだったのか。昔はいまより時間をかけて航海していただろうから、さらに高精度の時計も必要になるはず。もっとも、これは精度5kmで測位する時の話だから、大昔の「陸地にたどり着ければOK」くらいの話なら1-2桁低精度でもいいが、それでも機械時計で達成するのは大変そう。


 とりあえず、直接テキストファイルをロードするのは一旦諦めて、別の方法を考えておこう。パラメータは年1回の更新だから、数字のうち間違えが発生しないような方法であれば手動で読み込みやすいように整形するのも非現実的ではない。
 それにしても諸々処理が多くてかったるい。

0 件のコメント:

コメントを投稿