This lesson is being piloted (Beta version)

Pre-Workshop Material

Welcome to US ATLAS/First-HEP computing bootcamp! The aim of this week is to give you an understanding of fundamental tools and techniques in computing that will be using throughout your time in ATLAS, and more broadly, particle physics. However, from the get-go you should appreciate that the skills you will learn here are applicable beyond your career in physics and are used more broadly in industry and elsewhere. This bootcamp is divided into two parallel tracks that cover the following topics

In the mornings, you will learn how to use each tool by itself and gain an appreciation for the basics of how (and why!) it is useful. In the afternoons, you will take this basic knowledge and parlay it into the tool’s application within the ATLAS computing environment.

Much of what you will learn here can be found elsewhere on the internet, and if you work within ATLAS long enough, you may learn how to use each of these tools in a very focused way from a colleague. However, the goal of this tutorial is to give you a better understanding of what “is actually happening” when you use these tools so that they are no longer black boxes and you are not “just following a pattern”.

Guiding Advice : Just Ask!

QUESTIONS! : We love them!

QUESTIONS! : It’s how you learn.

QUESTIONS! : It’s how you get unstuck.

QUESTIONS! : If you are wondering it … someone else is too.

QUESTIONS! : There is never a stupid one.

One of the most important parts of research is learning to ask questions. And not only deep philosophical questions about the nature of the universe or the meaning of life. But also seemingly silly things like “Why does my code grind to a halt when I use a pointer here?”. Asking these questions are what allows you to grow your technical knowledge base and make more efficient progress in your immediate research question.

As a rule of thumb, if you find yourself stuck at any point during this bootcamp for one hour, then ask someone. To facilitate this, we have created a Mattermost chat group - Link to Mattermost Channel. Join it and start asking questions to your colleagues and the tutors.


HEP/ATLAS Computing Fundamentals Fundamental skills that are necessary in our field. We will assume you know this.
00:00 1. The Physics What type of physics will I be analyzing this week?
What is the dijet invariant mass?
00:30 2. Setting up the ATLAS Environment What is a “release”?
How can I configure my laptop to use “ATLAS code”?
01:30 3. Obtaining The Test Files What is an xAOD and a DxAOD?
What can we learn from a DSID and filename?
How can we obtain a test file?
02:20 4. Running the Basic Analysis What is the basic order of operations for building/executing your program with CMake?
How do you access the data of the DAOD within the C++ code?
03:50 5. Building With CMake Is it easier to compile using CMake and GNU Make?
What are the basic organizational principles of building your code with CMake?
05:20 6. Your First Plot What does the invariant mass spectrum of the two leading jets look like?
What are two of the most commonly used “tools” in particle physics analysis?
06:50 7. Extra Exercises Did you find the previous portions of the pre-work easy? Care to take it a next step?
08:30 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.