ROOT
is a framework based on C++
that is specialized in processing data in High Energy Physics. Some of its central classes are
TTree
to store data; typically variables are stored in branches for each entry/event (e.g. a proton-proton collision),TH1
to make histograms,TLorentzVector
to make a four-vectors that you can boost, or add together with simply +
,TBrowser
to browse ROOT
files containing trees, histograms, …
Once installed, you can use its extensive libraries in your C++
code or in the ROOT
command line. If you don't like C++
or pointers, it is also possible to use ROOT
in python
, a.k.a. pyROOT
. This is definitely a good choice for doing simple things, such as making plots.
Always keep the the reference manual (a.k.a. class index) handy: it lists all the available classes and their methods, sometimes even examples.
Helpful materials to get started:
ROOT
in both C++
and python
and teaches how to use the reference manual to solve problems by yourself.ROOT
in both C++
and python
, and is shorter. It uses these files.$ROOTSYS/tutorials/
after installation of root
).
Protip: to quickly open root files in ROOT
's TBrowser
, use this predefined function, together with this macro:
function TBrowse { root -l "$@" ~/macros/myMacro.C; }