Skip to content

Commit

Permalink
Please consider the following formatting changes
Browse files Browse the repository at this point in the history
  • Loading branch information
alibuild committed Apr 17, 2024
1 parent 6725f20 commit 62f512f
Show file tree
Hide file tree
Showing 4 changed files with 82 additions and 74 deletions.
20 changes: 10 additions & 10 deletions PWGUD/TableProducer/SGCandProducer.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,11 @@ struct SGCandProducer {
Configurable<SGCutParHolder> SGCuts{"SGCuts", {}, "SG event cuts"};
Configurable<bool> saveAllTracks{"saveAllTracks", true, "save only PV contributors or all tracks associated to a collision"};
Configurable<bool> savenonPVCITSOnlyTracks{"savenonPVCITSOnlyTracks", false, "save non PV contributors with ITS only information"};
Configurable<bool> rejectAtTFBoundary{"rejectAtTFBoundary", true, "reject collisions at a TF boundary"};
Configurable<bool> noITSROFrameBorder{"noITSROFrameBorder", true, "reject ITS RO Frame Border"};
Configurable<bool> noSameBunchPileUp{"noSameBunchPileUp", true, "reject SameBunchPileUp"};
Configurable<bool> IsGoodVertex{"IsGoodVertex", false, "Select FT0 PV vertex matching"};
Configurable<bool> ITSTPCVertex{"ITSTPCVertex", true, "reject ITS-only vertex"}; //if one wants to look at Single Gap pp events
Configurable<bool> rejectAtTFBoundary{"rejectAtTFBoundary", true, "reject collisions at a TF boundary"};
Configurable<bool> noITSROFrameBorder{"noITSROFrameBorder", true, "reject ITS RO Frame Border"};
Configurable<bool> noSameBunchPileUp{"noSameBunchPileUp", true, "reject SameBunchPileUp"};
Configurable<bool> IsGoodVertex{"IsGoodVertex", false, "Select FT0 PV vertex matching"};
Configurable<bool> ITSTPCVertex{"ITSTPCVertex", true, "reject ITS-only vertex"}; // if one wants to look at Single Gap pp events
// SG selector
SGSelector sgSelector;

Expand Down Expand Up @@ -152,26 +152,26 @@ struct SGCandProducer {
{
LOGF(debug, "<SGCandProducer> collision %d", collision.globalIndex());
registry.get<TH1>(HIST("reco/Stat"))->Fill(0., 1.);
//reject collisions at TF boundaries
// reject collisions at TF boundaries
if (rejectAtTFBoundary && !collision.selection_bit(aod::evsel::kNoTimeFrameBorder)) {
return;
}
//reject collisions at ITS RO TF boundaries
// reject collisions at ITS RO TF boundaries
if (noITSROFrameBorder && !collision.selection_bit(aod::evsel::kNoITSROFrameBorder)) {
return;
}
// registry.get<TH1>(HIST("reco/Stat"))->Fill(1., 1.);
//reject Same Bunch PileUp
// reject Same Bunch PileUp
if (noSameBunchPileUp && !collision.selection_bit(aod::evsel::kNoSameBunchPileup)) {
return;
}
// registry.get<TH1>(HIST("reco/Stat"))->Fill(1., 1.);
//check vertex matching to FT0
// check vertex matching to FT0
if (IsGoodVertex && !collision.selection_bit(aod::evsel::kIsGoodZvtxFT0vsPV)) {
return;
}
// registry.get<TH1>(HIST("reco/Stat"))->Fill(1., 1.);
//reject ITS Only vertices
// reject ITS Only vertices
if (ITSTPCVertex && !collision.selection_bit(aod::evsel::kIsVertexITSTPC)) {
return;
}
Expand Down
97 changes: 52 additions & 45 deletions PWGUD/Tasks/SGSpectraAnalyzer.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -44,12 +44,12 @@ struct SGSpectraAnalyzer {
HistogramRegistry registry{
"registry",
{// Pion histograms for each eta bin and gapSide
{"E_mult_SG", "Photon-Ion c.m.s. Energy vs Multiplicity", {HistType::kTH2F, {{50,-.5,49.5},{250, 10, 300}}}},
{"E_mult_DG", "Photon-Ion c.m.s. Energy vs Multiplicity", {HistType::kTH2F, {{50,-.5,49.5},{250, 10, 300}}}},
{"E_M_SG", "Photon-Ion c.m.s. Energy vs Mass", {HistType::kTH2F, {{1000,.05,25.05},{250, 10, 300}}}},
{"E_M_DG", "Photon-Ion c.m.s. Energy vs Mass", {HistType::kTH2F, {{1000,.05,25.05},{250, 10, 300}}}},
{"E_Y_SG", "Photon-Ion c.m.s. Energy vs Rapidity", {HistType::kTH2F, {{200,-1.,1.},{250, 10, 300}}}},
{"E_Y_DG", "Photon-Ion c.m.s. Energy vs Rapidity", {HistType::kTH2F, {{200,-1.,1.},{250, 10, 300}}}},
{"E_mult_SG", "Photon-Ion c.m.s. Energy vs Multiplicity", {HistType::kTH2F, {{50, -.5, 49.5}, {250, 10, 300}}}},
{"E_mult_DG", "Photon-Ion c.m.s. Energy vs Multiplicity", {HistType::kTH2F, {{50, -.5, 49.5}, {250, 10, 300}}}},
{"E_M_SG", "Photon-Ion c.m.s. Energy vs Mass", {HistType::kTH2F, {{1000, .05, 25.05}, {250, 10, 300}}}},
{"E_M_DG", "Photon-Ion c.m.s. Energy vs Mass", {HistType::kTH2F, {{1000, .05, 25.05}, {250, 10, 300}}}},
{"E_Y_SG", "Photon-Ion c.m.s. Energy vs Rapidity", {HistType::kTH2F, {{200, -1., 1.}, {250, 10, 300}}}},
{"E_Y_DG", "Photon-Ion c.m.s. Energy vs Rapidity", {HistType::kTH2F, {{200, -1., 1.}, {250, 10, 300}}}},

{"ITS_Cluster_nonPV", "ITS Cluster Size", {HistType::kTH1F, {{140, -.5, 139.5}}}},
{"all_tracks_SG", "All Tracks SG", {HistType::kTH1F, {{50, -.5, 49.5}}}},
Expand Down Expand Up @@ -231,11 +231,11 @@ struct SGSpectraAnalyzer {
TLorentzVector a;
TLorentzVector am;
TLorentzVector sum;
int goodtracks=0;
int alltracks=0;
sum.SetXYZM(0,0,0,0);
int goodtracks = 0;
int alltracks = 0;
sum.SetXYZM(0, 0, 0, 0);
int gapSide = collision.gapSide();
float FIT_cut[5]={FV0_cut, FT0A_cut, FT0C_cut, FDDA_cut, FDDC_cut};
float FIT_cut[5] = {FV0_cut, FT0A_cut, FT0C_cut, FDDA_cut, FDDC_cut};
int truegapSide = sgSelector.trueGap(collision, FIT_cut[0], FIT_cut[1], FIT_cut[3], ZDC_cut);
gapSide = truegapSide;
if (gapSide < 0 || gapSide > 2)
Expand Down Expand Up @@ -265,62 +265,69 @@ struct SGSpectraAnalyzer {
registry.get<TH1>(HIST("TPC_IP_PV"))->Fill(track.tpcInnerParam());
registry.get<TH1>(HIST("DcaZ_PV"))->Fill(track.dcaZ());
registry.get<TH1>(HIST("DcaXY_PV"))->Fill(track.dcaXY());
alltracks++;
alltracks++;
if (trackselector(track, use_tof)) {
int track_pid = trackpid(track, use_tof);
int track_pid = trackpid(track, use_tof);
// if (ispion(track, use_tof)) {
if (track_pid <= 1) {
a.SetXYZM(track.px(), track.py(), track.pz(), mpion);
am.SetXYZM(track.px(), track.py(), -track.pz(), mpion);
if (std::abs(a.Eta()) < eta_cut){
goodtracks++;
if (std::abs(a.Eta()) < eta_cut) {
goodtracks++;
fillHistograms("Pion", a.Pt(), a.Eta(), gapSide);
if (gapSide == 0) sum = sum + a;
else sum = sum + am;
}
if (gapSide == 0)
sum = sum + a;
else
sum = sum + am;
}
}
// if (iskaon(track, use_tof)) {
if (track_pid == 2) {
a.SetXYZM(track.px(), track.py(), track.pz(), mkaon);
am.SetXYZM(track.px(), track.py(), -track.pz(), mkaon);
if (std::abs(a.Eta()) < eta_cut){
goodtracks++;
if (std::abs(a.Eta()) < eta_cut) {
goodtracks++;
fillHistograms("Kaon", a.Pt(), a.Eta(), gapSide);
if (gapSide == 0) sum = sum + a;
else sum = sum + am;
}
if (gapSide == 0)
sum = sum + a;
else
sum = sum + am;
}
}
// if (isproton(track, use_tof)) {
if (track_pid == 3) {
a.SetXYZM(track.px(), track.py(), track.pz(), mproton);
am.SetXYZM(track.px(), track.py(), -track.pz(), mproton);
if (std::abs(a.Eta()) < eta_cut){
goodtracks++;
if (std::abs(a.Eta()) < eta_cut) {
goodtracks++;
fillHistograms("Proton", a.Pt(), a.Eta(), gapSide);
if (gapSide == 0) sum = sum + a;
else sum = sum + am;
}
if (gapSide == 0)
sum = sum + a;
else
sum = sum + am;
}
}
}
}
}
}
if (goodtracks > 1) {
float W_gPb = TMath::Sqrt(2 * 2680 * sum.M() * TMath::Exp(sum.Rapidity()));
if (sum.M() < .2)
std::cout << goodtracks << "\t" << sum.M() << "\t" << sum.Pt() << std::endl;
if (gapSide < 2) {
registry.get<TH2>(HIST("E_mult_SG"))->Fill(goodtracks, W_gPb);
registry.get<TH2>(HIST("E_M_SG"))->Fill(sum.M(), W_gPb);
registry.get<TH2>(HIST("E_Y_SG"))->Fill(sum.Rapidity(), W_gPb);
registry.get<TH1>(HIST("all_tracks_SG"))->Fill(alltracks);
registry.get<TH1>(HIST("good_tracks_SG"))->Fill(goodtracks);
} else {
registry.get<TH2>(HIST("E_mult_DG"))->Fill(goodtracks, W_gPb);
registry.get<TH2>(HIST("E_M_DG"))->Fill(sum.M(), W_gPb);
registry.get<TH2>(HIST("E_Y_DG"))->Fill(sum.Rapidity(), W_gPb);
registry.get<TH1>(HIST("all_tracks_DG"))->Fill(alltracks);
registry.get<TH1>(HIST("good_tracks_DG"))->Fill(goodtracks);
}
}
if (goodtracks > 1){
float W_gPb = TMath::Sqrt(2*2680*sum.M()*TMath::Exp(sum.Rapidity()));
if (sum.M() < .2) std::cout << goodtracks <<"\t" << sum.M()<<"\t"<< sum.Pt() << std::endl;
if (gapSide < 2){
registry.get<TH2>(HIST("E_mult_SG"))->Fill(goodtracks, W_gPb);
registry.get<TH2>(HIST("E_M_SG"))->Fill(sum.M(), W_gPb);
registry.get<TH2>(HIST("E_Y_SG"))->Fill(sum.Rapidity(), W_gPb);
registry.get<TH1>(HIST("all_tracks_SG"))->Fill(alltracks);
registry.get<TH1>(HIST("good_tracks_SG"))->Fill(goodtracks);
} else {
registry.get<TH2>(HIST("E_mult_DG"))->Fill(goodtracks, W_gPb);
registry.get<TH2>(HIST("E_M_DG"))->Fill(sum.M(), W_gPb);
registry.get<TH2>(HIST("E_Y_DG"))->Fill(sum.Rapidity(), W_gPb);
registry.get<TH1>(HIST("all_tracks_DG"))->Fill(alltracks);
registry.get<TH1>(HIST("good_tracks_DG"))->Fill(goodtracks);
}
}
}

void fillHistograms(const std::string& particleType, float pt, float eta, int gapSide)
Expand Down
6 changes: 3 additions & 3 deletions PWGUD/Tasks/SG_D0_Analyzer.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -85,9 +85,9 @@ struct SG_D0_Analyzer {
TLorentzVector v1;
TLorentzVector v01;
// int truegapSide = sgSelector.trueGap(collision);
//int truegapSide = sgSelector.trueGap(collision, FV0_cut, ZDC_cut);
float FIT_cut[5]={FV0_cut, FT0A_cut, FT0C_cut, FDDA_cut, FDDC_cut};
//int truegapSide = sgSelector.trueGap(collision, *FIT_cut, ZDC_cut);
// int truegapSide = sgSelector.trueGap(collision, FV0_cut, ZDC_cut);
float FIT_cut[5] = {FV0_cut, FT0A_cut, FT0C_cut, FDDA_cut, FDDC_cut};
// int truegapSide = sgSelector.trueGap(collision, *FIT_cut, ZDC_cut);
int truegapSide = sgSelector.trueGap(collision, FIT_cut[0], FIT_cut[1], FIT_cut[3], ZDC_cut);
registry.fill(HIST("GapSide"), gapSide);
registry.fill(HIST("TrueGapSide"), truegapSide);
Expand Down
33 changes: 17 additions & 16 deletions PWGUD/Tasks/SG_FIT_Analyzer.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -289,9 +289,9 @@ struct SG_FIT_Analyzer { // UDTutorial01

// fill collision histograms
registry.get<TH1>(HIST("collisions/GapSide"))->Fill(dgcand.gapSide(), 1.);
//int truegapSide = sgSelector.trueGap(dgcand, FV0_cut, ZDC_cut);
float FIT_cut[5]={FV0_cut, FT0A_cut, FT0C_cut, FDDA_cut, FDDC_cut};
//int truegapSide = sgSelector.trueGap(collision, *FIT_cut, ZDC_cut);
// int truegapSide = sgSelector.trueGap(dgcand, FV0_cut, ZDC_cut);
float FIT_cut[5] = {FV0_cut, FT0A_cut, FT0C_cut, FDDA_cut, FDDC_cut};
// int truegapSide = sgSelector.trueGap(collision, *FIT_cut, ZDC_cut);
int truegapSide = sgSelector.trueGap(dgcand, FIT_cut[0], FIT_cut[1], FIT_cut[3], ZDC_cut);
registry.get<TH1>(HIST("collisions/TrueGapSide"))->Fill(truegapSide, 1.);
// select PV contributors
Expand All @@ -310,17 +310,18 @@ struct SG_FIT_Analyzer { // UDTutorial01
LOGF(info, "<UDTutorial01sg> Number of tracks %d", dgtracks.size());
LOGF(info, "<UDTutorial01sg> Number of PV contributors %d", PVContributors.size());
}
//check rho0 signals
// check rho0 signals
bool coh_rho0 = false;
TLorentzVector p1, p2, rho;
if (PVContributors.size() ==2){
for (auto& [t0, t1] : combinations(dgtracks, dgtracks)) {
if (PVContributors.size() == 2) {
for (auto& [t0, t1] : combinations(dgtracks, dgtracks)) {
// Apply pion hypothesis and create pairs
p1.SetXYZM(t0.px(), t0.py(), t0.pz(), o2::constants::physics::MassPionCharged);
p2.SetXYZM(t1.px(), t1.py(), t1.pz(), o2::constants::physics::MassPionCharged);
rho = p1 + p2;
}
if (TMath::Abs(rho.Rapidity())<.9 && rho.M() > .5 && rho.M() < 1.2 && rho.Pt() < 0.15) coh_rho0 = true;
}
if (TMath::Abs(rho.Rapidity()) < .9 && rho.M() > .5 && rho.M() < 1.2 && rho.Pt() < 0.15)
coh_rho0 = true;
}
int pva = 0;
int pvc = 0;
Expand Down Expand Up @@ -554,14 +555,14 @@ struct SG_FIT_Analyzer { // UDTutorial01
registry.get<TH2>(HIST("FIT/ACFT0"))->Fill(totalA, totalC);
registry.get<TH1>(HIST("FIT/ACFITA"))->Fill(totalA, 1.);
registry.get<TH1>(HIST("FIT/ACFITC"))->Fill(totalC, 1.);
if(coh_rho0){
registry.get<TH1>(HIST("ZDC/ACZNA_CR"))->Fill(zna, 1.);
registry.get<TH1>(HIST("ZDC/ACZNC_CR"))->Fill(znc, 1.);
registry.get<TH1>(HIST("FIT/ACFT0A_CR"))->Fill(dgcand.totalFT0AmplitudeA(), 1.);
registry.get<TH1>(HIST("FIT/ACFT0C_CR"))->Fill(dgcand.totalFT0AmplitudeC(), 1.);
registry.get<TH1>(HIST("FIT/ACFV0A_CR"))->Fill(dgcand.totalFV0AmplitudeA(), 1.);
registry.get<TH1>(HIST("FIT/ACFDDA_CR"))->Fill(dgcand.totalFDDAmplitudeA(), 1.);
registry.get<TH1>(HIST("FIT/ACFDDC_CR"))->Fill(dgcand.totalFDDAmplitudeC(), 1.);
if (coh_rho0) {
registry.get<TH1>(HIST("ZDC/ACZNA_CR"))->Fill(zna, 1.);
registry.get<TH1>(HIST("ZDC/ACZNC_CR"))->Fill(znc, 1.);
registry.get<TH1>(HIST("FIT/ACFT0A_CR"))->Fill(dgcand.totalFT0AmplitudeA(), 1.);
registry.get<TH1>(HIST("FIT/ACFT0C_CR"))->Fill(dgcand.totalFT0AmplitudeC(), 1.);
registry.get<TH1>(HIST("FIT/ACFV0A_CR"))->Fill(dgcand.totalFV0AmplitudeA(), 1.);
registry.get<TH1>(HIST("FIT/ACFDDA_CR"))->Fill(dgcand.totalFDDAmplitudeA(), 1.);
registry.get<TH1>(HIST("FIT/ACFDDC_CR"))->Fill(dgcand.totalFDDAmplitudeC(), 1.);
}
registry.get<TH1>(HIST("FIT/ACFT0A"))->Fill(dgcand.totalFT0AmplitudeA(), 1.);
registry.get<TH1>(HIST("FIT/ACFT0C"))->Fill(dgcand.totalFT0AmplitudeC(), 1.);
Expand Down

0 comments on commit 62f512f

Please sign in to comment.