Skip to content

Commit f019d43

Browse files
labranch94alibuild
andauthored
[PWGDQ] X(3872) analysis (#9697)
Co-authored-by: ALICE Action Bot <alibuild@cern.ch>
1 parent 881fb6d commit f019d43

File tree

6 files changed

+90
-6
lines changed

6 files changed

+90
-6
lines changed

PWGDQ/Core/CutsLibrary.cxx

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -383,6 +383,12 @@ AnalysisCompositeCut* o2::aod::dqcuts::GetCompositeCut(const char* cutName)
383383
return cut;
384384
}
385385

386+
if (!nameStr.compare("JpsiPWGSkimmedCuts5")) {
387+
cut->AddCut(GetAnalysisCut("electronTrackQualitySkimmed3"));
388+
cut->AddCut(GetAnalysisCut("jpsi_TPCPID_debug8"));
389+
return cut;
390+
}
391+
386392
if (!nameStr.compare("pidElectron_ionut")) {
387393
cut->AddCut(GetAnalysisCut("pidcalib_ele"));
388394
cut->AddCut(GetAnalysisCut("jpsiStandardKine3"));
@@ -497,6 +503,12 @@ AnalysisCompositeCut* o2::aod::dqcuts::GetCompositeCut(const char* cutName)
497503
return cut;
498504
}
499505

506+
if (!nameStr.compare("pionPIDCut2")) {
507+
cut->AddCut(GetAnalysisCut("pionQualityCut2"));
508+
cut->AddCut(GetAnalysisCut("pionPIDnsigma"));
509+
return cut;
510+
}
511+
500512
if (!nameStr.compare("PIDCalibElectron")) {
501513
cut->AddCut(GetAnalysisCut("pidcalib_ele"));
502514
return cut;
@@ -3300,6 +3312,11 @@ AnalysisCompositeCut* o2::aod::dqcuts::GetCompositeCut(const char* cutName)
33003312
return cut;
33013313
}
33023314

3315+
if (!nameStr.compare("pairJpsi3")) {
3316+
cut->AddCut(GetAnalysisCut("pairJpsi3"));
3317+
return cut;
3318+
}
3319+
33033320
if (!nameStr.compare("pairPsi2S")) {
33043321
cut->AddCut(GetAnalysisCut("pairPsi2S"));
33053322
return cut;
@@ -3315,11 +3332,26 @@ AnalysisCompositeCut* o2::aod::dqcuts::GetCompositeCut(const char* cutName)
33153332
return cut;
33163333
}
33173334

3335+
if (!nameStr.compare("pairX3872Cut2")) {
3336+
cut->AddCut(GetAnalysisCut("pairX3872_2"));
3337+
return cut;
3338+
}
3339+
3340+
if (!nameStr.compare("pairX3872Cut3")) {
3341+
cut->AddCut(GetAnalysisCut("pairX3872_3"));
3342+
return cut;
3343+
}
3344+
33183345
if (!nameStr.compare("DipionPairCut1")) {
33193346
cut->AddCut(GetAnalysisCut("DipionMassCut1"));
33203347
return cut;
33213348
}
33223349

3350+
if (!nameStr.compare("DipionPairCut2")) {
3351+
cut->AddCut(GetAnalysisCut("DipionMassCut2"));
3352+
return cut;
3353+
}
3354+
33233355
if (!nameStr.compare("pairRapidityForward")) {
33243356
cut->AddCut(GetAnalysisCut("pairRapidityForward"));
33253357
return cut;
@@ -4482,13 +4514,31 @@ AnalysisCut* o2::aod::dqcuts::GetAnalysisCut(const char* cutName)
44824514
return cut;
44834515
}
44844516

4517+
if (!nameStr.compare("electronTrackQualitySkimmed3")) {
4518+
cut->AddCut(VarManager::kPt, 1.0, 1000.0);
4519+
cut->AddCut(VarManager::kEta, -0.9, 0.9);
4520+
cut->AddCut(VarManager::kIsITSibAny, 0.5, 1.5);
4521+
cut->AddCut(VarManager::kTPCnclsCR, 70, 161);
4522+
cut->AddCut(VarManager::kTPCncls, 70, 161);
4523+
return cut;
4524+
}
4525+
44854526
if (!nameStr.compare("pionQualityCut1")) {
44864527
cut->AddCut(VarManager::kPt, 0.15, 1000.0);
44874528
cut->AddCut(VarManager::kIsITSibAny, 0.5, 1.5);
44884529
cut->AddCut(VarManager::kTPCncls, 70, 161);
44894530
return cut;
44904531
}
44914532

4533+
if (!nameStr.compare("pionQualityCut2")) {
4534+
cut->AddCut(VarManager::kPt, 0.15, 1000.0);
4535+
cut->AddCut(VarManager::kEta, -0.9, 0.9);
4536+
cut->AddCut(VarManager::kIsITSibAny, 0.5, 1.5);
4537+
cut->AddCut(VarManager::kTPCncls, 90, 161);
4538+
cut->AddCut(VarManager::kTPCnclsCR, 70, 161);
4539+
return cut;
4540+
}
4541+
44924542
if (!nameStr.compare("pidbasic")) {
44934543
cut->AddCut(VarManager::kEta, -0.9, 0.9);
44944544
cut->AddCut(VarManager::kTPCncls, 60, 161.);
@@ -6133,6 +6183,11 @@ AnalysisCut* o2::aod::dqcuts::GetAnalysisCut(const char* cutName)
61336183
return cut;
61346184
}
61356185

6186+
if (!nameStr.compare("DipionMassCut2")) {
6187+
cut->AddCut(VarManager::kMass, 0.0, 1.0);
6188+
return cut;
6189+
}
6190+
61366191
if (!nameStr.compare("pairMassLow1")) {
61376192
cut->AddCut(VarManager::kMass, 1.0, 1000.0);
61386193
return cut;
@@ -6233,6 +6288,11 @@ AnalysisCut* o2::aod::dqcuts::GetAnalysisCut(const char* cutName)
62336288
return cut;
62346289
}
62356290

6291+
if (!nameStr.compare("pairJpsi3")) {
6292+
cut->AddCut(VarManager::kMass, 2.92, 3.14);
6293+
return cut;
6294+
}
6295+
62366296
if (!nameStr.compare("pairPsi2S")) {
62376297
cut->AddCut(VarManager::kMass, 3.4, 3.9);
62386298
return cut;
@@ -6248,6 +6308,22 @@ AnalysisCut* o2::aod::dqcuts::GetAnalysisCut(const char* cutName)
62486308
return cut;
62496309
}
62506310

6311+
if (!nameStr.compare("pairX3872_2")) {
6312+
cut->AddCut(VarManager::kQuadDefaultDileptonMass, 3.0, 5.0);
6313+
cut->AddCut(VarManager::kQ, 0.0, 0.5);
6314+
cut->AddCut(VarManager::kDeltaR, 0.0, 5.0);
6315+
cut->AddCut(VarManager::kQuadPt, 5.0, 40.0);
6316+
return cut;
6317+
}
6318+
6319+
if (!nameStr.compare("pairX3872_3")) {
6320+
cut->AddCut(VarManager::kQuadDefaultDileptonMass, 3.0, 5.0);
6321+
cut->AddCut(VarManager::kQ, 0.0, 0.5);
6322+
cut->AddCut(VarManager::kDeltaR, 0.0, 5.0);
6323+
cut->AddCut(VarManager::kQuadPt, 0.0, 1000.0);
6324+
return cut;
6325+
}
6326+
62516327
if (!nameStr.compare("pairPtLow1")) {
62526328
cut->AddCut(VarManager::kPt, 2.0, 1000.0);
62536329
return cut;

PWGDQ/Core/HistogramsLibrary.cxx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -870,6 +870,7 @@ void o2::aod::dqhistograms::DefineHistograms(HistogramManager* hm, const char* h
870870
hm->AddHistogram(histClass, "hQ", "", false, 150, 0.0, 3.0, VarManager::kQ);
871871
hm->AddHistogram(histClass, "hDeltaR1", "", false, 100, 0.0, 10.0, VarManager::kDeltaR1);
872872
hm->AddHistogram(histClass, "hDeltaR2", "", false, 100, 0.0, 10.0, VarManager::kDeltaR2);
873+
hm->AddHistogram(histClass, "hDeltaR", "", false, 100, 0.0, 10.0, VarManager::kDeltaR);
873874
hm->AddHistogram(histClass, "hDiTrackMass", "", false, 300, 0.0, 3.0, VarManager::kDitrackMass);
874875
hm->AddHistogram(histClass, "hMCPt_MCRap", "", false, 200, 0.0, 20.0, VarManager::kMCPt, 100, -2.0, 2.0, VarManager::kMCY);
875876
hm->AddHistogram(histClass, "hMCPhi", "", false, 100, -TMath::Pi(), TMath::Pi(), VarManager::kMCPhi);
@@ -1586,6 +1587,7 @@ void o2::aod::dqhistograms::DefineHistograms(HistogramManager* hm, const char* h
15861587
hm->AddHistogram(histClass, "hQ_X3872", "", false, 150, 0.0, 3.0, VarManager::kQ);
15871588
hm->AddHistogram(histClass, "hDeltaR1_X3872", "", false, 100, 0.0, 10.0, VarManager::kDeltaR1);
15881589
hm->AddHistogram(histClass, "hDeltaR2_X3872", "", false, 100, 0.0, 10.0, VarManager::kDeltaR2);
1590+
hm->AddHistogram(histClass, "hDeltaR_X3872", "", false, 100, 0.0, 10.0, VarManager::kDeltaR);
15891591
hm->AddHistogram(histClass, "hMass_Q_X3872", "", false, 100, 3.0, 5.0, VarManager::kQuadMass, 150, 0.0, 3.0, VarManager::kQ);
15901592
hm->AddHistogram(histClass, "hMass_defaultDileptonMass_Q_X3872", "", false, 100, 3.0, 5.0, VarManager::kQuadDefaultDileptonMass, 150, 0.0, 3.0, VarManager::kQ);
15911593
hm->AddHistogram(histClass, "hMass_DeltaR1_X3872", "", false, 100, 3.0, 5.0, VarManager::kQuadMass, 100, 0.0, 10.0, VarManager::kDeltaR1);

PWGDQ/Core/VarManager.h

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
#include "Math/Vector4D.h"
3939
#include "Math/Vector3D.h"
4040
#include "Math/GenVector/Boost.h"
41+
#include "Math/VectorUtil.h"
4142

4243
#include "Framework/DataTypes.h"
4344
#include "TGeoGlobalMagField.h"
@@ -750,6 +751,7 @@ class VarManager : public TObject
750751
kQ,
751752
kDeltaR1,
752753
kDeltaR2,
754+
kDeltaR,
753755

754756
// DQ-HF correlation variables
755757
kMassCharmHadron,
@@ -4605,8 +4607,9 @@ void VarManager::FillDileptonTrackTrack(T1 const& dilepton, T2 const& hadron1, T
46054607
values[kDitrackPt] = v23.Pt();
46064608
values[kCosthetaDileptonDitrack] = (v1.Px() * v123.Px() + v1.Py() * v123.Py() + v1.Pz() * v123.Pz()) / (v1.P() * v123.P());
46074609
values[kQ] = v123.M() - defaultDileptonMass - v23.M();
4608-
values[kDeltaR1] = sqrt(pow(v1.Eta() - v2.Eta(), 2) + pow(v1.Phi() - v2.Phi(), 2));
4609-
values[kDeltaR2] = sqrt(pow(v1.Eta() - v3.Eta(), 2) + pow(v1.Phi() - v3.Phi(), 2));
4610+
values[kDeltaR1] = ROOT::Math::VectorUtil::DeltaR(v1, v2);
4611+
values[kDeltaR2] = ROOT::Math::VectorUtil::DeltaR(v1, v3);
4612+
values[kDeltaR] = sqrt(pow(values[kDeltaR1], 2) + pow(values[kDeltaR2], 2));
46104613
values[kRap] = v123.Rapidity();
46114614
}
46124615
}
@@ -4639,8 +4642,9 @@ void VarManager::FillQaudMC(T1 const& dilepton, T2 const& track1, T2 const& trac
46394642
values[kQuadEta] = v123.Eta();
46404643
values[kQuadPhi] = v123.Phi();
46414644
values[kQ] = v123.M() - defaultDileptonMass - v23.M();
4642-
values[kDeltaR1] = sqrt(pow(v1.Eta() - v2.Eta(), 2) + pow(v1.Phi() - v2.Phi(), 2));
4643-
values[kDeltaR2] = sqrt(pow(v1.Eta() - v3.Eta(), 2) + pow(v1.Phi() - v3.Phi(), 2));
4645+
values[kDeltaR1] = ROOT::Math::VectorUtil::DeltaR(v1, v2);
4646+
values[kDeltaR2] = ROOT::Math::VectorUtil::DeltaR(v1, v3);
4647+
values[kDeltaR] = sqrt(pow(values[kDeltaR1], 2) + pow(values[kDeltaR2], 2));
46444648
values[kDitrackMass] = v23.M();
46454649
values[kDitrackPt] = v23.Pt();
46464650
}

PWGDQ/DataModel/ReducedInfoTables.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -909,6 +909,7 @@ DECLARE_SOA_COLUMN(Rap, rap, float); //!
909909
DECLARE_SOA_COLUMN(DeltaQ, deltaQ, float); //!
910910
DECLARE_SOA_COLUMN(R1, r1, float); //! distance between the dilepton and the track1 in theta-phi plane
911911
DECLARE_SOA_COLUMN(R2, r2, float); //! distance between the dilepton and the track2 in theta-phi plane
912+
DECLARE_SOA_COLUMN(R, r, float); //!
912913
DECLARE_SOA_COLUMN(DileptonMass, dileptonMass, float); //!
913914
DECLARE_SOA_COLUMN(DileptonPt, dileptonPt, float); //!
914915
DECLARE_SOA_COLUMN(DileptonEta, dileptonEta, float); //!
@@ -935,6 +936,7 @@ DECLARE_SOA_TABLE(DileptonTrackTrackCandidates, "AOD", "RTDQUADPLET", //!
935936
dileptonTrackTrackCandidate::DeltaQ,
936937
dileptonTrackTrackCandidate::R1,
937938
dileptonTrackTrackCandidate::R2,
939+
dileptonTrackTrackCandidate::R,
938940
dileptonTrackTrackCandidate::DileptonMass,
939941
dileptonTrackTrackCandidate::DileptonPt,
940942
dileptonTrackTrackCandidate::DileptonEta,

PWGDQ/Tasks/dqEfficiency.cxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1552,7 +1552,7 @@ struct AnalysisDileptonTrackTrack {
15521552
if (!mcDecision)
15531553
continue;
15541554
DileptonTrackTrackTable(fValuesQuadruplet[VarManager::kQuadMass], fValuesQuadruplet[VarManager::kQuadPt], fValuesQuadruplet[VarManager::kQuadEta], fValuesQuadruplet[VarManager::kQuadPhi], fValuesQuadruplet[VarManager::kRap],
1555-
fValuesQuadruplet[VarManager::kQ], fValuesQuadruplet[VarManager::kDeltaR1], fValuesQuadruplet[VarManager::kDeltaR2],
1555+
fValuesQuadruplet[VarManager::kQ], fValuesQuadruplet[VarManager::kDeltaR1], fValuesQuadruplet[VarManager::kDeltaR2], fValuesQuadruplet[VarManager::kDeltaR],
15561556
dilepton.mass(), dilepton.pt(), dilepton.eta(), dilepton.phi(), dilepton.sign(),
15571557
fValuesQuadruplet[VarManager::kDitrackMass], fValuesQuadruplet[VarManager::kDitrackPt], t1.pt(), t2.pt(), t1.eta(), t2.eta(), t1.phi(), t2.phi(), t1.sign(), t2.sign());
15581558
} // end loop over track - track combinations

PWGDQ/Tasks/tableReader.cxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1987,7 +1987,7 @@ struct AnalysisDileptonTrackTrack {
19871987
if (!CutDecision)
19881988
continue;
19891989
DileptonTrackTrackTable(fValuesQuadruplet[VarManager::kQuadMass], fValuesQuadruplet[VarManager::kQuadPt], fValuesQuadruplet[VarManager::kQuadEta], fValuesQuadruplet[VarManager::kQuadPhi], fValuesQuadruplet[VarManager::kRap],
1990-
fValuesQuadruplet[VarManager::kQ], fValuesQuadruplet[VarManager::kDeltaR1], fValuesQuadruplet[VarManager::kDeltaR2],
1990+
fValuesQuadruplet[VarManager::kQ], fValuesQuadruplet[VarManager::kDeltaR1], fValuesQuadruplet[VarManager::kDeltaR2], fValuesQuadruplet[VarManager::kDeltaR],
19911991
dilepton.mass(), dilepton.pt(), dilepton.eta(), dilepton.phi(), dilepton.sign(),
19921992
fValuesQuadruplet[VarManager::kDitrackMass], fValuesQuadruplet[VarManager::kDitrackPt], t1.pt(), t2.pt(), t1.eta(), t2.eta(), t1.phi(), t2.phi(), t1.sign(), t2.sign());
19931993
} // end loop over track-track pairs

0 commit comments

Comments
 (0)