Various useful links for getting started on (co-op) Track Trigger work

Introductory material

Computing-related pointers

Overview

Here are some things that you will need:

  1. A terminal window
  2. Basic unix/linux skills to navigate
  3. Basic python / C++ skills

Getting a terminal window

We will need to use a shell to connect to computing resources (like CERN's computing cluster called lxplus). If you have a linux machine or Mac OS X, this comes for free - just open a "Terminal" window. If you have a Windows computer, see below for installing shell.

If you have Windows computer, install linux bash shell. Google is probably your friend here, but see e.g. this article: https://www.laptopmag.com/articles/use-bash-shell-windows-10

Tutorials on using linux / unix

- This has both introductory material and a bit more advanced usage. Start for now only with "Unix / Linux for Beginners":

https://www.tutorialspoint.com/unix/index.htm

- Additional tutorials for reference:

https://linuxjourney.com/lesson/the-shell

https://linuxsurvival.com/linux-tutorial-introduction/

Tutorials on Python / C++

To be added.

Setting up (Mac OS X) computer for working

Install XQuartz: https://www.xquartz.org/

Install XCode: https://root.cern/install/dependencies/#macos

Set up a text editor, there are many many out there. I (Louise) use Aquamacs (https://aquamacs.org/).

Install ROOT and cernbox (as linked below).

CMS experiment and physics introduction

CMS experiment: https://www.youtube.com/watch?v=S99d9BQmGB0

More on CMS detector (and the links on the right sidebar): https://cms.cern/detector

More on CMS physics (and the links on the right sidebar): https://cms.cern/physics

Overview particle physics lectures

These are some nice lectures from the "CERN summer student" program that are publicly available. In particular these ones is a good introduction:

- One series (3 lectures) on "particle world":

1/3: https://indico.cern.ch/event/709526/

2/3: https://indico.cern.ch/event/709530/

3/3: https://indico.cern.ch/event/709532/

- First lecture on "detectors": https://indico.cern.ch/event/716456/

- Another series (3 lectures) on "from raw data to physics results":

1/3: https://indico.cern.ch/event/716505/

2/3: https://indico.cern.ch/event/716506/

3/3: https://indico.cern.ch/event/716508/

- Series (3 lectures) on "Introduction to Electronics, DAQ and Trigger Technology":

1/3: https://indico.cern.ch/event/190068/

2/3: https://indico.cern.ch/event/190069/

3/3: https://indico.cern.ch/event/190070/

CERN computing accounts & general useful links

CMS computing workbook has a ton of details (in particular go through chapter 1): https://twiki.cern.ch/twiki/bin/view/CMSPublic/WorkBook

ROOT (for data analysis, making figures, etc.), recommend installing it locally on your computer (https://root.cern/install/).

Basic tutorial about ROOT: https://twiki.cern.ch/twiki/bin/view/CMSPublic/WorkBookBasicROOT

Full site about ROOT: https://root.cern.ch/

Obtaining a grid certificate: https://twiki.cern.ch/twiki/bin/view/CMSPublic/WorkBookStartingGrid#BasicGrid

Password-less login: http://linux.web.cern.ch/linux/docs/kerberos-access.shtml

Linux commands: https://twiki.cern.ch/twiki/bin/view/CMSPublic/WorkBookBasicLinux

cernbox (CERN's version of dropbox):

http://cernbox.cern.ch

http://cernbox-manual.web.cern.ch/cernbox-manual/en/

Documentation on triggers and track trigger system

Looong document describing in all its detail the upgraded L1 trigger system, use this as a reference. Suggest to read:

  • First part of introduction section, section 1.1 "Physics motivations and CMS Phase-2 trigger upgrade"
  • Section 2.1 about the L1 tracking "Track finder primitives"

http://cds.cern.ch/record/2714892

Detailed overview article about "track triggers":

https://www.annualreviews.org/doi/abs/10.1146/annurev-nucl-020420-093547

L1 tracking software stuff

The first time to set up all the software, use this

Set up CMS software release:

cmsrel CMSSW_11_2_0_pre6
cd CMSSW_11_2_0_pre6/src/
cmsenv

Check out some additional code specific to the L1 tracking:

git cms-checkout-topic -u cms-L1TK:L1TK-dev-11_2_0_pre6

Compile the code:

scram b -j 8

Go to the "test" directory where we will execute (run) the code:

cd L1Trigger/TrackFindingTracklet/test/

Finally, run the L1 tracking:

(1) If you have requested and set up the grid certificate (using voms-proxy-init --voms cms), skip directly to (2) below.

If you do not yet have a grid certificate, open L1TrackNtupleMaker_cfg.py (using emacs, vi, or your preferred editor) and change to use a locally available input data file instead of reading from the grid. Specifically, change from:

    inputMC = ["/store/relval/CMSSW_11_2_0_pre5/RelValTTbar_14TeV/GEN-SIM-DIGI-RAW/PU25ns_110X_mcRun4_realistic_v3_2026D49PU200-v1/20000/FDFA00CE-FA93-0142-B187-99CBD4A43944.root"]
to:
    inputMC = ["file:/eos/cms/store/user/skinnari/L1TK/TTbar_D49/FBC9E601-AC44-3E40-B8B6-E6A671F1D2C7.root"]

(2) To run the tracking, execute the following command:

cmsRun L1TrackNtupleMaker_cfg.py

You can browse the python script that you are running in github here.

==> This will process 100 events from a Monte Carlo simulated sample of top quark pair production, with an average of 200 "pileup" interactions. Creates an output file called "TTbar_PU200_D49.root" that you can directly open in ROOT:

root -l TTbar_PU200_D49.root 

Once you have set up the software the first time, use this

Set up CMS software release:

cd CMSSW_11_2_0_pre6/src/
cmsenv 

To set up the grid certificate (once you have this), also do:

voms-proxy-init --voms cms 

IF you have made changes to any of the C++ code, then you need to recompile the code, otherwise it is not necessary:

scram b -j 8

Go to the "test" directory and run the L1 tracking:

cd L1Trigger/TrackFindingTracklet/test/
cmsRun L1TrackNtupleMaker_cfg.py

Make histograms

To make histograms from the ROOT ntuple files that are created when you run L1TrackNtupleMaker_cfg.py, you can use the L1TrackNtuplePlot.C script. You can look at the plotting script in github here.

To run it in ROOT, the first time (only) -- create the following output directory (this is where the histograms will be saved):

mkdir TrkPlots

Then open ROOT:

root -l 

... and run as follows (assuming that the root file is called TTbar_PU200_D49.root, otherwise change the name accordingly):

.L L1TrackNtuplePlot.C++
L1TrackNtuplePlot("TTbar_PU200_D49")

Hardware (TIF) stuff

To be added...

-- LouiseSkinnari - 2020-02-21

Edit | Attach | Watch | Print version | History: r10 < r9 < r8 < r7 < r6 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r7 - 2021-01-19 - LouiseSkinnari
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Sandbox All webs login

  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2021 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback