This is the code base for the Run2+Run3 iteration of the CMS HH Multilepton analysis.
The code is forked and for now heavily based on the UHH bersion of the HH → bb𝜏𝜏 analysis and still very much WIP. Expect remnants from the bb𝜏𝜏 analysis, crashes and bugs, you have been warned!
Please make sure you are subscribed to our e-group: [email protected] It controls the acess to our indico etc. and is a good way to get updates for our meetings.
Also join our channel on mattermost. (You will need to join the CMS team first if not done so).
The code is currently developed with the Tallinn T2 (and lxplus) in mind. For further questions please, contact t****.l****@no-spam-cern.ch .
# clone the project
git clone --recursive [email protected]:HEP-KBFI/hhmultilepton.git
cd hhmultilepton
# source the setup and store decisions in .setups/dev.sh (arbitrary name)
source setup.sh dev
# Decisions include storage locations, these should be set according to the system you are running the code on:
# CF_DATA should point to a location in home (manivald) or afs (lxplus), same as CF_SOFTWARE_BASE and CF_JOB_BASE
# CF_WLCG_CACHE_ROOT is a cache for remote files should be on /local/user (manivald) or eos (lxplus).
# suggestion for lxplus setup:
export CF_DATA="$CF_REPO_BASE/data"
export CF_SOFTWARE_BASE="$CF_DATA/software"
export CF_JOB_BASE="$CF_DATA/jobs"
export CF_STORE_NAME="cf_store"
export CF_STORE_LOCAL="$CF_DATA/$CF_STORE_NAME"
export CF_WLCG_CACHE_ROOT="/eos/user/$CF_CERN_USER_FIRSTCHAR/$CF_CERN_USER/HHMultilepton_Run3/cf_scratch"
export CF_WLCG_USE_CACHE="true"
export CF_WLCG_CACHE_CLEANUP="false"
export CF_CRAB_STORAGE_ELEMENT="T2_EE_Estonia"
export CF_CRAB_BASE_DIRECTORY="/store/user/$CF_CERN_USER/cf_crab_outputs"
# if space in afs is a problem, one can try
export CF_SOFTWARE_BASE="/eos/user/$CF_CERN_USER_FIRSTCHAR/$CF_CERN_USER/HHMultilepton_Run3/software"
# suggestion for manivald is the same except:
export CF_JOB_BASE="/local/$CF_CERN_USER/HHMultilepton_Run3/jobs"
export CF_WLCG_CACHE_ROOT="/local/$CF_CERN_USER/HHMultilepton_Run3/cf_scratch"
# After first time setup, *if on manivald the estonian login node*, open the created setup file and add:
export TMPDIR="/scratch/local/$CF_CERN_USER"
# get a voms token:
voms-proxy-init -voms cms -rfc -valid 196:00
Code can now be run but first storage locations for the tasks outputs should be checked as configured here Currently outputs point to the user store of the T2 on manivald so that outputs are also accessible remotely, but we will likely adapt this over time depending on the output. I.e large outputs available in a remote reachable location, smaller ones on local stores. Larger ones likely also split by user/cluster so that central versions can be reused.
Important For development on lxplus *i strongly * advise to change wlcg_fs_manivald to wlcg_fs_cernbox in the beginning.
After this is set, try to run on signal locally:
law run cf.PlotVariables1D \
--version test \
--producers default \
--variables nmu \
--datasets hh_ggf_htt_hvv_kl1_kt1_powheg \And if this runs on background via slurm/condor
law run cf.PlotVariables1D \
--version test \
--producers default \
--variables nmu \
--datasets zz_pythia \
--workflow slurm \or with
--workflow htcondor \crab to be tested.
TODO but a general overview can be found in these slides: https://indico.cern.ch/event/1580193/contributions/6660044/attachments/3121091/5534653/multilep%20framework.pdf
Torben Lange 💻 |
Matheus Coelho 💻 |
- columnflow documentation
- CMS services
- JME
- BTV
- TAU
- Source hosted at GitHub
- Report issues, questions, feature requests on GitHub Issues
- Ideally also ping us on MM
- For new features open a new branch before merging into master, ask for a code review by a felllow contributor and dont forget linting!
- Happy coding :)