HEP-EX analyzing framework for NanoAOD data in CMS experiment (in dev)
Attention: This repo. is still in update so the documentation is not complete and may be outdated. I will make a more detailed documentation after everything is prepared
Python & coffea/uproot instead of C++ & ROOT
Vectorization instead of for-loop
-
Hierarchically stores dataset info in the structure of
datasets/$type/$year/$channel/$division/$version.yaml
-
Containing all source code to process NanoAOD into slimmed files (e.g.,
*.parq
) and to calculate correction and uncertainty by coffea (read*.root
files into vector-like structure, e.g., NanoEvents) and awkward (a numpy-like library but more capable to process nested and variable-sized data in json-like format) -
Use
parseDatasets.py
to parse filelists from*.yaml
and generate corresponding job description files as*.submit
. Then use integratedcondor_submit.py
script to submit condor jobs for processing NanoAOD files with codes insrc/
-
Jupyter-notebboks to analyze/postprocess
*.parquet
coming from processed NanoAOD data. Produce the final plots here!