Closed yipengsun closed 2 years ago
My current way of assigning weights to emulate iso_nnk
cuts is complete nonsense.
We have tracked down the proper (Phobe's) way to do it. Will implement based on that.
To be more specific: My current way of applying weights was just apply a single efficiency from the PIDCalib true $K$ samples passing iso_nnk > 0.2
cut. It is nonsense because we don't take the true ID of the track into account! Blindly applying some weight obtained from PIDCalib true $K$ certainly doesn't make sense.
What Phoebe does is: Apply PIDCalib true weights based on the true ID of the particle: https://github.com/umd-lhcb/RDRDstRun1AnalysisPreservation/blob/7fc28713eb8ff359bd6a4a6f0f7d188118f78afd/proc/AddB.C#L5199-L5255
Attached is the latest comparison, with updated iso_nnk
weights. I'd say now it looks better, though the efficiency gains among skims are still not constant, which still need more thinking.
All skim cuts are validated on Phoebe's run 1 ntuples; the only difference between MC and data is: For MC, we applying PID cuts as weights. Now the PID weights for MC has reasonable agreement w/ data (comparing 2016 MD data w/ 2016 MD normalization). We consider this naively validated.
So far, in our $D^0$ templates, the 2OS and DD skims have suspicious yields compared to run 1.
Comparing skim weights
We apply the global cuts, including
D0
mass window cut and in fit range cutD0
D0Mu
ISO ProbNNk weights
We require
iso_nnk1 < 0.2 && iso_nnk2 < 0.2
. In MC, these cuts are applied as weights, named aswpid_iso_nnkN_low_prob
. We compare the mean between data and MC.:By data, I mean
(double)(iso_nnkN < 0.2)
. By MC, I meanwpid_iso_nnkN_low_prob
.The study is done in 2016 MD for data,
D0Mu
2016 MD for MC. NO SKIM CUT APPLIED.