アニメ『ぼっち・ざ・ろっく!』の主人公たちのバンド「結束バンド」が演奏したオリジナル曲「星座になれたら」の歌詞にある「何億光年離れたところからあんなに輝く」一番星が GRB (Gamma-Ray Burst: ガンマ線バースト)である可能性を検証するために作成したスクリプトです。
詳細はブログ記事「ぼっちちゃんはガンマ線バーストの一番星を見るか?」を参照してください。
このツールは天文学の教育を受けたことのないアマチュア天文家が個人的な趣味で作成したもので、計算結果の正確性は保証できません。天文学の専門家のレビューを受けるまで 1.0 未満のバージョンでリリースする予定です。
Python 3 が動く環境で動作します。 以下の環境で動作確認しています。
- Ubuntu 20.04 LTS
- Anaconda 4.12.0
- python 3.7.13
- astropy 4.3.1
- astroquery 0.4.6
ファイル名 | 説明 |
---|---|
README.md |
このファイルです。 |
bocchi-grb.py |
天体が地球から1億光年(光路距離)離れたところにある場合の見かけの等級を「ぼっち等級」とし、GRB のデータ(CSVファイル)から各天体のぼっち等級を求めまてCSV形式で出力します。 |
simbad-get-grb-data.py |
Simbad から GRB のデータをダウンロードしてCSVファイルに出力します。 |
simbad-grb-data-20230117_133213.csv |
2023-01-17 に simbad-get-grb-data.py で取得した GRB のデータです。 |
bocchi-20230117_133213.csv |
bocchi-grb.py に simbad-grb-data-20230117_133213.csv を入力して得たぼっち等級の計算結果です。 |
引数に simbad-get-grb-data.py
で取得した GRB のデータファイルを指定します。結果は標準出力に CSV 形式で出力されます。
python bocchi-grb.py simbad-grb-data-20230117_133213.csv
出力される CSV の各フィールドの意味は以下の通りです。
フィールド名 | カラム | 意味 |
---|---|---|
name |
A | 天体の名前です。Simbad に登録された ids の中に GRB 番号があればその値に、なければ main_id の値になります。 |
z |
B | 赤方偏移の値(z_value)です。 |
mag |
C | 発見時の明るさ(見かけの等級)です。Simad の登録に flux(V) があればその値に、なければ flux(B) の値になります。 |
lookback_distance |
D | z から計算した光路距離(光年)です。 |
luminosity_distance |
E | z から計算した光度距離(光年)です。 |
abs_mag |
F | z と mag から計算した絶対等級です。 |
bocchi_mag |
G | abs_mag から計算した「ぼっち等級」(光路距離で1億光年にある時の見かけの等級)です |
以下の点に注意してください。
- GRB のデータに z_value がない場合、または flax(V) も falx(B) もない場合は計算をスキップし、結果には出力されなくなります。
- GRB の z_value が負の値の場合は光路距離が計算できないため(ハッブルの法則で距離を求めるには近すぎると考えられる)計算をスキップし、結果には出力されなくなります。
simbad-get-grb-data.py
は bocchi-grb.py
に入力するデータを取得するためのスクリプトです。リポジトリには 2023-01-17 に取得した取得済みデータがあるので、それ以降に発見された GRB のデータや、修正されたデータを反映させたい場合に使用してください。
引数なしでそのまま起動するとデータをダウンロードし、CSVファイルを生成します(数分かかります)。
python simbad-get-grb-data.py
生成されるCSVファイルのファイル名は自動的に決定され、起動時の日時を使って simbad-grb-data-YYYYmmDD_HHMMSS.csv の形式になります。
以下の点に注意してください。
- otype が gB の天体のデータを全て取得します。
- 取得されるデータは天体の名前(main_id, ids)、赤方偏移(z_value)、等級(flux(V), flux(B))です。
- タイムアウトは120秒に設定してあります。タイムアウトでエラーになる場合はスクリプト中にある
Simbad.TIMEOUT = 120
の設定値を増やしてください。
PythonスクリプトはMITライセンスです。
CSVデータは、、、どうなるのでしょう?Simbad の検索結果の著作権の扱いが不明でわかりません。問題があれば削除します…