Skip to content
Open
Show file tree
Hide file tree
Changes from all 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
104 changes: 104 additions & 0 deletions RecoTracker/LSTCore/standalone/analysis/jets/reformat_jets2.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
##########################################################
#
# Adds deltaR branches to the trackingNtuple.root file
# using GenJets.
#
##########################################################

import matplotlib.pyplot as plt
import ROOT
from ROOT import TFile
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 @@ -195,9 +195,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 @@ -672,16 +672,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", "avgOTlen"]
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", "T4", "pT5_lower", "pT3_lower", "T5_lower", "pLS_lower"]
#lowerObjectType = ["pT5_lower", "pT3_lower", "T5_lower"]

Expand Down Expand Up @@ -478,11 +478,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 @@ -735,7 +735,11 @@ def plot_standard_performance_plots(args):
"fakeorduplrate": ["pt", "ptlow", "ptmtv", "eta", "phi"],
"avgOTlen": ["eta"],
}
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 @@ -757,9 +761,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