Введение в обработку данных с помощью пакета ROOT

Introduction to data analysis with ROOT

Аннотация курса

Количество данных, набираемых в современных экспериментах физики высоких энергий, ядерной физики и астрофизики, стало настолько большим, что потребовало разработки программного обеспечения для обработки, математического и физического анализа, хранения и представления информации. Де-факто таким пакетом является ROOT, разработанный в ЦЕРН. В рамках курса разбираются методы представления данных в виде гистограмм, графов и функций. Изучаются методы определения параметров распределений при помощи пакетов минимизации параметров, способы хранения данных в физике ядра и частиц, в том числе больших данных (big data). The course covers the ways of data and analysis results visualization via histograms, graphs, and functions, as well as typical approaches to store and process large-scale (>petabyte) data sets using the ROOT package developed by CERN.
Занятия проводятся в компьютерном классе
Презентация дисциплины

Авторы и/или преподаватели

Нигматкулов Г.А.
Нигматкулов Григорий Александрович
Ученая степень
кандидат физико-математических наук
Об авторе/преподавателе

Ассистент Отделения института ядерной физики и технологий (кафедра экспериментальной ядерной физики и космофизики (№7). Заместитель координатора физического анализа эксперимента STAR на Коллайдере Релятивистских Тяжелых Ионов / Assistant professor of Institute of Nuclear Physics and Engineering (Department (#7) of Experimental Nuclear Physics and Cosmophysics ). Deputy Physics Analysis Coordinator of the STAR experiment at Relativistic Heavy Ion Collider (RHIC)

Темы курса

1. Общие сведения о пакете ROOT / General overview of the ROOT package
Рассмотрены основные примеры использования и возможности ROOT. / The inroductory lecture covers the main features of CERN ROOT and its applications.
2. Основы С++ и ОС Linux / Basics of C++ and OS Linux
Ознакомление с операционной системой Linux. Типы данных, переменные, функции, указатели и классы в C++. Компиляция и запуск программ. / Review of Linux. Data types, variables functions, pointers and classes in C++.
3. Внутренняя структура ROOT / ROOT internal structure
Работа в режиме интерпретатора, типы данных, макросы, генераторы случайных чисел, гистограммы. / How to run processing in the interpreter mode, data types, macroses, random number generators, histograms.
4. Гистрограммы и канвасы / Histograms and canvases
Канвасы: создание, сохранение. Гистограммы: создание, заполнение, визуализация, сохранение / This week we will discuss how to create and save canvases. Histograms: what is, why do we need it for, how to create, fill, draw and save histograms.
5. Макросы / Macroses
Загрузка, исполнение, компиляция ROOT макросов. / How to load, execute and compile ROOT macro.
6. Маркеры, цвета, линии и оси / Marker, colour, line and axis
Как изменить тип и размер маркеров и линий, изменить свойства осей, изменение цвета. / We will discuss how to change marker and line types and sizes, line and axis properties, how to change object colours.
7. Графы / Graphs
Графы, мультиграфы, сложение и деление гистограмм. / This week we will discuss graphs and multigraphs, how to use them, how to add and divide histograms.
8. Функции / Functions
Функции, изменение их свойств, фит гистограмм и графов. / A function object and how to change its properties will be discussed, as well as how to fit histograms and graphs.
9. Легенды и LaTeX в ROOT / Legends and LaTeX in ROOT
Будет разобрано как создавать и добавлять легенды, а также подписи с использованием LaTeX. / This week will cover how to create and add legends to objects, and how to use builtin LaTeX package.
10. Чтение и запись файлов / ROOT I/O
Чтение и запись файлов. / The ROOT I/O scheme will be discussed. Examples of how to create, read and write files will be discussed.
11. Деревья 1 / Trees 1
Что такое N-тюпли, деревья и ветви. Основы анализа данных. / We will discuss what is N-tuple, tree and branch. The basics of the physics analysis using trees will be discussed.
12. Деревья 2 / Trees 2
Будут рассмотрены примеры хранения простых переменных, структур и классов. / This lesson covers the ways of storing basic data types, structures and classes in trees.
13. Анализ данных в физике высоких энергий 1 / Data analysis in High Energy Physics 1
Компиляция классов в ROOT, система эволюции классов, чтение и обработка данных. / We will discuss how to compile ROOT classes, class evolution system, how to read and process data.
14. Анализ данных в физике высоких энергий 2 / Data analysis in High Energy Physics 2
Обработка данных с использование метода MakeClass, создание специализированных классов для хранения больших данных. / This week we will discuss how to process data using MakeClass method, how to develop classes dedicated to store Big Data.
15. Математические и физические пакеты в ROOT / Mathematical and physical packages in ROOT
На данном занятии будут рассмотрены вектора, матрицы, и другие математические библиотеки, используемые в анализе данных. / Vectors, matrices and other packages that can be used in the analysis will be discussed.
16. Основы статистического анализа в физике высоких энергий / The basics of the statistical analysis in high energy physics
Будут рассмотрены основы статистического анализа и теории вероятностей. This week the basics of the statistical analysis (mean, standarad deviation, and higher moments) as well as statistical uncertainty and error propagation will be discussed.