Skip to content

Commit 05e0ada

Browse files
authored
Merge branch 'AliceO2Group:master' into master
2 parents e750d73 + 56bb946 commit 05e0ada

2 files changed

Lines changed: 34 additions & 0 deletions

File tree

PWGDQ/Tasks/dqEfficiency.cxx

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1040,9 +1040,18 @@ struct AnalysisSameEventPairing {
10401040
struct AnalysisDileptonTrack {
10411041
Produces<aod::DileptonTrackCandidates> dileptontrackcandidatesList;
10421042
OutputObj<THashList> fOutputList{"output"};
1043+
Service<o2::ccdb::BasicCCDBManager> ccdb;
1044+
o2::base::MatLayerCylSet* lut = nullptr;
1045+
10431046
// TODO: For now this is only used to determine the position in the filter bit map for the hadron cut
10441047
Configurable<string> fConfigTrackCuts{"cfgLeptonCuts", "", "Comma separated list of barrel track cuts"};
10451048
Configurable<bool> fConfigFillCandidateTable{"cfgFillCandidateTable", false, "Produce a single flat tables with all relevant information dilepton-track candidates"};
1049+
Configurable<std::string> ccdburl{"ccdburl", "http://alice-ccdb.cern.ch", "url of the ccdb repository"};
1050+
Configurable<bool> fCorrFullGeo{"cfgCorrFullGeo", false, "Use full geometry to correct for MCS effects in track propagation"};
1051+
Configurable<bool> fNoCorr{"cfgNoCorrFwdProp", false, "Do not correct for MCS effects in track propagation"};
1052+
Configurable<std::string> lutPath{"lutPath", "GLO/Param/MatLUT", "Path of the Lut parametrization"};
1053+
Configurable<std::string> geoPath{"geoPath", "GLO/Config/GeometryAligned", "Path of the geometry file"};
1054+
10461055
Filter eventFilter = aod::dqanalysisflags::isEventSelected == 1;
10471056
// Filter dileptonFilter = aod::reducedpair::mass > 2.92f && aod::reducedpair::mass < 3.16f && aod::reducedpair::sign == 0;
10481057
// Filter dileptonFilter = aod::reducedpair::mass > 2.6f && aod::reducedpair::mass < 3.5f && aod::reducedpair::sign == 0;
@@ -1075,6 +1084,21 @@ struct AnalysisDileptonTrack {
10751084
return;
10761085
}
10771086

1087+
ccdb->setURL(ccdburl.value);
1088+
ccdb->setCaching(true);
1089+
ccdb->setLocalObjectValidityChecking();
1090+
1091+
if (fNoCorr) {
1092+
VarManager::SetupFwdDCAFitterNoCorr();
1093+
} else if (fCorrFullGeo) {
1094+
if (!o2::base::GeometryManager::isGeometryLoaded()) {
1095+
ccdb->get<TGeoManager>(geoPath);
1096+
}
1097+
} else {
1098+
lut = o2::base::MatLayerCylSet::rectifyPtrFromFile(ccdb->get<o2::base::MatLayerCylSet>(lutPath));
1099+
VarManager::SetupMatLUTFwdDCAFitter(lut);
1100+
}
1101+
10781102
TString sigNamesStr = fConfigMCRecSignals.value;
10791103
std::unique_ptr<TObjArray> objRecSigArray(sigNamesStr.Tokenize(","));
10801104
TString histNames;

PWGDQ/Tasks/tableReader_withAssoc.cxx

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ DECLARE_SOA_COLUMN(TauxyBcandidate, tauxyBcandidate, float);
9494
DECLARE_SOA_COLUMN(TauzBcandidate, tauzBcandidate, float);
9595
DECLARE_SOA_COLUMN(CosPBcandidate, cosPBcandidate, float);
9696
DECLARE_SOA_COLUMN(Chi2Bcandidate, chi2Bcandidate, float);
97+
DECLARE_SOA_COLUMN(Ptassoc, ptassoc, float);
9798
DECLARE_SOA_COLUMN(PINassoc, pINassoc, float);
9899
DECLARE_SOA_COLUMN(Etaassoc, etaassoc, float);
99100
DECLARE_SOA_COLUMN(Ptpair, ptpair, float);
@@ -139,6 +140,9 @@ DECLARE_SOA_COLUMN(LxyeePoleMass, lxyJPsi2eePoleMass, float);
139140
DECLARE_SOA_COLUMN(Lzee, lzJPsi2ee, float);
140141
DECLARE_SOA_COLUMN(AmbiguousInBunchPairs, AmbiguousJpsiPairsInBunch, bool);
141142
DECLARE_SOA_COLUMN(AmbiguousOutOfBunchPairs, AmbiguousJpsiPairsOutOfBunch, bool);
143+
// Candidate columns for JPsi/muon correlations
144+
DECLARE_SOA_COLUMN(DeltaEta, deltaEta, float);
145+
DECLARE_SOA_COLUMN(DeltaPhi, deltaPhi, float);
142146
} // namespace dqanalysisflags
143147

144148
DECLARE_SOA_TABLE(EventCuts, "AOD", "DQANAEVCUTSA", dqanalysisflags::IsEventSelected); //! joinable to ReducedEvents
@@ -163,6 +167,9 @@ DECLARE_SOA_TABLE(BmesonCandidates, "AOD", "DQBMESONSA",
163167
dqanalysisflags::TPCNclsassoc, dqanalysisflags::TPCNclsleg1, dqanalysisflags::TPCNclsleg2,
164168
dqanalysisflags::TPCChi2assoc, dqanalysisflags::TPCChi2leg1, dqanalysisflags::TPCChi2leg2,
165169
dqanalysisflags::IsJpsiFromBSelected, dqanalysisflags::IsBarrelSelected);
170+
DECLARE_SOA_TABLE(JPsiMuonCandidates, "AOD", "DQJPSIMUONA",
171+
dqanalysisflags::DeltaEta, dqanalysisflags::DeltaPhi,
172+
dqanalysisflags::MassDileptonCandidate, dqanalysisflags::Ptpair, dqanalysisflags::Etapair, dqanalysisflags::Ptassoc, dqanalysisflags::Etaassoc);
166173
DECLARE_SOA_TABLE(JPsieeCandidates, "AOD", "DQPSEUDOPROPER", dqanalysisflags::Massee, dqanalysisflags::Ptee, dqanalysisflags::Lxyee, dqanalysisflags::LxyeePoleMass, dqanalysisflags::Lzee, dqanalysisflags::AmbiguousInBunchPairs, dqanalysisflags::AmbiguousOutOfBunchPairs);
167174
} // namespace o2::aod
168175

@@ -2928,6 +2935,7 @@ struct AnalysisAsymmetricPairing {
29282935
// tracks passing the fConfigTrackCut cut. The dileptons cuts from the same-event pairing task are auto-detected
29292936
struct AnalysisDileptonTrack {
29302937
Produces<aod::BmesonCandidates> BmesonsTable;
2938+
Produces<aod::JPsiMuonCandidates> DileptonTrackTable;
29312939
OutputObj<THashList> fOutputList{"output"};
29322940

29332941
Configurable<string> fConfigTrackCuts{"cfgTrackCuts", "kaonPID", "Comma separated list of cuts for the track to be correlated with the dileptons"};
@@ -3349,6 +3357,8 @@ struct AnalysisDileptonTrack {
33493357

33503358
VarManager::FillDileptonHadron(dilepton, track, fValuesHadron);
33513359
VarManager::FillDileptonTrackVertexing<TCandidateType, TEventFillMap, TTrackFillMap>(event, lepton1, lepton2, track, fValuesHadron);
3360+
// Fill table for correlation analysis
3361+
DileptonTrackTable(fValuesHadron[VarManager::kDeltaEta], fValuesHadron[VarManager::kDeltaPhi], dilepton.mass(), dilepton.pt(), dilepton.eta(), track.pt(), track.eta());
33523362
}
33533363

33543364
// Fill histograms for the triplets

0 commit comments

Comments
 (0)