/ /北緯89.5度のlibnovaの奇妙な振る舞い-perl、天文学

libnova北緯89.5度の奇妙な行動 - perl、天文学

私はこのプログラムを書きました:

#!/usr/bin/perl

use Astro::Nova qw(get_solar_equ_coords get_lunar_equ_coords get_hrz_from_equ
get_solar_rst_horizon get_timet_from_julian
get_julian_from_timet get_lunar_rst get_lunar_phase);

$observer = Astro::Nova::LnLatPosn->new("lng"=>0,"lat"=>89.5);

for $i (2456623..2456624) {
print "DAY: $in";
($status,$rst) = get_lunar_rst($i, $observer);
print "STATUS: $statusn";

$rst->get_transit();

$rise = $rst->get_rise();
print "RISE: $risen";
$set = $rst->get_set();
print "SET: $setnn";
}

そしてこれらの結果を得ました:

DAY: 2456623
STATUS: 1
RISE: 5.5664193588601e-309
SET: 1.55254159695923e-267

DAY: 2456624
STATUS: -1
RISE: 1.9634470382202e-153
SET: 2.26294632209635e+137

言い換えれば、月は周極星(常に上)から下に移動します 実際に上昇したり沈んだりすることなく地平線。

89.5度は一種のコーナーケースだと思いますが、なぜですか このコードは機能しないはずですか?

メモとして http://aa.usno.navy.mil/data/docs/RS_OneYear.php そこに表示されます この間隔の月の入りです(JD 2456623 = 2013-11-26 12:00:00):

ここに画像の説明を入力

もう1つの奇妙な点は、「$ rst-> get_transit();」をコメントアウトした場合です。ライン、私 これらの結果を取得します。

DAY: 2456623
STATUS: 1
RISE: 5.5664193588601e-309
SET: 1.14372958360957e-268

DAY: 2456624
STATUS: -1
RISE: 6.80740365931403e+199
SET: 4.81766816905579e+151

上昇/セットはまだ奇妙です(これは問題ありませんステータスが-1)なので、 彼らは異なっている。私はいつもget_lunar_rst()が修正を返したと思っていました 構造ですが、どうやらそうではありませんか?トランジットをチェックするという行為そのもの 時間は構造を変えますか?

編集:OK、プログラムをまったく変更せずに2回実行したところ、次のようになりました。

DAY: 2456623
STATUS: 1
RISE: 5.5664193588601e-309
SET: 2.99352717623831e-264

DAY: 2456624
STATUS: -1
RISE: 1.9634470382202e-153
SET: 2.26294632209635e+137

DAY: 2456623
STATUS: 1
RISE: 5.5664193588601e-309
SET: 3.04770606791278e-262

DAY: 2456624
STATUS: -1
RISE: 1.9634470382202e-153
SET: 2.26294632209635e+137

つまり、2456623セットは理由もなく変更されます。

回答:

回答№1は1

これがバグであることを確認し、修正に取り組んでいるlibnovaの作者に連絡しました。

libnovaは、真北にあるときに地平線より上にある場合、体が周極星であると誤って想定します。これは真実ではありません: https://astronomy.stackexchange.com/q/963

私はこれを想定していない修正を書きましたが、体の偏角が非単峰性である場合はまだ不正確である可能性があります。 https://astronomy.stackexchange.com/questions/962/is-lunar-elevation-at-a-given-location-for-a-given-day-unimodal