МИВК Многофункциональный
информационно-вычислительный
комплекс ОИЯИ

EN

ROOT

  

 
ROOT - пакет объектно-ориентированных программ и библиотек, разработанных в Европейском центре ядерных исследований. Пакет был разработан специально для использования в качестве платформы обработки экспериментальных данных физики высоких энергий и содержит специфичные для этой области продукты, однако также может быть использованы для анализа других данных, например, в астрономии. ROOT имеет графический интерфейс пользователя, классы-контейнеры, скриптовый язык на основе C++, командный интерпретатор (CINT), систему долговременного сохранения данных.
Научные инструменты и компьютерное имитационное моделирование порождают громадные объемы данных, для анализа и организации которых требуются новые научные методы. Каждый год объемы данных почти удваиваются. Поскольку новые научные инструменты обладают исключительной точностью, так же быстро улучается качество данных. Для анализа этих данных с целью нахождения тонких эффектов, упущенных в предыдущих исследованиях, требуются алгоритмы, которые одновременно могут работать с огромными наборами данных и обнаруживать при этом очень тонкие эффекты. В настоящее время ROOT стал практически стандартом программного обеспечения для современных ускорительных экспериментов.
 
Пакеты, включённые в ROOT, содержат:
  • средства для создания гистограмм и графиков функций для визуализации и анализа вероятностных распределений и функций;
  • средства «подгонки» (фитирования) теоретических кривых под экспериментальные данные и минимизации функций (для подборки наиболее простой зависимости, описывающей экспериментальные данные);
  • инструменты статистического анализа;
  • инструменты матричной алгебры;
  • средства для четырёхвекторных вычислений (четырёхмерное пространство Минковского удобно применяется в физике высоких энергий);
  • стандартные математические функции;
  • инструменты многовариантного анализа данных, в частности использование нейронных сетей;
  • средства обработки изображений, используемые, например, для анализа астрономических снимков;
  • средства доступа к распределённым данным (в контексте таблиц баз данных);
  • инструменты распределённых вычислений, параллелизации обработки данных;
  • средства сериализации и долговременного сохранения объектов;
  • инструменты доступа к базам данных;
  • средства геометрической 3D-визуализации;
  • инструменты для создания файлов в различных графических форматах, таких как PostScript, JPEG, SVG;
  • двусторонние интерфейсы к языкам Python и Ruby (возможно использование средств ROOT для кода на Python или Ruby и использование модулей, написанных на Python или Ruby, в ROOT);
  • интерфейсы к генераторам Монте-Карло событий физики элементарных частиц.