Skip to content

Latest commit

 

History

History
69 lines (63 loc) · 4.45 KB

src5-core-program.md

File metadata and controls

69 lines (63 loc) · 4.45 KB

2023/04/16 Kenichi Ito

src5_astsearch_new

astsearch_new

  • src2_startsearch2Rで検出した光源から移動天体と思われる候補を自動検出し,既知天体との照合を行い, MPCフォーマットに変換するシェルスクリプト
  • 実行内容
    1. make_gathered_search_astB.py src4_prempsearchC-afterの最後に生成された既知天体リスト(search_astB.txt)をまとめてカレントディレクトリに取り出す
    2. astsearch1M2_optimized.py 移動天体候補の自動検出
    3. match2D.py 既知天体との照合
    4. change_data_to_mpc_format.py MPCフォーマットに変換
    5. ファイルを3種類のテキストファイルに整理
    6. rm_should_modify_files 再解析時に辻褄が合わなくなるファイルを削除

make_gathered_search_astB.py

  • 実行内容
    1. precise_orbit_directories.txt を読み込む
    2. search_astB.txt があるディレクトリを巡回し,各行に画像番号を追加する
    3. 全てのファイルを結合したsearch_astB.txt を作成する
    4. bright_asteroid_MPC_names_in_the_field.txt をカレントディレクトリにコピーする

astsearch1M2_optimized.py

  • 移動天体候補の自動検出と測光
  • TrackletClass tracklet(線形に移動する光源の組)の情報を保持するクラス
    • コンストラクタ:2つの画像IDと初期のtrackletを受け取ってオブジェクトを生成
    • add_data() 画像IDとデータ点を受け取り,trackletに情報を追加
    • del_data()画像IDを受け取り,trackletから情報を削除
    • merge_another_tracklet_to_this() 別のtrackletの情報を自分に追加
    • get_image_ids_for_predict() 未検出の点がありそうな画像を推測して返す
    • get_median_mag_of_this_tracklet() trackletの等級の中央値を返す
    • calculate_characteristic_properties() trackletの情報をまとめて返す
    • is_identical_to_another_tracklet 2つのtrackletが同一かどうか,角度・速度・位置・等級から判定し,bool値で返す
  • detect_points_from_tracklets()
    • 任意のtrackletから点を検出し,trackletClassListに追加する
    • 検出した点数がN_DETECT_THRESHより小さい場合はそのtrackletを削除する
  • 実行内容
    1. データの読み込み,準備
    • FITSファイルからヘッダー情報を読み取る
    • テキストファイルから位置と明るさの情報を読取る
    • kd木の準備
    1. メインパート
    • mktracklet_opt(cythonで書かれている)を用いてtrackletを検出する
    • trackletClassListにtracklet情報を格納する
    • detect_points_from_tracklets()によって点の検出を行う
    1. 測光
    • 光源の明るさを算出し,trackletListAllに格納する
    • 中央値から明るさがかけ離れている点は削除する
    1. trackletの統合
    • 同じとみなせるtrackletかどうか判定し,trueであれば統合する
    • 統合後,不要になったtrackletに対してはshouldBeDeletedのフラグを立てる
    • shouldBeDeletedがtrueのものを削除する
    1. 出力
    • listb2.txtに結果を書き込む

match2D.py

  • listb2.txtは全ての移動天体候補を含んでいるので,既知天体と未知天体に分類し,前者をmatch.txt,後者をnomatch.txtに記入する
  • 実行内容
    1. listb2.txtを読み込む(ない場合は空ファイルを出力して終了)
    2. search_astB_*.txtに一致するファイルを全て読み込む
    3. 両者のデータをマッチングする
    4. マッチしたデータをmatch.txtに,残りをnomatch.txtに書き込む

change_data_to_mpc_format.py

  • match.txtnomatch.txtをMPCフォーマットに変換する
  • その際,既知天体は仮符号付きか,確定番号付きかでさらに分類する
  • 天体の種類3 x ファイル形式3の9個のテキストファイルが保存される
    • これらは,最終的にastsearch_newによってmpc.txt, all.txt, disp.txtに整理される
    • mpc.txtはMPCフォーマットに従う各行80文字のデータ, all.txtはMPCフォーマットに加え測光誤差やピクセル位置・画像番号などの情報も加えたデータ, disp.txtは天体名・ピクセル位置・画像番号など描画に必要最低限のデータである.