24th August, 2001

木星の惑星名、どれもこれもゼウス(ジュピター)が手をつけた女性(+美少年)ばっかり。

 

「JUPITER」出力データ解析(event再構成)用プログラムの設計

木星がなんとか98周までは回ってくれるようになったので、解析プログラムに着手した。ありがたいことに、木星の衛星は1999年にみつかった(ただし当時は小惑星だと思われていた)S/1999 J1を含め17個もある。解析プログラムの名前は、是非この衛星の名前を冠したいではないか!(と一際情熱を燃やしたのは私よりもむしろ藤井氏であった。)

早速、木星の惑星名をwebで調べる。内側から順に、Metis、Adrastea、Amalthea、Thebe、Io、Europa、Ganymede、Callisto、Leda、Himalia、Lysithea、Elara、Ananke、Carme、Pasiphae、Sinope。全てギリシャ神話からとられているらしい。17番目はまだ名前がついていないのか?このうち、ジュピターの奥さん&恋人が14名だ(多分)というのだから、ローマの神々の王はたいしたお方である。我々のJUPITERもぜひあやかって、人々に愛されるプログラムになって欲しいものだ(ローマ神の王は、ほとんど押し掛け婚だったような気もするが…)

 

(1)IO(イオ)= Input / Output module set

JUPITERは基本的にGeant4ベースで動く検出器内での粒子反応シミュレータなので、Monte-Carlo Truthを吐き出すところまででお役目終了としたい。吐き出された Monte-Carlo Truthを読み込み、解析用FrameWorkであるROOTベースのJSFで動かすためには、両者をつなぐInput/Output moduleが必要である。I/Oとくればイオがあるじゃん!と1つ目は安直に決まる。

さて、IOというからには、Input/Outputをここで全て管理したい。現在思い付くI/Oは次のケース。

  1. Geant4 flat ascii file outputからROOT Objectに変換
  2. Geant4 Object outputからROOT Objectに変換
  3. 必要に応じて解析の途中結果を書き出し、再び読み込む
  4. Event reconstructionの部分から物理解析部分への橋渡し

とりあえず、手始めに1.のFlat ascii file→ROOT Objectの部分を作り始める。

(2) METIS(メティス)= Monte-Carlo Exact hits To Intermediate Simulated outputs

こちらは、Monte-Carlo Exact Hitsをもとに、本物のデータのような顔つきをしたsimulation dataを作るためのmodule群である。(別案に、CARME = Converters to Analysis and Reconstruction input data from Monte-Carlo Exact hitsというのもあったのだが、とても覚える自信がなかったのでMETISの方に決定。)

さて、本物のevent再構成で行われる手続きを全てsimulateするとすると、RawDataから物理解析に至るまでに、次の5つの過程をふまなければならない。

  1. RawDataをUnpackする (→Unpacker)
  2. UnpackされたFADCデータはpulseがいくつもつらなった形をしているので、それを個々のpulseに切り分ける(これをclusteringと呼ぶ)。この時点で、個々のclusterには、距離の情報はない。 (→ClusterMaker)
  3. clusteringされたデータを、x-t関数を用いてdrift距離に変換。変換後のデータをHitと呼ぶ。 (→HitMaker)
  4. Hitの情報を用い、どのHitがどのTrackに属するのかを探し、それぞれのTrackに属するHitの集合を作る(これをTrack Findingという)。
  5. Trackごとに分けられたHitの集合を用い、FitしてTrack Parameterを計算する(これをTrack Fittingという)。 (→4、5をあわせてTrackMaker)

最終的には、5番をのぞく1〜4の全ての手続きに対し、対応するsimulatorが存在する、という形を目指す。一方で、これらの手続きの1と3、3と4などのランダムな組み合わせでも走るsimulatorであることが望ましい。よって、METISの名前の通り、どの段階のIntermediate Simulated Outputも本物のデータと同じformatにすることとし、基底クラスには本物のEvent再構成プログラムに用いるものを使う設計にした。これにより、Simulated Outputの形は、本物の解析の場合のDataに、Simulation特有のデータ(たとえばExact Hitへのポインタなど)が付加されるされる形になる。

以下に、IOとMETISの関係概略図を示す。

 


木星開発topに戻る