A two day workshop (Indico) will be held at the end of January with the aim of exploring what can be achieved with a better CMS detector for Phase 2 LHC. For these studies we will be using the Delphes fast simulation framework overlaid with tkLayout for the tracker geometry.
Instructions are based on the setup at the Tier3 at PSI, but should generally also work on any other SLC6 machine such as lxplus (the CMS environment might have to be set up differently). To get an account at the Tier3, follow the instructions at https://wiki.chipp.ch/twiki/bin/view/CmsTier3/HowToGetAccount.
The following instructions assume that you are set up to clone packages from github. There is an FAQ for CMSSW (http://cms-sw.github.io/faq.html), which is not needed for this tutorial, but you should make sure that you added your private ssh key to your github account as detailed here: https://help.github.com/articles/generating-ssh-keys/
If you don't have a wiki account (it should be your standard username e.g. like the one at PSI) yet, please send Clemens a mail so he can create one for you.
Fork the code from Git, which is browsable here or here for the official version) by just following the steps here before cloning it to your local directory.
Log into an SLC6 computer (t3ui12). Do yourself a favour and be organized:
mkdir $HOME/Phase2UpgradeStudies cd $HOME/Phase2UpgradeStudies source /cvmfs/cms.cern.ch/cmsset_default.sh cmsrel CMSSW_5_3_24 cd CMSSW_5_3_24/src cmsenv cd ../..
Clone a copy of the repository:
git clone git@github.com:`git config user.github`/Delphes.git
Build
cd Delphes/ ./configure
Follow the instructions (i.e. remember to export PYTHIA8), and compile:
export PYTHIA8=$HOME/Phase2UpgradeStudies/CMSSW_5_3_24/src/Delphes/external/pythia8201 make
Congratulations, you are now ready to run Delphes!
Each time you start a new session (but not now, since you just set everything up), you need to do:
cd $HOME/Phase2UpgradeStudies/CMSSW_5_3_24/src source /cvmfs/cms.cern.ch/cmsset_default.sh cmsenv export PYTHIA8=$HOME/Phase2UpgradeStudies/CMSSW_5_3_24/src/Delphes/external/pythia8201 cd ../../Delphes
Depending on what type of input files you want to use, different readers are used. For CMS ROOT files the syntax is
./DelphesCMSFWLite Datacard.tcl output.root input.hepmc
Three arguments must be passed: the data card containing the detector configuration, the output file and the input file.
You can for instance run on data cards for the CMS Phase 2 detector with pileup. Get a minimum bias file:
wget http://uaf-2.t2.ucsd.edu/~spadhi/Snowmass/data/MinBias100K_14TeV.pileup mv MinBias100K_14TeV.pileup MinBias.pileup
Use a CMS Phase 2 data card with pileup
Cards/JetStudies_Phase_II_140PileUp_conf4.tcl
Run on a GenSIM file
./DelphesCMSFWLite Cards/JetStudies_Phase_II_140PileUp_conf4.tcl Output.root /shome/thaarres/Data/Phase2UpgradeStudies/TTH_HToBB_M-125_14TeV-pythia6_GENSIM.root
Examine the output:
root -l gSystem->Load("libDelphes"); TFile::Open("Output.root"); Delphes->Draw("Electron.PT"); TBrowser browser;
The different branches of the “Delphes” tree are listed here. For macro based analysis look in the examples/ directory. Example1.C gives a simple example of histogram booking, event loop and histogram display. Check the WorkBook for more advanced examples.
An analysis macro is already available:
cp /shome/thaarres/Share/Phase2/Analysis.C ~Delphes/examples cp /shome/thaarres/Share/Phase2/Analysis.cpp ~Delphes/examples
Do
./configure make
tKLayout is a design tool for tracking detectors. It allows for rapid modeling and comparison of many different architectural variations, where new performance estimates and support for different detector geometries can be added quickly. We will use it to create 3D models of the design of the CMS tracker and to evaluate its fundamental performance figures to help in the choice of a viable detector layout for Phase 2 LHC.
In order to convert the tkLayout output to a format compatible with Delphes, Delphize is used. This tool only exists in the version used for the CUPS school and is not in the official release of tkLayout. To obtain the version containing Delphize please fork the repository by clicking here and then do:
cd $HOME/Phase2UpgradeStudies git clone git@github.com:`git config user.github`/tkgeometry.git cd tkgeometry
and do
source setup_slc6.sh mkdir lib make mkdir -p www/layouts
You will then have to adjust the tklayout.config file, simply replace the username. It contains the following info, where the default is:
Then type:
make install
Try running tkLayout:
cd geometries/BarrelEndcap_Nick2013/Traditional/ tklayout -r TechnicalProposal2014.cfg
The output is stored in $HOME/Phase2UpgradeStudies/tkgeometry/www/layouts (if this is what you set as your web server directory). For a “visual impression”, open the file index.html
firefox index.html
You can now do
delphize
This will list the available resolution files produced by tkLayout that can be converted to Delphes configuration files. For example:
[thaarres@t3ui12 Traditional]$ delphize Available resolution files: File 1 = TechnicalProposal2014/linptres_pixel_MS000.root File 2 = TechnicalProposal2014/linptres_tracker_MS000.root File 3 = TechnicalProposal2014/linptres_trigger_MS000.root
You will then be asked to select your desired resolution file (1,2,3….)
Select the desired resolution: 1
The new resolution configuration files will be stored at $HOME/Phase2UpgradeStudies/tkgeometry/www/layouts/TechnicalProposal2014/delphes/. The EfficiencyFormula and ResolutionFormula are in a format that can be copied ans pasted into your Delphes data card.
For some running options, have a look at Stefanos CUPS instructions.
Bens local copies of tkLayout and Delphes can be found at linux.physik.uzh.ch:/home/hep/bjk/cups with a short description from Ben here.
See Experts list