SiD detector studies
This wiki describes physics studies using the SiD detector. The following HepSim samples are available:
- gev250ee_pythia6_qcd_all (jets, QCD)
- gev250ee_pythia6_zpole_ee (Z → ee)
- gev250ee_pythia6_zpole_tautau (Z → tautau)
- gev250ee_pythia6_zpole_mumu (Z → mumu)
- gev250ee_pythia6_zpole_bbar (Z → bbar)
- gev250ee_pythia6_higgs_zz_4l (H → ZZ* → 4l)
- gev250ee_pythia6_higgs_bbar (H → bbar)
- gev250ee_pythia6_higgs_gamgam (H → gamma+gamma)
You can find the Monte Carlo samples after full detector simulation in the LCIO format using the rfull001 search link. The tag “rfull001” points to the files with simulations using the original SiD detector. Select “info” and then find the tag “rfull001” which prints LCIO files for a given MC sample. You can download these samples as discussed in HepSim manual.
The results shown on this page use the Jas4pp program. The installation does not have external dependencies besides Java. Make sure Java7 and above is installed. Then run these commands to install the package using Linux/Mac with the “bash” shell:
The last command optimizes Java packages for the Python language. Now you are ready to run over any file with truth-level and datector-simulation files, such as LCIO and ProMC. This program can be used for:
- Downloading and searching HepSim data
- Processing ProMC files from HepSim
- Running over SLCIO files with Geant4 simulated / reconstructed events.
- Data analysis (jets, physics vectors, histogram packages)
- Visualisation of reconstructed events using Wired4 display
You can find more details in HepSim manual. All examples for this page are located in the “examples/slic/” directory.
All examples are publicly available from examples public directory. They are also located in the “examples” directory of the downloaded package. Many examples are based on gev250ee_pythia6_zpole_ee data sample (Z→e+e-). We assume that the working directory is “examples”. Do not forget to run “setup.sh” before running the examples.
Z-peak using MC truth
Let's calculate Z peak from thuth-level electrons. Get 4 files (in 2 threads) and copy all files to the directory “gev250ee_pythia6_zpole”:
source ./setup.sh cd examples/slic/ hs-get gev250ee_pythia6_zpole_ee%rfull001 gev250ee_pythia6_zpole_ee 2 4 # download 4 files fpad mc_truth.py
Alternatively, run this example in the FPad editor:
It will pop-up an editor to edit the script. Then press “Run”. You can use also Windows and run “fpad.bat”. The result of this file is:
Z-peak using PFA
Let's calculate Z peak from particle-flow objects after full reconstruction using Pandora. You do not run “hs-get” command if you have done this before.
hs-get gev250ee_pythia6_zpole_ee%rfull001 gev250ee_pythia6_zpole_ee 2 4 # download 4 files fpad mc_pflow.py
you can also make a simple fit:
Z-peak using tracks
Let's calculate Z peak from reconstructed tracks (no Pandora and no particle identification) You do not run “hs-get” command if you have done this before.
hs-get gev250ee_pythia6_zpole_ee%rfull001 gev250ee_pythia6_zpole_ee 2 4 # download 4 files fpad mc_tracks.py
Higgs from γ γ
Let's calculate the Higgs peak from reconstructed photons after the PFA algorithm. This time you will need H→ gamma+gamma sample gev250ee_pythia6_higgs_gamgam: We set pT(γ)>10 GeV.
hs-get gev250ee_pythia6_higgs_gamgam%rfull001 gev250ee_pythia6_higgs_gamgam 2 10 # get 10 files in 2 threads fpad mc_gammagamma.py
Z-peak using b-jets
Let's calculate Z peak from reconstructed b-jets. Jets are reconstructed using the Durham kT algorithm with ycut=0.05. This time we will download Z→ bbar sample. Look at gev250ee_pythia6_zpole_bbar. We assume pT(jet)>20 GeV.
hs-get gev250ee_pythia6_zpole_bbar%rfull001 gev250ee_pythia6_zpole_bbar 2 4 # download 4 files fpad mc_jets.py
No any optimization for jet reconstruction was used. Consider other approaches to make more realistic dijet mass.
Z-peak using tau-tau
Let's calculate Z peak from two Durham jets as in the previous example, but using Z→tau+tau sample. Should see shift from 90 GeV (neutrino).
hs-get gev250ee_pythia6_zpole_tautau%rfull001 gev250ee_pythia6_zpole_tautau 2 50 # download 50 files fpad mc_tautau.py
No any optimization for jet reconstruction was used. Consider other approaches to make more realistic tau reconstruction..
Higgs from 4 leptons
Let's calculate Higgs peak from reconstructed leptons in the channel H(125)→ ZZ* → 4L (electrons and muons). We will use particle flow objects to reconstruct and identify electrons and muons. This time we will download Higgs→ 4 lepton sample. Look at gev250ee_pythia6_higgs_zz_4l.
hs-get gev250ee_pythia6_higgs_zz_4l%rfull001 gev250ee_pythia6_higgs_zz_4l 2 100 # download 100 files in 2 threads fpad mc_higgs_zz.py
You can also look at some exotic configurations. For example, let's reconstruct Higgs at 100 TeV using SLIC:
hs-get tev100_pythia6_higgs_zz_4l%rfull001 tev100_pythia6_higgs_zz_4l # get 100 TeV sample fpad mc_higgs_zz_100tev.py
Higgs from bbar
This example uses the Jade algorithm to force 2 jets, and uses H→ bbar sample:
hs-get gev250ee_pythia6_higgs_bbar%rfull001 gev250ee_pythia6_higgs_bbar 2 15 fpad mc_higgs_bbar.py
Jet energy resolutions
This example shows the jet energy resolution in 2 pT(truth) regions. It is based on inclusive jet sample gev250ee_pythia6_qcd_all. We use Durham jets with pT(truth)>20 GeV. Jet are constructed from PFA objects. Truth jet and reco jets are matched using dR<0.05 in phi and rapidity.
Showing calorimeter hits in 3D
One can also visualize calorimeter objects, such as hits. For example, here are calorimeter hits for Z→ bbar event (only one event is shown)
fpad mc_hits3D.py # hits in 3D for 1 events fpad mc_hits.py # phi distribution of hits
Location of calorimeter hits for 1 event:
Phi angle of calorimeter hits for all events:
How to download all files
Use the HepSim manual. You do not need to “hs-tools” since it is already installed. You can list and download files for Z to e+e- automatically as
hs-ls gev250ee_pythia6_zpole_ee%rfull001 # list all files hs-get gev250ee_pythia6_zpole_ee%rfull001 # download all files (can be large sample!)
Here “gev250ee_pythia6_zpole_ee” is the dataset name, and “rfull001” is the reconstruction tag.
How to find MC after full simulation
To find event samples with full simulations, use the full search and the string “rfull”. For example, use the http://atlaswww.hep.anl.gov/hepsim/list.php?find=rfull link that lists all samples that have been processed with a full detector simulation.
LCIO event structure
The standard set of containers is available from the LCIO files posted on HepSim. Read Manual. The API is described in LCIO Java API description.
Look the Java API definition of the needed objects in org.lcsim.lcio. The data containers of such files are listed below:
The Monte Carlo files located in rfull001 link are done using the sidloi3 detector: http://lcsim.org/detectors/sidloi3.html. The XML geometry is given in http://lcsim.org/detectors/sidloi3.zip.
The SiD detector is shown here
You can view detector geometries posted in http://lcsim.org/detectors/ as this. Download zip file and extract it. Find file “compact.xml”, and then run geometry converter as:
gconverter -o heprep compact.xml sidloi3.heprep
Now you can open this file in the Jas and view it. Look at other options by running “./gconverter_gui”.
Here are a few links to the description of this detector.
SiD detector description and SiD detector description (older version)
Using C++/ROOT with LCIO
If you need to read LCIO files in C++ code with ROOT/FastJet, use this example package:
wget http://atlaswww.hep.anl.gov/hepsim/soft/lcio-cpp.tgz -O - | tar -xz; cd lcio-cpp; make
It will compile “example.cpp” file linking FastJet package. Look at README file to see how to install the “LCIO” package required by this example. Your LCIO“ files from HepSim should be in the directory “data”.
Analysing truth-level files
You can run over the original truth-level files from HepSim:
wget http://mc.hep.anl.gov/asc/hepsim/events/ee/250gev/pythia6_zpole_tautau/macros/pythia6_zpole_tautau.py fpad pythia6_zpole_tautau.py
This example prints the pT distribution of e, mu, taus. Typically, HepSim contains validation files with the extension py that can check the validity of truth-level samples. See the description in HepSim documentation and HepSim API
Visualizing events with Jas+Wired
You can run Jas+Wired to visualize the simulated events. The Wired program is included in the Jas4pp program, so you simply run it as:
This will start Jas3 with all needed plugins. Then copy the detector geometry “heprep” file to the local directory where the file “jas” is:
This detector corresponds to “rfull001” tag used for the reconstruction of pythia6_zpole_ee (Z→e+e-).
Now we can visualize the detector as [File]-[Open data source]-[HepRep] XML and select the downloaded file “sidloi3.heprep”. This is how to do this using the command line:
You will see the detector layout:
Now, we will read the event: Open any *.slcio file you copied from HepSim as [File]-[Open data source]-[LCIO] file. Then click a small button [Go] (top menu bar). It will process events. Then select again [File]-[New]-[Wired 4 view]. You will get an image in the Wired4 display as this:
Now press [Go] again to look at next event.
If you want to see how data records are organized inside the slcio file, do this [File]-[New]-[LCSim Event browser]
For some help with SLIC, read:
— Sergei Chekanov 2015/10/08 09:31