As every summer, we organized a number of ROOT courses for a few groups of summer students - we held five sessions with around 30 to 40 participants each, including one session during the HSF/IRIS-HEP Python for Analysis Trainings and one as part of the CERN Openlab Workshops.| ROOT
What if you could intuitively manipulate your ROOT histograms, create stunning plots with your favorite Python libraries, and perform advanced operations–all with Pythonic ease?| ROOT
In this blog post, you will learn how to reproducibly build ROOT from source with Nix on macOS or Linux, getting you started quickly with hacking the ROOT source code and participate in ROOTs open development.| ROOT
We are very happy to announce that the ROOT Users Workshop 2025 will take place in Valencia, Spain, between 17-21st November. Please note this will be an in-person-only event.| ROOT
Maybe you have heard that RooFit now supports Automatic Differentiation (AD) for faster likelihood minimization. This blogpost explains you the underlying technology, implementation, and interfaces. It also showcases some performance numbers from a Higgs analysis benchmark before concluding with an outlook on future developments.| ROOT
You may have heard about the second ROOT Hackathon, that took place at IdeaSquare, CERN, last week (25-27 of November)! After a few days of recovering our energies, it’s time to look back at this vibrant event, so let’s go.| ROOT
You may have heard of RNTuple, from CHEP’24, from other talks, or from our previous ROOT blog post. In case you haven’t: RNTuple is ROOT’s new I/O system for event data. Think of it as TTree, but more compact, faster, modern and more robust. With respect to TTree, we routinely see file size reductions between 10%-50%, multiple times faster read throughput, and much better write performance and multicore scalability. RNTuple can fully harness the performance of modern NVMe drives and obj...| ROOT
In October 2024, the software and computing community in high-energy and nuclear physics met in Krakow at the CHEP24 conference. The event featured a rich scientific program in a great location.| ROOT
Choosing an appropriate color scheme is essential for making results easy to understand and interpret. Factors like colorblindness and converting colors to grayscale for publications can impact accessibility. Furthermore, results should be aesthetically pleasing. The following three color schemes, recommended by M. Petroff in arXiv:2107.02270v2 and available on GitHub under the MIT License, meet these criteria.| ROOT
The academic year is about to start, so why not learn ROOT with us? During the summer, the ROOT team has organized a number of ROOT Summer Student courses at CERN and two HSF/IRIS-HEP Python for Analysis Trainings online, meaning the ROOT community has expanded by around 200 new students! And that is only the beginning; we think more students should have an opportunity to acquire the course material, this time in a self-study manner.| ROOT
Hello, this is Florine from the ROOT team! Over the past year, I’ve been working as a technical student funded by ATLAS to evaluate and help further develop RNTuple. As you may already be aware, RNTuple [1] is currently being developed as the successor to TTree, and is projected to be used in Run 4. I imagine you might be wondering why there is a need for a completely new (TTree-incompatible) system, and what this looks like. That’s why in this blog post, I will try to answer this questio...| ROOT
After a long period of development and testing we decided to switch to the web-based TCanvas implementation by default in the ROOT master version. It has been present in the ROOT for a while (since 2017) and used already in the web-based TBrowser, which you have probably seen already.| ROOT
Namespaces| root.cern
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tbb::task_arena without forward declaring tbb::interface7 | root.cern
import ROOT| root.cern
Execute a user-defined accumulation operation on the processed column values in each processing slot. | root.cern
1// @(#)root/win32gdk:$Id$| root.cern
#include "TGWin32ProxyDefs.h"| root.cern
65class TCollection : public TObject {| root.cern
#include "TObject.h"| root.cern
1// Author: Enrico Guiraud, Danilo Piparo CERN 12/2016| root.cern
If you’ve ever rubbed your eyes trying to decrypt C++ compilation errors from a terminal, or even have faced with your bare eye the intimidating logs of valgrind output for memory leak detection, or manually deployed gdb, you should definitely keep reading. With this post, I believe you’ll improve your productivity and experience with ROOT by using QtCreator as a development and troubleshooting environment.| ROOT
You can use RDataFrame in Python thanks to the dynamic Python/C++ translation of PyROOT. In general, the interface is the same as for C++, a simple example follows.| root.cern
The ROOT GitHub repository is open for Hacktoberfest contributions!| ROOT
Debugging CERN ROOT scripts and ROOT-based programs in Eclipse IDE| ROOT
ROOT has now a brand new Manual, bringing “how do you read data with ROOT” and similar core aspects into contemporary ROOT. Much of the manual has been rethought and simplified, we hope and expect that concepts and interfaces are now easier to understand!| ROOT
So you love RDataFrame, but would like to use it on a cluster? We hear you! In fact, we just introduced in ROOT a Python package to enable distributing ROOT RDataFrame workloads to a set of remote resources. This feature is available in experimental phase since the latest ROOT 6.24 release, allowing users to write and run their applications from within the same interface while steering the computations to, for instance, an Apache Spark cluster.| ROOT
Over the last decade we developed an interactive, interpretative C++ interpreter (aka REPL) as part of the high-energy physics (HEP) data analysis project – ROOT. We invested a significant effort to replace CINT, the C++ interpreter used until ROOT5, with a newly implemented REPL based on llvm – Cling. Cling is a core component of ROOT and has been in production since 2014.| ROOT
Back in ROOT 6.20, we introduced a big quality-of-life improvement for interpreted C++. Since then, the feedback we gathered convinced us that it’s time for the world to know about declaration shadowing!| ROOT
This post is a must-read for advanced users that build ROOT from source. Starting with 6.24, we provide a new branch named latest-stable that will be regularly updated after each release. If you want to know more, keep reading!| ROOT
With 6.24 out the door it’s worthwhile to see what it brings. We would also like to hear your thoughts on our plans for 2021 that we’ll share with you here. And because we want to thank you for reading this (and as an extra motivation to participate) we’ll have a little contest with a prize!| ROOT
Visual Studio Code offers some great functionalities when it comes to coding, such as IntelliSense, debugging, built-in Git, and many more through extensions. In this blog post I’m going to show how to configure VS Code in order to use all of these awesome features when creating and editing ROOT Macros!| ROOT
What if we combine PyTorch and TMVA? Ever wondered how ROOT utilizes powerful external MVA libraries making them easily accessible with a direct integration into the TMVA workflow? These interfaces between TMVA and Python frameworks are powered by the PyMVA backbone. All PyMVA methods provide the same plug-and-play mechanisms as TMVA.| ROOT
ROOT comes with support for different pseudorandom number generators (PRNGs). This post discusses the recent implementation of RANLUX++ and how I tuned its performance. Because of its theoretical strengths and its performance, this generator might become the default in future versions of ROOT.| ROOT