The objective of this page is to deliver extra help and resources to the Milano ATLAS Software Tutorial 2015

X Workshop ATLAS Italia 2015



We will work using the ATLAS Analysis-Computing Run II Model, where the key point is the use of the computer facilities as a services.
Where we get the necessary Software and Tools to perform our Physics Analysis.
But at the same time, in this very early stage of the so-calleGenerid Run II, it will be necessary a lot of development.
This means: to create new codes and frameworks where the constant loop programing-compilation-correction-test will take a lot of the analyzers (e.g. your) time.
For that reason we are presenting here some ideas on how to carry your work with you and be ready to code and tests with or without connection to the usual ATLAS Computing Facilities.


ROOT Installation and First Macros

Using the most standard ROOT instructions ( available in its website and here below ) we will proceed to show you how to install any version of ROOT in three different Operative Systems (OS):

  1. Scientific Linux 6.6.
  2. MAC OS 10.9 (also useful for 10.10.2).
  3. Ubuntu 14.04.

Installation of ROOT in a Scientific Linux OS distribution (6.6)

Video Tutorial with the explanation ( for the moment in Spanish ) on how to get installed a ROOT version in Scientific Linux 6.6 (SL6).

The next lines refer to the commands explained and used in the video-installation

## Getting ready before to install ROOT: You need to be root (administrator)
##  (Insert the admin password)

## Installing updates and useful packages
     yum update
     yum install yum-priorities
     yum install kernel-devel-2.6.32-431.el6.x86_64
     yum install kernel-devel
     yum install gcc
     yum install git

## Getting the source of ROOT
   git clone
   cd root/
   git checkout -b v5-34-23 v5-34-23
   ./configure --help
   ./configure             ## ( You can include the arch if you want: linuxx8664gcc )    Note: you can include  "--all" too, e.g. "./configure --al"

## Installing the missing pre-requeriments od ROOT
   yum install gcc-c++
   yum install libX11-devel
   yum install libX11-xpm
   yum install libXpm-devel
   yum install libXft-devel
   yum install libXext-devel

## Now the configuration should be OK and is printted that we can do "make"
   ./configure --all
   . bin/ 

## Finally do:

Installation of ROOT in a MAC OS distribution (10.9 but also useful for 10.10.2 )

Video Tutorial with the explanation ( for the moment in Spanish ) on how to get installed a ROOT version in MAC OS 10.9.

Installation of ROOT in a Ubuntu distribution (14.04)

Instructions in order to install ROOT in a bright new version of Ubuntu distribution 14.04. The next lines have been execute in a new VM:
Note: can look pedantic but we can learn a bit more of how to get ROOT for futures occasions.

## - 1) You must install a New version of Ubuntu 14.04 ( _or any 14's stable version_ )

## - 2) Do the Update of the OS using the statard "Update" tool/application, e.g. look for "Automatic/Available Updates" and install them.

## - 3) Open a new *Terminal*

## - 4) Execute the command: ( _it will request the administration password, that one used while the Ubuntu installation..._ )

   sudo apt-get update

## - 5) Execute the command

   sudo apt-get install git

## - 6) Go to the directory where you would like to install *ROOT*

   cd <your_installation_path>

## - 7) Execute the necessary command to obtain *ROOT* ( _in this example, one of the most recent-stable ROOT5 versions_ )

   git clone
   cd root

   git tag -l
   git checkout -b v5-34-24 v5-34-24

## - 8) Let's do the configuration: here the *KEY* is to install *just* what *ROOT* will miss every time we run the configuration command, So:


## - 9) The first error get solved doing:

   sudo apt-get install dpkg-dev

## - 10) And again, the configuration command


## - 11) The next error get solved doing:

   sudo apt-get install libx11-dev

## - 12) One more time:


## - 13) The next error get solved doing:

   sudo apt-get install libxpm-dev

## - 14) One more time:


## - 15) And the last error get solved doing:

   sudo apt-get install libxft-dev

## - 16) At this point the configuration should finish successfully, showing that you can do " *make* " 
## (  Optional: if just by chance you get another error, you just need to execute ---->   sudo apt-get install libxext-dev     )

## - 17) Execute the command (_ and wait... this can take between 30min to 3 hours..._ ) 

   sudo make

  • You should obtain something like this below


## - 18) After the compilation, souce the code

   source bin/

## - 19) And run *ROOT*



You can check this video where a dynamic installation is perform too ( in English )

Generic tutorial(s) of two different macros for ROOT analysis

The Standard and useful ROOT documentation

We can always refer to the ROOT online Tutorial recommendations. Here below it has been included, so, you can directly browse the different examples that they have, take a look!!

Two Simple ( and fully working ) ROOT - macro production

Small zip package prepared to understand the internal structure of the 2 different macros for analysis of ROOT ntuple

This will help to start to work very easy and with two different methods. (take ~27min setup the 2 ďanalysis examples")

Files can be download from here or directly get the zip file clicking here!

Or use this "window" to take the mentioned file

The next is a Video-Tutorial ( in English ) to create the macros step by step and to use the input files:

NEW Getting the Complete AnalysisBase environment in a local machine using a Virtual Machine (VM)

Getting the Virtualization Software (Hypervisor) VirtualBox

Using the website VirtualBox or simple use the "window" below to browse the website ( and download the software )

Some Steps:




  • Look for the icon into your Applications (folder) and get the main interface of VirtualBox:


  • Now let's create a new VM entity by clicking New on the left corner:


  • For Memory Size I strongly suggest you to use 1024MB of RAM


  • For the Hard Drive creation, take the middle's option: " Create a virtual hard drive now "


  • For Hard drive file type take the default option " VDI "


  • For Storage on physical hard drive select " Dynamicaly allocated " (This is an smart option for developing)


  • For File location and size you will need to select a maximum size fro the virtual HD of at least 26GB


  • After those steps, your VM is created (well, an empty VM)
    Good VM-SL6 Configuration

Getting the Virtual-Machine-Scientific-Linux-6.6 ( VM-SL6 ) with the ATLAS Software

In order to obtain the VDI file of our VM-SL6, we need to be sure that our host system have space for that, so remember, at least 26GB of space should be reserved for this.
To download the - compressed - file just click here.

You can use the "window" below to get the VM-SL6

  • You can directly select the option of Open the file is you have it:


  • Unzip the VM-SL6

Screenshot_2015-02-03_15.08.26.png Screenshot_2015-02-03_15.28.18.png

  • Adding the VDI file of the VM-SL6 to the VirtualBox machine: You must click Settings on the up-left position of your VirtualBox window (the " Ingranaggio " icon)


  • Now in the new pop-up window, you must go to Storage ( 4th left to the right )


  • You will see on the right the Hard Disk and a small icon of a hard disk where if you click there, the system will give you two options. You have to select: Choose a virtual hard disk file...


  • And browse for the recent downloaded (and uncompressed) VDI file of the VM-SL6 :


  • Now say OK to the Settings window and Start (Avvia ) your VM-SL6 ( you will see something like this below )


IMPORTANT NOTE: To login the VM-SL6 use as username = adminuser and as password = adminuser
(This is your root password if you plan/need to do su and/or sudo ).

  • If you open a Firefox window, you will wet this presentation below, but where the only bookmark is the Tutorial that you are doing now! wink


- Open a new Terminal ( the icon is at the top... ) and do a ls command right there, you will get the into the list: (picture below)

  1. The two scripts to setup the AnalysisBase 2.0.24 and AnalysisBase 2.1.24 :
  2. The ATLAS folder where is the software and xAOD input we will use
  3. Other Standard Linux folders


  • Going into the ATLAS folder you will find the next relevant for us structure:
      ---- AnalysisBase     ## Our workspace place with the ATLAS Analysis software
            ---- 2.0.24
            ---- 2.1.24
      ---- roots              ## Our two possible ROOT versions, very up-to-date (February 2015) They are use to run 2.0.24 (ROOT5) and 2.1.24 (ROOT6) 
            ---- root-v5-34-24
            ---- root-v6-02-04
      ---- samples          ## The xAOD sample useful for tutorial and development, as you see (picture below) it's a real sample with 3GB size.
            ---- mc14_8TeV.160009.*ggH125_gamma*/
                    ---- AOD.01512140._000094.pool.root.1

  • You can see the behaivor of ROOT using the two versions (ROOT5 and ROOT6 here below) smile



  • Taking a look into the two AnalysisBase setup scripts mentioned before (using command more ) Yo can see how ROOT is sourced and RootCore (+ boost that is necessary to compile...)


  • An internal view of one of the AnalysisBase releases:


  • At this point you can start to work with the instructions in the Tutorial (copying and pasting instructions...)


  • You can take a look to the xAOD file too as it is mention in the tutorial, but browsing the file locally!


Note: You can install a Cloud client to keep a real time contact with your two machines.

  • Dropbox or Google Drive Client to share files between the VM-SL6 and your host OS:
    Screenshot_2015-02-03_16.32.37.png Screenshot_2015-02-03_16.34.04.png

Major updates:
-- ArturoS - 2015-01-30

%REVIEW% Never reviewed

Edit | Attach | Watch | Print version | History: r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r1 - 2015-10-05 - ArturoS
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Main All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright &© 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback