- •5 лекция
- •ROOT
- •ROOT: справочная информация
- •ООП и классы С++
- •Указатели
- •Структура ROOT
- •Принятые в ROOT обозначения
- •Машинно-независимые типы данных
- •ROOT: начало работы
- •C/C++ интерпретатор CINT
- •Пример простейшей сессии: построение гистограммы значений, распределенных по Гауссу
- •Скрипты: неименованные скрипты
- •Скрипты: именованные скрипты
- •Преобразование HBOOK/PAW в ROOT
- •6 лекция
- •Гистограммы в ROOT
- •Создание гистограммы
- •Внесение значений в гистограмму
- •Рисование гистограммы, опции рисования
- •Пример создания, заполнения и рисования гистограммы
- •Информация, выводимая по умолчанию
- •Поле для рисования canvas
- •Пример. Сохранение изображения на диск
- •Сложение, деление и умножение гистограмм
- •Прочие аспекты работы с гистограммами
- •Фитирование гистограмм: FitPanel
- •Вывод результатов фита
- •Команды фитирования
- •Фитирование функцией, определенной пользователем
- •7 лекция
- •Сохранение гистограмм на диск
- •Работа с файлами: ROOT-директория
- •Работа с файлами
- •Сохранение гистограмм в файл
- •Двумерные гистограммы
- •Пример работы с 2D-гистограммой
- •Параметры рисования
- •Графики
- •Графики. Опции рисования
- •Таблицы цветов и стилей маркеров
- •Варианты рисования
- •Два графика на одной картинке
- •График с погрешностями
- •График с погрешностями
- •8 лекция
- •Деревья
- •Создание дерева и ветвей
- •Создание простейшего дерева
- •Информация о дереве
- •Просмотр содержимого дерева с помощью TBrowser
- •Чтение дерева
- •Чтение дерева. Пример скрипта
- •Результат выполнения скрипта
- •Анализ данных дерева: метод TTree::Draw
5 лекция
Изучение программ, обеспечивающих накопление экспериментальных данных, их обработку и анализ, графическое представление
ROOT
Элементы С++
Структура пакета ROOT
Принятые обозначения, типы данных
Скрипты:
неименованные
именованные
Преобразование файлов PAW в ROOT-файлы
ROOT
PAW реализован на Fortran. К середине 90-х этот язык программирования начинает устаревать
В это же время набирает силу парадигма объектно-ориентированного программирования и язык программирования C++. Создание ускорителя LHC требует программного обеспечения, которое будет способно справиться с колоссальными объемами данных
В 1994 году сотрудники Европейской организации ядерных исследований (CERN) Рене Бран и Фонс Ридмайкерс приступают к созданию программного пакета, реализованного на принципах ООП. Итогом этой работы становится программный пакет ROOT
An Object Oriented Data Analysis Framework
Объектно-ориентированная среда для анализа данных
В настоящее время ROOT стал практически стандартом программного обеспечения для современных ускорительных экспериментов
ROOT: справочная информация
Web-сайт проекта
http://root.cern.ch
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
о |
|
|
|
|
|
|
|
|
|
|
|
|
|
н |
||
|
|
|
|
|
|
|
|
|
|
|
а |
|
|||
|
|
|
|
|
|
|
|
|
в |
|
|
|
|||
|
|
|
|
|
|
|
о |
|
|
|
|
|
|||
|
|
|
|
|
|
д |
|
|
|
|
|
|
|
||
|
|
|
|
|
н |
|
|
|
|
|
|
|
ю |
||
|
|
|
|
е |
|
|
|
|
|
|
|
|
|||
|
|
|
м |
|
|
|
|
|
|
|
и |
||||
|
|
|
|
|
|
|
|
н |
|
|
|||||
|
|
о |
|
|
|
|
е |
|
|
|
|
||||
|
к |
|
|
|
|
|
|
|
|
|
|||||
е |
|
|
|
|
|
т |
|
|
|
|
|
|
|||
|
|
|
|
ч |
|
|
|
|
|
|
|
|
|||
р |
|
|
|
ро |
|
|
|
|
|
|
|
|
|
||
|
|
|
п |
|
|
|
|
|
|
|
|
|
|
|
|
|
к |
|
|
|
|
|
|
|
|
|
|
|
|
Руководство пользователя
http://root.cern.ch/root/doc/RootDoc.html
Справочное руководство (описание классов ROOT)
http://root.cern.ch/root/Reference.html
Раздел HOWTO’s
http://root.cern.ch/root/HowTo.html
ООП и классы С++
Общая идея объектно-ориентированного программирования: моделирование окружающего мира как совокупности объектов, взаимодействующих друг с другом
Поддержка ООП в С++ реализуется с помощью классов
Класс — это тип данных, определяемый пользователем
Класс представляет собой модель реального объекта в виде данных и функций для работы с этими данными
Функции класса называются методами, а данные — полями
Принадлежность метода конкретному классу обозначается так:
MyClass::DoSomething
DoSomething это метод класса MyClass
Объект — это конкретный экземпляр, представитель данного класса