Skip to content
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions RecoTracker/LSTCore/standalone/analysis/jets/reformat_jets.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,12 @@
import numpy as np

# Load existing tree
file = TFile("/data2/segmentlinking/CMSSW_12_2_0_pre2/trackingNtuple_ttbar_PU200.root")
# file = TFile("trackingNtuple100.root")
# file = TFile("/data2/segmentlinking/CMSSW_12_2_0_pre2/trackingNtuple_ttbar_PU200.root")
file = TFile("trackingNtuple_100_GenJet.root")
old_tree = file["trackingNtuple"]["tree"]

# Create a new ROOT file to store the new TTree
new_file = ROOT.TFile("new_tree_temp.root", "RECREATE")
new_file = ROOT.TFile("new_tree_100_temp.root", "RECREATE")

# Create a new subdirectory in the new file
new_directory = new_file.mkdir("trackingNtuple")
Expand Down
105 changes: 105 additions & 0 deletions RecoTracker/LSTCore/standalone/analysis/jets/reformat_jets2.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
##########################################################
#
# Adds deltaR branches to the trackingNtuple.root file
# using GenJets.
#
##########################################################

import matplotlib.pyplot as plt
import ROOT
from ROOT import TFile
from myjets import getLists, createJets, matchArr
import numpy as np

# Load existing tree
# file = TFile("/data2/segmentlinking/CMSSW_12_2_0_pre2/trackingNtuple_ttbar_PU200.root")
file = TFile("trackingNtuple_100_GenJet.root")
old_tree = file["trackingNtuple"]["tree"]

# Create a new ROOT file to store the new TTree
new_file = ROOT.TFile("new_tree_100_GenJet2.root", "RECREATE")

# Create a new subdirectory in the new file
new_directory = new_file.mkdir("trackingNtuple")

# Change the current directory to the new subdirectory
new_directory.cd()

# Create a new TTree with the same structure as the old one but empty
new_tree = old_tree.CloneTree(0)

# Account for bug in 12_2_X branch
new_tree.SetBranchStatus("ph2_bbxi", False)

# Create a variable to hold the new leaves' data (a list of floats)
new_leaf_deltaEta = ROOT.std.vector('float')()
new_leaf_deltaPhi = ROOT.std.vector('float')()
new_leaf_deltaR = ROOT.std.vector('float')()

# Create a new branch in the tree
new_tree.Branch("sim_deltaEta", new_leaf_deltaEta)
new_tree.Branch("sim_deltaPhi", new_leaf_deltaPhi)
new_tree.Branch("sim_deltaR", new_leaf_deltaR)

# Loop over entries in the old tree
for ind in range(old_tree.GetEntries()):
old_tree.GetEntry(ind)

# Clear the vector to start fresh for this entry
new_leaf_deltaEta.clear()
new_leaf_deltaPhi.clear()
new_leaf_deltaR.clear()

# Creates the lists that will fill the leaves
simPt = old_tree.sim_pt
simEta = old_tree.sim_eta
simPhi = old_tree.sim_phi
simLen = len(simPt)

print(old_tree.Print())

genJetsPt = old_tree.genJetPt
genJetsEta = old_tree.genJetEta
genJetsPhi = old_tree.genJetPhi
genJetLen = len(genJetsPt)

# Declare arrays (all entries will be filled with non-dummy values)
deltaEtas = np.ones(simLen)*-999
deltaPhis = np.ones(simLen)*-999
deltaRs = np.ones(simLen)*-999

for i in range(len(simPt)):
dRTemp = 999
dPhiTemp = 999
dEtaTemp = 999
for j in range(genJetLen):
dEtaj = simEta[i] - genJetsEta[j]
dPhij = np.arccos(np.cos(simPhi[i] - genJetsPhi[j]))
dRj = np.sqrt(dEtaj**2 + dPhij**2)

# Selects smallest dR, corresponding to closest jet
if(dRj < dRTemp):
dRTemp = dRj
dPhiTemp = dPhij
dEtaTemp = dEtaj
deltaRs[i] = dRTemp
deltaPhis[i] = dPhiTemp
deltaEtas[i] = dEtaTemp


# Add the list elements to the vector
for value in deltaEtas:
new_leaf_deltaEta.push_back(value)
for value in deltaPhis:
new_leaf_deltaPhi.push_back(value)
for value in deltaRs:
new_leaf_deltaR.push_back(value)

# Fill the tree with the new values
new_tree.Fill()

# Write the tree back to the file
new_tree.Write()
new_file.Close()
file.Close()

18 changes: 9 additions & 9 deletions RecoTracker/LSTCore/standalone/code/core/write_lst_ntuple.cc
Original file line number Diff line number Diff line change
Expand Up @@ -150,9 +150,9 @@ void createJetBranches() {
ana.tx->createBranch<std::vector<float>>("sim_deltaEta");
ana.tx->createBranch<std::vector<float>>("sim_deltaPhi");
ana.tx->createBranch<std::vector<float>>("sim_deltaR");
ana.tx->createBranch<std::vector<float>>("sim_jet_eta");
ana.tx->createBranch<std::vector<float>>("sim_jet_phi");
ana.tx->createBranch<std::vector<float>>("sim_jet_pt");
ana.tx->createBranch<std::vector<float>>("genJetEta");
ana.tx->createBranch<std::vector<float>>("genJetPhi");
ana.tx->createBranch<std::vector<float>>("genJetPt");
}

//________________________________________________________________________________________________________________________________
Expand Down Expand Up @@ -577,16 +577,16 @@ unsigned int setSimTrackContainerBranches(LSTEvent* event) {
auto const& trk_sim_deltaEta = trk.getVF("sim_deltaEta");
auto const& trk_sim_deltaPhi = trk.getVF("sim_deltaPhi");
auto const& trk_sim_deltaR = trk.getVF("sim_deltaR");
auto const& trk_sim_jet_eta = trk.getVF("sim_jet_eta");
auto const& trk_sim_jet_phi = trk.getVF("sim_jet_phi");
auto const& trk_sim_jet_pt = trk.getVF("sim_jet_pt");
auto const& trk_genJetEta = trk.getVF("genJetEta");
auto const& trk_genJetPhi = trk.getVF("genJetPhi");
auto const& trk_genJetPt = trk.getVF("genJetPt");

ana.tx->pushbackToBranch<float>("sim_deltaEta", trk_sim_deltaEta[isimtrk]);
ana.tx->pushbackToBranch<float>("sim_deltaPhi", trk_sim_deltaPhi[isimtrk]);
ana.tx->pushbackToBranch<float>("sim_deltaR", trk_sim_deltaR[isimtrk]);
ana.tx->pushbackToBranch<float>("sim_jet_eta", trk_sim_jet_eta[isimtrk]);
ana.tx->pushbackToBranch<float>("sim_jet_phi", trk_sim_jet_phi[isimtrk]);
ana.tx->pushbackToBranch<float>("sim_jet_pt", trk_sim_jet_pt[isimtrk]);
ana.tx->pushbackToBranch<float>("genJetEta", trk_genJetEta[isimtrk]);
ana.tx->pushbackToBranch<float>("genJetPhi", trk_genJetPhi[isimtrk]);
ana.tx->pushbackToBranch<float>("genJetPt", trk_genJetPt[isimtrk]);
}

// Fill the branch with simulated tracks.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

sel_choices = ["base", "loweta", "xtr", "vtr", "none"]
metric_choices = ["eff", "fakerate", "duplrate", "fakeorduplrate"]
variable_choices = ["pt", "ptmtv", "ptlow", "eta", "phi", "dxy", "dz", "vxy", "deltaEta", "deltaPhi", "deltaR", "jet_eta", "jet_phi", "jet_pt"]
variable_choices = ["pt", "ptmtv", "ptlow", "eta", "phi", "dxy", "dz", "vxy", "deltaEta", "deltaPhi", "deltaR", "genJetEta", "genJetPhi", "genJetPt"]
objecttype_choices = ["TC", "pT5", "T5", "pT3", "pLS", "pT5_lower", "pT3_lower", "T5_lower", "pLS_lower"]
#lowerObjectType = ["pT5_lower", "pT3_lower", "T5_lower"]

Expand Down Expand Up @@ -429,11 +429,11 @@ def set_label(eff, output_name, raw_number):
title = "#phi diffs"
elif "_deltaR" in output_name:
title = "#Delta R"
elif "_jet_eta" in output_name:
elif "_genJetEta" in output_name:
title = "jet #eta"
elif "_jet_phi" in output_name:
elif "_genJetPhi" in output_name:
title = "jet #phi"
elif "_jet_pt" in output_name:
elif "_genJetPt" in output_name:
title = "jet pT"
elif "_dz" in output_name:
title = "z [cm]"
Expand Down Expand Up @@ -675,7 +675,11 @@ def plot_standard_performance_plots(args):
"duplrate": ["pt", "ptlow", "ptmtv", "eta", "phi"],
"fakeorduplrate": ["pt", "ptlow", "ptmtv", "eta", "phi"],
}
if (args.jet_branches): variables["eff"] = ["pt", "ptlow", "ptmtv", "eta", "phi", "dxy", "dz", "vxy", "deltaEta", "deltaPhi", "deltaR", "jet_eta", "jet_phi", "jet_pt"]
if (args.jet_branches):
variables["eff"] = ["pt", "ptlow", "ptmtv", "eta", "phi", "dxy", "dz", "vxy", "deltaEta", "deltaPhi", "deltaR", "genJetEta", "genJetPhi", "genJetPt"]
variables["duplrate"] = ["pt", "ptlow", "ptmtv", "eta", "phi", "deltaR"]
variables["fakerate"] = ["pt", "ptlow", "ptmtv", "eta", "phi", "deltaR"]
variables["fakeorduplrate"] = ["pt", "ptlow", "ptmtv", "eta", "phi", "deltaR"]
sels = {
"eff": ["base", "loweta"],
"fakerate": ["none"],
Expand All @@ -696,9 +700,9 @@ def plot_standard_performance_plots(args):
xcoarses["deltaEta"] = [False, True]
xcoarses["deltaPhi"] = [False, True]
xcoarses["deltaR"] = [False, True]
xcoarses["jet_eta"] = [False, True]
xcoarses["jet_phi"] = [False, True]
xcoarses["jet_pt"] = [False, True]
xcoarses["genJetEta"] = [False, True]
xcoarses["genJetPhi"] = [False, True]
xcoarses["genJetPt"] = [False, True]

types = objecttype_choices
breakdowns = {
Expand Down
Loading