Skip to content

Slim configuration framework for Coffea based analysis on CMS NanoAOD events

License

Notifications You must be signed in to change notification settings

phnattla/PocketCoffea

 
 

Repository files navigation

    ____             __        __  ______      ________          
   / __ \____  _____/ /_____  / /_/ ____/___  / __/ __/__  ____ _
  / /_/ / __ \/ ___/ //_/ _ \/ __/ /   / __ \/ /_/ /_/ _ \/ __ `/
 / ____/ /_/ / /__/ ,< /  __/ /_/ /___/ /_/ / __/ __/  __/ /_/ / 
/_/    \____/\___/_/|_|\___/\__/\____/\____/_/ /_/  \___/\__,_/  

Documentation Status PyPI version PyPI platforms GitHub Discussion

PocketCoffea is a slim configuration framework for CMS NanoAOD analysess based on Coffea.

The goal of the framework is to define an HEP analysis in a declarative way where possible (with a well defined configuration files), and with python code where customization is needed (by subclassing the base PocketCoffea processor).

PocketCoffea defines a customizable structure to process NanoAOD events and define weights, categories, histograms. This is done thans to a BaseProcessor class which defines a workflow of operations to go from Raw NanoAOD to histograms. The user can customize the process from the confguration file or by redefining well-defined steps in the workflow.

Documentation

Testing

At the moment this repository is mirrored to the CERN GitLab: https://gitlab.cern.ch/cms-analysis/general/PocketCoffea.

Tests are running on the GitLab CDCI for every commit. Docker images are created for the latest, stable branchs, and for tags, and are pushed to /cvmfs with the unpacked CERN service.

About

Slim configuration framework for Coffea based analysis on CMS NanoAOD events

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.9%
  • Dockerfile 0.1%