de | en

Scientific Computing in High-Energy Physics

Module PH2286

This module handbook serves to describe contents, learning outcome, methods and examination type as well as linking to current dates for courses and module examination in the respective sections.

Basic Information

PH2286 is a semester module in English language at which is offered in summer semester.

This Module is included in the following catalogues within the study programs in physics.

  • Specific catalogue of special courses for nuclear, particle, and astrophysics
  • Complementary catalogue of special courses for condensed matter physics
  • Complementary catalogue of special courses for Biophysics
  • Complementary catalogue of special courses for Applied and Engineering Physics

If not stated otherwise for export to a non-physics program the student workload is given in the following table.

Total workloadContact hoursCredits (ECTS)
150 h 30 h 5 CP

Responsible coordinator of the module PH2286 is Ante Bilandzic.

Content, Learning Outcome and Preconditions

Content

This module introduces the Linux operating system, scripting with Bash programming language, and ROOT object-oriented framework (written mostly in C++ and developed at CERN) for data analysis in high-energy physics. The topics to be covered include:

  1. Linux: filesystem hierarchy and file manipulation, handling processes and jobs, frequently used commands;
  2. Bash: shell environment, variables, string manipulation, built-in commands, aliases, functions, conditional statements, loops, command substitution, command chain, test constructs, piping, redirections, code blocks, subshells, process substitution, brace expansion, regular expressions, here-strings and here-documents, etc.;
  3. ROOT: using ROOT GUI, plotting, histogramming, fitting, trees, etc.

Learning Outcome

After successful completion of the module the students are able to:

  1. use the Linux operating system at an advanced level;
  2. master in-depth the shell scripting and terminal control with Bash programming language;
  3. use the most important ROOT functionalities (e.g. sampling, histogramming, plotting, fitting, data storage, file merging, etc.).

These three aspects are among the most important core skills required nowadays for high-energy experimental physicists, doing large scale data analysis for instance in experiments at CERN's Large Hadron Collider.

Preconditions

No preconditions in addition to the requirements for the Master’s program in Physics.

Courses, Learning and Teaching Methods and Literature

Courses and Schedule

TypeSWSTitleLecturer(s)Dates
VI 2 Scientific Computing in High-Energy Physics Bilandzic, A. Thu, 14:00–16:00, PH 2024

Learning and Teaching Methods

The content of the lecture is delivered through the presentation, assuming no prior knowledge on the subject. During each lecture, the newly introduced programming concepts will be demonstrated on a computer by the lecturer.

In total there will be 12 days of lectures, each lecture lasting 2x45min.

Media

Presentation projected from the laptop. Blackboard for additional clarifications. Summary of each lecture, including integrated code snippets with exercises, in .html format.

Literature

  1. Mendel Cooper: "Advanced Bash-Scripting Guide" (http://tldp.org/LDP/abs/abs-guide.pdf) 
  2. Cameron Newham and Bill Rosenblatt, 'Learning the bash Shell: Unix Shell Programming (In a Nutshell (O'Reilly))' 
  3. ROOT User's Guide (https://root.cern.ch/root/htmldoc/guides/users-guide/ROOTUsersGuide.html)

Module Exam

Description of exams and course work

The achievement of the competencies given in section learning outcome is tested exemplarily at least to the given cognition level using final projects independently prepared by the students. The exam of about 25 minutes consists of the presentation of the project’s results and a subsequent oral exam.

For example an assignment in the exam might be:

  • Develop a Bash script which will automate all stages (job submission, re-submission of failed jobs, quality assurance of output files, the final merging of output files, etc.) for a given Linux process
  • Develop a Bash script which will automate common maintenance tasks on a Linux machine
  • Set up from scratch a Monte Carlo simulation in ROOT for some physical observable of interest

There will be a bonus (one intermediate stepping of "0,3" to the better grade) on passed module exams (4,3 is not upgraded to 4,0). The bonus is applicable to the exam period directly following the lecture period (not to the exam repetition) and subject to the condition that the student passes the mid-term of successfully completing 75% of the homework problems.

Exam Repetition

The exam may be repeated at the end of the semester.

Top of page