Skip to content

Commit 4ed329e

Browse files
[PWGDQ] Adding first version of mini tree (#7562)
* Adding first version of mini tree * Fixing clang --------- Co-authored-by: Lucamicheletti93 <luca.mike93@gmail.com>
1 parent f1e7509 commit 4ed329e

2 files changed

Lines changed: 25 additions & 0 deletions

File tree

PWGDQ/DataModel/ReducedInfoTables.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -809,6 +809,9 @@ DECLARE_SOA_TABLE(DimuonsAll, "AOD", "RTDIMUONALL", //!
809809
reducedpair::VertexPz,
810810
reducedpair::SVertex);
811811

812+
DECLARE_SOA_TABLE(DileptonsMiniTree, "AOD", "RTDILEPTMTREE", //!
813+
reducedpair::Mass, reducedpair::Pt, reducedpair::Eta, reducedpair::CentFT0C, reducedpair::Cos2DeltaPhi);
814+
812815
using Dielectron = Dielectrons::iterator;
813816
using StoredDielectron = StoredDielectrons::iterator;
814817
using Dimuon = Dimuons::iterator;
@@ -819,6 +822,7 @@ using DileptonFlow = DileptonsFlow::iterator;
819822
using DileptonInfo = DileptonsInfo::iterator;
820823
using DielectronAll = DielectronsAll::iterator;
821824
using DimuonAll = DimuonsAll::iterator;
825+
using DileptonMiniTree = DileptonsMiniTree::iterator;
822826

823827
// Tables for using analysis-dilepton-track with analysis-asymmetric-pairing
824828
DECLARE_SOA_TABLE(Ditracks, "AOD", "RTDITRACK", //!

PWGDQ/Tasks/tableReader.cxx

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -918,6 +918,7 @@ struct AnalysisSameEventPairing {
918918
Produces<aod::DimuonsAll> dimuonAllList;
919919
Produces<aod::DileptonFlow> dileptonFlowList;
920920
Produces<aod::DileptonsInfo> dileptonInfoList;
921+
Produces<aod::DileptonsMiniTree> dileptonMiniTree;
921922
float mMagField = 0.0;
922923
o2::parameters::GRPMagField* grpmag = nullptr;
923924
o2::base::MatLayerCylSet* lut = nullptr;
@@ -948,6 +949,13 @@ struct AnalysisSameEventPairing {
948949
Configurable<std::string> fCollisionSystem{"syst", "pp", "Collision system, pp or PbPb"};
949950
Configurable<float> fCenterMassEnergy{"energy", 13600, "Center of mass energy in GeV"};
950951

952+
// Configurables to create output tree (flat tables or minitree)
953+
struct : ConfigurableGroup {
954+
Configurable<bool> fConfigMiniTree{"useMiniTree.cfgMiniTree", false, "Produce a single flat table with minimal information for analysis"};
955+
Configurable<float> fConfigMiniTreeMinMass{"useMiniTree.cfgMiniTreeMinMass", 2, "Min. mass cut for minitree"};
956+
Configurable<float> fConfigMiniTreeMaxMass{"useMiniTree.cfgMiniTreeMaxMass", 5, "Max. mass cut for minitree"};
957+
} useMiniTree;
958+
951959
Service<o2::ccdb::BasicCCDBManager> ccdb;
952960
Filter filterEventSelected = aod::dqanalysisflags::isEventSelected == 1;
953961
// NOTE: the barrel filter map contains decisions for both electrons and hadrons used in the correlation task
@@ -1180,6 +1188,9 @@ struct AnalysisSameEventPairing {
11801188
dielectronAllList.reserve(1);
11811189
dimuonAllList.reserve(1);
11821190
}
1191+
if (useMiniTree.fConfigMiniTree) {
1192+
dileptonMiniTree.reserve(1);
1193+
}
11831194

11841195
if (fConfigMultDimuons.value) {
11851196

@@ -1318,6 +1329,16 @@ struct AnalysisSameEventPairing {
13181329
if (fConfigAmbiguousHist && !(t1.isAmbiguous() || t2.isAmbiguous())) {
13191330
fHistMan->FillHistClass(Form("%s_unambiguous", histNames[iCut][0].Data()), VarManager::fgValues);
13201331
}
1332+
if (useMiniTree.fConfigMiniTree) {
1333+
float dileptonMass = VarManager::fgValues[VarManager::kMass];
1334+
if (dileptonMass > useMiniTree.fConfigMiniTreeMinMass && dileptonMass < useMiniTree.fConfigMiniTreeMaxMass) {
1335+
dileptonMiniTree(VarManager::fgValues[VarManager::kMass],
1336+
VarManager::fgValues[VarManager::kPt],
1337+
VarManager::fgValues[VarManager::kRap],
1338+
VarManager::fgValues[VarManager::kCentFT0C],
1339+
VarManager::fgValues[VarManager::kCos2DeltaPhi]);
1340+
}
1341+
}
13211342
} else {
13221343
if (t1.sign() > 0) {
13231344
fHistMan->FillHistClass(histNames[iCut][1].Data(), VarManager::fgValues);

0 commit comments

Comments
 (0)