User Tools

Site Tools


root:root

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
root:root [2017/07/11 11:16] iwnroot:root [2017/09/05 15:04] iwn
Line 2: Line 2:
  
 ''ROOT'' is a framework based on ''C++'' that is specialized in processing data in High Energy Physics. Some of its central classes are ''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), +  * ''[[https://root.cern.ch/doc/master/classTTree.html|TTree]]'' to store data; typically variables are stored in branches for each entry/event (e.g. a proton-proton collision), 
-  * ''TH1F'', ''TH1D'', ... to make histograms, +  * ''[[https://root.cern.ch/doc/master/classTH1.html|TH1]]'' to make histograms, 
-  * ''TLorentzVector'' to make a four-vectors that you can boost, or add together with simply ''+'', +  * ''[[https://root.cern.ch/doc/master/classTLorentzVector.html|TLorentzVector]]'' to make a four-vectors that you can boost, or add together with simply ''+'', 
-  * ''TBrowser'' to browse ''ROOT'' files containing trees, histograms, ...+  * ''[[https://root.cern.ch/doc/master/classTBrowser.html|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. 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.
  
Line 14: Line 14:
   * [[https://www.nevis.columbia.edu/~seligman/root-class/|ROOT tutorial by Dr. Seligman]] is very nice; it covers the all basics of ''ROOT'' in both ''C++'' and ''python'' and teaches how to use the reference manual to solve problems by yourself.   * [[https://www.nevis.columbia.edu/~seligman/root-class/|ROOT tutorial by Dr. Seligman]] is very nice; it covers the all basics of ''ROOT'' in both ''C++'' and ''python'' and teaches how to use the reference manual to solve problems by yourself.
   * [[https://indico.desy.de/getFile.py/access?contribId=2&resId=0&materialId=slides&confId=11460|These introductory slides to ROOT]] also covers ''ROOT'' in both ''C++'' and ''python'', and is shorter. It uses these [[http://www.desy.de/~clseitz/Students/TeraScale/|files]].   * [[https://indico.desy.de/getFile.py/access?contribId=2&resId=0&materialId=slides&confId=11460|These introductory slides to ROOT]] also covers ''ROOT'' in both ''C++'' and ''python'', and is shorter. It uses these [[http://www.desy.de/~clseitz/Students/TeraScale/|files]].
-  * [[https://root.cern.ch/root/html/tutorials/|The official ROOT examples]] (which should also be available on your machine in ''$ROOTSYS/tutorials/'' after installation of ''root''). +  * [[https://root.cern.ch/root/html/tutorials/|The official ROOT examples]] and [[https://root.cern/doc/master/group__Tutorials.html|tutorials]] (which should also be available on your machine in ''$ROOTSYS/tutorials/'' after installation of ''root''). 
-  * [[https://root.cern.ch/root/htmldoc/guides/users-guide/ROOTUsersGuide.html|Official ROOT user guide]]. +  * [[https://root.cern.ch/root/html/ClassIndex.html|The official ROOT reference manual]] (a.k.a. class index) lists all available classes and their methods, which is really useful to keep handy
-  * [[https://root.cern.ch/root/html/ClassIndex.html|The reference manual]] (a.k.a. class index) lists all available classes and their methods, which is really useful to keep handy.+  * [[https://root.cern.ch/root/htmldoc/guides/users-guide/ROOTUsersGuide.html|The official ROOT user guide]] ([[https://root.cern.ch/root-user-guides-and-manuals|index of older versions]]).
   * [[root:pyROOT|Some useful pyROOT examples]]:   * [[root:pyROOT|Some useful pyROOT examples]]:
     * [[root:pyroot_TTree|handling TTree trees]],     * [[root:pyroot_TTree|handling TTree trees]],
     * [[root:pyroot_TH1|handling TH1 histograms]],     * [[root:pyroot_TH1|handling TH1 histograms]],
-    * [[root:pyroot_TFile|handling TFile files]].+    * [[root:pyroot_TFile|handling TFile files and TDirectory directories]], 
 +    * [[https://github.com/clelange/roofit|RooFit]] and [[https://github.com/clelange/roostats|RooStats]] tutorials, [[https://www.nikhef.nl/~vcroft/GettingStartedWithRooFit.html|RooFit manual]]. 
 +  * [[root:fit|More on fitting in ROOT]]. 
   * [[https://wiki.physik.uzh.ch/lhcb/root:root|Some useful and advanced examples made by the LHCb group]].   * [[https://wiki.physik.uzh.ch/lhcb/root:root|Some useful and advanced examples made by the LHCb group]].
root/root.txt · Last modified: 2017/09/07 18:46 by iwn