LGADSoftware (解析プログラム)

改訂歴
2021年3月 植田さん
2023年6月 北

LGADSoftwareの概要

LGADSoftwareの解析用のプログラム。

Link( Koji Nakamura / LGADSoftware GitLab (cern.ch))

gitから直接持ってくる方法

$git clone https://gitlab.cern.ch/JapanSiliconRD/aclgad/LGADSoftware.git

その後のmake等のやり方はREADME.mdを参照してください

(開発中のため、devel branchが最新(2023年6月現在))

runfileをあらかじめ作っておき、その中に回したいデータのパスを書いておく

また、その測定(Run)時のセットアップ情報(ADC channel,Amp board channel,Sensor channel,layer number)やセンサー情報(pad,strip,pixel)や何イベント走らせるか、カットをどの程度かけるか(その情報が書かれたファイルを読み込む)を指定する

./bin/LGADanalysis < runfiles/(data file name)

で解析開始

できるプロット・データファイルなど(in ./results)

  • Pulse Shape(波形)(信号サイズの大きい順に並ぶ)
  • Pulse Heigit分布(root fileに詰める)
  • 各チャンネルの信号の情報とその信号の到達時間等
Runを回したあと、そこから波高分布を比較したり、Fitするためにscriptがいくつか用意されている

2021年版

3月1日改良

カット情報をparameter directory内のdefault.txt等のデータを読み込むことで調整できるようにした

(これにより、解析のパラメーターを調整するごとにmake; make installを行っていた手間を省くことができるように)

2023年版(+クイックスタートガイド)

試しにデータ解析をしてみよう

自分のatlaspc7のディレクトリにLGADSoftwareをダウンロード。現状開発中なのでdevelバージョンを落とす。

$git clone https://gitlab.cern.ch/JapanSiliconRD/aclgad/LGADSoftware.git -b devel

これでLGADSoftwareがディレクトリとしてできていると思います。

$git branch

をした結果

*devel

となっていれば成功。以下はREADMEにあると思いますが一応。↓↓

$cd LGADSoftware

$cd config

$./configure.sh

$source setup_local.sh

$mkdir builds

$cd builds

$cmake3 ..

$make

$make install

$cd ../

これで解析の準備は整いました。

次に解析するデータが書いてあるファイル(例えばpad_laser_4ch_E600_kekv7_190V_lecroy_run2という名前にします)を作成します。

$cd runfiles/

似ているrunfileからコピーして作るのでまずはコピー

$cp pad_laser_4ch_E600_kekv7_190V_lecroy pad_laser_4ch_E600_kekv7_190V_lecroy_run2

$emacs -nw pad_laser_4ch_E600_kekv7_190V_lecroy_run2

このファイルを書き換える。

input 以下のファイル場所を指定しているところを今回とったデータにします。

/Data/LGAD/LeCroy/data/20230608/C1--Trace1--00000.trc、みたいに

outputのファイル名をpad_laser_4ch_E600_kekv7_190V_lecroy.rootからpad_laser_4ch_E600_kekv7_190V_lecroy_run2.rootに書き換え

では解析コードを回してみましょう!

$cd ../

$./bin/LGADanalysis < runfiles/pad_laser_4ch_E600_kekv7_190V_lecroy_run2

これでとりあえず回るようにはなるはず。

できた結果を確認しましょう。

$cd results

$ls

いくつかできてると思います。pngファイル・pdfファイルは

$evince [ファイル名].pdf

$display [ファイル名].png

で確認できます。最近使ってるのは主にevents_....とpulseshape_....くらいです。

rootファイルも確認してみましょう

$root -l pad_laser_4ch_E600_kekv7_190V_lecroy_run2_kekv7_190V_lecroy_run2.root

>TBrowser b

でウインドウが上がってきます。pad_laser_4ch_E600_kekv... をクリックするといろんなヒストグラムが確認できると思います。

Draw optionをcolzに選んでphvstime_ly0_をクリック。

横軸にトリガーからの時間、縦軸に波高が見れました!他のも確認してみてください。これは何?ってのがあったら聞いてください。

rootfileから素敵なプロットをつくってみましょう

まずはrootを抜けて、

>.q

$cd ../scripts/

$./fitph.sh [inputlist]

で出るようになるんですけど、まだこのバージョンだとうまくできないです。

fitph.Cを読んでいけそうならやってみてもいいかもしれない。

branch : devel_tatsukiu branch

FlashADCの出力ファイルをチャンネル分(8ch~16ch)のASCII形式でとる方法からBinary形式で1ファイルでとる形式に変更できるようになった

これにより、データファイルの容量が5分の1、測定時間が5分の1、転送時間が4倍程度早くなった

それに伴い、binary形式でも解析できるように調整したbranch

基本的に2021年7月時点でのdevelから派生したため、ほとんどdevel と同じことが行えるはず

また、time[ii][jj]、ADCcount[ii][jj]にデータを詰めるまでのみ変更しており、基本的にLGADLoopManagerには必要最小限のものしか追加していないので、devel_tatsukiu branchでの解析結果(root file)とdevelでの解析結果は全く同じものが出力される

-- Tatsuki Ueda - 2021-08-02

Comments


Edit | Attach | Watch | Print version | History: r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r2 - 2023-06-09 - SayukaKita
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback