Ruby, Rails - 朔・弦・望(月の満ち欠け)一覧ページ!
Updated:
これまでコツコツと太陽と月の視位置を正確に計算するプログラムを作成してきました。
この度、高精度で計算できるようになったので、月の満ち欠け(朔・弦・望新=月・上弦・満月・下弦)の一覧ページを Rails 製の自 Web サイト上に作成&公開しました。※分単位では国立天文台の計算と一致するはず
0. 前提条件
- よくある三角関数を多用した略算式では誤差が発生するため、 NASA の機関 JPL(Jet Propulsion Laboratory) が惑星探査用に編纂・発行している月・惑星の暦の最新版 DE430 を使用している。
- 計算アルゴリズムには IAU SOFA(International Astronomical Union, Standards of Fundamental Astronomy) の提供する C ソースコード や、国立天文台も採用している方法(PDF)を使用している。
- 実際の計算には、別途自作した RubyGems ライブラリ mk_apos ( eph_jpl, eph_bpn, mk_coord, mk_time )を使用している。
- 自作の RubyGems ライブラリ mk_apos は任意の日時の太陽・月の視位置を JPL DE430 データから高精度で計算するものだが、月の満ち欠け(月と太陽の視黄経差 0, 90, 180, 270°)を算出するには二分法を使用している。(ここでは、そのプログラムの紹介はしない)
1. 朔・弦・望(月の満ち欠け)一覧ページ
今回は、そういうページを作成して公開したという紹介をするのみ。
実際に公開しているページは以下。
新月や満月になる瞬間を都度コマンドラインで計算していたのを、自分の Web ページで容易に確認できるようにしてみた次第です。
以上。
Comments