Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
194 changes: 97 additions & 97 deletions PWGCF/MultiparticleCorrelations/Tasks/ThreeParticleCorrelations.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,8 @@
Configurable<bool> ConfFilterSwitch{"ConfFilterSwitch", false, "Switch for the FakeV0Filter function"};

// Particle masses
Double_t massLambda = o2::constants::physics::MassLambda0;

Check warning on line 85 in PWGCF/MultiparticleCorrelations/Tasks/ThreeParticleCorrelations.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[root-entity]

Consider replacing ROOT entities with equivalents from standard C++ or from O2.
Double_t DGaussSigma = 0.0021;

Check warning on line 86 in PWGCF/MultiparticleCorrelations/Tasks/ThreeParticleCorrelations.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[root-entity]

Consider replacing ROOT entities with equivalents from standard C++ or from O2.

// Efficiency histograms
TH1D** hEffPions = new TH1D*[2];
Expand All @@ -91,11 +91,11 @@
TH1D** hEffProtons = new TH1D*[2];

// Correlation variables
Int_t T_Sign;

Check warning on line 94 in PWGCF/MultiparticleCorrelations/Tasks/ThreeParticleCorrelations.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[root-entity]

Consider replacing ROOT entities with equivalents from standard C++ or from O2.
Double_t CandMass;

Check warning on line 95 in PWGCF/MultiparticleCorrelations/Tasks/ThreeParticleCorrelations.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[root-entity]

Consider replacing ROOT entities with equivalents from standard C++ or from O2.
Double_t* A_PID;

Check warning on line 96 in PWGCF/MultiparticleCorrelations/Tasks/ThreeParticleCorrelations.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[root-entity]

Consider replacing ROOT entities with equivalents from standard C++ or from O2.

Double_t DeltaPhi, DeltaEta;

Check warning on line 98 in PWGCF/MultiparticleCorrelations/Tasks/ThreeParticleCorrelations.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[root-entity]

Consider replacing ROOT entities with equivalents from standard C++ or from O2.

//================================================================================================================================================================================================================

Expand Down Expand Up @@ -210,7 +210,7 @@
}

if (TrackFilters(track)) {
A_PID = TrackPID(track);
A_PID = TrackPID(track);
QARegistry.fill(HIST("hTrackPt"), track.pt());
QARegistry.fill(HIST("hTrackEta"), track.eta());
QARegistry.fill(HIST("hTrackPhi"), track.phi());
Expand Down Expand Up @@ -364,64 +364,64 @@
}

if (TrackFilters(track)) {
auto particle = track.mcParticle();
if (particle.isPhysicalPrimary()) {

// Efficiency - Reconstructed
MCRegistry.fill(HIST("hReconstructed"), track.pt());
if (particle.pdgCode() == kPiPlus) { // Pos pions
MCRegistry.fill(HIST("hRecPionP"), track.pt());
} else if (particle.pdgCode() == kPiMinus) { // Neg pions
MCRegistry.fill(HIST("hRecPionN"), track.pt());
} else if (particle.pdgCode() == kKPlus) { // Pos kaons
MCRegistry.fill(HIST("hRecKaonP"), track.pt());
} else if (particle.pdgCode() == kKMinus) { // Neg kaons
MCRegistry.fill(HIST("hRecKaonN"), track.pt());
} else if (particle.pdgCode() == kProton) { // Pos protons
MCRegistry.fill(HIST("hRecProtonP"), track.pt());
} else if (particle.pdgCode() == kProtonBar) { // Neg protons
MCRegistry.fill(HIST("hRecProtonN"), track.pt());
}

// Purity (PID)
A_PID = TrackPID(track);

if (track.sign() > 0) { // Positive tracks
if (A_PID[0] == 0.0) { // Pions
MCRegistry.fill(HIST("hSelectPionP"), track.pt());
if (particle.pdgCode() == kPiPlus) {
MCRegistry.fill(HIST("hTrueSelectPionP"), track.pt());
}
} else if (A_PID[0] == 1.0) { // Kaons
MCRegistry.fill(HIST("hSelectKaonP"), track.pt());
if (particle.pdgCode() == kKPlus) {
MCRegistry.fill(HIST("hTrueSelectKaonP"), track.pt());
}
} else if (A_PID[0] == 2.0) { // Protons
MCRegistry.fill(HIST("hSelectProtonP"), track.pt());
if (particle.pdgCode() == kProton) {
MCRegistry.fill(HIST("hTrueSelectProtonP"), track.pt());
}
}
} else if (track.sign() < 0) { // Negative tracks
if (A_PID[0] == 0.0) { // Pions
MCRegistry.fill(HIST("hSelectPionN"), track.pt());
if (particle.pdgCode() == kPiMinus) {
MCRegistry.fill(HIST("hTrueSelectPionN"), track.pt());
}
} else if (A_PID[0] == 1.0) { // Kaons
MCRegistry.fill(HIST("hSelectKaonN"), track.pt());
if (particle.pdgCode() == kKMinus) {
MCRegistry.fill(HIST("hTrueSelectKaonN"), track.pt());
}
} else if (A_PID[0] == 2.0) { // Protons
MCRegistry.fill(HIST("hSelectProtonN"), track.pt());
if (particle.pdgCode() == kProtonBar) {
MCRegistry.fill(HIST("hTrueSelectProtonN"), track.pt());
}
}
}
}
auto particle = track.mcParticle();
if (particle.isPhysicalPrimary()) {

// Efficiency - Reconstructed
MCRegistry.fill(HIST("hReconstructed"), track.pt());
if (particle.pdgCode() == kPiPlus) { // Pos pions
MCRegistry.fill(HIST("hRecPionP"), track.pt());
} else if (particle.pdgCode() == kPiMinus) { // Neg pions
MCRegistry.fill(HIST("hRecPionN"), track.pt());
} else if (particle.pdgCode() == kKPlus) { // Pos kaons
MCRegistry.fill(HIST("hRecKaonP"), track.pt());
} else if (particle.pdgCode() == kKMinus) { // Neg kaons
MCRegistry.fill(HIST("hRecKaonN"), track.pt());
} else if (particle.pdgCode() == kProton) { // Pos protons
MCRegistry.fill(HIST("hRecProtonP"), track.pt());
} else if (particle.pdgCode() == kProtonBar) { // Neg protons
MCRegistry.fill(HIST("hRecProtonN"), track.pt());
}

// Purity (PID)
A_PID = TrackPID(track);

if (track.sign() > 0) { // Positive tracks
if (A_PID[0] == 0.0) { // Pions
MCRegistry.fill(HIST("hSelectPionP"), track.pt());
if (particle.pdgCode() == kPiPlus) {
MCRegistry.fill(HIST("hTrueSelectPionP"), track.pt());
}
} else if (A_PID[0] == 1.0) { // Kaons
MCRegistry.fill(HIST("hSelectKaonP"), track.pt());
if (particle.pdgCode() == kKPlus) {
MCRegistry.fill(HIST("hTrueSelectKaonP"), track.pt());
}
} else if (A_PID[0] == 2.0) { // Protons
MCRegistry.fill(HIST("hSelectProtonP"), track.pt());
if (particle.pdgCode() == kProton) {
MCRegistry.fill(HIST("hTrueSelectProtonP"), track.pt());
}
}
} else if (track.sign() < 0) { // Negative tracks
if (A_PID[0] == 0.0) { // Pions
MCRegistry.fill(HIST("hSelectPionN"), track.pt());
if (particle.pdgCode() == kPiMinus) {
MCRegistry.fill(HIST("hTrueSelectPionN"), track.pt());
}
} else if (A_PID[0] == 1.0) { // Kaons
MCRegistry.fill(HIST("hSelectKaonN"), track.pt());
if (particle.pdgCode() == kKMinus) {
MCRegistry.fill(HIST("hTrueSelectKaonN"), track.pt());
}
} else if (A_PID[0] == 2.0) { // Protons
MCRegistry.fill(HIST("hSelectProtonN"), track.pt());
if (particle.pdgCode() == kProtonBar) {
MCRegistry.fill(HIST("hTrueSelectProtonN"), track.pt());
}
}
}
}
}
}
// End of the Monte-Carlo reconstructed QA
Expand All @@ -434,10 +434,10 @@

//================================================================================================================================================================================================================

Double_t DeltaPhiShift(Double_t TriggerPhi, Double_t AssociatePhi)

Check warning on line 437 in PWGCF/MultiparticleCorrelations/Tasks/ThreeParticleCorrelations.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[root-entity]

Consider replacing ROOT entities with equivalents from standard C++ or from O2.
{

Double_t dPhi = TriggerPhi - AssociatePhi;

Check warning on line 440 in PWGCF/MultiparticleCorrelations/Tasks/ThreeParticleCorrelations.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[root-entity]

Consider replacing ROOT entities with equivalents from standard C++ or from O2.

if (dPhi < (-1. / 2) * M_PI) {
dPhi = dPhi + 2 * M_PI;
Expand All @@ -448,10 +448,10 @@
return dPhi;
}

Double_t TrackEff(TH1D** Efficiencies, Int_t Sign, Double_t pT)

Check warning on line 451 in PWGCF/MultiparticleCorrelations/Tasks/ThreeParticleCorrelations.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[root-entity]

Consider replacing ROOT entities with equivalents from standard C++ or from O2.
{

Int_t Index = -999;

Check warning on line 454 in PWGCF/MultiparticleCorrelations/Tasks/ThreeParticleCorrelations.cxx

View workflow job for this annotation

GitHub Actions / O2 linter

[root-entity]

Consider replacing ROOT entities with equivalents from standard C++ or from O2.
if (Sign > 0) {
Index = 0;
} else if (Sign < 0) {
Expand Down Expand Up @@ -503,7 +503,7 @@

return ID;
}

//================================================================================================================================================================================================================

template <class V0Cand>
Expand Down Expand Up @@ -534,69 +534,69 @@
}

if (TrackPID(Track)[0] == 0.0) { // Pions
if(TMath::Abs(Track.tpcNSigmaPi()) > 4.0) {
return kFALSE;
if (TMath::Abs(Track.tpcNSigmaPi()) > 4.0) {
return kFALSE;
}
if (Track.pt() < 0.3) {
return kFALSE;
return kFALSE;
} else if (Track.pt() > 0.3 && Track.pt() < 1.5) {
if (TMath::Abs(TrackPID(Track)[1]) > 4.0) {
return kFALSE;
}
if (TMath::Abs(TrackPID(Track)[1]) > 4.0) {
return kFALSE;
}
} else if (Track.pt() > 1.5 && Track.pt() < 2.3) {
if (TrackPID(Track)[1] < -4.0 || TrackPID(Track)[1] > 0.0) {
return kFALSE;
}
if (TrackPID(Track)[1] < -4.0 || TrackPID(Track)[1] > 0.0) {
return kFALSE;
}
} else if (Track.pt() > 2.3) {
return kFALSE;
return kFALSE;
}

} else if (TrackPID(Track)[0] == 1.0) { // Kaons
if(TMath::Abs(Track.tpcNSigmaKa()) > 4.0) {
return kFALSE;
if (TMath::Abs(Track.tpcNSigmaKa()) > 4.0) {
return kFALSE;
}
if (Track.pt() < 0.5) {
return kFALSE;
return kFALSE;
} else if (Track.pt() > 0.5 && Track.pt() < 1.5) {
if (TMath::Abs(TrackPID(Track)[1]) > 4.0) {
return kFALSE;
}
if (TMath::Abs(TrackPID(Track)[1]) > 4.0) {
return kFALSE;
}
} else if (Track.pt() > 1.5 && Track.pt() < 2.0) {
if (TrackPID(Track)[1] < -2.0 || TrackPID(Track)[1] > 4.0) {
return kFALSE;
}
if (TrackPID(Track)[1] < -2.0 || TrackPID(Track)[1] > 4.0) {
return kFALSE;
}
} else if (Track.pt() > 2.0 && Track.pt() < 2.5) {
if (TrackPID(Track)[1] < 0.0 || TrackPID(Track)[1] > 4.0) {
return kFALSE;
}
if (TrackPID(Track)[1] < 0.0 || TrackPID(Track)[1] > 4.0) {
return kFALSE;
}
} else if (Track.pt() > 2.5) {
return kFALSE;
return kFALSE;
}

} else if (TrackPID(Track)[0] == 2.0) { // Protons
if(TMath::Abs(Track.tpcNSigmaPr()) > 4.0) {
return kFALSE;
if (TMath::Abs(Track.tpcNSigmaPr()) > 4.0) {
return kFALSE;
}
if (Track.pt() < 0.5) {
return kFALSE;
return kFALSE;
} else if (Track.pt() > 0.5 && Track.pt() < 0.7) {
if (TrackPID(Track)[1] < -2.0 || TrackPID(Track)[1] > 4.0) {
return kFALSE;
}
if (TrackPID(Track)[1] < -2.0 || TrackPID(Track)[1] > 4.0) {
return kFALSE;
}
} else if (Track.pt() > 0.7 && Track.pt() < 2.5) {
if (TMath::Abs(TrackPID(Track)[1]) > 4.0) {
return kFALSE;
}
if (TMath::Abs(TrackPID(Track)[1]) > 4.0) {
return kFALSE;
}
} else if (Track.pt() > 2.5) {
if (TrackPID(Track)[1] < -2.0 || TrackPID(Track)[1] > 4.0) {
return kFALSE;
}
if (TrackPID(Track)[1] < -2.0 || TrackPID(Track)[1] > 4.0) {
return kFALSE;
}
}
}

return kTRUE;
}

template <class V0Cand, class TrackCand>
Bool_t CorrelationFilters(const V0Cand& V0, const TrackCand& Track)
{
Expand Down
Loading