Skip to content

Commit 1f7d5c0

Browse files
author
Nima Zardoshti
committed
adding jets to Run 3 Validation
adding hf-jets pre-rebase commit adding HF-jet comparisons intermdeiate Adding Jets to the HF framework
1 parent c5a4f0e commit 1f7d5c0

6 files changed

Lines changed: 166 additions & 14 deletions

File tree

codeHF/Compare.C

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,39 @@ Int_t Compare(TString filerun3 = "AnalysisResults_O2.root", TString filerun2 = "
207207
AddHistogram(vecHisJpsi, "decay length error (cm)", "hDecLenErrJpsi", "hf-task-jpsi/hDecLenErr", 1, 1, 0);
208208
AddHistogram(vecHisJpsi, "decay length XY error (cm)", "hDecLenXYErrJpsi", "hf-task-jpsi/hDecLenXYErr", 1, 1, 0);
209209

210+
VecSpecHis vecHisJets;
211+
AddHistogram(vecHisJets, "#it{p}_{T}^{jet} (GeV/#it{c})", "fHistJetPt", "jet-finder-hf-data/h_jet_pt", 1, 1, 0);
212+
AddHistogram(vecHisJets, "#phi", "fHistJetPhi", "jet-finder-hf-data/h_jet_phi", 1, 1, 0);
213+
AddHistogram(vecHisJets, "#eta", "fHistJetEta", "jet-finder-hf-data/h_jet_eta", 1, 1, 0);
214+
AddHistogram(vecHisJets, "N_{tracks}", "fHistJetNConstituents", "jet-finder-hf-data/h_jet_ntracks", 1, 1, 0);
215+
AddHistogram(vecHisJets, "#it{p}_{T}^{cand} (GeV/#it{c})", "fHistJetCandPt", "jet-finder-hf-data/h_D0_pt", 1, 1, 0);
216+
217+
VecSpecHis vecHisJetSubstructure;
218+
AddHistogram(vecHisJetSubstructure, "z_{g}", "fHistJetZg", "jet-substructure-hf-data/h_jet_zg", 1, 0, 0);
219+
AddHistogram(vecHisJetSubstructure, "R_{g}", "fHistJetRg", "jet-substructure-hf-data/h_jet_rg", 1, 0, 0);
220+
AddHistogram(vecHisJetSubstructure, "n_{SD}", "fHistJetNsd", "jet-substructure-hf-data/h_jet_nsd", 1, 0, 0);
221+
222+
VecSpecHis vecHisJetsMC;
223+
AddHistogram(vecHisJetsMC, "#it{p}_{T,det}^{jet} (GeV/#it{c})", "fHistJetPt", "jet-finder-hf-mcd/h_jet_pt", 1, 1, 0);
224+
AddHistogram(vecHisJetsMC, "#it{p}_{T,gen}^{jet} (GeV/#it{c})", "fHistJetPt_Part", "jet-finder-hf-mcp/h_jet_pt", 1, 1, 0);
225+
AddHistogram(vecHisJetsMC, "#phi_{det}", "fHistJetPhi", "jet-finder-hf-mcd/h_jet_phi", 1, 1, 0);
226+
AddHistogram(vecHisJetsMC, "#phi_{gen}", "fHistJetPhi_Part", "jet-finder-hf-mcp/h_jet_phi", 1, 1, 0);
227+
AddHistogram(vecHisJetsMC, "#eta_{det}", "fHistJetEta", "jet-finder-hf-mcd/h_jet_eta", 1, 1, 0);
228+
AddHistogram(vecHisJetsMC, "#eta_{gen}", "fHistJetEta_Part", "jet-finder-hf-mcp/h_jet_eta", 1, 1, 0);
229+
AddHistogram(vecHisJetsMC, "N_{tracks,det}", "fHistJetNConstituents", "jet-finder-hf-mcd/h_jet_ntracks", 1, 1, 0);
230+
AddHistogram(vecHisJetsMC, "N_{tracks,gen}", "fHistJetNConstituents_Part", "jet-finder-hf-mcp/h_jet_ntracks", 1, 1, 0);
231+
AddHistogram(vecHisJetsMC, "#it{p}_{T,det}^{cand} (GeV/#it{c})", "fHistJetCandPt", "jet-finder-hf-mcd/h_D0_pt", 1, 1, 0);
232+
AddHistogram(vecHisJetsMC, "#it{p}_{T,gen}^{cand} (GeV/#it{c})", "fHistJetCandPt_Part", "jet-finder-hf-mcp/h_D0_pt", 1, 1, 0);
233+
234+
VecSpecHis vecHisJetSubstructureMC;
235+
AddHistogram(vecHisJetSubstructureMC, "z_{g,det}", "fHistJetZg", "jet-substructure-hf-mcd/h_jet_zg", 1, 0, 0);
236+
AddHistogram(vecHisJetSubstructureMC, "z_{g,gen}", "fHistJetZg_Part", "jet-substructure-hf-mcp/h_jet_zg", 1, 0, 0);
237+
AddHistogram(vecHisJetSubstructureMC, "R_{g,det}", "fHistJetRg", "jet-substructure-hf-mcd/h_jet_rg", 1, 0, 0);
238+
AddHistogram(vecHisJetSubstructureMC, "R_{g,gen}", "fHistJetRg_Part", "jet-substructure-hf-mcp/h_jet_rg", 1, 0, 0);
239+
AddHistogram(vecHisJetSubstructureMC, "n_{SD,det}", "fHistJetNsd", "jet-substructure-hf-mcd/h_jet_nsd", 1, 0, 0);
240+
AddHistogram(vecHisJetSubstructureMC, "n_{SD,gen}", "fHistJetNsd_Part", "jet-substructure-hf-mcp/h_jet_nsd", 1, 0, 0);
241+
242+
210243
// vector of specifications of vectors: name, VecSpecHis, pads X, pads Y
211244
std::vector<std::tuple<TString, VecSpecHis, int, int>> vecSpecVecSpec;
212245

@@ -243,6 +276,14 @@ Int_t Compare(TString filerun3 = "AnalysisResults_O2.root", TString filerun2 = "
243276
vecSpecVecSpec.push_back(std::make_tuple("lc-mc-nonprompt", vecHisLcMCNonPrompt, 5, 3));
244277
if (options.Contains(" jpsi "))
245278
vecSpecVecSpec.push_back(std::make_tuple("jpsi", vecHisJpsi, 5, 3));
279+
if (options.Contains(" jets-data "))
280+
vecSpecVecSpec.push_back(std::make_tuple("jets-data", vecHisJets, 5, 3));
281+
if (options.Contains(" jets-mc "))
282+
vecSpecVecSpec.push_back(std::make_tuple("jets-mc", vecHisJetsMC, 5, 3));
283+
if (options.Contains(" jets-substructure-data "))
284+
vecSpecVecSpec.push_back(std::make_tuple("jets-substructure-data", vecHisJetSubstructure, 5, 3));
285+
if (options.Contains(" jets-substructure-mc "))
286+
vecSpecVecSpec.push_back(std::make_tuple("jets-substructure-mc", vecHisJetSubstructureMC, 5, 3));
246287

247288
// Histogram plot vertical margins
248289
Float_t marginHigh = 0.05;

codeHF/RunHFTaskLocal.C

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,10 @@ Long64_t RunHFTaskLocal(TString txtfile = "./list_ali.txt",
44
TString jsonfilename = "dpl-config_std.json",
55
Bool_t isMC = kFALSE,
66
Bool_t useO2Vertexer = kFALSE,
7-
Bool_t useAliEventCuts = kFALSE)
7+
Bool_t useAliEventCuts = kFALSE,
8+
Bool_t DoJets = kFALSE,
9+
Bool_t DOJETMATCHINGHF = kFALSE,
10+
Bool_t DOJETSUBSTRUCTURE = kFALSE)
811
{
912
// Load common libraries
1013
gSystem->Load("libCore.so");
@@ -47,6 +50,9 @@ Long64_t RunHFTaskLocal(TString txtfile = "./list_ali.txt",
4750
tasktr3->SetUseO2Vertexer();
4851
}
4952
tasktr3->SetUseCandidateAnalysisCuts();
53+
tasktr3->SetDoJetFinding(DoJets);
54+
tasktr3->SetJetMatching(DOJETMATCHINGHF);
55+
tasktr3->SetDoJetSubstructure(DOJETSUBSTRUCTURE);
5056

5157
mgr->InitAnalysis();
5258
mgr->PrintStatus();

codeHF/config_input.sh

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44
# Input specification for runtest.sh
55
# (Modifies input parameters.)
66

7-
INPUT_CASE=9 # Input case
7+
INPUT_CASE=3 # Input case
88

9-
NFILESMAX=1 # Maximum number of processed input files. (Set to -0 to process all; to -N to process all but the last N files.)
9+
NFILESMAX=50 # Maximum number of processed input files. (Set to -0 to process all; to -N to process all but the last N files.)
1010

1111
# Number of input files per job (Automatic optimisation on if < 1.)
1212
NFILESPERJOB_CONVERT=0 # Conversion
@@ -38,7 +38,8 @@ INPUT_BASE="/data2/data" # alicecerno2
3838
case $INPUT_CASE in
3939
1)
4040
INPUT_LABEL="Run 2, p-p 5.02 TeV LHC17p, real"
41-
INPUT_DIR="$INPUT_BASE/Run2/pp_5.02TeV/real/LHC17p_pass1_CENT_woSDD";;
41+
INPUT_DIR="$INPUT_BASE/Run2/pp_5.02TeV/real/LHC17p_pass1_CENT_woSDD"
42+
ISMC=0;;
4243
2) # reference
4344
INPUT_LABEL="Run 2, p-p 5.02 TeV LHC17p, MC LHC18a4a2_cent"
4445
INPUT_DIR="$INPUT_BASE/Run2/pp_5.02TeV/sim/LHC18a4a2_cent/282099"

codeHF/config_tasks.sh

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ DOO2_PID_BAYES=0 # pid-bayes
4343
# Vertexing
4444
DOO2_SKIM=1 # hf-track-index-skim-creator
4545
DOO2_CAND_2PRONG=1 # hf-candidate-creator-2prong
46-
DOO2_CAND_3PRONG=1 # hf-candidate-creator-3prong
46+
DOO2_CAND_3PRONG=0 # hf-candidate-creator-3prong
4747
DOO2_CAND_CASC=0 # hf-candidate-creator-cascade
4848
DOO2_CAND_LB=0 # hf-candidate-creator-lb
4949
DOO2_CAND_X=0 # hf-candidate-creator-x
@@ -53,7 +53,7 @@ DOO2_CAND_B0=0 # hf-candidate-creator-b0
5353
DOO2_CAND_BPLUS=0 # hf-candidate-creator-bplus
5454
DOO2_CAND_DSTAR=0 # hf-candidate-creator-dstar
5555
# Selectors
56-
DOO2_SEL_D0=0 # hf-candidate-selector-d0
56+
DOO2_SEL_D0=1 # hf-candidate-selector-d0
5757
DOO2_SEL_DS=0 # hf-candidate-selector-ds-to-k-k-pi
5858
DOO2_SEL_DPLUS=0 # hf-candidate-selector-dplus-to-pi-k-pi
5959
DOO2_SEL_LC=0 # hf-candidate-selector-lc
@@ -70,7 +70,7 @@ DOO2_SEL_BPLUS=0 # hf-candidate-selector-bplus-to-d0-pi
7070
DOO2_TASK_D0=1 # hf-task-d0
7171
DOO2_TASK_DS=0 # hf-task-ds
7272
DOO2_TASK_DPLUS=0 # hf-task-dplus
73-
DOO2_TASK_LC=1 # hf-task-lc
73+
DOO2_TASK_LC=0 # hf-task-lc
7474
DOO2_TASK_LB=0 # hf-task-lb
7575
DOO2_TASK_XIC=0 # hf-task-xic
7676
DOO2_TASK_JPSI=0 # hf-task-jpsi
@@ -80,8 +80,9 @@ DOO2_TASK_LCK0SP=0 # hf-task-lc-to-k0s-p
8080
DOO2_TASK_XICC=0 # hf-task-xicc
8181
DOO2_TASK_B0=0 # hf-task-b0
8282
DOO2_TASK_BPLUS=0 # hf-task-bplus
83-
DOJETS=1 # je-jet-finder-hf
84-
DOJETMATCHINGHF=1 # je-jet-matching-hf (needs jets)
83+
DOJETS=0 # je-jet-finder-hf
84+
DOJETMATCHINGHF=0 # je-jet-matching-hf (needs jets)
85+
DOJETSUBSTRUCTURE=0 # je-jet-substructure-hf (needs jets)
8586
# Tree creators
8687
DOO2_TREE_D0=0 # hf-tree-creator-d0-to-k-pi
8788
DOO2_TREE_LC=0 # hf-tree-creator-lc-to-p-k-pi
@@ -107,7 +108,7 @@ DOO2_TRKPROP=0 # track-propagation
107108
APPLYCUTS_D0=1 # Apply D0 selection cuts.
108109
APPLYCUTS_DS=0 # Apply Ds selection cuts.
109110
APPLYCUTS_DPLUS=0 # Apply D+ selection cuts.
110-
APPLYCUTS_LC=1 # Apply Λc selection cuts.
111+
APPLYCUTS_LC=0 # Apply Λc selection cuts.
111112
APPLYCUTS_LB=0 # Apply Λb selection cuts.
112113
APPLYCUTS_XIC=0 # Apply Ξc selection cuts.
113114
APPLYCUTS_JPSI=0 # Apply J/ψ selection cuts.
@@ -366,8 +367,9 @@ function MakeScriptO2 {
366367
[ $DOO2_SEL_BPLUS -eq 1 ] && WORKFLOWS+=" o2-analysis-hf-candidate-selector-bplus-to-d0-pi"
367368
# User tasks
368369
[ $DOO2_TASK_D0 -eq 1 ] && WORKFLOWS+=" o2-analysis-hf-task-d0"
369-
[ $DOJETS -eq 1 ] && WORKFLOWS+=" o2-analysis-je-jet-finder-hf"
370-
[ $DOJETMATCHINGHF -eq 1 ] && WORKFLOWS+=" o2-analysis-je-jet-finder-hf-mcd o2-analysis-je-jet-finder-hf-mcp o2-analysis-je-jet-matching-hf"
370+
[ $DOJETS -eq 1 ] && { [ "$ISMC" -eq 0 ] && WORKFLOWS+=" o2-analysis-je-jet-finder-hf-data"; [ "$ISMC" -eq 1 ] && WORKFLOWS+=" o2-analysis-je-jet-finder-hf-mcd o2-analysis-je-jet-finder-hf-mcp"; }
371+
[ $DOJETMATCHINGHF -eq 1 ] && WORKFLOWS+=" o2-analysis-je-jet-finder-hf-mcd o2-analysis-je-jet-finder-hf-mcp"
372+
[ $DOJETSUBSTRUCTURE -eq 1 ] && { [ "$ISMC" -eq 0 ] && WORKFLOWS+=" o2-analysis-je-jet-substructure-hf-data"; [ "$ISMC" -eq 1 ] && WORKFLOWS+=" o2-analysis-je-jet-substructure-hf-mcd o2-analysis-je-jet-substructure-hf-mcp"; }
371373
[ $DOO2_TASK_JPSI -eq 1 ] && WORKFLOWS+=" o2-analysis-hf-task-jpsi"
372374
[ $DOO2_TASK_DS -eq 1 ] && WORKFLOWS+=" o2-analysis-hf-task-ds"
373375
[ $DOO2_TASK_DPLUS -eq 1 ] && WORKFLOWS+=" o2-analysis-hf-task-dplus"
@@ -449,7 +451,7 @@ EOF
449451
}
450452

451453
function MakeScriptAli {
452-
ALIEXEC="root -b -q -l \"$DIR_TASKS/RunHFTaskLocal.C(\\\"\$FileIn\\\", \\\"\$JSON\\\", $ISMC, $USEO2VERTEXER, $USEALIEVCUTS)\""
454+
ALIEXEC="root -b -q -l \"$DIR_TASKS/RunHFTaskLocal.C(\\\"\$FileIn\\\", \\\"\$JSON\\\", $ISMC, $USEO2VERTEXER, $USEALIEVCUTS, $DOJETS, $DOJETMATCHINGHF, $DOJETSUBSTRUCTURE)\""
453455
cat << EOF > "$SCRIPT_ALI"
454456
#!/bin/bash
455457
FileIn="\$1"
@@ -472,6 +474,8 @@ function MakeScriptPostprocess {
472474
[ $DOO2_TASK_LC -eq 1 ] && { OPT_COMPARE+=" lc "; [ "$ISMC" -eq 1 ] && OPT_COMPARE+=" lc-mc-pt lc-mc-prompt lc-mc-nonprompt lc-mc-eta lc-mc-phi "; }
473475
[ $DOO2_TASK_XIC -eq 1 ] && OPT_COMPARE+=" xic "
474476
[ $DOO2_TASK_JPSI -eq 1 ] && OPT_COMPARE+=" jpsi "
477+
[ $DOJETS -eq 1 ] && { [ "$ISMC" -eq 0 ] && OPT_COMPARE+=" jets-data "; [ "$ISMC" -eq 1 ] && OPT_COMPARE+=" jets-mc "; }
478+
[ $DOJETSUBSTRUCTURE -eq 1 ] && { [ "$ISMC" -eq 0 ] && OPT_COMPARE+=" jets-substructure-data "; [ "$ISMC" -eq 1 ] && OPT_COMPARE+=" jets-substructure-mc "; }
475479
[ "$OPT_COMPARE" ] && POSTEXEC+=" && root -b -q -l \"$DIR_TASKS/Compare.C(\\\"\$FileO2\\\", \\\"\$FileAli\\\", \\\"$OPT_COMPARE\\\", $DORATIO)\""
476480
}
477481
# Plot particle reconstruction efficiencies.

codeHF/dpl-config_run3.json

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1031,6 +1031,90 @@
10311031
]
10321032
}
10331033
},
1034+
"jet-finder-hf-data": {
1035+
"jetR": "0.4",
1036+
"jetPtMin": "0.0",
1037+
"jetPtMax": "1000.0",
1038+
"trackPtMin": "0.15",
1039+
"trackPtMax": "1000.0",
1040+
"trackEtaMin": "-0.8",
1041+
"trackEtaMax": "0.8",
1042+
"candPtMin": "0",
1043+
"candPtMax": "100",
1044+
"candYMin": "-0.8",
1045+
"candYMax": "0.8",
1046+
"d_selectionFlagD0": "0",
1047+
"d_selectionFlagD0bar": "0",
1048+
"processData": "true",
1049+
"processMCD": "false",
1050+
"processMCP": "false"
1051+
},
1052+
"jet-finder-hf-mcd": {
1053+
"jetR": "0.4",
1054+
"jetPtMin": "0.0",
1055+
"jetPtMax": "1000.0",
1056+
"trackPtMin": "0.15",
1057+
"trackPtMax": "1000.0",
1058+
"trackEtaMin": "-0.8",
1059+
"trackEtaMax": "0.8",
1060+
"candPtMin": "0.0",
1061+
"candPtMax": "100.0",
1062+
"candYMin": "-0.8",
1063+
"candYMax": "0.8",
1064+
"d_selectionFlagD0": "0",
1065+
"d_selectionFlagD0bar": "0",
1066+
"processData": "false",
1067+
"processMCD": "true",
1068+
"processMCP": "false"
1069+
},
1070+
"jet-finder-hf-mcp": {
1071+
"jetR": "0.4",
1072+
"jetPtMin": "0.0",
1073+
"jetPtMax": "1000.0",
1074+
"trackPtMin": "0.15",
1075+
"trackPtMax": "1000.0",
1076+
"trackEtaMin": "-0.8",
1077+
"trackEtaMax": "0.8",
1078+
"candPtMin": "0.0",
1079+
"candPtMax": "100.0",
1080+
"candYMin": "-0.8",
1081+
"candYMax": "0.8",
1082+
"d_selectionFlagD0": "0",
1083+
"d_selectionFlagD0bar": "0",
1084+
"processData": "false",
1085+
"processMCD": "false",
1086+
"processMCP": "true"
1087+
},
1088+
"jet-substructure-hf-data": {
1089+
"jetPtMin": "0.0",
1090+
"zCut": "0.1",
1091+
"beta": "0.0",
1092+
"jetR": "0.4",
1093+
"doConstSub": "false",
1094+
"processData": "true",
1095+
"processMCD": "false",
1096+
"processMCP": "false"
1097+
},
1098+
"jet-substructure-hf-mcd": {
1099+
"jetPtMin": "0.0",
1100+
"zCut": "0.1",
1101+
"beta": "0.0",
1102+
"jetR": "0.4",
1103+
"doConstSub": "false",
1104+
"processData": "false",
1105+
"processMCD": "true",
1106+
"processMCP": "false"
1107+
},
1108+
"jet-substructure-hf-mcp": {
1109+
"jetPtMin": "0.0",
1110+
"zCut": "0.1",
1111+
"beta": "0.0",
1112+
"jetR": "0.4",
1113+
"doConstSub": "false",
1114+
"processData": "false",
1115+
"processMCD": "false",
1116+
"processMCP": "true"
1117+
},
10341118
"hf-task-d0": {
10351119
"selectionFlagD0": "0",
10361120
"selectionFlagD0bar": "0",

codeHF/workflows.yml

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -233,7 +233,7 @@ workflows:
233233
dependencies:
234234
- o2-analysis-hf-candidate-selector-d0
235235

236-
o2-analysis-je-jet-finder-hf: &jethf
236+
o2-analysis-je-jet-finder-hf-data: &jethf
237237
executable: o2-analysis-je-jet-finder-hf
238238
dependencies: o2-analysis-hf-task-d0
239239

@@ -251,6 +251,22 @@ workflows:
251251
requires_mc: yes
252252
dependencies: [o2-analysis-je-jet-finder-hf-mcd, o2-analysis-je-jet-finder-hf-mcp]
253253

254+
o2-analysis-je-jet-substructure-hf-data:
255+
executable: o2-analysis-je-jet-substructure-hf
256+
dependencies: [o2-analysis-hf-task-d0, o2-analysis-je-jet-finder-hf-data]
257+
258+
o2-analysis-je-jet-substructure-hf-mcd:
259+
executable: o2-analysis-je-jet-substructure-hf
260+
dependencies: [o2-analysis-hf-task-d0, o2-analysis-je-jet-finder-hf-mcd]
261+
options: "--hfjetsubstructureMode mcd"
262+
requires_mc: yes
263+
264+
o2-analysis-je-jet-substructure-hf-mcp:
265+
executable: o2-analysis-je-jet-substructure-hf
266+
dependencies: [o2-analysis-hf-task-d0, o2-analysis-je-jet-finder-hf-mcp]
267+
options: "--hfjetsubstructureMode mcp"
268+
requires_mc: yes
269+
254270
# Tree creators
255271

256272
o2-analysis-hf-tree-creator-d0-to-k-pi:

0 commit comments

Comments
 (0)