ROOT

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
ROOT
Rootdrawing.gif
2D ROI.jpg
Пример графика построенного ROOT, который показывает интересные регионы в 2D распределении
Тип

Анализ данных

Автор

ЦЕРН

Разработчик

CERN

Написана на

C++

Операционная система

Cross-platform

Аппаратная платформа

кроссплатформенное программное обеспечение

Последняя версия

6.00/00 (May 29, 2014)

Лицензия

LGPL/GPL

Сайт

root.cern.ch

ROOT — пакет объектно-ориентированных программ и библиотек, разработанных в Европейском центре ядерных исследований. Пакет был разработан специально для использования в качестве платформы обработки экспериментальных данных физики высоких энергий и содержит специфичные для этой области продукты, однако также может быть использованы для анализа других данных, например, в астрономии.

Описание[править | править вики-текст]

CERN поддерживал свою программную библиотеку, написанную на языке Фортран 77; разработка и поддержка была прекращена в 2003 году в пользу ROOT, написанного на C++.

Разработка ROOT была инициирована сотрудниками CERNа Рене Брюном и Фонсом Рэйдмэйкерсом в 1994 году. Некоторые части пакета опубликованы под лицензией LGPL, некоторые — под GPL, таким образом весь проект базируется на свободном программном обеспечении. Он предоставляет кроссплатформенный интерфейс к графической подсистеме и операционной системе используя механизмы абстракции данных. Частями абстрактной платформы являются:

Пакеты, включённые в ROOT, содержат:

Ключевой возможностью пакета ROOT является специальный контейнер данных, называемый деревом (Tree), вместе с его подмножествами ветвями (Branch) и листьями (Leaf). Дерево может быть представлено как удобное средство чтения и записи данных в файле. Следующий элемент данных, записанный в файле, может быть получен инкрементированием индекса дерева. Такой подход позволяет избежать проблем с выделением памяти при создании объектов, и даёт возможность дереву выступать в качестве «лёгкого» контейнера при буферизации данных.

ROOT разрабатывался как высокопроизводительная вычислительная библиотека, необходимая для обработки данных Большого Адронного Коллайдера, поток которых достигает нескольких петабайт в год. С 2009 года ROOT используется в подавляющем большинстве экспериментов физики высоких энергий; абсолютное большинство современных результатов и иллюстраций в этой области науки получено именно с использованием ROOT.

Включение в пакет интерпретатора C++ CINT значительно увеличило гибкость пакета, так как позволило использовать средства ROOT в интерактивном режиме или посредством написания скриптов, что сделало его похожим на MATLAB.

Основная критика ROOT связана с утверждениями о том, что для начинающих пользователей достаточно сложно освоить этот продукт, его широкие возможности и средства[1]. Периодически эти проблемы обсуждаются пользователями и разработчиками ROOT в специальном списке рассылки[2][3].

Применения ROOT[править | править вики-текст]

Многие экспериментальные лаборатории физики высоких энергий используют программное обеспечение, основанное на ROOT, иногда вопреки более стандартным программным решениям (например, использование контейнеров ROOT вместо классов STL).

Программное обеспечение, основанное на ROOT, используется в экспериментах:

Будущие эксперименты, которые на данный момент разрабатывают своё программное обеспечение с использованием ROOT:

Астрофизические проекты, использующие ROOT:

См. также[править | править вики-текст]

Примечания[править | править вики-текст]

Ссылки[править | править вики-текст]