Skip to content

Repository files navigation

Hmumu

Repository for the Hmumu analysis

General Information

Central NANOAOD production, taken from Nano AOD documentation

How to install the FW

  1. Setup ssh keys: On GitHub settings/keys On CERN GitLab profile/keys
  2. git clone --recursive [email protected]:cms-flaf/H_mumu.git
  3. (optional but recommended) create a fork from the central repository: 3.1. Go on central repository 3.2. Follow the instructions from github documentation for creating a fork 3.3. In your work-area (or where you cloned the repository - workarea recommended) in the H_mumu cloned folder, follow these instructions
  4. Create a file in the folder: H_mumu/config/user_custom.yaml The content of the file should be: - currently it's fine but it will be changed
    fs_default:
    - 'T3_CH_CERNBOX:/store/user/vdamante/H_mumu/'
    fs_anaCache:
        - 'T3_CH_CERNBOX:/store/user/vdamante/H_mumu/'
    fs_anaTuple:
        - 'T3_CH_CERNBOX:/store/user/vdamante/H_mumu/'
    fs_anaTuple2p5:
        - 'T3_CH_CERNBOX:/store/user/vdamante/H_mumu/'
    fs_nnCacheTuple:
        - 'T3_CH_CERNBOX:/store/user/prsolank/H_mumu/'
    fs_anaCacheTuple:
        - 'T3_CH_CERNBOX:/store/user/vdamante/H_mumu/'
    fs_histograms:
        - 'T3_CH_CERNBOX:/store/user/vdamante/H_mumu/histograms/'
    
    analysis_config_area: config
    
    compute_unc_variations: False
    store_noncentral: False
    compute_unc_histograms: False
    
    variables:
        - mu1_pt
    

Setup steps

  1. Load environment: source env.sh

  2. Add law tasks to the index: law index (if you want to know more about what is happening, you can add --verbose)

  3. Initialize voms-proxy voms-proxy-init -voms cms -rfc -valid 192:00 (if you do not have grid permission and certificate, see this twiki)

Get input files

This step consists in saving filenames in local (data/InputFileTask/...) and is required for all subsequent steps: law run InputFileTask --period ${ERA} --version ${VERSION_NAME} where you can either set the ${ERA} or just manually put the era name (Run3_2022,Run3_2022EE etc) and version consists in a general name (e.g. Run3_2022)

Get AnaCache

The anaCaches are yaml file storing inputs from both saved and non-saved events from original NanoAOD (needed for pu uncertainty)

law run AnaCacheTask --period ${ERA} --version ${VERSION_NAME}

The ${ERA} is defined as before, whereas version can differ from InputFileTask (e.g. AnaCacheVersion is Run3_2022_v1 and InputFileTaskVersion is Run3_2022). The important is that if they differ you need also to add

 --InputFileTask-version ${INPUTFILETASK_VERSION_NAME}

which in this example is Run3_2022.

ToDo list

  • redesign jet selection and store
  • modify H(mm) candate selection
  • check what is done for MET in Run2 analysis
  • check the b-tagging WP based SF for jets
  • include FSR
  • add all corrections
  • data/MC control plots (short term)
  • setup workspace for ggH and VBF (for the moment both template fit)
  • improve documentations + add github project to correctly keep trace of changes

R&D

  • efficiency gain using other triggers (non priority)
  • develop classifier optimized for Run3 (first focus on VBF, then possible extension to all categories)
    • explore different architechtures
    • validate
    • hyperparameter optimization
    • suitable to compare results w/ run2 and for run2+run3 combination
  • switch to Run3 muon ID
  • investigate for new production setup (e.g. flashsim)

About

Repository for the Hmumu analysis

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages