月の黄経、黄緯、および地心距離を計算する関数。

こちらについても、資料のデータをそのまま利用しただけなので、意味は理解していない。

<関数名>
  lunarPos —- 月の黄経、黄緯、および地心距離を計算する

<形式>
  long lunarPos(double *lng, double *lat, long j, double d);

<引数>
  lng (出力)黄経(単位、度)
  lat (出力)黄緯(単位、度)
  j  (入力)世界標準時から換算したユリウス日の整数部分
  d  (入力)世界標準時から換算したユリウス日の小数部分

<関数値>
  地心距離(月・太陽中心間の距離)(単位、キロ・メートル)

<注意事項>
  関数 ut2jd()世界標準時からユリウス日への換算)が必要。
  また標準数学ライブラリ cos() も必要。

用例
  double lng, lat;
  lunarPos(&lng, &lat, 2450266L. 0.5);

<関数本体>
  lunarPos.c

<説明>
  ある時刻の月の黄経・黄緯および地球までの距離を計算する。
  太陽と月の黄経を知ると、新月・満月・上弦・下弦の日時を計算できる。これらは月の黄経と太陽の黄経の差がそれぞれ0度、180度、90度、 270度になる瞬間だから。また、新月時に月の黄緯が0に近い値であれば日食となり、満月時に同様に近い値であれば月食となる。
  なお、日本時間JSTを世界標準時UTに直すには、UT = JST – 9 で計算すればよい。

Comments are closed.

Post Navigation