33 |
|
fPileupInfoName("PileupInfo"), |
34 |
|
fDoPUInfo(kFALSE), |
35 |
|
hNPU(0), |
36 |
< |
hNPU50ns(0) |
36 |
> |
hNPU50ns(0), |
37 |
> |
hNPUTrue(0) |
38 |
|
{ |
39 |
|
// Constructor. |
40 |
|
} |
211 |
|
|
212 |
|
if (GetEventHeader()->IsMC()) { |
213 |
|
LoadBranch(fPileupInfoName); |
214 |
< |
Int_t npu[3] = {0,0,0}; |
214 |
> |
Double_t npu[4] = {0.,0.,0.,0.}; |
215 |
|
for (UInt_t i=0; i<fPileupInfo->GetEntries(); ++i) { |
216 |
|
const PileupInfo *puinfo = fPileupInfo->At(i); |
217 |
|
if (puinfo->GetBunchCrossing()==0) npu[0]= puinfo->GetPU_NumInteractions(); |
218 |
|
else if (puinfo->GetBunchCrossing()==-1) npu[1] = puinfo->GetPU_NumInteractions(); |
219 |
|
else if (puinfo->GetBunchCrossing()==1) npu[2] = puinfo->GetPU_NumInteractions(); |
220 |
+ |
if (puinfo->GetBunchCrossing()==0) npu[3]= puinfo->GetPU_NumMean(); |
221 |
|
} |
220 |
– |
|
222 |
|
hNPU->Fill(npu[0]); |
223 |
|
hNPU50ns->Fill(npu[0],npu[1],npu[2]); |
224 |
+ |
hNPUTrue->Fill(npu[3]); |
225 |
|
} |
226 |
|
|
227 |
|
|
260 |
|
hNPU50ns = new TH3D("hNPU50ns", "hNPU50ns", 201, -0.5, 200.5, 201, -0.5, 200.5, 201, -0.5, 200.5); |
261 |
|
AddOutput(hNPU50ns); |
262 |
|
|
263 |
+ |
hNPUTrue = new TH1D("hNPUTrue", "hNPUTrue", 2000, 0.0, 2000.0); |
264 |
+ |
AddOutput(hNPUTrue); |
265 |
+ |
|
266 |
|
} |
267 |
|
|
268 |
|
//-------------------------------------------------------------------------------------------------- |