Skip to content
Merged
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
a30b72e
[PWGHF] added a function to isolation e
sashingo Dec 3, 2024
e880f2a
[PWGHF] added a function to isolation e (fixed o2 linter)
sashingo Dec 11, 2024
48a7947
Merge branch 'AliceO2Group:master' into master
sashingo Dec 16, 2024
e1db786
Merge branch 'AliceO2Group:master' into master
sashingo Dec 17, 2024
47e7853
Merge branch 'AliceO2Group:master' into master
sashingo Jan 7, 2025
87b0365
Merge branch 'AliceO2Group:master' into master
sashingo Jan 8, 2025
089bed5
PWGHF:added isolation cut based on track and apply the cuts on E/p
sashingo Jan 8, 2025
93a746b
PWGHF:fixed a warning
sashingo Jan 8, 2025
aee502e
Merge branch 'AliceO2Group:master' into master
sashingo Jan 20, 2025
0b9ecfd
Merge branch 'AliceO2Group:master' into master
sashingo Jan 23, 2025
af1eb6e
Merge branch 'AliceO2Group:master' into master
sashingo Jan 24, 2025
962b2f2
Merge branch 'AliceO2Group:master' into master
sashingo Jan 28, 2025
6311ea6
Merge branch 'AliceO2Group:master' into master
sashingo Jan 29, 2025
299ede0
Merge branch 'AliceO2Group:master' into master
sashingo Feb 6, 2025
6a7d9ca
Merge branch 'AliceO2Group:master' into master
sashingo Feb 7, 2025
25dd365
Merge branch 'AliceO2Group:master' into master
sashingo Feb 14, 2025
0bb2c34
Merge branch 'AliceO2Group:master' into master
sashingo Feb 23, 2025
7434e75
PWGHF:updated to calculate mass of Zee
sashingo Feb 23, 2025
fa894c5
fixed clang format
sashingo Feb 23, 2025
7281b97
fixed O2 linter erros
sashingo Feb 23, 2025
3d3308a
fixed O2 linter
sashingo Feb 23, 2025
030db91
fixed O2 linter
sashingo Feb 23, 2025
d361234
fixed magelinter error
sashingo Feb 23, 2025
b3aa11a
fixed MegaLinter error
sashingo Feb 23, 2025
f0b4201
fixed MegaLinter error
sashingo Feb 23, 2025
e697d1b
Merge branch 'AliceO2Group:master' into master
sashingo Feb 24, 2025
b22dd6a
Merge branch 'AliceO2Group:master' into master
sashingo Feb 27, 2025
8150615
minor modification
sashingo Feb 27, 2025
2974d1a
Merge branch 'AliceO2Group:master' into master
sashingo Feb 27, 2025
51b22c3
updated with Vit's suggestions
sashingo Mar 3, 2025
74b90fc
updated with Vit's suggestions
sashingo Mar 4, 2025
f19edcf
small modification
sashingo Mar 5, 2025
ec95512
Merge branch 'AliceO2Group:master' into master
sashingo Mar 6, 2025
f10e45e
Merge branch 'AliceO2Group:master' into master
sashingo Mar 10, 2025
16d2127
added minimum pT cut to calculate Zee mass
sashingo Mar 10, 2025
2080ad2
Merge branch 'AliceO2Group:master' into master
sashingo Mar 19, 2025
f89d0d0
Merge branch 'AliceO2Group:master' into master
sashingo Mar 28, 2025
1a9ecd6
Merge branch 'AliceO2Group:master' into master
sashingo Apr 3, 2025
2854a0d
Merge branch 'AliceO2Group:master' into master
sashingo Apr 25, 2025
3bfea57
Merge branch 'AliceO2Group:master' into master
sashingo May 6, 2025
9c426e1
Merge branch 'AliceO2Group:master' into master
sashingo May 12, 2025
bc0f1da
added software trigger
sashingo May 12, 2025
78f09a5
modified O2 linte error
sashingo May 12, 2025
149197d
fixed linter errors
sashingo May 13, 2025
19d7c83
modified hierarchy order of includes
sashingo May 14, 2025
4288b3e
Merge branch 'AliceO2Group:master' into master
sashingo May 19, 2025
0d7e8b8
Merge branch 'AliceO2Group:master' into master
sashingo May 23, 2025
a56768d
added THnSparse for isolate electron study
sashingo May 23, 2025
18b9768
added THnSparse for isolate electron study
sashingo May 23, 2025
f1edf0b
Merge branch 'AliceO2Group:master' into master
sashingo May 30, 2025
affe38e
Merge branch 'AliceO2Group:master' into master
sashingo Jun 2, 2025
3fa1a21
tuned histrogram bins etc
sashingo Jun 2, 2025
48092f5
fixed O2 linter error
sashingo Jun 2, 2025
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
50 changes: 20 additions & 30 deletions PWGHF/HFL/Tasks/taskElectronWeakBoson.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -147,27 +147,29 @@ struct HfTaskElectronWeakBoson {
zorroSummary.setObject(zorro.getZorroSummary());
}

// add configurable for CCDB path
zorro.setBaseCCDBPath(cfgCCDBPath.value);

Comment thread
fgrosa marked this conversation as resolved.
// define axes you want to use
const AxisSpec axisZvtx{400, -20, 20, "Zvtx"};
const AxisSpec axisZvtx{40, -20, 20, "Zvtx"};
Comment thread
fgrosa marked this conversation as resolved.
const AxisSpec axisCounter{1, 0, 1, "events"};
const AxisSpec axisEta{200, -1.0, 1.0, "#eta"};
const AxisSpec axisEta{20, -1.0, 1.0, "#eta"};
const AxisSpec axisPt{nBinsPt, 0, binPtmax, "p_{T}"};
const AxisSpec axisNsigma{100, -5, 5, "N#sigma"};
const AxisSpec axisE{nBinsE, 0, binEmax, "Energy"};
const AxisSpec axisM02{100, 0, 1, "M02"};
const AxisSpec axisdPhi{200, -1, 1, "dPhi"};
const AxisSpec axisdEta{200, -1, 1, "dEta"};
const AxisSpec axisdPhi{100, -0.5, 0.5, "dPhi"};
const AxisSpec axisdEta{100, -0.5, 0.5, "dEta"};
const AxisSpec axisPhi{350, 0, 7, "Phi"};
const AxisSpec axisEop{200, 0, 2, "Eop"};
const AxisSpec axisChi2{500, 0.0, 50.0, "#chi^{2}"};
const AxisSpec axisChi2{250, 0.0, 25.0, "#chi^{2}"};
const AxisSpec axisCluster{100, 0.0, 200.0, "counts"};
const AxisSpec axisITSNCls{20, 0.0, 20, "counts"};
const AxisSpec axisEMCtime{200, -100.0, 100, "EMC time"};
const AxisSpec axisIsoEnergy{100, 0, 1, "Isolation energy(GeV/C)"};
const AxisSpec axisIsoTrack{20, -0.5, 19.5, "Isolation Track"};
const AxisSpec axisInvMassZ{200, 0, 200, "M_{ee} (GeV/c^{2})"};
const AxisSpec axisInvMassDy{200, 0, 2, "M_{ee} (GeV/c^{2})"};
const AxisSpec axisTrigger{3, 0, 2, "Trigger status of zorro"};
const AxisSpec axisITSNCls{10, 0.0, 10, "counts"};
const AxisSpec axisEMCtime{100, -50.0, 50, "EMC time"};
const AxisSpec axisIsoEnergy{100, 0, 1.0, "Isolation energy(GeV/C)"};
const AxisSpec axisIsoTrack{15, -0.5, 14.5, "Isolation Track"};
const AxisSpec axisInvMassZ{150, 0, 150, "M_{ee} (GeV/c^{2})"};
const AxisSpec axisTrigger{3, -0.5, 2.5, "Trigger status of zorro"};

// create registrygrams
registry.add("hZvtx", "Z vertex", kTH1F, {axisZvtx});
Expand All @@ -182,8 +184,6 @@ struct HfTaskElectronWeakBoson {
registry.add("hPt", "track pt", kTH1F, {axisPt});
registry.add("hTPCNsigma", "TPC electron Nsigma", kTH2F, {{axisPt}, {axisNsigma}});
registry.add("hEnergy", "EMC cluster energy", kTH1F, {axisE});
registry.add("hM02", "EMC M02", kTH2F, {{axisNsigma}, {axisM02}});
registry.add("hM20", "EMC M20", kTH2F, {{axisNsigma}, {axisM02}});
registry.add("hTrMatch", "Track EMC Match", kTH2F, {{axisdPhi}, {axisdEta}});
registry.add("hTrMatch_mim", "Track EMC Match minimu minimumm", kTH2F, {{axisdPhi}, {axisdEta}});
registry.add("hMatchPhi", "Match in Phi", kTH2F, {{axisPhi}, {axisPhi}});
Expand All @@ -197,13 +197,13 @@ struct HfTaskElectronWeakBoson {
registry.add("hIsolationTrack", "Isolation Track", kTH2F, {{axisE}, {axisIsoTrack}});
registry.add("hInvMassZeeLs", "invariant mass for Z LS pair", kTH2F, {{axisPt}, {axisInvMassZ}});
registry.add("hInvMassZeeUls", "invariant mass for Z ULS pair", kTH2F, {{axisPt}, {axisInvMassZ}});
registry.add("hTHnElectrons", "electron info", HistType::kTHnSparseF, {axisPt, axisNsigma, axisM02, axisM02, axisEop, axisIsoEnergy});
registry.add("hTHnElectrons", "electron info", HistType::kTHnSparseF, {axisPt, axisNsigma, axisM02, axisEop, axisIsoEnergy, axisIsoTrack});

// hisotgram for EMCal trigger
registry.add("hEMCalTrigger", "EMCal trigger", kTH1F, {axisTrigger});
}

double calIsolatedCluster(const o2::aod::EMCALCluster& cluster,
double getIsolatedCluster(const o2::aod::EMCALCluster& cluster,
const SelectedClusters& clusters)
{
double energySum = 0.0;
Expand Down Expand Up @@ -236,17 +236,14 @@ struct HfTaskElectronWeakBoson {

return (isoEnergy);
}
int calIsolatedTrack(double etaEle,
int getIsolatedTrack(double etaEle,
double phiEle,
float ptEle,
TrackEle const& tracks)
{
int trackCount = 0;

for (const auto& track : tracks) {
// skip the reference track
if (std::abs(track.pt() - ptEle) < 1e-4)
continue;

double dEta = track.eta() - etaEle;
double dPhi = track.phi() - phiEle;
Expand Down Expand Up @@ -285,9 +282,6 @@ struct HfTaskElectronWeakBoson {
LOGF(info, "Initializing Zorro for run %d", runNumber);
uint64_t currentTimestamp = bc.timestamp();

// add configurable for CCDB path
zorro.setBaseCCDBPath(cfgCCDBPath.value);

// debug for timestamp
LOGF(info, "Using CCDB path: %s, timestamp: %llu", cfgCCDBPath.value.c_str(), currentTimestamp);

Expand All @@ -308,7 +302,6 @@ struct HfTaskElectronWeakBoson {
return;
}
}

// initialze for inclusive-electron
selectedElectronsIso.clear();
selectedElectronsAss.clear();
Expand Down Expand Up @@ -381,7 +374,6 @@ struct HfTaskElectronWeakBoson {
if (match.emcalcluster_as<SelectedClusters>().time() < timeEmcMin || match.emcalcluster_as<SelectedClusters>().time() > timeEmcMax)
continue;

float m20Emc = match.emcalcluster_as<SelectedClusters>().m20();
float m02Emc = match.emcalcluster_as<SelectedClusters>().m02();
float energyEmc = match.emcalcluster_as<SelectedClusters>().energy();
double phiEmc = match.emcalcluster_as<SelectedClusters>().phi();
Expand Down Expand Up @@ -416,17 +408,15 @@ struct HfTaskElectronWeakBoson {

double eop = energyEmc / match.track_as<TrackEle>().p();

double isoEnergy = calIsolatedCluster(cluster, emcClusters);
double isoEnergy = getIsolatedCluster(cluster, emcClusters);

int trackCount = calIsolatedTrack(track.phi(), track.eta(), track.pt(), tracks);
int trackCount = getIsolatedTrack(track.eta(), track.phi(), track.pt(), tracks) - 1;

if (match.track_as<TrackEle>().pt() > ptTHnThresh && isTHnElectron) {
registry.fill(HIST("hTHnElectrons"), match.track_as<TrackEle>().pt(), match.track_as<TrackEle>().tpcNSigmaEl(), m02Emc, m20Emc, eop, isoEnergy);
registry.fill(HIST("hTHnElectrons"), match.track_as<TrackEle>().pt(), match.track_as<TrackEle>().tpcNSigmaEl(), m02Emc, eop, isoEnergy, trackCount);
}
// LOG(info) << "E/p" << eop;
registry.fill(HIST("hEopNsigTPC"), match.track_as<TrackEle>().tpcNSigmaEl(), eop);
registry.fill(HIST("hM02"), match.track_as<TrackEle>().tpcNSigmaEl(), m02Emc);
registry.fill(HIST("hM20"), match.track_as<TrackEle>().tpcNSigmaEl(), m20Emc);
if (match.emcalcluster_as<SelectedClusters>().m02() < m02Min || match.emcalcluster_as<SelectedClusters>().m02() > m02Max)
continue;

Expand Down
Loading