47 #define init_param(type, varname) varname(ps.getParameter<type>(#varname))
64 void analyzePileup(
const std::vector<PileupSummaryInfo>& pInfo);
167 const unsigned nBx =
info.size();
169 ntupleData.push_back(static_cast<float>(nBx));
171 double sumpt_Lo = 0.0, sumpt_Hi = 0.0;
177 double sumpt_Lo_by_Bx[3] =
181 sumpt_Hi_by_Bx[3] = {
186 std::cout <<
"\n**** Pileup info begin" << std::endl;
188 bool isCrazy =
false;
189 for (
unsigned ibx = 0; ibx < nBx; ++ibx) {
196 const double losum = std::accumulate(lopt.begin(), lopt.end(), 0.0);
197 const double hisum = std::accumulate(hipt.begin(), hipt.end(), 0.0);
208 const unsigned idx =
bx < 0 ? 0
U : (
bx == 0 ? 1
U : 2
U);
209 npu_by_Bx[
idx] += npu;
210 sumpt_Lo_by_Bx[
idx] += losum;
211 sumpt_Hi_by_Bx[
idx] += hisum;
214 std::cout <<
"ibx " << ibx <<
" bx " <<
bx <<
" npu " << npu <<
" losum " << losum <<
" hisum " << hisum
219 std::cout <<
"**** Pileup info end\n" << std::endl;
225 for (
unsigned ibx = 0; ibx < 3; ++ibx) {
227 sumpt_Lo_by_Bx[ibx] = 0.0;
228 sumpt_Hi_by_Bx[ibx] = 0.0;
239 for (
unsigned ibx = 0; ibx < 3; ++ibx) {
251 vars +=
":nbx:npu:sumptLowCut:sumptHiCut";
253 vars +=
":npu_negbx:sumptLowCut_negbx:sumptHiCut_negbx";
254 vars +=
":npu_0bx:sumptLowCut_0bx:sumptHiCut_0bx";
255 vars +=
":npu_posbx:sumptLowCut_posbx:sumptHiCut_posbx";
258 vars +=
":estimate:pileup:uncert:uncertCode";
260 vars +=
":fjrho:fjsigma";
262 vars +=
":gridEtDensity:gridEtDensityMixed";
297 for (
unsigned ibx = 0; ibx < 3; ++ibx) {
312 std::ostringstream os;
315 copy->SetNameTitle(newname.c_str(), newname.c_str());
351 std::ostringstream os;
358 fs->make<TH2F>(newname.c_str(), newname.c_str(),
nEta,
input->etaMin(),
input->etaMax(),
nPhi, 0.0, 2.0 *
M_PI);
359 h->GetXaxis()->SetTitle(
"Eta");
360 h->GetYaxis()->SetTitle(
"Phi");
361 h->GetZaxis()->SetTitle(
"Transverse Energy");
382 const double ndof =
pv->ndof();