Computing Methods in High Energy Physics

Spring term 2020 (period IV)

Lecturer: Sami Lehti, Office: HIP B321 , Phone: 050 4485621 
Credits:
5op (3ov), 13 lectures, 6 exercises and home exam
Lectures: Tuesday 10-12, Exactum, B119  Friday 10-12, Physicum, D115  

Exercises: Friday 12-13 Physicum, D104 
Solutions to exercises should be returned by Tuesday at 10:15 am. 

Exam: Home exam will be given on April 28, and it should be returned by May 28.  
It will contribute 2/3 of the grade, the rest 1/3 comes from the exercises.  

Course description

The course provides an introduction to learning to use software
used in a typical High Energy Physics experiment. The CMS experiment
is used as an example.

Topics covered include:

Short review of UNIX
C++
ROOT
Combining languages
Cross section and branching ratio calculations
Event generators
Detector simulations
Reconstruction
Fast simulation
Grid computing

Lecture notes:

Mar 10
Lect 1
Examples
Mar 13
Lect 2
Examples
Mar 17
Lect 3
Mar 20
Lect 4
Mar 24
Lect 5
Examples
Mar 27
Lect 6
Examples
Mar 31
Lect 7
Examples
Apr 3
Lect 8
Examples
Apr 7
Lect 9
Examples
Apr 17
Lect 10
Examples
Apr 21
Lect 11
Examples
Apr 24
Lect 12
Examples
Apr 28
Lect 13
Examples

If lecture notes are being updated and not available in the above links, older material is available here.

Literature
Lecture notes.
A book on C++ for reference.

Grid certificate
(For students of University of Helsinki only)
Instructions how to get a grid certificate
Instructions how to get a VO fgi.csc.fi membership
Escience-portal
Save your certificate on disk as a p12 file.
In $HOME/.globus directory
openssl pkcs12 -nocerts -in mycert.p12 -out userkey.pem
openssl pkcs12 -clcerts -nokeys -in mycert.p12 -out usercert.pem
chmod 0400 userkey.pem
chmod 0600 usercert.pem

Software environment
How to install a virtual machine for running CMS software

Linux cluster "kale" in the University of Helsinki
CMSSW on kale (assuming bash):
export VO_CMS_SW_DIR=/cvmfs/cms.cern.ch
source ${VO_CMS_SW_DIR}/cmsset_default.sh
export SCRAM_ARCH=slc7_amd64_gcc630

ROOT 6.10.09 on kale (assuming bash):
export ROOTSYS=${VO_CMS_SW_DIR}/${SCRAM_ARCH}/lcg/root/6.10.09-mmelna2/
export PATH=${VO_CMS_SW_DIR}/${SCRAM_ARCH}/cms/cmssw/CMSSW_10_0_2/external/${SCRAM_ARCH}/bin:${VO_CMS_SW_DIR}/${SCRAM_ARCH}/external/gcc/6.3.0-cms/bin:${ROOTSYS}/bin:/usr/bin:.
export LD_LIBRARY_PATH=${VO_CMS_SW_DIR}/${SCRAM_ARCH}/cms/cmssw/CMSSW_10_0_2/lib/${SCRAM_ARCH}:${VO_CMS_SW_DIR}/${SCRAM_ARCH}/cms/cmssw/CMSSW_10_0_2/external/${SCRAM_ARCH}/lib:${VO_CMS_SW_DIR}/${SCRAM_ARCH}/external/llvm/5.0.0-cms/lib64:${VO_CMS_SW_DIR}/${SCRAM_ARCH}/external/gcc/6.3.0-cms/lib64:${VO_CMS_SW_DIR}/${SCRAM_ARCH}/external/gcc/6.3.0-cms/lib:${ROOTSYS}/lib
export PYTHONPATH=${ROOTSYS}/lib

ROOT and CMSSW environment for kale (bash)
Exercises:


Mar 20
Exercise1 Solution
Mar 27
Exercise2 Solution
Apr 3
Exercise3 Solution
Apr 17
Exercise4 Solution
Apr 24
Exercise5 Solution