pachyderm#

Pachyderm provides core physics analysis functionality for a number of other packages, including the Reaction Plane Fit <https://github.com/raymondEhlers/reactionPlaneFit>** and ALICE Jet-hadron analysis <https://github.com/raymondEhlers/alice-jet-hadron>** packages. Documentation on the modules of the Pachyderm package are available below. For further information on this package, see the :doc:README <about>.

Pachyderm* provides core functionality for heavy-ion physics analyses. The main functionality includes a generic histogram projection interface, a recursive configuration determination module (including overriding (merging) capabilities), and general utilities (especially for histograms). It provides base functionality to the ALICE jet-hadron analysis package. This package provides many examples of how pachyderm can be used in various analysis tasks.

For further information on the capabilities, see the documentation.

Installation#

Pachyderm requires python 3.6 or above. It is available on PyPI and can be installed via pip:

$ pip install pachyderm

Dependencies#

All dependencies are specified in the setup.py (and will be handled automatically when installed via pip) except for ROOT. The package can be installed without ROOT with limited functionality, but for full functionality, ROOT must be available.

Dockerfile#

There is a Dockerfile which is used for testing pachyderm with ROOT. It is based on the Overwatch base docker image to allow us to avoid redeveloping another container just to have ROOT available. It may also be used to run pachyderm if so desired, although such a use case doesn’t seem tremendously useful (which is why the image isn’t pushed to docker hub).

Development#

I recommend setting up the development environment as follows:

# Setup
$ poetry install
# Setup git pre-commit hooks to reduce errors
$ pre-commit install
# develop develop develop...

Documentation#

All classes, functions, etc, should be documented, including with typing information. The docs are built on each new successful commit. They can also be built locally using:

# Setup
$ poetry install
# Create the docs
$ pushd doc && make html && popd
# Open the created docs
$ open docs/_build/html/index.html

Name Meaning#

PACHYDERM: Physics Analysis Core for HeavY-ions with Determination of (analysis) Elements via Recursion and Merging.

Indices and tables#