This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description

Library for converting python numpy datastructures to the ROOT output format.

The ROOT(https://root.cern.ch/) data analysis framework is used much in High Energy Physics (HEP) and has its own output format (.root). ROOT can be easily interfaced with software written in C++. For software tools in Python there exists pyROOT(https://root.cern.ch/drupal/content/pyroot). Unfortunately pyROOT does not work well with python3.4.

broot is a small library that converts data in python numpy ndarrays to ROOT files containing trees with a branch for each array.

The goal of this library is to provide a generic way of writing python numpy datastructures to ROOT files. The library should be portable and supports both python2, python3, ROOT v5 and ROOT v6 (requiring no modifications on the ROOT part, just the default installation). Installation of the library should only require a user to compile to library once or install it as a python package.

Secondly the library can be used to convert other file formats that store information in numpy-like structures, such as HDF5, to ROOT.

Installation

To use broot a user must have installed python, ROOT and be able to compile C++ code. To install:

pip install broot

To use the examples clone the repository and run:

python setup.py develop

Use

To use broot one needs libRootOutput.so and RootWrap.py

RootWrap can be imported in any python file and a new RootOutput instance can be made:

from broot import RootWrap

OUT = RootWrap.RootOutput()

Two example scripts are provided in ‘examples’.

  • ‘convert.py’ demonstrates the functions available using some ndarrays.
  • ‘hdf_to_root.py’ is a first implementation of a HDF5 to ROOT converter (HDF5 file not provided).

Current support:

  • python2
  • python3.4
  • ROOT v5
  • ROOT v6
  • compiles on gcc versions with c++11
  • compiles on gcc versions without c++11 (see branch no-c++11)
  • tested on GNU/Linux

Todo list:

  • Proper Makefile instead of ‘compile.sh’
  • Python package
  • HDF5 converter class
  • OS support for Windows and Mac
  • Documentation

History

0.1.0 (2015-05-25)

  • First release on PyPI.
Release History

Release History

0.1.1

This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.1.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
broot-0.1.1-py3.4.egg (40.2 kB) Copy SHA256 Checksum SHA256 3.4 Egg Jun 3, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS HPE HPE Development Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting