Skip to content

Commit 259515a

Browse files
authored
[PWGDQ] update dqeff direct (#18191)
1 parent 39e6b27 commit 259515a

3 files changed

Lines changed: 41 additions & 1 deletion

File tree

‎PWGDQ/Core/CutsLibrary.cxx‎

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3660,6 +3660,11 @@ AnalysisCompositeCut* o2::aod::dqcuts::GetCompositeCut(const char* cutName)
36603660
return cut;
36613661
}
36623662

3663+
if (!nameStr.compare("pairX3872Minitree")) {
3664+
cut->AddCut(GetAnalysisCut("pairX3872_minitree"));
3665+
return cut;
3666+
}
3667+
36633668
if (nameStr == "DipionPairCut1") {
36643669
cut->AddCut(GetAnalysisCut("DipionMassCut1"));
36653670
return cut;
@@ -7124,6 +7129,19 @@ AnalysisCut* o2::aod::dqcuts::GetAnalysisCut(const char* cutName)
71247129
return cut;
71257130
}
71267131

7132+
std::shared_ptr<TF1> fDeltaR2High = std::make_shared<TF1>("fDeltaR2High", "[0]+[1]*x", 0.0, 5.0);
7133+
fDeltaR2High->SetParameters(3.0, -0.4);
7134+
if (!nameStr.compare("pairX3872_minitree")) {
7135+
cut->AddCut(VarManager::kRap, -0.8, 0.8);
7136+
cut->AddCut(VarManager::kQuadDefaultDileptonMass, 3.0, 5.0);
7137+
cut->AddCut(VarManager::kDeltaR2, 0.0, 1.0, false, VarManager::kPt, 5.0, 1000.0);
7138+
cut->AddCut(VarManager::kDeltaR2, 0.0, fDeltaR2High, false, VarManager::kPt, 0.0, 5.0);
7139+
cut->AddCut(VarManager::kQuadPt, 0.0, 1000.0);
7140+
cut->AddCut(VarManager::kVertexingProcCode, 0.5, 2.5);
7141+
cut->AddCut(VarManager::kVertexingQuadProcCode, 0.5, 2.5);
7142+
return cut;
7143+
}
7144+
71277145
if (nameStr == "pairPtLow1") {
71287146
cut->AddCut(VarManager::kPt, 2.0, 1000.0);
71297147
return cut;

‎PWGDQ/Core/VarManager.h‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1059,6 +1059,7 @@ class VarManager : public TObject
10591059
kDeltaR1,
10601060
kDeltaR2,
10611061
kDeltaR,
1062+
kVertexingQuadProcCode,
10621063

10631064
// DQ-HF correlation variables
10641065
kMassCharmHadron,
@@ -6782,6 +6783,8 @@ void VarManager::FillDileptonTrackTrackVertexing(C const& collision, T1 const& l
67826783
// o2::track::TrackParCov parsDilepton = VarManager::fgFitterTwoProngBarrel.createParentTrackParCov(0);
67836784
// procCodeDileptonTrackTrack = VarManager::fgFitterThreeProngBarrel.process(parsDilepton, pars3, pars4);
67846785
procCodeDileptonTrackTrack = VarManager::fgFitterFourProngBarrel.process(pars1, pars2, pars3, pars4);
6786+
values[kVertexingProcCode] = procCodeDilepton;
6787+
values[kVertexingQuadProcCode] = procCodeDileptonTrackTrack;
67856788

67866789
// fill values
67876790
if (procCodeDilepton == 0 || procCodeDileptonTrackTrack == 0) {

‎PWGDQ/Tasks/dqEfficiency_withAssoc_direct.cxx‎

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3321,6 +3321,17 @@ struct AnalysisDileptonTrackTrack {
33213321
if (!cfgTrackSelection_TrackCuts.empty()) {
33223322
cfgTrackSelection_objArrayTrackCuts = TString(cfgTrackSelection_TrackCuts).Tokenize(",");
33233323
}
3324+
getTaskOptionValue<string>(context, "analysis-track-selection", "cfgBarrelTrackCutsJSON", cfgTrackSelection_TrackCuts, false);
3325+
if (!cfgTrackSelection_TrackCuts.empty()) {
3326+
if (cfgTrackSelection_objArrayTrackCuts == nullptr) {
3327+
cfgTrackSelection_objArrayTrackCuts = new TObjArray();
3328+
}
3329+
std::vector<AnalysisCut*> addTrackCuts = dqcuts::GetCutsFromJSON(cfgTrackSelection_TrackCuts.data());
3330+
for (const auto& t : addTrackCuts) {
3331+
auto tempObjStr = new TObjString(t->GetName());
3332+
cfgTrackSelection_objArrayTrackCuts->Add(tempObjStr);
3333+
}
3334+
}
33243335
for (Int_t icut = 0; icut < cfgTrackSelection_objArrayTrackCuts->GetEntries(); ++icut) {
33253336
TString cutName = cfgTrackSelection_objArrayTrackCuts->At(icut)->GetName();
33263337
fTrackCutNames.push_back(cutName);
@@ -3721,7 +3732,7 @@ struct AnalysisDileptonTrackTrack {
37213732
PROCESS_SWITCH(AnalysisDileptonTrackTrack, processX3872, "Run X(3872) -> J/psi + pi+ pi- pairing, using skimmed data", false);
37223733
PROCESS_SWITCH(AnalysisDileptonTrackTrack, processMCGen, "Loop over MC particle stack and fill generator level histograms", false);
37233734
PROCESS_SWITCH(AnalysisDileptonTrackTrack, processMCGenWithEventSelection, "Loop over MC particle stack and fill generator level histograms with event selection", false);
3724-
PROCESS_SWITCH(AnalysisDileptonTrackTrack, processDummy, "Dummy function", false);
3735+
PROCESS_SWITCH(AnalysisDileptonTrackTrack, processDummy, "Dummy function", true);
37253736
};
37263737

37273738
WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)
@@ -3824,6 +3835,10 @@ void DefineHistograms(HistogramManager* histMan, const TString& histClasses, con
38243835
// dqhistograms::DefineHistograms(histMan, objArray->At(iclass)->GetName(), "mctruth_track");
38253836
// }
38263837

3838+
if (classStr.Contains("MCTruthGenQuad")) {
3839+
dqhistograms::DefineHistograms(histMan, objArray->At(iclass)->GetName(), "mctruth_quad", histName);
3840+
}
3841+
38273842
if (classStr.Contains("DileptonsSelected")) {
38283843
dqhistograms::DefineHistograms(histMan, objArray->At(iclass)->GetName(), "pair", histName);
38293844
}
@@ -3847,5 +3862,9 @@ void DefineHistograms(HistogramManager* histMan, const TString& histClasses, con
38473862
if (classStr.Contains("DileptonHadronCorrelation")) {
38483863
dqhistograms::DefineHistograms(histMan, objArray->At(iclass)->GetName(), "dilepton-hadron-correlation");
38493864
}
3865+
3866+
if (classStr.Contains("Quadruplet")) {
3867+
dqhistograms::DefineHistograms(histMan, objArray->At(iclass)->GetName(), "dilepton-dihadron", histName);
3868+
}
38503869
} // end loop over histogram classes
38513870
}

0 commit comments

Comments
 (0)