5

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

#!/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: $i\n"; 
  ($status,$rst) = get_lunar_rst($i, $observer); 
  print "STATUS: $status\n"; 

  $rst->get_transit(); 

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

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

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):

ここに画像の説明を入力

別の奇妙な点: "$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 セットは理由もなく変更されます。

4

1 に答える 1

1

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

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

これを前提としない修正を書きましたが、体の赤緯が単峰性でない場合は不正確になる可能性があります: https://astronomy.stackexchange.com/questions/962/is-lunar-elevation-at-a - 与えられた場所 - 与えられた日 - ユニモーダル

于 2013-11-25T19:25:15.617 に答える