L1T Muon Analyzer


2018 L1 Seeds Efficiency

For up-to-date CMSSW release for 2018, check twiki.

cmsrel CMSSW_10_2_0 #Valid up to 2018EraD
cd CMSSW_10_2_0/src
cmsenv
git cms-init
git remote add cms-l1t-offline git@github.com:cms-l1t-offline/cmssw.git
git fetch cms-l1t-offline l1t-integration-CMSSW_10_2_0
git cms-addpkg L1Trigger/L1TCommon
scram b -j 8

Configurations for L1Ntuple production

Valid 2018 SingleMu data (Other Eras to be added)

/SingleMuon/Run2018B-ZMu-PromptReco-v1/RAW-RECO: 317080-317591 (Control HLT online since run 317509)
/SingleMuon/Run2018B-ZMu-PromptReco-v2/RAW-RECO: 318070-319310
/SingleMuon/Run2018C-ZMu-PromptReco-v1/RAW-RECO: 319337-319349
/SingleMuon/Run2018C-ZMu-PromptReco-v2/RAW-RECO: 319449-319756
/SingleMuon/Run2018C-ZMu-PromptReco-v3/RAW-RECO: 319833-320064
/SingleMuon/Run2018D-ZMu-PromptReco-v2/RAW-RECO: 320500-325175

SingleMu:

cmsDriver.py l1NtupleRECO -s RAW2DIGI --era=Run2_2018 --customise=L1Trigger/Configuration/customiseReEmul.L1TReEmulFromRAW --customise=L1Trigger/L1TNtuples/customiseL1Ntuple.L1NtupleAODRAWEMU --conditions=102X_dataRun2_Prompt_v11 -n 100 --data --no_exec --no_output --filein=/store/data/Run2018C/SingleMuon/RAW-RECO/ZMu-PromptReco-v3/000/320/065/00000/F2891AE4-0090-E811-B415-FA163E951E73.root

Efficiency

In the orignal tool, we can modify the pt threshold and quality we are interested. In our case, L1_SingleMu3 and L1_SingleMu7.

git clone https://gitlab.cern.ch/wshi/l1tMuonTools.git
python ./l1tMuonTools/muonTagAndProbe.py -f L1Ntuple_99.root muonTagAndProbe --json Cert_314472-325175_13TeV_PromptReco_Collisions18_JSON.txt --outname ugmt_tandp_eff_histos.root --era 2018pp --use-reco-extra-station=2 --use-inv-mass-cut --pt-ranges=extended #Don't run on emulated muon
#parameter --njobs: make each job take 10-20 L1_Ntuple roughly, only works for LSF, not HTCondor
python ./l1tMuonTools/create_batch_job.py -s ./l1tMuonTools/muonTagAndProbe.py -p muonTagAndProbe -l input_l1ntuple_file_list_SingleMu.txt -w work_dir --cmd-line-args " --json Cert_314472-325175_13TeV_PromptReco_Collisions18_JSON.txt --era 2018pp --use-reco-extra-station=2 --use-inv-mass-cut --pt-ranges=extended" --njobs 10 --queue 2nd --split_by_file --submit 
python ./l1tMuonTools/plotTPEff.py -f ugmt_tandp_eff_histos.root plotTPEff --year 2018B-D --eff --qualcomp

While the old LSF batch is obselete since Jan 30,2019, the new HTCondor scheduler is used. Specifically, the command is put in this shell script called test_X.sh

#!/bin/bash
export X509_USER_PROXY=$1
voms-proxy-info -all
voms-proxy-info -all -file $1
cd /afs/cern.ch/work/w/wshi/public/2018L1Seed/CMSSW_10_2_0/src
eval `scram runtime -sh`
cd /afs/cern.ch/work/w/wshi/public/2018L1Seed/CMSSW_10_2_0/src
python ./l1tMuonTools/muonTagAndProbe.py -l filelists/flist_X.txt muonTagAndProbe --json Cert_314472-325175_13TeV_PromptReco_Collisions18_JSON_ExcludeRun319526.txt --outname work_dir_HTCondor/output/output_X.root --era 2018pp --use-reco-extra-station=2 --use-inv-mass-cut --pt-ranges=extended

This shell script is then passed to the HTCondor config file called HTCondor_X.sub:

universe              = vanilla
executable            = test_X.sh
Proxy_path            = /afs/cern.ch/work/w/wshi/public/2018L1Seed/CMSSW_10_2_0/src/x509up_u91282
arguments             = $(Proxy_path) $(ClusterID) $(ProcId)
output                = work_dir_HTCondor/output/test.$(ClusterId).$(ProcId).out
error                 = work_dir_HTCondor/error/test.$(ClusterId).$(ProcId).err
log                   = work_dir_HTCondor/log/test.$(ClusterId).log
+JobFlavour = "testmatch"
queue
 

Then it's submmited to HTCondor.

Analyzer Tool Setting (For old OMTF studies)

The main tool for analyzing L1T Muon Ntuple is developed by Thomas Reis: https://gitlab.cern.ch/wshi/l1tMuonTools/tree/master

To use the tool, first do the setup in CMSSW:

export SCRAM_ARCH=slc6_amd64_gcc630
cmsrel CMSSW_10_1_2
cd CMSSW_10_1_2/src
cmsenv
git cms-init
git remote add cms-l1t-offline git@github.com:cms-l1t-offline/cmssw.git
git fetch cms-l1t-offline l1t-integration-CMSSW_10_1_2
git cms-merge-topic -u cms-l1t-offline:l1t-integration-v97.28
git cms-addpkg L1Trigger/L1TCommon
scram b -j 8

For the OMTF FW_v5, need to pull fix from OMTF experts.

export SCRAM_ARCH=slc6_amd64_gcc630
cmsrel CMSSW_10_1_5
cd CMSSW_10_1_5/src
cmsenv
git cms-init
git remote add cms-l1t-offline git@github.com:cms-l1t-offline/cmssw.git
git fetch cms-l1t-offline l1t-integration-CMSSW_10_1_5
git cms-merge-topic -u konec:omtfdev_mk19
git cms-addpkg L1Trigger/L1TCommon
scram b -j 8

Then clone the tool:

git clone https://gitlab.cern.ch/wshi/l1tMuonTools.git
cd l1tMuonTools

L1T Ntuples

OMTF

Algo options Ntuple path JIRA
Default (with RPC)

SingleMuon:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/wshi/l1t-integration-i97p28-CMSSW-1012OMTFDefault/SingleMuon/crab_l1t-integration-i97p28-CMSSW-1012OMTFDefault__SingleMuon_Run2018A-ZMu-PromptReco-v1/180704_174935/0000/

ZeroBias:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/wshi/CMSSW-1012OMTFDefault/ZeroBias/crab_CMSSW-1012OMTFDefault__ZeroBias_Run2018A-v1/180704_175444/0000/

From a single run:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/wshi/CMSSW-1012SingleRunOMTFDefault_WithRPC/ZeroBias/crab_CMSSW-1012SingleRunOMTFDefault_WithRPC__ZeroBias_Run2018B-v1/180711_175629/0000/

Same setting as JIRA, didn't add the DT prefer after # Customisation:

process.simOmtfDigis.ghostBusterType = cms.string("GhostBusterPreferRefDt")

Default (drop RPC)

SingleMuon:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/wshi/l1t-integration-i97p28-CMSSW-1012OMTF_Default_DropRPC/SingleMuon/crab_l1t-integration-i97p28-CMSSW-1012OMTF_Default_DropRPC__SingleMuon_Run2018A-ZMu-PromptReco-v1/180705_203058/0000/

ZeroBias:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/wshi/CMSSW-1012OMTF_Default_DropRPC/ZeroBias/crab_CMSSW-1012OMTF_Default_DropRPC__ZeroBias_Run2018A-v1/180705_203124/0000/

From a single run:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/wshi/CMSSW-1012SingleRunOMTFDefault_NoRPC/ZeroBias/crab_CMSSW-1012SingleRunOMTFDefault_NoRPC__ZeroBias_Run2018B-v1/180711_175154/0000/

dropRPCPrimitives = cms.bool(True)
Prefer DT (with RPC) SingleMuon:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/treis/l1t-integration-i97p28-CMSSW-1012_omtfGBPrefRefDt/SingleMuon/crab_l1t-integration-i97p28-CMSSW-1012_omtfGBPrefRefDt__SingleMuon_Run2018A-ZMu-PromptReco-v1/180504_160545/0000/

ZeroBias:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/treis/CMSSW-1012_omtfGBPrefRefDt/ZeroBias/crab_CMSSW-1012_omtfGBPrefRefDt__ZeroBias_Run2018A-v1/180504_161602/0000/

From a single run:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/wshi/CMSSW-1012SingleRunOMTFPreferDT_WithRPC/ZeroBias/crab_CMSSW-1012SingleRunOMTFPreferDT_WithRPC__ZeroBias_Run2018B-v1/180711_184100/0000/

JIRA
Prefer DT (drop RPC)

SingleMuon:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/wshi/l1t-integration-i97p28-CMSSW-1012OMTFPreferDT_DropRPC/SingleMuon/crab_l1t-integration-i97p28-CMSSW-1012OMTFPreferDT_DropRPC__SingleMuon_Run2018A-ZMu-PromptReco-v1/180705_171645/0000/

ZeroBias:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/wshi/CMSSW-1012OMTFPreferDT_DropRPC/ZeroBias/crab_CMSSW-1012OMTFPreferDT_DropRPC__ZeroBias_Run2018A-v1/180705_170927/0000/

From a single run:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/wshi/CMSSW-1012SingleRunOMTFPreferDTNoRPC/ZeroBias/crab_CMSSW-1012SingleRunOMTFPreferDTNoRPC__ZeroBias_Run2018B-v1/180714_070010/0000/

ghostBusterType = cms.string("GhostBusterPreferRefDt")

dropRPCPrimitives = cms.bool(True)

FW_v5 (with RPC)

SingleMuon:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/wshi/l1t-integration-unmerged-CMSSW-1015OMTFfwV5RPCOn/SingleMuon/crab_l1t-integration-unmerged-CMSSW-1015OMTFfwV5RPCOn__SingleMuon_Run2018A-ZMu-PromptReco-v1/180718_121014/0000/

ZeroBias from run 317640:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/wshi/CMSSW-1015Run317640OMTFfwV5RPCOn/ZeroBias/crab_CMSSW-1015Run317640OMTFfwV5RPCOn__ZeroBias_Run2018B-v1/180718_112834/0000/

ghostBusterType = cms.string("GhostBusterPreferRefDt")

unsigned int fwVersion() const {return 5;};

dropRPCPrimitives = cms.bool(False)

FW_v5 (without RPC)

SingleMuon:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/wshi/l1t-integration-unmerged-CMSSW-1015OMTFfwV5RPCOff/SingleMuon/crab_l1t-integration-unmerged-CMSSW-1015OMTFfwV5RPCOff__SingleMuon_Run2018A-ZMu-PromptReco-v1/180718_120948/0000/

ZeroBias from run 317640:

/eos/cms/store/group/dpg_trigger/comm_trigger/L1Trigger/wshi/CMSSW-1015Run317640OMTFfwV5RPCOff/ZeroBias/crab_CMSSW-1015Run317640OMTFfwV5RPCOff__ZeroBias_Run2018B-v1/180718_115342/0000/

ghostBusterType = cms.string("GhostBusterPreferRefDt")

unsigned int fwVersion() const {return 5;};

dropRPCPrimitives = cms.bool(True)

Efficiency

python muonTagAndProbe.py -f L1Ntuple_99.root muonTagAndProbe --json json_DCSONLY.txt --outname ugmt_tandp_eff_histos_Default.root --era 2018pp --use-reco-extra-station=2 --use-inv-mass-cut --emul
python create_batch_job.py -s muonTagAndProbe.py -p muonTagAndProbe -l input_l1ntuple_file_list_SingleMu_PreferDT.txt -w work_dir --cmd-line-args " --json json_DCSONLY.txt --era 2018pp --use-reco-extra-station=2 --use-inv-mass-cut --emul" --njobs 10 --queue 8nh --split_by_file --submit
python plotTPEff.py -f ugmt_tandp_eff_histos.root plotTPEff --year 2018A --lumi="XX.X fb^{-1}" --eff --qualcomp --emul
python plotTPEff.py -f ugmt_tandp_eff_histos.root plotTPEff --fname2 ugmt_tandp_eff_histos2.root --eff --qualcomp --leg-txt1 text1 --leg-txt2 text2 --emul

Rate

python makeSimpleRateHistos.py -f l1ntuple.root makeRateHistos --json Cert_314472-317696_13TeV_PromptReco_Collisions18_JSON.txt --use-l1-extra-coord --emul
python create_batch_job.py -s makeSimpleRateHistos.py -p makeRateHistos -l input_l1ntuple_file_list_ZeroBias_PreferDT.txt -w work_dir --cmd-line-args " --json Cert_314472-317696_13TeV_PromptReco_Collisions18_JSON.txt --use-l1-extra-coord --emul" --njobs 30 --queue 8nh --split_by_file --submit
python plotSimpleRates.py -f ugmt_rate_histos.root plotRates --bunches 2544 --year 2018 --lumi="XX.X fb^{-1}" --emul
python plotSimpleRates.py -f ugmt_rate_histos.root plotRates --fname2 ugmt_rate_histos2.root --leg-txt1 text1 --leg-txt2 text2 --bunches 2544 --emul

BrilCalc Tool

Refer to official web.

brilcalc lumi -i ../OMTF/CMSSW_10_1_2/src/l1tMuonTools/json_DCSONLY_PreferDT.txt --begin 315252 --end 316995 -u /fb

-- WeiShi - 2018-07-03

Topic attachments
I Attachment History Action Size Date Who Comment
PDFpdf OMTF_Algorithm_Changes.pdf r1 manage 1022.0 K 2018-10-26 - 22:02 WeiShi  
Unknown file formatroot ugmt_tandp_eff_plots.root r1 manage 446.7 K 2018-11-10 - 18:46 WeiShi  
Edit | Attach | Watch | Print version | History: r32 < r31 < r30 < r29 < r28 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r32 - 2019-02-10 - WeiShi
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Sandbox All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright &© 2008-2023 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback