
- •5 лекция
- •ROOT
- •ROOT: справочная информация
- •ООП и классы С++
- •Указатели
- •Структура ROOT
- •Принятые в ROOT обозначения
- •Машинно-независимые типы данных
- •ROOT: начало работы
- •C/C++ интерпретатор CINT
- •Пример простейшей сессии: построение гистограммы значений, распределенных по Гауссу
- •Скрипты: неименованные скрипты
- •Скрипты: именованные скрипты
- •Преобразование HBOOK/PAW в ROOT
- •6 лекция
- •Гистограммы в ROOT
- •Создание гистограммы
- •Внесение значений в гистограмму
- •Рисование гистограммы, опции рисования
- •Пример создания, заполнения и рисования гистограммы
- •Информация, выводимая по умолчанию
- •Поле для рисования canvas
- •Пример. Сохранение изображения на диск
- •Сложение, деление и умножение гистограмм
- •Прочие аспекты работы с гистограммами
- •Фитирование гистограмм: FitPanel
- •Вывод результатов фита
- •Команды фитирования
- •Фитирование функцией, определенной пользователем
- •7 лекция
- •Сохранение гистограмм на диск
- •Работа с файлами: ROOT-директория
- •Работа с файлами
- •Сохранение гистограмм в файл
- •Двумерные гистограммы
- •Пример работы с 2D-гистограммой
- •Параметры рисования
- •Графики
- •Графики. Опции рисования
- •Таблицы цветов и стилей маркеров
- •Варианты рисования
- •Два графика на одной картинке
- •График с погрешностями
- •График с погрешностями
- •8 лекция
- •Деревья
- •Создание дерева и ветвей
- •Создание простейшего дерева
- •Информация о дереве
- •Просмотр содержимого дерева с помощью TBrowser
- •Чтение дерева
- •Чтение дерева. Пример скрипта
- •Результат выполнения скрипта
- •Анализ данных дерева: метод TTree::Draw

Информация о дереве
Вывести общую информацию о дереве
t1->Print()
root [] t1->Print()
******************************************************************************
информация |
|
|
|
|
|
|
|
|
|
|
|
|
|
* |
|
*Tree |
|
:t1 |
|
: Simple Tree |
|
|
|
|
|
|
|
||||
о дереве |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*Entries |
: |
10000 |
: Total = |
|
|
163008 |
bytes |
File Size = |
126349 * |
||||||
в целом |
|
|
|||||||||||||
* |
|
: |
|
: Tree compression factor |
= |
1.28 |
|
|
* |
||||||
|
|
|
|
|
|||||||||||
|
****************************************************************************** |
||||||||||||||
|
*Br |
0 |
:px |
|
: px/F |
|
|
|
|
|
|
|
|
* |
|
|
*Entries |
: |
10000 |
: Total |
Size= |
40675 |
bytes |
File Size |
= |
29710 * |
|||||
информация |
*Baskets |
: |
1 |
: Basket Size= |
32000 |
bytes |
Compression= |
1.08 |
* |
||||||
*............................................................................ |
|
|
|
|
|
|
|
|
|
|
|
|
|
* |
|
о ветвях |
... |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*Br |
3 |
:ev |
|
: ev/I |
|
|
|
|
|
|
|
|
|
* |
|
*Entries |
: |
10000 |
: Total |
Size= |
40675 |
bytes |
File Size |
= |
11231 * |
|||||
|
*Baskets |
: |
1 |
: Basket Size= |
32000 |
bytes |
Compression= |
2.85 |
* |
||||||
|
*............................................................................ |
|
|
|
|
|
|
|
|
|
|
|
|
|
* |

Информация об i-омвхождении в дерево
Вывести все значения, записанные в i-ом вхождении (событии)
t1->Show(i)
root [] t1->Show(151)
======> EVENT:151
px |
= -2.81273 |
|
py |
= -0.944246 |
|
pz |
= |
8.80302 |
ev |
= |
151 |

Просмотр содержимого дерева с помощью TBrowser
Чтобы запустить TBrowser, создайте объект этого типа:
root[] TBrowser b
ветви дерева t1
дерево t1

Чтение дерева
Прежде всего, следует описать переменные, в которые будут считываться значения
Затем указать адреса переменных, в которые будут считываться ветви с помощью метода TTree::SetBranchAddress
SetBranchAddress("px",&px)
Два параметра метода
Имя ветви
Адрес переменной, в которую следует записывать считанные данные
Общее число вхождений в дерево TTree::GetEntries()
Чтение переменных происходит по команде TTree::GetEntry(i)
i — номер вхождения, которое необходимо считать
Следующий скрипт иллюстрирует процесс чтения дерева