Skip to content

Commit 3cd6425

Browse files
committed
add mixing bins for gen analysis
1 parent 1700fac commit 3cd6425

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

PWGLF/Tasks/Nuspex/hadronnucleicorrelation.cxx

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,8 @@ struct hadronnucleicorrelation {
105105
// Mixing parameters
106106
Configurable<int> _vertexNbinsToMix{"vertexNbinsToMix", 10, "Number of vertexZ bins for the mixing"};
107107
Configurable<int> _multNsubBins{"multSubBins", 10, "number of sub-bins to perform the mixing within"};
108+
Configurable<float> maxmultmix{"maxmultmix", 20, "maximum multiplicity to mix"};
109+
108110

109111
// pT/A bins
110112
Configurable<std::vector<double>> pTBins{"pTBins", {0.6f, 1.0f, 1.2f, 2.f}, "p_{T} bins"};
@@ -1814,6 +1816,28 @@ struct hadronnucleicorrelation {
18141816
continue;
18151817
}
18161818

1819+
int vertexBinToMix = std::floor((collision.posZ() + cutzvertex) / (2 * cutzvertex / _vertexNbinsToMix));
1820+
int centBinToMix = std::floor(collision.mult() / (maxmultmix / _multNsubBins));
1821+
1822+
if (collision.mult()>maxmultmix) centBinToMix=_multNsubBins-1; // to avoid overflow in centrality bin
1823+
if (centBinToMix<0) centBinToMix=0; // to avoid underflow in centrality bin
1824+
1825+
if (selectedparticlesMC_antid.find(collision1.globalIndex()) != selectedparticlesMC_antid.end()) {
1826+
mixbinsMC_antid[std::pair<int, float>{vertexBinToMix, centBinToMix}].push_back(std::make_shared<decltype(collision1)>(collision1));
1827+
}
1828+
1829+
if (selectedparticlesMC_d.find(collision1.globalIndex()) != selectedparticlesMC_d.end()) {
1830+
mixbinsMC_d[std::pair<int, float>{vertexBinToMix, centBinToMix}].push_back(std::make_shared<decltype(collision1)>(collision1));
1831+
}
1832+
1833+
if (selectedparticlesMC_antip.find(collision1.globalIndex()) != selectedparticlesMC_antip.end()) {
1834+
mixbinsMC_antip[std::pair<int, float>{vertexBinToMix, centBinToMix}].push_back(std::make_shared<decltype(collision1)>(collision1));
1835+
}
1836+
1837+
if (selectedparticlesMC_p.find(collision1.globalIndex()) != selectedparticlesMC_p.end()) {
1838+
mixbinsMC_p[std::pair<int, float>{vertexBinToMix, centBinToMix}].push_back(std::make_shared<decltype(collision1)>(collision1));
1839+
}
1840+
18171841
// anti-d - anti-p correlation
18181842
if (selectedparticlesMC_antid.find(collision1.globalIndex()) != selectedparticlesMC_antid.end()) {
18191843
if (selectedparticlesMC_antip.find(collision1.globalIndex()) != selectedparticlesMC_antip.end()) {

0 commit comments

Comments
 (0)