Welcome to the ATLAS Analysis Software Tutorial pages.
This is the portal to the ATLAS analysis software tutorial held multiple times throughout the year.
This tutorial is aimed at (new and old) members of the ATLAS collaboration interested in learning the basics of ATLAS software and the latest physics analysis tools. There are several introductory lectures aimed at introducing the topics.
Follow a week-long analysis software tutorial with lectures and hands-on exercises. The new tutorial format (as of November 2022) is designed to be done in small groups and to follow an example ATLAS analysis from beginning to end. The introductory material and hands-on exercises are kept available online, so if you cannot attend a tutorial week, you can still work through the material.
The curriculum, recorded lectures (for self-guided/asynchronous study), and links to the exercises are available at:
This week of tutorials requires that participants be familiar with some computing basics. We will be working in a linux terminal and writing code in C++ and python. It is important that you have some working knowledge of these tools before you attend the software tutorial
Please work through the Unix shell, C++, Python and ROOT sections in Fundamentals.
Additionally, please work through the Software Essentials Git sections. Please work from “Git For Analysis” through “SSH Keys”, noting that “Add a Submodule” is optional.
Please make sure that you have X11 installed on your computer. This is necessary for opening windows from a remote machine. If you do not already have it installed, please do so following the appropriate link for your OS:
If you are using Windows, it may be simpler to use Windows Subsystem for Linux (WSL) to get access to a linux kernel natively on your computer. Follow these instructions to set up WSL and X11 on Windows 10 and Windows 11.
To test whether you already have X11 installed, use the xterm
command from your terminal. If a new terminal-like window opens,
X11 is installed. Alternatively you can often use the xeyes
command to open an interactive set of eyes, though this may not
always be available.
Most of the information for the tutorial can be found under the Analysis SW Tutorial
menu at the top of this page. Here are some additional links that you may
find helpful:
There are many more resources outside the scope of this tutorial that may be useful to you. Some of these are ATLAS-specific, and some are more general-purpose. We have compiled some resources here that you may find useful as you continue to learn.
The ATLAS Computing and Software TWiki [Internal] is the go-to resource for all things related to computing in ATLAS.
The ATLAS C++ coding guidelines is crucial in making sure that our code remains easily readable (and therefore extendable) by the collaboration. The guidelines should be followed if you are developing C++ for use in Athena.
The following are some useful ATLAS-specific tutorials.
The HEP Software Foundation and IRIS-HEP have several trainings available. Topics include: C++, CMake, CI/CD, Docker, version control, python, machine learning, uproot, and many more.
Take a look at the HSF Curriculum page for links to these trainings.
The PyHEP working group (from HSF) brings together a community of developers and users of Python in Particle Physics, with the aim of improving the sharing of knowledge and expertise. A collection of community-driven and community-oriented Python libraries providing HEP at large with an ecosystem for data analysis in Python can be found within the Scikit-HEP project.