Nowadays ROOT and PyROOT are de-facto standard tools for performing physics analysis. The Ostap project is a community-driven initiative aiming to provide more user friendly and more intuitive interface to ROOT and PyROOT and extending the existing functionality.
Project started in 2009 from the private collections of python functions used in Kali - framework for calibration of LHCb electromagnetic calorimeter. A lot of functionality is picked from Bender project - python based physics analysis environment used in LHCb experiemnt. Till Autumn 2016 the project was a part of LHCb software suit and with great success has been used for preparation of approximately 30 physics papers. A standalone, LHCb independent version, has appeared at start of 2017
Key features include:
- Very easy manipulations with ROOT and RooFit objects: histograms, trees, datasets, etc
- Very easy interface to RooFit machinery
- Extended set of models.PDFs for RooFit
- Powerful, pickle-based persistency for object
- Interactive
ostap
analysis environment
There are several possibilities to start working with Ostap, you can build Ostap on the Linux or lxplus/7 and also run the docker container.
Ostap requires the python2 version >2.7. You need to provide ROOTSYS environment for building the library. The library should be built with the same compiler version and C++ standard as was used to build ROOT. Set ROOT environment with following commands
source /path/to/root/bin/thisroot.sh
or, if you are working at the LHCb environment
lb-run ROOT bash
e.g. at lxplus/7 one can do
lb-run --ext Python --ext pytools --ext pyanalysis --ext ROOT LCG/95 bash --norc
then clone the repo and build Ostap package
git clone git://github.com/OstapHEP/ostap.git
cd ostap
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=<INSTALL_DIRECTORY>
make -j8
make install
source <INSTALL_DIRECTORY>/thisostap.sh
We also provided Dockerfile to build the OstapHep image. You can run Ostap interactively using the command line or via Docker Desktop which is available for MacOS and Windows. To create the docker image from the Ostap directory run:
sudo docker build --network host -t <dockerID>/ostaphep:latest .
Run the image iteractively:
sudo docker run -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix -v ${WORKDIR_PATH}/work_dir:/work_dir -it <dockerID>/ostaphep:latest
To know more about docker, please check the documentation: https://docs.docker.com/.