Master by Research (MRes) project of Bogdan Mishchenko :"Simulation, reconstruction, Physics sensitivity studies for the SiD(Sillicon Detector) "

Project Aim

The main aim of the project is the Physics sensitivity studies(Higgs physics, top quark Physics, beyond standart model physics) at future ILC(International Linear Collider). The project focused on simulation, reconstruction, physics analysis of of the results Tracking system from SiD(Sillicon Detector). Below you can find link to the brief report on the progress:

SiD detector model

SiD detector mentioned above is the one of two detector concepts proposed for ILC. Below you can see layout of the detector. My thesis is focused mostly on the Tracker subsystem. Please refer to the report that will be attached later on for more details on it.


This is angle coverage for SiD Tracker system. For low angles from beamline(<40^{0}) acceptance will be mostly by endcaps(inner outter vertex disks and tracker disks), while for angles greater then 40^{0} will be mostly Barrel(Vertex and Tracker).


Generation/simulation chain

How to obtain code for simulation and compile it

git clone

cd lcgeo/

mkdir build

cd build/

source /cvmfs/

cmake -C /cvmfs/ -DBoost_NO_BOOST_CMAKE=ON  ..

make install

Prior simulation of detector response of the SiD, we need to generate particles. In the simple case it can be running script that specifies PDG number of particle, 4 vector of particle and other usefull parameters.

How to generate file with blank of particles

Assuming that you have installed lcgeo(linear collider geometry package). If not, follow instruction on . On the fresh login to terminal execute :
source /cvmfs/
source /cvmfs/
cd lcgeo/
python example/ (where you specify PDG and incident angle \theta  and number of generated particles and other parameters)
Do the following command to have a look inside the file:
anajob mcparticles.slcio (prints MCParticle collection for each event)
dumpevent mcparticles.slcio (prints details of MCParticle collection for each event)
Run the simulation:bogdanmishchenko
ddsim --compactFile=SiD/compact/SiD_o1_v01/SiD_o1_v03.xml --runType=batch --inputFile mcparticles.slcio -N=10  --outputFile=testSiD_o1_v03.slcio
anajob testSiD_o1_v03.slcio (prints MCParticle collection and hit collections for different subdetector parts (SiTrackerBarrelHits of SimTrackerHit type) and other collections )

Digitization/reconstruction chain

MC TruthTracking

Aim of the MC(Monte Carlo) Truth Tracking is to get make sure that we can get sensible results from analysis of the data from the simulation/reconstruction chain.


Description of the reconstruction code, How to run it.

Reconstruction code for SiD was adopted from CLIC (Clicperformance package), which you can find here :

Some macros and scripts have been used from ILD performance package, which you can find here:

It has following modifications: For layer residuals code we are using hard coded SiDecoderString: "subdet:6,side:3,layer:4,module:12,sensor:1" for decoding. Additionally, We do not do refitting and extrapolating of tracks, what have been implemented in the CLIC code.

Assuming that you are on the fresh login in terminal:

source /cvmfs/
source /cvmfs/
 cd lcgeo/
wget  (To get the reconstruction code)
tar xvzf Tracking_2_12_16.tar.gz Tracking/ (To unpack archive)
cd Tracking/
find(to list all files in the directory)
./src(directory with Marlin processor source codes)
./src/ (processor that output residuals, pulls for hits)
./src/ (processor that output layer residuals )
./src/ processor that calculates trackreconstruction efficiencies versus, pt(transverse momentum, theta, eta(pseudorapidity)
./include ( directory that contains header files)
./CMakeLists.txt ( CMake configuration file )
./SiDReconstruction_161910_new_bogdan.xml (Marlin steering file)

mkdir build  lib ( make directories)
cd build/
cmake -DCMAKE_CXX_COMPILER=`which g++` -DCMAKE_C_COMPILER=`which gcc` \
  -DILCUTIL_DIR=/cvmfs/ -C $ILCSOFT/ILCSoft.cmake ..
make install
After successful compilation you will get something like this:
[100%] Built target TrackAna
Install the project...
-- Install configuration: "RelWithDebInfo"
-- Installing: /afs/
-- Installing: /afs/
-- Installing: /afs/
-- Set runtime path of "/afs/" to "/afs/"

cd ..
export MARLIN_DLL=$MARLIN_DLL:$PWD/lib/  (to link Marlin with compiled object files)
Marlin -c SiDReconstruction_021216_new_bogdan.xml(check given  steering file for consistency) 
Marlin SiDReconstruction_021216_new_bogdan.xml(with specifying slcio file (testSiD_o1_v03_1000_muons_Angle_40_Momentum_10.slcio))

ls -ltr 
You will get such files:
-rw-r--r-- 1 bogdanm ilc 3146400 Dec  2 13:32 SiD_Tracks_SiD_o1_v03_100_muons_Angle_40_Momentum_10.slcio (slcio file  with tracking information (you can use it afterwards for visualization)
-rw-r--r-- 1 bogdanm ilc   11734 Dec  2 13:32 hit_residuals_SiD_o1_v03_100_muons_Angle_40_Momentum_10.root (root file  with residuals per later)
-rw-r--r-- 1 bogdanm ilc  131753 Dec  2 13:32 global_residuals_SiD_o1_v03_100_muons_Angle_40_Momentum_10.root(root file  with pulls, residuals  of track parameters)
-rw-r--r-- 1 bogdanm ilc   16593 Dec  2 13:32 digi_processors_SiD_o1_v03_100_muons_Angle_40_Momentum_10.root(root file  with efficiencies(versus angle or momentum)

How to produce Hit residuals


How to produce Hit pull distributions

If you will specify in the in the  pulls.cxx script  root file : (TFile *residuals = new TFile("analysis_100_40_10_mu.root")) and then:
root pulls.cxx
Below you can find Pulls distribution track parameters, which indicate good performance of the MC Truth Tracking(Gaussian distributions with mean close to 0 and sigma close to 1(small box) ):


How to produce Tracking efficiencies

Efficiency of track reconstruction depends on the theta angle(angle between projection of momentum on z axis and momentum) and transverse momentum. You can see below dependence on theta for SiD_o1_v03 version of detector model. As you have noticed efficiency of reconstruction falls significantly after 40 due, to the problems with Forward Tracking Disks (after 120^{0} ) and Endcaps(both Tracker and Vertex) (< 40^{0} ).


This is tracking efficiency for momentum range [1,500]GeV

  • Tracking efficiency for SiD_o2_v01:

How to produce track parameter resolutions (d_{0}, z_{0}, pt)

D0_resolution can be produced by running following script D0_resolution_angle.cxx:

Z0 resolution obtained using Z0resolution.cxx script Example how to plot resolutions can be found in momentumres_angle.cxx file, which is attached to the twiki page.

On the figure below you can see Transverse momentum resolution obtained in the new framework and comparison with Detailed Baseline Design report from 2012(following figure) * This is Pt resolution obtained with SiD_o1_v03 model using momentumres_angle.cxx script:

  • This is Pt resolution obtained with SiD_o2_v01 module:

Pattern recognition

Pattern recognition is a field of applied mathematics, which aim is the classification of objects. For instance, position measurements along particle trajectories can be classified as different physical objects. Please refer to the report that will be attached later on for more details on it.

How to run Conformal tracking code

Tracker optimization studies

The aim of the optimization studies is to optimize particularly, Tracking system for the best price/performance ratio. For example, We can look how each layer of tracker perform or how the tracking system perform with pixels versus performance with strips. For more details please refer to the report that will be attached latter on for more details on it.

Physics sensitivity studies

Physics studies for SiD can be following: precise Higgs physics measurements or searches for new physics like composite Higgs models, top quarks physics.Please refer to the report that will be attached later on for more details on it.

Marlin tips

For more options of running Marlin:

Marlin -? 
Particularly useful:
Marlin -c SiDReconstruction_v03_160711.xml  (check given  steering file for consistency) 

Topic attachments
I Attachment History Action Size Date Who Comment
PDFpdf Brief_report.pdf r1 manage 41.2 K 2016-10-13 - 19:21 BogdanMishchenko This brief report on the progress
PNGpng D0_resolution.png r1 manage 19.8 K 2016-10-24 - 17:30 BogdanMishchenko D0_resolution
PNGpng D0_resolution_40_60_SiD_o1_v03.png r2 r1 manage 24.8 K 2016-11-05 - 12:07 BogdanMishchenko D0_resolution
PNGpng D0_resolution_40_85_SiD_o1_v03_proper.png r1 manage 25.4 K 2016-11-06 - 20:41 BogdanMishchenko D0 resolution 40 85 SiD_o1_v03
PNGpng D0_resolution_40_85_SiD_o2_v01.png r4 r3 r2 r1 manage 25.3 K 2016-11-16 - 14:45 BogdanMishchenko DO resolution for 40 85 degrees for SiD_o2_v01 model
PNGpng D0_resolution_40_SiD_o1_v03_proper.png r1 manage 24.8 K 2016-11-06 - 00:12 BogdanMishchenko D0_resolution
PNGpng D0_resolution_SiD_o2_v01_40_60.png r1 manage 25.4 K 2016-11-15 - 12:53 BogdanMishchenko  
PDFpdf LC-DET-2006-004.pdf r1 manage 95.3 K 2016-11-09 - 20:23 BogdanMishchenko linear collider parametrization
PNGpng Pt_resolution_40_85_SiD_02_v01.png r1 manage 24.7 K 2016-11-15 - 19:04 BogdanMishchenko This is Pt resolution obtained with SiD_o2_v01 module
PNGpng Pt_resolution_40_properone.png r1 manage 22.6 K 2016-11-06 - 00:17 BogdanMishchenko This is Pt resolution obtained with SiD_o1_v03 model
PNGpng Screenshot-20.png r1 manage 203.3 K 2016-10-11 - 10:41 BogdanMishchenko tt bar event
JPEGjpeg SiD_layout.jpeg r1 manage 83.4 K 2016-10-11 - 10:42 BogdanMishchenko Schematic view of SiD layout
Unknown file formatgz Tracking_2_12_16.tar.gz r3 r2 r1 manage 28.8 K 2016-12-02 - 16:35 BogdanMishchenko Truth reconstruction package adopted from CLICPerformance
PNGpng Tracking_efficiency_20_40_85.png r1 manage 30.8 K 2016-11-17 - 12:02 BogdanMishchenko Tracking efficiency for SiD_o2_v01
PNGpng Tracking_efficiency_40_85.png r1 manage 30.4 K 2016-11-15 - 15:06 BogdanMishchenko Tracking efficiency for SiD_o2_v01
PNGpng Z0_resolution.png r2 r1 manage 25.0 K 2016-11-16 - 12:42 BogdanMishchenko z0_resolution 40 85 deg for SiD_o2_v01
PNGpng Z0_resolution_40_85_SiD_o2_v01.png r1 manage 25.0 K 2016-11-16 - 12:44 BogdanMishchenko z0_resolution 40 85 deg for SiD_o2_v01
PNGpng Z0_resolution_40_SiD_o1_v03.png r1 manage 22.7 K 2016-11-06 - 22:17 BogdanMishchenko z0_resolution
PNGpng angle_coverage.png r1 manage 54.7 K 2016-11-11 - 16:25 BogdanMishchenko angle_coverage
Unknown file formatEXT d0_z0_DBR r1 manage 65.1 K 2016-10-24 - 17:36 BogdanMishchenko d0_from_DBR
PNGpng d0_z0_DBR.png r1 manage 65.1 K 2016-10-24 - 17:36 BogdanMishchenko d0_z0_DBR
Unknown file formatroot d0probv2_SiD_o2_v02_100GeV_test.root r1 manage 12.5 K 2017-07-13 - 16:12 BogdanMishchenko D0 probability file for SiD_o2_v02 model
PNGpng eff_versus_theta.png r3 r2 r1 manage 22.9 K 2016-11-16 - 11:35 BogdanMishchenko eff_versus_theta_SiD_o2_v01
Unknown file formatcxx momentumres_angle.cxx r1 manage 7.7 K 2016-12-03 - 01:41 BogdanMishchenko  
PNGpng p_t_resolution_DBR.png r1 manage 72.1 K 2016-10-31 - 10:12 BogdanMishchenko p_t_resolution from DBD 2012
PNGpng pt_resolution_SiD_o1_v03_40_60.png r1 manage 24.6 K 2016-11-05 - 11:47 BogdanMishchenko This is Pt resolution obtained with SiD_o1_v03 model
JPEGjpg pull_residuals_40.jpg r1 manage 90.3 K 2016-10-13 - 19:43 BogdanMishchenko  
PNGpng residuals_40_tracker_barrel.png r1 manage 30.7 K 2016-10-20 - 14:41 BogdanMishchenko residuals_40_tracker
Unix shell scriptsh r1 manage 2.4 K 2016-12-03 - 01:38 BogdanMishchenko example of script for running simulation and reconstruction
Unknown file formatroot z0probv2_SiD_o2_v02_100GeV_test.root r1 manage 12.6 K 2017-07-13 - 16:31 BogdanMishchenko Z0 probability file for SiD_o2_v02 model
Topic revision: r40 - 2017-07-13 - BogdanMishchenko
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback