44fd391905367aafb28727c77d1aa2cd.ppt
- Количество слайдов: 18
Немного об обработке данных Введение в root Основной объект изучения почти любого эксперимента в физике частиц – события. root – программа ориентированная на обработку событий в C++ Сайт: root. cern. ch Установка: в простейшем случае скопировать готовые файлы и использовать скрипт thisroot. sh в начале сеанса. Если нет подходящей версии – скомпилировать из исходников самомтоятельно. Работает и в Linux, и в Windows. Игорь Алексеев, ИТЭФ
До root — когда основным языком программирования был FORTRAN. . . Библиотеки: HBOOK – работа с гистограммами и n-tuple MINUIT – для поиска минимумов и фитирования ZEBRA – для хранения данных HPLOT – графические примитивы и представление FFREAD – ввод параметров KUIP – интерпретатор командных файлов PAW – Physics Analysis Workstation – для интерактивной работы Игорь Алексеев, ИТЭФ
Структура Root – это иерархическая коллекция из более 1200 C++ классов и интерпретатор C++ cint Основные категории классов: Base – базовые классы, используемые для создания практически всех объектов root'а и взаимодействия с операционной системой Hist – классы для построения гистограмм Tree и Ntuple – для хранения данных “пособытийно” 2 D и 3 D Graphics – графические примитивы Minimization – для поиска минимумов Math, matrix, physics – набор классов с математическими функциями, работой с матрицами и физическими векторами, типа преобразования Лоренца и т. д. Игорь Алексеев, ИТЭФ
Первое знакомство Игорь Алексеев, ИТЭФ
Картинку можно спасти в различных графических форматах Картинку можно редактировать, масштабировать, трехмерные картинки можно крутить
Графики Игорь Алексеев, ИТЭФ
Гистограммы Игорь Алексеев, ИТЭФ
Гистограммы бывают 1, 2, 3 и многомерные, с равномерным и неравномерным бинированием. Гистограммы можно фитировать, сравнивать и делать с ними арифметические опреации.
Деревья Игорь Алексеев, ИТЭФ
Глобальные переменные g. ROOT, g. Style, g. Pad. . . Довольно много управления в root может осуществляться с помощью глобальных переменных. g. Style — позволяет менять стиль изображения для всех объектов, кроме тех, для которых данный параметр был задан явно. Т. е. если изменить стиль с помощью g. Style, он изменится и для уже существующих и для вновь создаваемых объектов. Например, g. Style->Set. Opt. Fit() - заставляет выводить результаты фитирования при отрисовке гистограммы и т. д. g. ROOT — дает доступ к корневым каталогам и т. д. Например, получить указатель на объект по его имени: g. ROOT->Find. Object( «somename» ) Игорь Алексеев, ИТЭФ
Browser Игорь Алексеев, ИТЭФ
Файлы Создание файла: TFile f( «filename. root» , «RECREATE» ); TTree t(. . . ); TH 1 D h(. . . ); . . . f. cd(); t. Write(); h. Write(); f. Close(); Чтение файла: TFile f( «filename. root» ); TTree *t = (TTree *) f. Get( «treename» ); TH 1 D *h = (TH 1 D *) f. Get( «histname» ); . . . f. Close(); Игорь Алексеев, ИТЭФ
Макросы и компиляция. Команды можно записать в файл, заключив их в фигурные скобки. a. C: { TF 1 f( «F» , «sin(x)/x» , -10, 10); f. Draw(); }. x a. C — исполнить макрос. Можно записать в файл несколько функций: b. C: double f 1(. . . ) {. . . } void f 2(. . . ) {. . . } void b() { TF 1 *f = new TF 1( «F» , «sin(x)/x» , -10, 10); f->Draw(); }. L b. C — загрузить «библиотеку» . f 1(. . . ) - вызвать функцию. L b. C+ — загрузить скомпилированную «библиотеку» . Игорь Алексеев, ИТЭФ
Создание своей отдельной программы Достаточно создать Makefile вида: LDLIBS = ($shell root-config --libs) CXXFLAGS = ($shell root-config —cflags) Игорь Алексеев, ИТЭФ
44fd391905367aafb28727c77d1aa2cd.ppt