Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
100 commits
Select commit Hold shift + click to select a range
83c6b70
update 2018 configs
krunalgedia Apr 7, 2021
24b1c1e
no need for htaccess files in every folder
krunalgedia Apr 7, 2021
0462ba2
bug fix for boosted
krunalgedia Apr 7, 2021
810bd83
add 2018 extra changes
krunalgedia Apr 7, 2021
33652b6
updating incorrect 2018 SF
krunalgedia Apr 7, 2021
3dd4473
Merge remote-tracking branch 'origin'
krunalgedia Apr 7, 2021
45cbe45
Merge remote-tracking branch 'origin'
krunalgedia Apr 14, 2021
fd715df
Merge remote-tracking branch 'origin'
krunalgedia Jun 11, 2021
2aeb031
making runplot checking and opening files faster and adding event his…
krunalgedia Jun 11, 2021
9ced7dc
config files updates
krunalgedia Aug 31, 2021
17e8a66
add updated files
krunalgedia Aug 31, 2021
96982d4
apply weights to V+jets NLO samples
krunalgedia Aug 31, 2021
e6987cd
some additional changes
krunalgedia Aug 31, 2021
01d1242
consider weights to V+jets NLO samples
krunalgedia Aug 31, 2021
e1eab70
changes to take SLURM modifications
krunalgedia Aug 31, 2021
c95c167
updates
krunalgedia Sep 1, 2021
3d3aa1d
scripts for NLO analysis
krunalgedia Dec 20, 2021
db7c9dd
NLO stitching weights
krunalgedia Dec 21, 2021
d5b9fe9
LHE muR/muF bug fix
krunalgedia Feb 7, 2022
4328609
samples_mc 2017 updated
krunalgedia Feb 7, 2022
38f6b22
new btag and dRbb NLO weights using new V+jets samples
krunalgedia Jun 10, 2022
c5cb6ea
deltaR with deta and dphi
krunalgedia Oct 3, 2022
2279faa
added signal theoretical unc.
krunalgedia Oct 3, 2022
3c282d8
extra plot variables
krunalgedia Oct 3, 2022
590798f
correct lumi and fix LHE scale weights
krunalgedia Oct 3, 2022
dd87438
modifications for NLO and NLO stitching
krunalgedia Oct 3, 2022
5a71730
LHE bug fix and NLO Vpt samples bug fix systematics
krunalgedia Oct 3, 2022
4a83fe7
additional plots
krunalgedia Oct 3, 2022
2c8da9e
extra cuts used for NLO btag/drbb weights and update for VH/VZ cuts
krunalgedia Oct 3, 2022
39218d5
update...
krunalgedia Oct 3, 2022
72d0226
new NLO weights
krunalgedia Oct 3, 2022
44f80cb
updated...
krunalgedia Oct 3, 2022
9c0deb6
updated...
krunalgedia Oct 3, 2022
cfc2b2a
updated...
krunalgedia Oct 3, 2022
cbeb572
extra incl. training
krunalgedia Oct 3, 2022
a98789a
updated ...
krunalgedia Oct 3, 2022
d2eba99
updated ...
krunalgedia Oct 3, 2022
36277ec
updated ...
krunalgedia Oct 3, 2022
9c5797b
updated nlo pt binned syst ...
krunalgedia Oct 3, 2022
f173c06
updated ...
krunalgedia Oct 3, 2022
2f5439e
updated ...
krunalgedia Oct 3, 2022
8a93790
updated ...
krunalgedia Oct 3, 2022
72dbbaf
updated ...
krunalgedia Oct 3, 2022
7f61f44
extra cuts used for NLO btag/drbb weights and update for VH/VZ cuts
krunalgedia Oct 3, 2022
2ced1b6
NLO syst
krunalgedia Oct 3, 2022
1322d6a
NLO weights
krunalgedia Oct 3, 2022
9b10661
NLO samples
krunalgedia Oct 3, 2022
71eb953
updated ...
krunalgedia Oct 3, 2022
0714cd4
updated ...
krunalgedia Oct 3, 2022
d306c19
this should be same as pirmin's file
krunalgedia Oct 3, 2022
6b12f81
checks plots
krunalgedia Oct 3, 2022
9b882bc
extra cuts used for NLO btag/drbb weights and update for VH/VZ cuts
krunalgedia Oct 3, 2022
3115556
extra cuts used for NLO btag/drbb
krunalgedia Oct 3, 2022
96a9f2e
vpt nlo bug sample syst
krunalgedia Oct 3, 2022
53f6881
updated ...
krunalgedia Oct 3, 2022
6b9b43e
updated for NLO samples
krunalgedia Oct 3, 2022
125de93
updated ...
krunalgedia Oct 3, 2022
78045ef
updated ...
krunalgedia Oct 3, 2022
edfac1a
updated for VH/VZ cuts
krunalgedia Oct 3, 2022
78c7fef
updated ...
krunalgedia Oct 3, 2022
a938d4b
updated NLO weights
krunalgedia Oct 3, 2022
4bc9df0
updated ...
krunalgedia Oct 3, 2022
e53fb90
updated ...
krunalgedia Oct 3, 2022
f033179
updated ...
krunalgedia Oct 3, 2022
692bb71
this should be same as pirmin's file
krunalgedia Oct 3, 2022
cc0df1d
updated ...
krunalgedia Oct 3, 2022
209a7df
updated ...
krunalgedia Oct 3, 2022
c890e36
vpt NLO weights
krunalgedia Oct 3, 2022
820adc1
final weightF
krunalgedia Oct 3, 2022
04a8bd2
updated ...
krunalgedia Oct 3, 2022
c1b978b
updated ...
krunalgedia Oct 3, 2022
54893a4
updated ...
krunalgedia Oct 3, 2022
cf5b887
updated for vpt bugged nlo samples cut and added sampleCuts in total …
krunalgedia Oct 3, 2022
c7f1052
updated for vpt bugged nlo samples cut and added sampleCuts in total …
krunalgedia Oct 3, 2022
bce7c59
no updates..just checks
krunalgedia Oct 3, 2022
4d3f162
added sampleCuts for each sample due to vpt sample nlo bug and no mor…
krunalgedia Oct 3, 2022
efa6f7b
this file should be same as pirmin's
krunalgedia Oct 3, 2022
09fadf0
commented lines were used while getting nlo btag and drbb weights
krunalgedia Oct 3, 2022
22a38f9
no such updates
krunalgedia Oct 3, 2022
6b17434
no such updates
krunalgedia Oct 3, 2022
93c03bb
no such updates
krunalgedia Oct 3, 2022
22ffbb2
sampleCuts added
krunalgedia Oct 3, 2022
ffab31a
soft drop mass scale for 2018 (top mass peak shift)
krunalgedia Oct 3, 2022
f355280
dPhiVH variable add
krunalgedia Oct 3, 2022
18973db
this computes weights/systematics for vpt bugged NLO samples in 2018
krunalgedia Oct 3, 2022
0c75cf9
MET xy corrections
krunalgedia Oct 3, 2022
0fd3090
high pt vhbbplotdef
krunalgedia Oct 3, 2022
4773179
Merge pull request #3 from krunalgedia/HIG-20-001-NLO2017_2018
krunalgedia Oct 3, 2022
58b1288
sample used in the final 2018 iteration
krunalgedia Oct 3, 2022
208e44a
config files from paths.ini of 2018 2lep
krunalgedia Oct 3, 2022
ded1e82
config files from paths.ini of 2018 1lep
krunalgedia Oct 3, 2022
e2ef20e
config files from paths.ini of 2018 0lep
krunalgedia Oct 3, 2022
347a4f1
config files from paths.ini of 2017 2lep
krunalgedia Oct 3, 2022
8ff0215
updated...
krunalgedia Oct 3, 2022
ed61063
Updated with paths to final set of ntuples used for datacards.
krunalgedia Oct 3, 2022
ba81e1e
Update README.md
krunalgedia Oct 3, 2022
5366519
Update README.md
krunalgedia Oct 3, 2022
b17bc40
Merge pull request #4 from krunalgedia/HIG-20-001-NLO2017_2018
krunalgedia Oct 3, 2022
b6cdde0
Corrected missing muonSF in 1 lep weightF, added extra cuts in cuts.i…
krunalgedia Jun 1, 2023
92b05c7
forgot to commit for stxs config for last commit of updates for Naddj…
krunalgedia Jun 2, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
16 changes: 16 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,19 @@ Setup & instructions
Full instructions on how to setup the code and run the analysis can be found on the Twiki page:

https://twiki.cern.ch/twiki/bin/viewauth/CMS/HiggsBBcodeETH


**Branch: HIG-20-001-NLO2017_2018** <br />
**Used for NLO 2017 and 2018 STXS analysis** <br />

**Final ntuples:**<br />
**2017**: <br />
**Zll** : root://t3dcachedb03.psi.ch:1094//pnfs/psi.ch/cms/trivcat/store/user/creissel/VHbb/Zll/VHbbPostNano2017_V11/2022_02_06/eval/STXSunc/ <br />
**Wlv** : root://t3dcachedb03.psi.ch:1094//pnfs/psi.ch/cms/trivcat/store/user/creissel/VHbb/Wlv/VHbbPostNano2017_V11/2022_02_06/eval/STXSunc/ <br />
**Zvv** : root://t3dcachedb03.psi.ch:1094//pnfs/psi.ch/cms/trivcat/store/user/creissel/VHbb/Zvv/VHbbPostNano2017_V11/2022_02_06/eval/STXSunc/ <br />

**2018**: <br />
**Zll** : root://t3dcachedb03.psi.ch:1094//pnfs/psi.ch/cms/trivcat/store/user/krgedia/VHbb/Zll/VHbbPostNano2018/mva/13may22_vjets_vptnlowgtcorrect_ <br />
**Wlv** : root://t3dcachedb03.psi.ch:1094//pnfs/psi.ch/cms/trivcat/store/user/krgedia/VHbb/VHbbPostNano2018/V12/Wlv/mva/13may22_vjets_vptnlowgtcorrect_ <br />
**Zvv** : root://t3dcachedb03.psi.ch:1094//pnfs/psi.ch/cms/trivcat/store/user/krgedia/VHbb/VHbbPostNano2018/V12/Zvv/eval/13may22_vjets_vptnlowgtcorrect_ <br />

6 changes: 6 additions & 0 deletions interface/VHbbNameSpace.h
Original file line number Diff line number Diff line change
Expand Up @@ -258,6 +258,12 @@ double SoverSBWeight(double BDT, int channel) {
return TMath::Sqrt(deta*deta + dphi*dphi);
}


double deltaR_v2(double deta, double dphi) {
return TMath::Sqrt(deta*deta + dphi*dphi);
}


double HJetVarByCSV(double CSVj1, double Varj1, double CSVj2, double Varj2, bool pickhighestBtag) {
if ((CSVj1 > CSVj2) && pickhighestBtag) {
return Varj1;
Expand Down
66 changes: 60 additions & 6 deletions python/VHbb2017commonconfig/general.ini
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ Run_D = (run>=302030&&run<=303434)
Run_E = (run>=303435&&run<=304826)
Run_F = (run>=304911&&run<=306462)

VZ_optimize=False
Debug = True
merge = True
weightexpression = 1
Expand Down Expand Up @@ -89,6 +90,30 @@ diJetEta = <!General|Hbtag!>_eta
Jet_tight = (Jet_puId>6||Jet_Pt>50)&&Jet_jetId>4&&Jet_lepFilter
Jet_additional = Iteration$!=<!General|btagidx0!>&&Iteration$!=<!General|btagidx1!>

resolvedBtagWeightApplies = (<!Cuts|isResolved!>)
DeepCSVweightApplies = <!.|resolvedBtagWeightApplies!>

weightFxLHEScaleWeight6 = (<!Weights|weightF!>*LHEScaleWeight[6])
weightFxLHEScaleWeight4 = (<!Weights|weightF!>*LHEScaleWeight[4])
weightFxLHEScaleWeight3 = (<!Weights|weightF!>*LHEScaleWeight[3])
weightFxLHEScaleWeight1 = (<!Weights|weightF!>*LHEScaleWeight[1])
weightnom = (<!Weights|weightF!>)

LHEScalefactor2AppliesmuF = ((( <!General|weightFxLHEScaleWeight3!> < <!General|weightnom!> )&&( <!General|weightFxLHEScaleWeight4!> < <!General|weightnom!> )) || ((<!General|weightFxLHEScaleWeight3!> > <!General|weightnom!>)&&(<!General|weightFxLHEScaleWeight4!> > <!General|weightnom!>)))
LHEScalefactor2AppliesmuR = ((( <!General|weightFxLHEScaleWeight1!> < <!General|weightnom!> )&&( <!General|weightFxLHEScaleWeight6!> < <!General|weightnom!> )) || ((<!General|weightFxLHEScaleWeight1!> > <!General|weightnom!>)&&(<!General|weightFxLHEScaleWeight6!> > <!General|weightnom!>)))

LHEScalefactor2AppliesEye =( ((sampleIndex==13000)||(sampleIndex==13200)||(sampleIndex==13400)||(sampleIndex==13600)||(sampleIndex==13300)||(sampleIndex==13500)||(sampleIndex==13700)||(sampleIndex==18100)||(sampleIndex==18200)||(sampleIndex==6000)||(sampleIndex==6200)||(sampleIndex==6400)||(sampleIndex==6600)||(sampleIndex==6800)||(sampleIndex==7000)||(sampleIndex==6500)||(sampleIndex==6700)||(sampleIndex==6900)||(sampleIndex==7100)||(sampleIndex==19100)||(sampleIndex==19200)||(sampleIndex==17000)||(sampleIndex==17200)||(sampleIndex==17400)||(sampleIndex==17600)||(sampleIndex==17100)||(sampleIndex==17300)||(sampleIndex==17500)||(sampleIndex==17700)) || ((sampleIndex==13001)||(sampleIndex==13201)||(sampleIndex==13401)||(sampleIndex==13601)||(sampleIndex==13301)||(sampleIndex==13501)||(sampleIndex==13701)||(sampleIndex==18101)||(sampleIndex==18201)||(sampleIndex==6001)||(sampleIndex==6201)||(sampleIndex==6401)||(sampleIndex==6601)||(sampleIndex==6801)||(sampleIndex==7001)||(sampleIndex==6501)||(sampleIndex==6701)||(sampleIndex==6901)||(sampleIndex==7101)||(sampleIndex==19101)||(sampleIndex==19201)||(sampleIndex==17001)||(sampleIndex==17201)||(sampleIndex==17401)||(sampleIndex==17601)||(sampleIndex==17101)||(sampleIndex==17301)||(sampleIndex==17501)||(sampleIndex==17701)) || ((sampleIndex==13002)||(sampleIndex==13202)||(sampleIndex==13402)||(sampleIndex==13602)||(sampleIndex==13302)||(sampleIndex==13502)||(sampleIndex==13702)||(sampleIndex==18102)||(sampleIndex==18202)||(sampleIndex==6002)||(sampleIndex==6202)||(sampleIndex==6402)||(sampleIndex==6602)||(sampleIndex==6802)||(sampleIndex==7002)||(sampleIndex==6502)||(sampleIndex==6702)||(sampleIndex==6902)||(sampleIndex==7102)||(sampleIndex==19102)||(sampleIndex==19202)||(sampleIndex==17002)||(sampleIndex==17202)||(sampleIndex==17402)||(sampleIndex==17602)||(sampleIndex==17102)||(sampleIndex==17302)||(sampleIndex==17502)||(sampleIndex==17702)) || ((sampleIndex==13004)||(sampleIndex==13204)||(sampleIndex==13404)||(sampleIndex==13604)||(sampleIndex==13304)||(sampleIndex==13504)||(sampleIndex==13704)||(sampleIndex==18104)||(sampleIndex==18204)||(sampleIndex==6004)||(sampleIndex==6204)||(sampleIndex==6404)||(sampleIndex==6604)||(sampleIndex==6804)||(sampleIndex==7004)||(sampleIndex==6504)||(sampleIndex==6704)||(sampleIndex==6904)||(sampleIndex==7104)||(sampleIndex==19104)||(sampleIndex==19204)||(sampleIndex==17004)||(sampleIndex==17204)||(sampleIndex==17404)||(sampleIndex==17604)||(sampleIndex==17104)||(sampleIndex==17304)||(sampleIndex==17504)||(sampleIndex==17704)) )


LHE1ScaleWeightforW2Jets = ( (V_pt>=100.0&&V_pt<150.0)*(1.32) + (V_pt>=150.0&&V_pt<250.0)*(1.3) + (V_pt>=250.0&&V_pt<400.0)*(1.28) + (V_pt>=400.0)*(1.26) )

LHE3ScaleWeightforW2Jets = ( (V_pt>=100.0&&V_pt<150.0)*(1.02) + (V_pt>=150.0&&V_pt<250.0)*(1.04) + (V_pt>=250.0&&V_pt<400.0)*(1.06) + (V_pt>=400.0)*(1.08) )

LHE5ScaleWeightforW2Jets = ( (V_pt>=100.0&&V_pt<150.0)*(0.98) + (V_pt>=150.0&&V_pt<250.0)*(0.96) + (V_pt>=250.0&&V_pt<400.0)*(0.96) + (V_pt>=400.0)*(0.94) )

LHE7ScaleWeightforW2Jets = ( (V_pt>=100.0&&V_pt<150.0)*(0.78) + (V_pt>=150.0&&V_pt<250.0)*(0.8) + (V_pt>=250.0&&V_pt<400.0)*(0.8) + (V_pt>=400.0)*(0.8) )


#-------------------------------------------------
# Scale Factors

Expand Down Expand Up @@ -461,6 +486,13 @@ sys_cut_include = []

[Cuts]

dRbb_gt0p5 = ((-99+Alt$((hJidx[0]>-1)*(hJidx[1]>-1)*(99+(VHbb::deltaR_v2(hJets_FSRrecovered_dEta,hJets_FSRrecovered_dPhi))),0)) > 0.5)
dRbb_gt0p6 = ((-99+Alt$((hJidx[0]>-1)*(hJidx[1]>-1)*(99+(VHbb::deltaR_v2(hJets_FSRrecovered_dEta,hJets_FSRrecovered_dPhi))),0)) > 0.6)
dRbb_gt0p7 = ((-99+Alt$((hJidx[0]>-1)*(hJidx[1]>-1)*(99+(VHbb::deltaR_v2(hJets_FSRrecovered_dEta,hJets_FSRrecovered_dPhi))),0)) > 0.7)
dRbb_gt0p8 = ((-99+Alt$((hJidx[0]>-1)*(hJidx[1]>-1)*(99+(VHbb::deltaR_v2(hJets_FSRrecovered_dEta,hJets_FSRrecovered_dPhi))),0)) > 0.8)
dRbb_gt0p9 = ((-99+Alt$((hJidx[0]>-1)*(hJidx[1]>-1)*(99+(VHbb::deltaR_v2(hJets_FSRrecovered_dEta,hJets_FSRrecovered_dPhi))),0)) > 0.9)
dRbb_gt1p0 = ((-99+Alt$((hJidx[0]>-1)*(hJidx[1]>-1)*(99+(VHbb::deltaR_v2(hJets_FSRrecovered_dEta,hJets_FSRrecovered_dPhi))),0)) > 1.0)

# --------------------------------------------------------------------------------------------------
# MVA training
# --------------------------------------------------------------------------------------------------
Expand All @@ -483,24 +515,46 @@ boostedJets = (Hbb_fjidx>-1)
# isResolved should be required for all resolved regions and isBoosted for all boosted regions
#isResolved_BOOSTED = (<!.|resolvedJets!> && (!<!Cuts|all_BOOST!>))

## flag isBoosted = <!Cuts|all_BOOST!>
#isResolved_BOOSTED = (<!.|resolvedJets!> && !(boostedCR||boostedSR))
#isResolved_RESOLVED = (<!.|resolvedJets!>)
#isResolved_SR_A = (<!.|resolvedJets!> && (hJidx[0]>-1&&hJidx[1]>-1) && (!(boostedCR||boostedSR)||(resolvedSR&&boostedCR)))
#isResolved_SR_B = (<!.|resolvedJets!> && !(boostedSR&&!resolvedSR))
#isResolved_SR_B_VZ = (<!.|resolvedJets!> && !(boostedSR_VZ&&!resolvedSR_VZ))
#isResolved = <!.|isResolved_<!.|OverlapResolvedBoosted!>!>
#isResolved_VZ = (<!.|resolvedJets!> && !(boostedSR_VZ&&!resolvedSR_VZ))
#
#isBoosted_BOOSTED = (<!.|boostedJets!>)
#isBoosted_RESOLVED = (<!.|boostedJets!> && !(resolvedCR||resolvedSR))
#isBoosted_SR_A = (<!.|boostedJets!> && !(!(boostedCR||boostedSR)||(resolvedSR&&boostedCR)))
#isBoosted_SR_B = (<!.|boostedJets!> && (!(resolvedSR||resolvedCR)||(boostedSR&&resolvedCR)))
#isBoosted = <!.|isBoosted_<!.|OverlapResolvedBoosted!>!>
#isBoosted_VZ = (<!.|boostedJets!> && (!(resolvedSR_VZ||resolvedCR_VZ)||(boostedSR_VZ&&resolvedCR_VZ)))
#
#
#isBoosted_VZ = (<!.|boostedJets!> && (!(resolvedSR_VZ||resolvedCR_VZ)||(boostedSR_VZ&&resolvedCR_VZ)))


# flag isBoosted = <!Cuts|all_BOOST!>
isResolved_BOOSTED = (<!.|resolvedJets!> && !(boostedCR||boostedSR))
isResolved_RESOLVED = (<!.|resolvedJets!>)
isResolved_SR_A = (<!.|resolvedJets!> && (hJidx[0]>-1&&hJidx[1]>-1) && (!(boostedCR||boostedSR)||(resolvedSR&&boostedCR)))
isResolved_SR_B = (<!.|resolvedJets!> && !(boostedSR&&!resolvedSR))
isResolved_SR_B_VZ = (<!.|resolvedJets!> && !(boostedSR_VZ&&!resolvedSR_VZ))
isResolved = <!.|isResolved_<!.|OverlapResolvedBoosted!>!>
isResolved_VZ = (<!.|resolvedJets!> && !(boostedSR_VZ&&!resolvedSR_VZ))
isResolved_VZ_SR_B = (<!.|resolvedJets!> && !(boostedSR_VZ&&!resolvedSR_VZ))
isResolved_False = <!.|isResolved_<!.|OverlapResolvedBoosted!>!>
isResolved_True = <!.|isResolved_VZ_<!.|OverlapResolvedBoosted!>!>
isResolved = (<!.|isResolved_<!General|VZ_optimize!>!>)

isBoosted_BOOSTED = (<!.|boostedJets!>)
isBoosted_RESOLVED = (<!.|boostedJets!> && !(resolvedCR||resolvedSR))
isBoosted_SR_A = (<!.|boostedJets!> && !(!(boostedCR||boostedSR)||(resolvedSR&&boostedCR)))
isBoosted_SR_B = (<!.|boostedJets!> && (!(resolvedSR||resolvedCR)||(boostedSR&&resolvedCR)))
isBoosted = <!.|isBoosted_<!.|OverlapResolvedBoosted!>!>
isBoosted_VZ = (<!.|boostedJets!> && (!(resolvedSR_VZ||resolvedCR_VZ)||(boostedSR_VZ&&resolvedCR_VZ)))
isBoosted_VZ_SR_B = (<!.|boostedJets!> && (!(resolvedSR_VZ||resolvedCR_VZ)||(boostedSR_VZ&&resolvedCR_VZ)))
isBoosted_False = <!.|isBoosted_<!.|OverlapResolvedBoosted!>!>
isBoosted_True = <!.|isBoosted_VZ_<!.|OverlapResolvedBoosted!>!>
isBoosted = (<!.|isBoosted_<!General|VZ_optimize!>!>)


isBoosted_VZ = (<!.|boostedJets!> && (!(resolvedSR_VZ||resolvedCR_VZ)||(boostedSR_VZ&&resolvedCR_VZ)))

# essential branches which are always kept when skimming, even though they are not strictly needed for given cuts/variables
[Branches]
Expand Down
Loading