ROOT
ROOT — об'єктно-орієнтована програма та бібліотека, розроблена в ЦЕРНi (фр. CERN) для аналізу та візуалізації даних, котрі характерні для ядерної фізики, фізики елементарних частинок та релятивістської фізики високих енергій, однак зараз широко використовується в інших областях для аналізу та різноманітної обробки даних. Майже стандартно застосовується наприклад в обробці експериментальних даних в атомній та молекулярній фізиці, лазерній фізиці, а також в астрономії. ІсторіяВпродовж багатьох років в ЦЕРНі було розроблено на фортрані дуже багато специфічних бібліотек для аналізу різноманітних даних з фізики високих енергій та елементарних частинок. Однак подальший розвиток, абстракція та узагальнення бібліотек зіткнулися з проблемою росту, оскільки тодішній стандарт фортрану та компілятори не дозволяли ефективно використовувати об'єктно-орієнтовану модель програмування. Також висловлювались сумніви, чи наявне програмне забезпечення дозволить ефективно аналізувати гігантський потік даних з детекторів LHC. Розвиток ROOT бере свій початок від розробників Рене Брюн (René Brun) та Фонс Радемекерз (Fons Rademakers), котрі ініціювали цей проект в 1994 році (використовуючи мову C++) як заміну бібліотеки PAW[en], котра раніше також була створена в ЦЕРН. Розвиток PAW було припинено на користь ROOT у 2003 році. ROOT вийшов під ліцензією LGPL/GPL i забезпечує незалежний від платформи доступ до операційної системи і зокрема до графічної підсистеми комп'ютера за допомогою стандартних абстрактних інтерфейсів. Складовими абстрактної платформи є: графічний інтерфейс користувача та конструктор для нього, найрізноманітніші класи-контейнери, підтримка рефлексії (відображення), серіалізації об'єктів та персистентності. МожливостіROOT надає доступ до десятків різноманітних спеціалізованих пакетів у вигляді об'єктної моделі:
ROOT був вибраний внаслідок високої ефективності обчислень як основний інструмент для обробки даних експериментів на Великому адронному колайдері, котрих набігає у декілька десятків петабайт на рік. Включення інтерпретатора CINT зробило ROOT досить універсальною програмою і його можна використовувати зараз[коли?] в інтерактивному режимі чи в режимі виконання скриптів на C++, за аналогією з таким комерційним продуктом, як MATLAB. Критика ROOT полягає в досить високих вимогах до рівня знань C++ у початківців, а також різні не зовсім вдалі рішення, аспекти розробки та реалізації. Див. такожПримітки
Література
Посилання
|