Skip to content

Commit

Permalink
up
Browse files Browse the repository at this point in the history
  • Loading branch information
farakiko committed Sep 9, 2024
1 parent 2c61434 commit 2be1571
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 16 deletions.
32 changes: 17 additions & 15 deletions boostedhiggs/corrections.py
Original file line number Diff line number Diff line change
Expand Up @@ -1043,14 +1043,14 @@ def getGenLepGenQuarks(dataset, genparts: GenParticleArray):
"quark_mass": wboson_daughters[quarks].mass,
}

bquarks = {
"bquark_pt": bquarks.pt,
"bquark_eta": bquarks.eta,
"bquark_phi": bquarks.phi,
"bquark_mass": bquarks.mass,
}
bquarksVars = {
"bquarks_pt": bquarks.pt,
"bquarks_eta": bquarks.eta,
"bquarks_phi": bquarks.phi,
"bquarks_mass": bquarks.mass,
}

return lepVars, quarkVars, bquarks
return lepVars, quarkVars, bquarksVars


def getLPweights(dataset, events, candidatefj, fj_idx_lep, candidatelep_p4):
Expand All @@ -1063,7 +1063,7 @@ def getLPweights(dataset, events, candidatefj, fj_idx_lep, candidatelep_p4):

candidatefj = candidatefj - candidatelep_p4

lepVars, quarkVars, bquarks = getGenLepGenQuarks(dataset, events.GenPart)
lepVars, quarkVars, bquarksVars = getGenLepGenQuarks(dataset, events.GenPart)

ak8_jets = np.array(
np.stack(
Expand All @@ -1090,22 +1090,24 @@ def getLPweights(dataset, events, candidatefj, fj_idx_lep, candidatelep_p4):
)
for key, var in skim_vars.items()
}
gen_parts_eta_phi = np.array(np.dstack((Gen2qVars["Gen2qEta"], Gen2qVars["Gen2qPhi"])))

if "HToWW" not in dataset:

print("Gen2qVars['Gen2qEta']", Gen2qVars["Gen2qEta"].shape)
bquarkVars = {
f"bquarkVars{var}": ak.to_numpy(
GenbquarksVars = {
f"Genbquarks{var}": ak.to_numpy(
ak.fill_none(
ak.pad_none(bquarks[f"bquark_{key}"], 2, axis=1, clip=True),
ak.pad_none(bquarksVars[f"bquark_{key}"], 2, axis=1, clip=True),
FILL_NONE_VALUE,
)
)
for key, var in skim_vars.items()
}
print("bquarkVars['Gen2qEta']", bquarkVars["bquarkVarsEta"].shape)

gen_parts_eta_phi = np.array(np.dstack((Gen2qVars["Gen2qEta"], Gen2qVars["Gen2qPhi"])))
bgen_parts_eta_phi = np.array(np.dstack((GenbquarksVars["GenbquarksEta"], GenbquarksVars["GenbquarksPhi"])))

else:
bgen_parts_eta_phi = None

# prepare the Gen lepton in case we mask objects around it
GenlepVars = {
Expand Down Expand Up @@ -1166,4 +1168,4 @@ def getLPweights(dataset, events, candidatefj, fj_idx_lep, candidatelep_p4):

pf_cands = np.dstack((pf_cands_px, pf_cands_py, pf_cands_pz, pf_cands_E))

return pf_cands, gen_parts_eta_phi, ak8_jets
return pf_cands, gen_parts_eta_phi, ak8_jets, bgen_parts_eta_phi
8 changes: 7 additions & 1 deletion boostedhiggs/hwwprocessor.py
Original file line number Diff line number Diff line change
Expand Up @@ -746,7 +746,7 @@ def process(self, events: ak.Array):
if self._getLPweights:
from boostedhiggs.corrections import getLPweights

(pf_cands, gen_parts_eta_phi, ak8_jets) = getLPweights(
(pf_cands, gen_parts_eta_phi, ak8_jets, bgen_parts_eta_phi) = getLPweights(
dataset,
events[selection_ch],
candidatefj[selection_ch],
Expand All @@ -765,6 +765,12 @@ def process(self, events: ak.Array):
lpvars[f"LP_quark{quarkidx}_eta"] = gen_parts_eta_phi[:, quarkidx, 0]
lpvars[f"LP_quark{quarkidx}_phi"] = gen_parts_eta_phi[:, quarkidx, 1]

if bgen_parts_eta_phi is not None:

for quarkidx in range(bgen_parts_eta_phi.shape[1]):
lpvars[f"LP_bquark{quarkidx}_eta"] = bgen_parts_eta_phi[:, quarkidx, 0]
lpvars[f"LP_bquark{quarkidx}_phi"] = bgen_parts_eta_phi[:, quarkidx, 1]

lpvars["LP_fj_pt"] = ak8_jets[:, 0]
lpvars["LP_fj_eta"] = ak8_jets[:, 1]
lpvars["LP_fj_phi"] = ak8_jets[:, 2]
Expand Down

0 comments on commit 2be1571

Please sign in to comment.