You are here

ROOT Training Proposal

ROOT Basic Course

Training category:

Technical

Competencies

  • Information Technologies
  • Using Software Packages
  • Physics Analysis

Target population

  • mainly physicists, but also engineers
  • 20-30 participants

Prerequisites

  • Basic programming skills
  • Good knowledge of the C++ language
  • Basic knowledge of Python language

Objectives

  • Acquire basic knowledge and experience in using the ROOT data analysis framework.

Language

English

Duration of the course or tutorial

2 days (16 hours)

Price

To be discussed

Contact names

Pere Mato, Danilo Piparo

Synopsis

Organized in modules of 30 and 60 minutes with introduction of concepts supported by slides followed by practical exercises. The following modules will part of the Basic course:

  • Introduction -- about this course; what is ROOT?; usage patterns and example applications; structure and elements of ROOT; setting up the exercise environment
  • The C++ Interpreter -- the ROOT prompt; ROOT as a Calculator; interpreter commands; macros and compilation against ROOT libraries; exercises
  • Histograms and Functions -- histograms; functions; plotting: styles, colours, markers and fonts; Graphs, Axis, Legends; basic interaction with the Canvas; basic fitting and parameter estimation; exercises
  • Working with Files -- I/O introduction; write and read objects; elements of file structure and format; the TBrowser; exercises
  • Working with Trees -- storage options: row- and column-wise; creating trees; reading trees withTTreeReader; interactive analysis with TTree::Draw(); exercises
  • Fitting -- introduction to Fitting; building complex fit functions; interface to Minimization; common Fitting problems; using the ROOT Fit GUI; random number generation; exercises
  • Python Interface -- crash course to Python for C++ programmers; mapping C++ to Python; Histograms and Fitting; working with Trees; exercises
  • Graphical User Interface -- the ROOT GUI component; signal-slot; elements of Qt; the importance of the event loop; buttons, menus and widgets; introducing httpserver and javascript; exercises
  • Developing packages using ROOT -- CMake interface; installation considerations; exercises

ROOT Advanced Analysis Course

Training category:

Technical; Physics

Competencies

  • Information Technologies
  • Using Software Packages
  • Physics Analysis

Target population

  • mainly physicists, but also engineers
  • 20-30 participants

Prerequisites

  • ROOT Basic Course
  • Good programming skills
  • Good knowledge of the C++ language
  • Basic knowledge of Python language
  • Knowledge of CMake desirable

Objectives

Acquire more advanced knowledge and experience in using the ROOT data analysis framework and statistical and multi-variate analysis tools deivered with the ROOT package.

Language

English

Duration of the course or tutorial

1 days (8 hours)

Price

To be discussed

Contact names

Pere Mato, Lorenzo Moneta

Synopsis

Organized in modules of 30 and 60 minutes with introduction of concepts supported by slides followed by practical exercises. The following modules will part of the Advanced Analysis course:

  • RooFit: Rich Modelling -- Architecture of the sub-package and review of the basic functionality; differences and commonalities with the ROOT approach to fitting; creation and use of models; model and data persistification: the RooWorkspace; achieve complexity composing simple models"
  • RooStats and advanced statistical inference techniques -- Elements of frequentist and Bayesian analysis; confidence and credibility interval estimation tools; hypothesis testing; the hist factory; exercises
  • Multivariate Analysis -- overview of multivariate analysis; the TMVA package and provided classification techniques ; neural networks and Boosted Decision Trees; exercises
  • The Parallel ROOT Facility: PROOF -- Parallel processing in scientific computing: the role of the data; multi processing and multithreading approach; architectural overview of PROOF; ProofLite; formulating an analysis with TSelector; exercises

ROOT Advanced Development Course

Training category:

Technical; Physics

Competencies

  • Information Technologies
  • Using Software Packages
  • Physics Analysis

Target population

  • mainly physicists, but also engineers
  • 20-30 participants

Prerequisites

  • ROOT Basic Course
  • Good programming skills
  • Good knowledge of the C++ language
  • Basic knowledge of Python language
  • Knowledge of CMake desirable

Objectives

Acquire more advanced knowledge and experience in using the ROOT to build large data processing applications and data analysis and visualization frameworks.

Language

English

Duration of the course or tutorial

1 days (8 hours)

Price

To be discussed

Contact names

Pere Mato, Danilo Piparo

Synopsis

Organized in modules of 30 and 60 minutes with introduction of concepts supported by slides followed by practical exercises. The following modules will part of the Advanced Development course:

  • Exploring the ROOT core -- the ROOT type system; dictionaries, selection, autoloading; controlling the JIT engine and advanced interpreter features ; the TApplication; exercises
  • Geometry - the role of a geometry in HEP; simulation and reconstruction of acquired collision data ; the ROOT geometry component: TGeo; materials and cross sections ; navigation; exercises
  • Building blocks for a modern Event Display application -- event display for analysis and outreach ; the TEve ROOT component; visualise and inspect a set of solids; particle collisions and full detector; exercises
  • Httpserver --starting the HTTP server; registering objects; command interface; configuring user access; using Fast CGI interface; integration with existing applications; data access from command shell; exercises
  • JSROOT -- Browsing ROOT files in JSROOT; data monitoring with JSROOT; the JSROOT API; exercies
  • ROOTaaS -- Introduction to the ROOT as a service concept