- ROOT
Infobox_Software
name = ROOT
caption = Example ROOT plot showing regions of interest in a 2D distribution
developer =CERN
latest_release_version = 5.20/00
latest_release_date =June 25 th,2008
operating_system =Cross-platform
genre =Data analysis
license = LGPL/GPL
website = http://root.cern.ch/ROOT is an object-oriented program and library developed by
CERN . It was originally designed forparticle physics data analysis and contains several features specific to this field, but it is also commonlydubious used in other applications such asastronomy anddata mining .Description
Development was initiated by René Brun and Fons Rademakers in 1994. ROOT is written in
C++ . Some parts are published under the LGPL, while others are based on GPL software and thus are also published under the terms of theGNU General Public License (GPL). It providesplatform independent access to a computer's graphics subsystem andoperating system using abstract layers. Parts of the abstract platform are: agraphical user interface and a GUI builder, container classes, reflection, a C++ script andcommand line interpreter (CINT ), objectserialization and persistence.The packages provided by ROOT include those for
* "histogram ming" and "graphing" to visualize and analyze distributions and functions,
* "curve fitting " (regression analysis) and minimization of functionals,
* "statistics tools" used fordata analysis ,
* "matrix algebra",
* "four-vector computations", as used inhigh energy physics ,
* standard "mathematical functions",
* "multivariate data analysis ", e.g. usingneural networks ,
* "image manipulation", used e.g. to analyzeastronomical pictures,
* access to "distributed data" (in the context of the Grid),
* "distributed computing ", to parallelize data analyses,
* "persistence andserialization of objects", which can cope with changes in class definitions of persistent data,
* "access todatabases ",
* 3D visualizations (geometry)
* creating files in various "graphics formats", likePostScript ,JPEG , SVG,
* interfacing Python and Ruby code in both directions,
* interfacing Monte Carloevent generator s.A key feature of ROOT is a data container called "tree", with its substructures "branches" and "leaves". A tree can be seen as a sliding window to the raw data, as stored in a file. Data from the next entry in the file can be retrieved by advancing the index in the tree. This avoids memory allocation problems associated with object creation, and allows the tree to act as a lightweight container while handling buffering invisibly.
ROOT's focus on performance is caused by the amount of data that the
Large Hadron Collider 's experiments will collect, estimated to severalpetabyte s per year. Physicists are expected to analyze this data using ROOT. ROOT is currently mainly used indata analysis anddata acquisition inhigh energy physics experiments — most current experimental plots and results are obtained using ROOT.The inclusion of the CINT C++ interpreter makes this package very versatile as it can be used in interactive, scripted and compiled modes in a manner similar to commercial products like
Matlab .Applications of ROOT
Several particle physics experiments have written software based on ROOT, often infavor of using more generic solutions (i.e. using ROOT containers instead of STL).
* Some of the running particle physics experiments using software based on ROOT
**BaBar
**CB-ELSA/TAPS
**CDF
** COMPASS
**DZero
** H1
**MINOS
**PHENIX
**PHOBOS
** STAR
**ZEUS
** CRESST
* Future particle physics experiments currently developing software based on ROOT
** ALICE
** ATLAS
** CMS
**LHCb
**NOνA
** PANDA* Astroparticle physics projects using ROOT
** AMS
**GLAST
** ICECUBE
**H.E.S.S.
**MAGIC
**Milagro (experiment)
**Pierre Auger Observatory
**VERITAS
**PAMELA See also
*
HippoDraw — an alternative C++-based data analysis system
*Java Analysis Studio — a Java-based AIDA-compliant data analysis system
*R programming language
*AIDA (computing) — open interfaces and formats for particle physics data processing
* PAW
*IGOR Pro
*Scientific computing
*OpenDX External links
* [http://root.cern.ch/ The ROOT System Home Page]
* [http://root.cern.ch/root/roottalk/AboutRootTalk.html ROOT users mailing list]
* [http://root.bnl.gov/ The Qt/ROOT System Home Page]
* [http://www-win.gsi.de/go4/ GSI Object Oriented On-line Off-line system] , an alternative GUI for ROOT based on QT/ROOT.
* [http://openscientist.lal.in2p3.fr/ OpenScientist] a C++-based data analysis system, AIDA-compliant.
* [http://roofit.sourceforge.net/ The RooFit Toolkit for Data Modeling] , an extension to ROOT to facilitatemaximum likelihood fits
* [http://www.desy.de/~salvaire/root_wrapper.html Perl Binding using SWIG]
* [http://mirror.phy.bnl.gov/debian-root/ubuntu/ ROOT Repository] for Ubuntu
* [http://mirror.phy.bnl.gov/debian-root/ ROOT Repository] forDebian
Wikimedia Foundation. 2010.