0

ROOT のコマンドライン インターフェイスを介して TH2F でプロットしているデータがあります。goodtree と呼ばれる TTree* があり、次のように検出器内のイベントの XY 位置をプロットします。

root [1] TCanvas *can = new TCanvas("can","can",800,800)
root [2] goodtree->Draw("y:x>>h1(400,-200,200,400,-200,200)","r<200","colz")

また、r^2 対 theta を見て、正規化された面積プロットを作成したいと思います。

root [3] goodtree->Draw("r*r:t>>h2(400,-3.14,3.14,400,0,41000)","r<200","colz")

この部分は問題ありません。次にやりたいことは、マップを XY プロットに重ねて、R^2T プロットの正しい位置に自動的に変形させることです。つまり、これは粒子検出器であり、XY で円形の断面を持つ光電子増倍管 (PMT) を使用しています。これらの PMT (ハニカム パターン) の輪郭を示すマップを h1 にオーバーレイできるようにしたいと考えています。これは、スクリプトを使用して非常に迅速に行うこともできます。

難しいのは、このマップを XY で定義し、R^2T データ ポイントの上にプロットできるようにしたいということです。これらすべての変形された楕円の位置、幅、および高さを手動で計算する必要なく、これを簡単に行う方法はありますか?

4

0 に答える 0