00001
00002 #include "Rivet/Analysis.hh"
00003 #include "Rivet/RivetYODA.hh"
00004 #include "Rivet/Tools/ParticleIdUtils.hh"
00005 #include "Rivet/Projections/FinalState.hh"
00006 #include "Rivet/Projections/ChargedFinalState.hh"
00007 #include "Rivet/Projections/UnstableFinalState.hh"
00008
00009 namespace Rivet {
00010
00011
00012
00013
00014 class PDG_HADRON_MULTIPLICITIES_RATIOS : public Analysis {
00015 public:
00016
00017
00018 PDG_HADRON_MULTIPLICITIES_RATIOS() : Analysis("PDG_HADRON_MULTIPLICITIES_RATIOS")
00019 {
00020 _weightedTotalNumPiPlus = 0;
00021 }
00022
00023
00024
00025
00026
00027 void analyze(const Event& e) {
00028
00029 const FinalState& fs = applyProjection<FinalState>(e, "FS");
00030 const size_t numParticles = fs.particles().size();
00031
00032
00033 if (numParticles < 2) {
00034 MSG_DEBUG("Failed leptonic event cut");
00035 vetoEvent;
00036 }
00037 MSG_DEBUG("Passed leptonic event cut");
00038
00039
00040 const double weight = e.weight();
00041
00042 MSG_DEBUG("sqrt(S) = " << sqrtS()/GeV << " GeV");
00043
00044
00045 const UnstableFinalState& ufs = applyProjection<UnstableFinalState>(e, "UFS");
00046
00047 if (sqrtS()/GeV >= 9.5 && sqrtS()/GeV <= 10.5) {
00048 foreach (const Particle& p, ufs.particles()) {
00049 const PdgId id = abs(p.pdgId());
00050 switch (id) {
00051 case 211:
00052 _weightedTotalNumPiPlus += weight;
00053 break;
00054 case 111:
00055 _histMeanMultiPi0->fill(_histMeanMultiPi0->bin(0).xMean(), weight);
00056 break;
00057 case 321:
00058 _histMeanMultiKPlus->fill(_histMeanMultiKPlus->bin(0).xMean(), weight);
00059 break;
00060 case 130:
00061 case 310:
00062 _histMeanMultiK0->fill(_histMeanMultiK0->bin(0).xMean(), weight);
00063 break;
00064 case 221:
00065 _histMeanMultiEta->fill(_histMeanMultiEta->bin(0).xMean(), weight);
00066 break;
00067 case 331:
00068 _histMeanMultiEtaPrime->fill(_histMeanMultiEtaPrime->bin(0).xMean(), weight);
00069 break;
00070 case 411:
00071 _histMeanMultiDPlus->fill(_histMeanMultiDPlus->bin(0).xMean(), weight);
00072 break;
00073 case 421:
00074 _histMeanMultiD0->fill(_histMeanMultiD0->bin(0).xMean(), weight);
00075 break;
00076 case 431:
00077 _histMeanMultiDPlus_s->fill(_histMeanMultiDPlus_s->bin(0).xMean(), weight);
00078 break;
00079 case 9010221:
00080 _histMeanMultiF0_980->fill(_histMeanMultiF0_980->bin(0).xMean(), weight);
00081 break;
00082 case 113:
00083 _histMeanMultiRho770_0->fill(_histMeanMultiRho770_0->bin(0).xMean(), weight);
00084 break;
00085 case 223:
00086 _histMeanMultiOmega782->fill(_histMeanMultiOmega782->bin(0).xMean(), weight);
00087 break;
00088 case 323:
00089 _histMeanMultiKStar892Plus->fill(_histMeanMultiKStar892Plus->bin(0).xMean(), weight);
00090 break;
00091 case 313:
00092 _histMeanMultiKStar892_0->fill(_histMeanMultiKStar892_0->bin(0).xMean(), weight);
00093 break;
00094 case 333:
00095 _histMeanMultiPhi1020->fill(_histMeanMultiPhi1020->bin(0).xMean(), weight);
00096 break;
00097 case 413:
00098 _histMeanMultiDStar2010Plus->fill(_histMeanMultiDStar2010Plus->bin(0).xMean(), weight);
00099 break;
00100 case 423:
00101 _histMeanMultiDStar2007_0->fill(_histMeanMultiDStar2007_0->bin(0).xMean(), weight);
00102 break;
00103 case 433:
00104 _histMeanMultiDStar_s2112Plus->fill(_histMeanMultiDStar_s2112Plus->bin(0).xMean(), weight);
00105 break;
00106 case 443:
00107 _histMeanMultiJPsi1S->fill(_histMeanMultiJPsi1S->bin(0).xMean(), weight);
00108 break;
00109 case 225:
00110 _histMeanMultiF2_1270->fill(_histMeanMultiF2_1270->bin(0).xMean(), weight);
00111 break;
00112 case 2212:
00113 _histMeanMultiP->fill(_histMeanMultiP->bin(0).xMean(), weight);
00114 break;
00115 case 3122:
00116 _histMeanMultiLambda->fill(_histMeanMultiLambda->bin(0).xMean(), weight);
00117 break;
00118 case 3212:
00119 _histMeanMultiSigma0->fill(_histMeanMultiSigma0->bin(0).xMean(), weight);
00120 break;
00121 case 3312:
00122 _histMeanMultiXiMinus->fill(_histMeanMultiXiMinus->bin(0).xMean(), weight);
00123 break;
00124 case 2224:
00125 _histMeanMultiDelta1232PlusPlus->fill(_histMeanMultiDelta1232PlusPlus->bin(0).xMean(), weight);
00126 break;
00127 case 3114:
00128 _histMeanMultiSigma1385Minus->fill(_histMeanMultiSigma1385Minus->bin(0).xMean(), weight);
00129 _histMeanMultiSigma1385PlusMinus->fill(_histMeanMultiSigma1385PlusMinus->bin(0).xMean(), weight);
00130 break;
00131 case 3224:
00132 _histMeanMultiSigma1385Plus->fill(_histMeanMultiSigma1385Plus->bin(0).xMean(), weight);
00133 _histMeanMultiSigma1385PlusMinus->fill(_histMeanMultiSigma1385PlusMinus->bin(0).xMean(), weight);
00134 break;
00135 case 3324:
00136 _histMeanMultiXi1530_0->fill(_histMeanMultiXi1530_0->bin(0).xMean(), weight);
00137 break;
00138 case 3334:
00139 _histMeanMultiOmegaMinus->fill(_histMeanMultiOmegaMinus->bin(0).xMean(), weight);
00140 break;
00141 case 4122:
00142 _histMeanMultiLambda_c_Plus->fill(_histMeanMultiLambda_c_Plus->bin(0).xMean(), weight);
00143 break;
00144 case 4222:
00145 case 4112:
00146 _histMeanMultiSigma_c_PlusPlus_0->fill(_histMeanMultiSigma_c_PlusPlus_0->bin(0).xMean(), weight);
00147 break;
00148 case 3124:
00149 _histMeanMultiLambda1520->fill(_histMeanMultiLambda1520->bin(0).xMean(), weight);
00150 break;
00151 }
00152 }
00153 }
00154
00155 if (sqrtS()/GeV >= 29 && sqrtS()/GeV <= 35) {
00156 foreach (const Particle& p, ufs.particles()) {
00157 const PdgId id = abs(p.pdgId());
00158 switch (id) {
00159 case 211:
00160 _weightedTotalNumPiPlus += weight;
00161 break;
00162 case 111:
00163 _histMeanMultiPi0->fill(_histMeanMultiPi0->bin(0).xMean(), weight);
00164 break;
00165 case 321:
00166 _histMeanMultiKPlus->fill(_histMeanMultiKPlus->bin(0).xMean(), weight);
00167 break;
00168 case 130:
00169 case 310:
00170 _histMeanMultiK0->fill(_histMeanMultiK0->bin(0).xMean(), weight);
00171 break;
00172 case 221:
00173 _histMeanMultiEta->fill(_histMeanMultiEta->bin(0).xMean(), weight);
00174 break;
00175 case 331:
00176 _histMeanMultiEtaPrime->fill(_histMeanMultiEtaPrime->bin(0).xMean(), weight);
00177 break;
00178 case 411:
00179 _histMeanMultiDPlus->fill(_histMeanMultiDPlus->bin(0).xMean(), weight);
00180 break;
00181 case 421:
00182 _histMeanMultiD0->fill(_histMeanMultiD0->bin(0).xMean(), weight);
00183 break;
00184 case 431:
00185 _histMeanMultiDPlus_s->fill(_histMeanMultiDPlus_s->bin(0).xMean(), weight);
00186 break;
00187 case 9010221:
00188 _histMeanMultiF0_980->fill(_histMeanMultiF0_980->bin(0).xMean(), weight);
00189 break;
00190 case 113:
00191 _histMeanMultiRho770_0->fill(_histMeanMultiRho770_0->bin(0).xMean(), weight);
00192 break;
00193 case 323:
00194 _histMeanMultiKStar892Plus->fill(_histMeanMultiKStar892Plus->bin(0).xMean(), weight);
00195 break;
00196 case 313:
00197 _histMeanMultiKStar892_0->fill(_histMeanMultiKStar892_0->bin(0).xMean(), weight);
00198 break;
00199 case 333:
00200 _histMeanMultiPhi1020->fill(_histMeanMultiPhi1020->bin(0).xMean(), weight);
00201 break;
00202 case 413:
00203 _histMeanMultiDStar2010Plus->fill(_histMeanMultiDStar2010Plus->bin(0).xMean(), weight);
00204 break;
00205 case 423:
00206 _histMeanMultiDStar2007_0->fill(_histMeanMultiDStar2007_0->bin(0).xMean(), weight);
00207 break;
00208 case 225:
00209 _histMeanMultiF2_1270->fill(_histMeanMultiF2_1270->bin(0).xMean(), weight);
00210 break;
00211 case 325:
00212 _histMeanMultiK2Star1430Plus->fill(_histMeanMultiK2Star1430Plus->bin(0).xMean(), weight);
00213 break;
00214 case 315:
00215 _histMeanMultiK2Star1430_0->fill(_histMeanMultiK2Star1430_0->bin(0).xMean(), weight);
00216 break;
00217 case 2212:
00218 _histMeanMultiP->fill(_histMeanMultiP->bin(0).xMean(), weight);
00219 break;
00220 case 3122:
00221 _histMeanMultiLambda->fill(_histMeanMultiLambda->bin(0).xMean(), weight);
00222 break;
00223 case 3312:
00224 _histMeanMultiXiMinus->fill(_histMeanMultiXiMinus->bin(0).xMean(), weight);
00225 break;
00226 case 3114:
00227 _histMeanMultiSigma1385Minus->fill(_histMeanMultiSigma1385Minus->bin(0).xMean(), weight);
00228 _histMeanMultiSigma1385PlusMinus->fill(_histMeanMultiSigma1385PlusMinus->bin(0).xMean(), weight);
00229 break;
00230 case 3224:
00231 _histMeanMultiSigma1385Plus->fill(_histMeanMultiSigma1385Plus->bin(0).xMean(), weight);
00232 _histMeanMultiSigma1385PlusMinus->fill(_histMeanMultiSigma1385PlusMinus->bin(0).xMean(), weight);
00233 break;
00234 case 3334:
00235 _histMeanMultiOmegaMinus->fill(_histMeanMultiOmegaMinus->bin(0).xMean(), weight);
00236 break;
00237 case 4122:
00238 _histMeanMultiLambda_c_Plus->fill(_histMeanMultiLambda_c_Plus->bin(0).xMean(), weight);
00239 break;
00240 }
00241 }
00242 }
00243
00244 if (sqrtS()/GeV >= 89.5 && sqrtS()/GeV <= 91.8) {
00245 foreach (const Particle& p, ufs.particles()) {
00246 const PdgId id = abs(p.pdgId());
00247 switch (id) {
00248 case 211:
00249 _weightedTotalNumPiPlus += weight;
00250 break;
00251 case 111:
00252 _histMeanMultiPi0->fill(_histMeanMultiPi0->bin(0).xMean(), weight);
00253 break;
00254 case 321:
00255 _histMeanMultiKPlus->fill(_histMeanMultiKPlus->bin(0).xMean(), weight);
00256 break;
00257 case 130:
00258 case 310:
00259 _histMeanMultiK0->fill(_histMeanMultiK0->bin(0).xMean(), weight);
00260 break;
00261 case 221:
00262 _histMeanMultiEta->fill(_histMeanMultiEta->bin(0).xMean(), weight);
00263 break;
00264 case 331:
00265 _histMeanMultiEtaPrime->fill(_histMeanMultiEtaPrime->bin(0).xMean(), weight);
00266 break;
00267 case 411:
00268 _histMeanMultiDPlus->fill(_histMeanMultiDPlus->bin(0).xMean(), weight);
00269 break;
00270 case 421:
00271 _histMeanMultiD0->fill(_histMeanMultiD0->bin(0).xMean(), weight);
00272 break;
00273 case 431:
00274 _histMeanMultiDPlus_s->fill(_histMeanMultiDPlus_s->bin(0).xMean(), weight);
00275 break;
00276 case 511:
00277 _histMeanMultiBPlus_B0_d->fill(_histMeanMultiBPlus_B0_d->bin(0).xMean(), weight);
00278 break;
00279 case 521:
00280 _histMeanMultiBPlus_B0_d->fill(_histMeanMultiBPlus_B0_d->bin(0).xMean(), weight);
00281 _histMeanMultiBPlus_u->fill(_histMeanMultiBPlus_u->bin(0).xMean(), weight);
00282 break;
00283 case 531:
00284 _histMeanMultiB0_s->fill(_histMeanMultiB0_s->bin(0).xMean(), weight);
00285 break;
00286 case 9010221:
00287 _histMeanMultiF0_980->fill(_histMeanMultiF0_980->bin(0).xMean(), weight);
00288 break;
00289 case 9000211:
00290 _histMeanMultiA0_980Plus->fill(_histMeanMultiA0_980Plus->bin(0).xMean(), weight);
00291 break;
00292 case 113:
00293 _histMeanMultiRho770_0->fill(_histMeanMultiRho770_0->bin(0).xMean(), weight);
00294 break;
00295 case 213:
00296 _histMeanMultiRho770Plus->fill(_histMeanMultiRho770Plus->bin(0).xMean(), weight);
00297 break;
00298 case 223:
00299 _histMeanMultiOmega782->fill(_histMeanMultiOmega782->bin(0).xMean(), weight);
00300 break;
00301 case 323:
00302 _histMeanMultiKStar892Plus->fill(_histMeanMultiKStar892Plus->bin(0).xMean(), weight);
00303 break;
00304 case 313:
00305 _histMeanMultiKStar892_0->fill(_histMeanMultiKStar892_0->bin(0).xMean(), weight);
00306 break;
00307 case 333:
00308 _histMeanMultiPhi1020->fill(_histMeanMultiPhi1020->bin(0).xMean(), weight);
00309 break;
00310 case 413:
00311 _histMeanMultiDStar2010Plus->fill(_histMeanMultiDStar2010Plus->bin(0).xMean(), weight);
00312 break;
00313 case 433:
00314 _histMeanMultiDStar_s2112Plus->fill(_histMeanMultiDStar_s2112Plus->bin(0).xMean(), weight);
00315 break;
00316 case 513:
00317 case 523:
00318 case 533:
00319 _histMeanMultiBStar->fill(_histMeanMultiBStar->bin(0).xMean(), weight);
00320 break;
00321 case 443:
00322 _histMeanMultiJPsi1S->fill(_histMeanMultiJPsi1S->bin(0).xMean(), weight);
00323 break;
00324 case 100443:
00325 _histMeanMultiPsi2S->fill(_histMeanMultiPsi2S->bin(0).xMean(), weight);
00326 break;
00327 case 553:
00328 _histMeanMultiUpsilon1S->fill(_histMeanMultiUpsilon1S->bin(0).xMean(), weight);
00329 break;
00330 case 20223:
00331 _histMeanMultiF1_1285->fill(_histMeanMultiF1_1285->bin(0).xMean(), weight);
00332 break;
00333 case 20333:
00334 _histMeanMultiF1_1420->fill(_histMeanMultiF1_1420->bin(0).xMean(), weight);
00335 break;
00336 case 445:
00337 _histMeanMultiChi_c1_3510->fill(_histMeanMultiChi_c1_3510->bin(0).xMean(), weight);
00338 break;
00339 case 225:
00340 _histMeanMultiF2_1270->fill(_histMeanMultiF2_1270->bin(0).xMean(), weight);
00341 break;
00342 case 335:
00343 _histMeanMultiF2Prime1525->fill(_histMeanMultiF2Prime1525->bin(0).xMean(), weight);
00344 break;
00345 case 315:
00346 _histMeanMultiK2Star1430_0->fill(_histMeanMultiK2Star1430_0->bin(0).xMean(), weight);
00347 break;
00348 case 515:
00349 case 525:
00350 case 535:
00351 _histMeanMultiBStarStar->fill(_histMeanMultiBStarStar->bin(0).xMean(), weight);
00352 break;
00353 case 10433:
00354 case 20433:
00355 _histMeanMultiDs1Plus->fill(_histMeanMultiDs1Plus->bin(0).xMean(), weight);
00356 break;
00357 case 435:
00358 _histMeanMultiDs2Plus->fill(_histMeanMultiDs2Plus->bin(0).xMean(), weight);
00359 break;
00360 case 2212:
00361 _histMeanMultiP->fill(_histMeanMultiP->bin(0).xMean(), weight);
00362 break;
00363 case 3122:
00364 _histMeanMultiLambda->fill(_histMeanMultiLambda->bin(0).xMean(), weight);
00365 break;
00366 case 3212:
00367 _histMeanMultiSigma0->fill(_histMeanMultiSigma0->bin(0).xMean(), weight);
00368 break;
00369 case 3112:
00370 _histMeanMultiSigmaMinus->fill(_histMeanMultiSigmaMinus->bin(0).xMean(), weight);
00371 _histMeanMultiSigmaPlusMinus->fill(_histMeanMultiSigmaPlusMinus->bin(0).xMean(), weight);
00372 break;
00373 case 3222:
00374 _histMeanMultiSigmaPlus->fill(_histMeanMultiSigmaPlus->bin(0).xMean(), weight);
00375 _histMeanMultiSigmaPlusMinus->fill(_histMeanMultiSigmaPlusMinus->bin(0).xMean(), weight);
00376 break;
00377 case 3312:
00378 _histMeanMultiXiMinus->fill(_histMeanMultiXiMinus->bin(0).xMean(), weight);
00379 break;
00380 case 2224:
00381 _histMeanMultiDelta1232PlusPlus->fill(_histMeanMultiDelta1232PlusPlus->bin(0).xMean(), weight);
00382 break;
00383 case 3114:
00384 _histMeanMultiSigma1385Minus->fill(_histMeanMultiSigma1385Minus->bin(0).xMean(), weight);
00385 _histMeanMultiSigma1385PlusMinus->fill(_histMeanMultiSigma1385PlusMinus->bin(0).xMean(), weight);
00386 break;
00387 case 3224:
00388 _histMeanMultiSigma1385Plus->fill(_histMeanMultiSigma1385Plus->bin(0).xMean(), weight);
00389 _histMeanMultiSigma1385PlusMinus->fill(_histMeanMultiSigma1385PlusMinus->bin(0).xMean(), weight);
00390 break;
00391 case 3324:
00392 _histMeanMultiXi1530_0->fill(_histMeanMultiXi1530_0->bin(0).xMean(), weight);
00393 break;
00394 case 3334:
00395 _histMeanMultiOmegaMinus->fill(_histMeanMultiOmegaMinus->bin(0).xMean(), weight);
00396 break;
00397 case 4122:
00398 _histMeanMultiLambda_c_Plus->fill(_histMeanMultiLambda_c_Plus->bin(0).xMean(), weight);
00399 break;
00400 case 5122:
00401 _histMeanMultiLambda_b_0->fill(_histMeanMultiLambda_b_0->bin(0).xMean(), weight);
00402 break;
00403 case 3124:
00404 _histMeanMultiLambda1520->fill(_histMeanMultiLambda1520->bin(0).xMean(), weight);
00405 break;
00406 }
00407 }
00408 }
00409
00410 if (sqrtS()/GeV >= 130 && sqrtS()/GeV <= 200) {
00411 foreach (const Particle& p, ufs.particles()) {
00412 const PdgId id = abs(p.pdgId());
00413 switch (id) {
00414 case 211:
00415 _weightedTotalNumPiPlus += weight;
00416 break;
00417 case 321:
00418 _histMeanMultiKPlus->fill(_histMeanMultiKPlus->bin(0).xMean(), weight);
00419 break;
00420 case 130:
00421 case 310:
00422 _histMeanMultiK0->fill(_histMeanMultiK0->bin(0).xMean(), weight);
00423 break;
00424 case 2212:
00425 _histMeanMultiP->fill(_histMeanMultiP->bin(0).xMean(), weight);
00426 break;
00427 case 3122:
00428 _histMeanMultiLambda->fill(_histMeanMultiLambda->bin(0).xMean(), weight);
00429 break;
00430 }
00431 }
00432 }
00433
00434 }
00435
00436
00437
00438 void init() {
00439 addProjection(ChargedFinalState(), "FS");
00440 addProjection(UnstableFinalState(), "UFS");
00441
00442 if (sqrtS()/GeV >= 9.5 && sqrtS()/GeV <= 10.5) {
00443 _histMeanMultiPi0 = bookHisto1D( 2, 1, 1);
00444 _histMeanMultiKPlus = bookHisto1D( 3, 1, 1);
00445 _histMeanMultiK0 = bookHisto1D( 4, 1, 1);
00446 _histMeanMultiEta = bookHisto1D( 5, 1, 1);
00447 _histMeanMultiEtaPrime = bookHisto1D( 6, 1, 1);
00448 _histMeanMultiDPlus = bookHisto1D( 7, 1, 1);
00449 _histMeanMultiD0 = bookHisto1D( 8, 1, 1);
00450 _histMeanMultiDPlus_s = bookHisto1D( 9, 1, 1);
00451 _histMeanMultiF0_980 = bookHisto1D(13, 1, 1);
00452 _histMeanMultiRho770_0 = bookHisto1D(15, 1, 1);
00453 _histMeanMultiOmega782 = bookHisto1D(17, 1, 1);
00454 _histMeanMultiKStar892Plus = bookHisto1D(18, 1, 1);
00455 _histMeanMultiKStar892_0 = bookHisto1D(19, 1, 1);
00456 _histMeanMultiPhi1020 = bookHisto1D(20, 1, 1);
00457 _histMeanMultiDStar2010Plus = bookHisto1D(21, 1, 1);
00458 _histMeanMultiDStar2007_0 = bookHisto1D(22, 1, 1);
00459 _histMeanMultiDStar_s2112Plus = bookHisto1D(23, 1, 1);
00460 _histMeanMultiJPsi1S = bookHisto1D(25, 1, 1);
00461 _histMeanMultiF2_1270 = bookHisto1D(31, 1, 1);
00462 _histMeanMultiP = bookHisto1D(38, 1, 1);
00463 _histMeanMultiLambda = bookHisto1D(39, 1, 1);
00464 _histMeanMultiSigma0 = bookHisto1D(40, 1, 1);
00465 _histMeanMultiXiMinus = bookHisto1D(44, 1, 1);
00466 _histMeanMultiDelta1232PlusPlus = bookHisto1D(45, 1, 1);
00467 _histMeanMultiSigma1385Minus = bookHisto1D(46, 1, 1);
00468 _histMeanMultiSigma1385Plus = bookHisto1D(47, 1, 1);
00469 _histMeanMultiSigma1385PlusMinus = bookHisto1D(48, 1, 1);
00470 _histMeanMultiXi1530_0 = bookHisto1D(49, 1, 1);
00471 _histMeanMultiOmegaMinus = bookHisto1D(50, 1, 1);
00472 _histMeanMultiLambda_c_Plus = bookHisto1D(51, 1, 1);
00473 _histMeanMultiSigma_c_PlusPlus_0 = bookHisto1D(53, 1, 1);
00474 _histMeanMultiLambda1520 = bookHisto1D(54, 1, 1);
00475 }
00476
00477 if (sqrtS()/GeV >= 29 && sqrtS()/GeV <= 35) {
00478 _histMeanMultiPi0 = bookHisto1D( 2, 1, 2);
00479 _histMeanMultiKPlus = bookHisto1D( 3, 1, 2);
00480 _histMeanMultiK0 = bookHisto1D( 4, 1, 2);
00481 _histMeanMultiEta = bookHisto1D( 5, 1, 2);
00482 _histMeanMultiEtaPrime = bookHisto1D( 6, 1, 2);
00483 _histMeanMultiDPlus = bookHisto1D( 7, 1, 2);
00484 _histMeanMultiD0 = bookHisto1D( 8, 1, 2);
00485 _histMeanMultiDPlus_s = bookHisto1D( 9, 1, 2);
00486 _histMeanMultiF0_980 = bookHisto1D(13, 1, 2);
00487 _histMeanMultiRho770_0 = bookHisto1D(15, 1, 2);
00488 _histMeanMultiKStar892Plus = bookHisto1D(18, 1, 2);
00489 _histMeanMultiKStar892_0 = bookHisto1D(19, 1, 2);
00490 _histMeanMultiPhi1020 = bookHisto1D(20, 1, 2);
00491 _histMeanMultiDStar2010Plus = bookHisto1D(21, 1, 2);
00492 _histMeanMultiDStar2007_0 = bookHisto1D(22, 1, 2);
00493 _histMeanMultiF2_1270 = bookHisto1D(31, 1, 2);
00494 _histMeanMultiK2Star1430Plus = bookHisto1D(33, 1, 1);
00495 _histMeanMultiK2Star1430_0 = bookHisto1D(34, 1, 1);
00496 _histMeanMultiP = bookHisto1D(38, 1, 2);
00497 _histMeanMultiLambda = bookHisto1D(39, 1, 2);
00498 _histMeanMultiXiMinus = bookHisto1D(44, 1, 2);
00499 _histMeanMultiSigma1385Minus = bookHisto1D(46, 1, 2);
00500 _histMeanMultiSigma1385Plus = bookHisto1D(47, 1, 2);
00501 _histMeanMultiSigma1385PlusMinus = bookHisto1D(48, 1, 2);
00502 _histMeanMultiOmegaMinus = bookHisto1D(50, 1, 2);
00503 _histMeanMultiLambda_c_Plus = bookHisto1D(51, 1, 2);
00504 }
00505
00506 if (sqrtS()/GeV >= 89.5 && sqrtS()/GeV <= 91.8) {
00507 _histMeanMultiPi0 = bookHisto1D( 2, 1, 3);
00508 _histMeanMultiKPlus = bookHisto1D( 3, 1, 3);
00509 _histMeanMultiK0 = bookHisto1D( 4, 1, 3);
00510 _histMeanMultiEta = bookHisto1D( 5, 1, 3);
00511 _histMeanMultiEtaPrime = bookHisto1D( 6, 1, 3);
00512 _histMeanMultiDPlus = bookHisto1D( 7, 1, 3);
00513 _histMeanMultiD0 = bookHisto1D( 8, 1, 3);
00514 _histMeanMultiDPlus_s = bookHisto1D( 9, 1, 3);
00515 _histMeanMultiBPlus_B0_d = bookHisto1D(10, 1, 1);
00516 _histMeanMultiBPlus_u = bookHisto1D(11, 1, 1);
00517 _histMeanMultiB0_s = bookHisto1D(12, 1, 1);
00518 _histMeanMultiF0_980 = bookHisto1D(13, 1, 3);
00519 _histMeanMultiA0_980Plus = bookHisto1D(14, 1, 1);
00520 _histMeanMultiRho770_0 = bookHisto1D(15, 1, 3);
00521 _histMeanMultiRho770Plus = bookHisto1D(16, 1, 1);
00522 _histMeanMultiOmega782 = bookHisto1D(17, 1, 2);
00523 _histMeanMultiKStar892Plus = bookHisto1D(18, 1, 3);
00524 _histMeanMultiKStar892_0 = bookHisto1D(19, 1, 3);
00525 _histMeanMultiPhi1020 = bookHisto1D(20, 1, 3);
00526 _histMeanMultiDStar2010Plus = bookHisto1D(21, 1, 3);
00527 _histMeanMultiDStar_s2112Plus = bookHisto1D(23, 1, 2);
00528 _histMeanMultiBStar = bookHisto1D(24, 1, 1);
00529 _histMeanMultiJPsi1S = bookHisto1D(25, 1, 2);
00530 _histMeanMultiPsi2S = bookHisto1D(26, 1, 1);
00531 _histMeanMultiUpsilon1S = bookHisto1D(27, 1, 1);
00532 _histMeanMultiF1_1285 = bookHisto1D(28, 1, 1);
00533 _histMeanMultiF1_1420 = bookHisto1D(29, 1, 1);
00534 _histMeanMultiChi_c1_3510 = bookHisto1D(30, 1, 1);
00535 _histMeanMultiF2_1270 = bookHisto1D(31, 1, 3);
00536 _histMeanMultiF2Prime1525 = bookHisto1D(32, 1, 1);
00537 _histMeanMultiK2Star1430_0 = bookHisto1D(34, 1, 2);
00538 _histMeanMultiBStarStar = bookHisto1D(35, 1, 1);
00539 _histMeanMultiDs1Plus = bookHisto1D(36, 1, 1);
00540 _histMeanMultiDs2Plus = bookHisto1D(37, 1, 1);
00541 _histMeanMultiP = bookHisto1D(38, 1, 3);
00542 _histMeanMultiLambda = bookHisto1D(39, 1, 3);
00543 _histMeanMultiSigma0 = bookHisto1D(40, 1, 2);
00544 _histMeanMultiSigmaMinus = bookHisto1D(41, 1, 1);
00545 _histMeanMultiSigmaPlus = bookHisto1D(42, 1, 1);
00546 _histMeanMultiSigmaPlusMinus = bookHisto1D(43, 1, 1);
00547 _histMeanMultiXiMinus = bookHisto1D(44, 1, 3);
00548 _histMeanMultiDelta1232PlusPlus = bookHisto1D(45, 1, 2);
00549 _histMeanMultiSigma1385Minus = bookHisto1D(46, 1, 3);
00550 _histMeanMultiSigma1385Plus = bookHisto1D(47, 1, 3);
00551 _histMeanMultiSigma1385PlusMinus = bookHisto1D(48, 1, 3);
00552 _histMeanMultiXi1530_0 = bookHisto1D(49, 1, 2);
00553 _histMeanMultiOmegaMinus = bookHisto1D(50, 1, 3);
00554 _histMeanMultiLambda_c_Plus = bookHisto1D(51, 1, 3);
00555 _histMeanMultiLambda_b_0 = bookHisto1D(52, 1, 1);
00556 _histMeanMultiLambda1520 = bookHisto1D(54, 1, 2);
00557 }
00558
00559 if (sqrtS()/GeV >= 130 && sqrtS()/GeV <= 200) {
00560 _histMeanMultiKPlus = bookHisto1D( 3, 1, 4);
00561 _histMeanMultiK0 = bookHisto1D( 4, 1, 4);
00562 _histMeanMultiP = bookHisto1D(38, 1, 4);
00563 _histMeanMultiLambda = bookHisto1D(39, 1, 4);
00564 }
00565 }
00566
00567
00568
00569
00570 void finalize() {
00571 if (sqrtS()/GeV >= 9.5 && sqrtS()/GeV <= 10.5) {
00572 scale(_histMeanMultiPi0 , 1.0/_weightedTotalNumPiPlus);
00573 scale(_histMeanMultiKPlus , 1.0/_weightedTotalNumPiPlus);
00574 scale(_histMeanMultiK0 , 1.0/_weightedTotalNumPiPlus);
00575 scale(_histMeanMultiEta , 1.0/_weightedTotalNumPiPlus);
00576 scale(_histMeanMultiEtaPrime , 1.0/_weightedTotalNumPiPlus);
00577 scale(_histMeanMultiDPlus , 1.0/_weightedTotalNumPiPlus);
00578 scale(_histMeanMultiD0 , 1.0/_weightedTotalNumPiPlus);
00579 scale(_histMeanMultiDPlus_s , 1.0/_weightedTotalNumPiPlus);
00580 scale(_histMeanMultiF0_980 , 1.0/_weightedTotalNumPiPlus);
00581 scale(_histMeanMultiRho770_0 , 1.0/_weightedTotalNumPiPlus);
00582 scale(_histMeanMultiOmega782 , 1.0/_weightedTotalNumPiPlus);
00583 scale(_histMeanMultiKStar892Plus , 1.0/_weightedTotalNumPiPlus);
00584 scale(_histMeanMultiKStar892_0 , 1.0/_weightedTotalNumPiPlus);
00585 scale(_histMeanMultiPhi1020 , 1.0/_weightedTotalNumPiPlus);
00586 scale(_histMeanMultiDStar2010Plus , 1.0/_weightedTotalNumPiPlus);
00587 scale(_histMeanMultiDStar2007_0 , 1.0/_weightedTotalNumPiPlus);
00588 scale(_histMeanMultiDStar_s2112Plus , 1.0/_weightedTotalNumPiPlus);
00589 scale(_histMeanMultiJPsi1S , 1.0/_weightedTotalNumPiPlus);
00590 scale(_histMeanMultiF2_1270 , 1.0/_weightedTotalNumPiPlus);
00591 scale(_histMeanMultiP , 1.0/_weightedTotalNumPiPlus);
00592 scale(_histMeanMultiLambda , 1.0/_weightedTotalNumPiPlus);
00593 scale(_histMeanMultiSigma0 , 1.0/_weightedTotalNumPiPlus);
00594 scale(_histMeanMultiXiMinus , 1.0/_weightedTotalNumPiPlus);
00595 scale(_histMeanMultiDelta1232PlusPlus , 1.0/_weightedTotalNumPiPlus);
00596 scale(_histMeanMultiSigma1385Minus , 1.0/_weightedTotalNumPiPlus);
00597 scale(_histMeanMultiSigma1385Plus , 1.0/_weightedTotalNumPiPlus);
00598 scale(_histMeanMultiSigma1385PlusMinus, 1.0/_weightedTotalNumPiPlus);
00599 scale(_histMeanMultiXi1530_0 , 1.0/_weightedTotalNumPiPlus);
00600 scale(_histMeanMultiOmegaMinus , 1.0/_weightedTotalNumPiPlus);
00601 scale(_histMeanMultiLambda_c_Plus , 1.0/_weightedTotalNumPiPlus);
00602 scale(_histMeanMultiSigma_c_PlusPlus_0, 1.0/_weightedTotalNumPiPlus);
00603 scale(_histMeanMultiLambda1520 , 1.0/_weightedTotalNumPiPlus);
00604 }
00605
00606 if (sqrtS()/GeV >= 29 && sqrtS()/GeV <= 35) {
00607 scale(_histMeanMultiPi0 , 5.0/_weightedTotalNumPiPlus);
00608 scale(_histMeanMultiKPlus , 5.0/_weightedTotalNumPiPlus);
00609 scale(_histMeanMultiK0 , 5.0/_weightedTotalNumPiPlus);
00610 scale(_histMeanMultiEta , 5.0/_weightedTotalNumPiPlus);
00611 scale(_histMeanMultiEtaPrime , 5.0/_weightedTotalNumPiPlus);
00612 scale(_histMeanMultiDPlus , 5.0/_weightedTotalNumPiPlus);
00613 scale(_histMeanMultiD0 , 5.0/_weightedTotalNumPiPlus);
00614 scale(_histMeanMultiDPlus_s , 5.0/_weightedTotalNumPiPlus);
00615 scale(_histMeanMultiF0_980 , 5.0/_weightedTotalNumPiPlus);
00616 scale(_histMeanMultiRho770_0 , 5.0/_weightedTotalNumPiPlus);
00617 scale(_histMeanMultiKStar892Plus , 5.0/_weightedTotalNumPiPlus);
00618 scale(_histMeanMultiKStar892_0 , 5.0/_weightedTotalNumPiPlus);
00619 scale(_histMeanMultiPhi1020 , 5.0/_weightedTotalNumPiPlus);
00620 scale(_histMeanMultiDStar2010Plus , 5.0/_weightedTotalNumPiPlus);
00621 scale(_histMeanMultiDStar2007_0 , 5.0/_weightedTotalNumPiPlus);
00622 scale(_histMeanMultiF2_1270 , 5.0/_weightedTotalNumPiPlus);
00623 scale(_histMeanMultiK2Star1430Plus , 5.0/_weightedTotalNumPiPlus);
00624 scale(_histMeanMultiK2Star1430_0 , 5.0/_weightedTotalNumPiPlus);
00625 scale(_histMeanMultiP , 5.0/_weightedTotalNumPiPlus);
00626 scale(_histMeanMultiLambda , 5.0/_weightedTotalNumPiPlus);
00627 scale(_histMeanMultiXiMinus , 5.0/_weightedTotalNumPiPlus);
00628 scale(_histMeanMultiSigma1385Minus , 5.0/_weightedTotalNumPiPlus);
00629 scale(_histMeanMultiSigma1385Plus , 5.0/_weightedTotalNumPiPlus);
00630 scale(_histMeanMultiSigma1385PlusMinus, 5.0/_weightedTotalNumPiPlus);
00631 scale(_histMeanMultiOmegaMinus , 5.0/_weightedTotalNumPiPlus);
00632 scale(_histMeanMultiLambda_c_Plus , 5.0/_weightedTotalNumPiPlus);
00633 }
00634
00635 if (sqrtS()/GeV >= 89.5 && sqrtS()/GeV <= 91.8) {
00636 scale(_histMeanMultiPi0 , 1.0/_weightedTotalNumPiPlus);
00637 scale(_histMeanMultiKPlus , 1.0/_weightedTotalNumPiPlus);
00638 scale(_histMeanMultiK0 , 1.0/_weightedTotalNumPiPlus);
00639 scale(_histMeanMultiEta , 1.0/_weightedTotalNumPiPlus);
00640 scale(_histMeanMultiEtaPrime , 1.0/_weightedTotalNumPiPlus);
00641 scale(_histMeanMultiDPlus , 1.0/_weightedTotalNumPiPlus);
00642 scale(_histMeanMultiD0 , 1.0/_weightedTotalNumPiPlus);
00643 scale(_histMeanMultiDPlus_s , 1.0/_weightedTotalNumPiPlus);
00644 scale(_histMeanMultiBPlus_B0_d , 1.0/_weightedTotalNumPiPlus);
00645 scale(_histMeanMultiBPlus_u , 1.0/_weightedTotalNumPiPlus);
00646 scale(_histMeanMultiB0_s , 1.0/_weightedTotalNumPiPlus);
00647 scale(_histMeanMultiF0_980 , 1.0/_weightedTotalNumPiPlus);
00648 scale(_histMeanMultiA0_980Plus , 1.0/_weightedTotalNumPiPlus);
00649 scale(_histMeanMultiRho770_0 , 1.0/_weightedTotalNumPiPlus);
00650 scale(_histMeanMultiRho770Plus , 1.0/_weightedTotalNumPiPlus);
00651 scale(_histMeanMultiOmega782 , 1.0/_weightedTotalNumPiPlus);
00652 scale(_histMeanMultiKStar892Plus , 1.0/_weightedTotalNumPiPlus);
00653 scale(_histMeanMultiKStar892_0 , 1.0/_weightedTotalNumPiPlus);
00654 scale(_histMeanMultiPhi1020 , 1.0/_weightedTotalNumPiPlus);
00655 scale(_histMeanMultiDStar2010Plus , 1.0/_weightedTotalNumPiPlus);
00656 scale(_histMeanMultiDStar_s2112Plus , 1.0/_weightedTotalNumPiPlus);
00657 scale(_histMeanMultiBStar , 1.0/_weightedTotalNumPiPlus);
00658 scale(_histMeanMultiJPsi1S , 1.0/_weightedTotalNumPiPlus);
00659 scale(_histMeanMultiPsi2S , 1.0/_weightedTotalNumPiPlus);
00660 scale(_histMeanMultiUpsilon1S , 1.0/_weightedTotalNumPiPlus);
00661 scale(_histMeanMultiF1_1285 , 1.0/_weightedTotalNumPiPlus);
00662 scale(_histMeanMultiF1_1420 , 1.0/_weightedTotalNumPiPlus);
00663 scale(_histMeanMultiChi_c1_3510 , 1.0/_weightedTotalNumPiPlus);
00664 scale(_histMeanMultiF2_1270 , 1.0/_weightedTotalNumPiPlus);
00665 scale(_histMeanMultiF2Prime1525 , 1.0/_weightedTotalNumPiPlus);
00666 scale(_histMeanMultiK2Star1430_0 , 1.0/_weightedTotalNumPiPlus);
00667 scale(_histMeanMultiBStarStar , 1.0/_weightedTotalNumPiPlus);
00668 scale(_histMeanMultiDs1Plus , 1.0/_weightedTotalNumPiPlus);
00669 scale(_histMeanMultiDs2Plus , 1.0/_weightedTotalNumPiPlus);
00670 scale(_histMeanMultiP , 1.0/_weightedTotalNumPiPlus);
00671 scale(_histMeanMultiLambda , 1.0/_weightedTotalNumPiPlus);
00672 scale(_histMeanMultiSigma0 , 1.0/_weightedTotalNumPiPlus);
00673 scale(_histMeanMultiSigmaMinus , 1.0/_weightedTotalNumPiPlus);
00674 scale(_histMeanMultiSigmaPlus , 1.0/_weightedTotalNumPiPlus);
00675 scale(_histMeanMultiSigmaPlusMinus , 1.0/_weightedTotalNumPiPlus);
00676 scale(_histMeanMultiXiMinus , 1.0/_weightedTotalNumPiPlus);
00677 scale(_histMeanMultiDelta1232PlusPlus , 1.0/_weightedTotalNumPiPlus);
00678 scale(_histMeanMultiSigma1385Minus , 1.0/_weightedTotalNumPiPlus);
00679 scale(_histMeanMultiSigma1385Plus , 1.0/_weightedTotalNumPiPlus);
00680 scale(_histMeanMultiSigma1385PlusMinus, 1.0/_weightedTotalNumPiPlus);
00681 scale(_histMeanMultiXi1530_0 , 1.0/_weightedTotalNumPiPlus);
00682 scale(_histMeanMultiOmegaMinus , 1.0/_weightedTotalNumPiPlus);
00683 scale(_histMeanMultiLambda_c_Plus , 1.0/_weightedTotalNumPiPlus);
00684 scale(_histMeanMultiLambda_b_0 , 1.0/_weightedTotalNumPiPlus);
00685 scale(_histMeanMultiLambda1520 , 1.0/_weightedTotalNumPiPlus);
00686 }
00687
00688 if (sqrtS()/GeV >= 130 && sqrtS()/GeV <= 200) {
00689 scale(_histMeanMultiKPlus , 70.0/_weightedTotalNumPiPlus);
00690 scale(_histMeanMultiK0 , 70.0/_weightedTotalNumPiPlus);
00691 scale(_histMeanMultiP , 70.0/_weightedTotalNumPiPlus);
00692 scale(_histMeanMultiLambda , 70.0/_weightedTotalNumPiPlus);
00693 }
00694 }
00695
00696
00697
00698
00699 private:
00700
00701 double _weightedTotalNumPiPlus;
00702
00703 Histo1DPtr _histMeanMultiPi0;
00704 Histo1DPtr _histMeanMultiKPlus;
00705 Histo1DPtr _histMeanMultiK0;
00706 Histo1DPtr _histMeanMultiEta;
00707 Histo1DPtr _histMeanMultiEtaPrime;
00708 Histo1DPtr _histMeanMultiDPlus;
00709 Histo1DPtr _histMeanMultiD0;
00710 Histo1DPtr _histMeanMultiDPlus_s;
00711 Histo1DPtr _histMeanMultiBPlus_B0_d;
00712 Histo1DPtr _histMeanMultiBPlus_u;
00713 Histo1DPtr _histMeanMultiB0_s;
00714 Histo1DPtr _histMeanMultiF0_980;
00715 Histo1DPtr _histMeanMultiA0_980Plus;
00716 Histo1DPtr _histMeanMultiRho770_0;
00717 Histo1DPtr _histMeanMultiRho770Plus;
00718 Histo1DPtr _histMeanMultiOmega782;
00719 Histo1DPtr _histMeanMultiKStar892Plus;
00720 Histo1DPtr _histMeanMultiKStar892_0;
00721 Histo1DPtr _histMeanMultiPhi1020;
00722 Histo1DPtr _histMeanMultiDStar2010Plus;
00723 Histo1DPtr _histMeanMultiDStar2007_0;
00724 Histo1DPtr _histMeanMultiDStar_s2112Plus;
00725 Histo1DPtr _histMeanMultiBStar;
00726 Histo1DPtr _histMeanMultiJPsi1S;
00727 Histo1DPtr _histMeanMultiPsi2S;
00728 Histo1DPtr _histMeanMultiUpsilon1S;
00729 Histo1DPtr _histMeanMultiF1_1285;
00730 Histo1DPtr _histMeanMultiF1_1420;
00731 Histo1DPtr _histMeanMultiChi_c1_3510;
00732 Histo1DPtr _histMeanMultiF2_1270;
00733 Histo1DPtr _histMeanMultiF2Prime1525;
00734 Histo1DPtr _histMeanMultiK2Star1430Plus;
00735 Histo1DPtr _histMeanMultiK2Star1430_0;
00736 Histo1DPtr _histMeanMultiBStarStar;
00737 Histo1DPtr _histMeanMultiDs1Plus;
00738 Histo1DPtr _histMeanMultiDs2Plus;
00739 Histo1DPtr _histMeanMultiP;
00740 Histo1DPtr _histMeanMultiLambda;
00741 Histo1DPtr _histMeanMultiSigma0;
00742 Histo1DPtr _histMeanMultiSigmaMinus;
00743 Histo1DPtr _histMeanMultiSigmaPlus;
00744 Histo1DPtr _histMeanMultiSigmaPlusMinus;
00745 Histo1DPtr _histMeanMultiXiMinus;
00746 Histo1DPtr _histMeanMultiDelta1232PlusPlus;
00747 Histo1DPtr _histMeanMultiSigma1385Minus;
00748 Histo1DPtr _histMeanMultiSigma1385Plus;
00749 Histo1DPtr _histMeanMultiSigma1385PlusMinus;
00750 Histo1DPtr _histMeanMultiXi1530_0;
00751 Histo1DPtr _histMeanMultiOmegaMinus;
00752 Histo1DPtr _histMeanMultiLambda_c_Plus;
00753 Histo1DPtr _histMeanMultiLambda_b_0;
00754 Histo1DPtr _histMeanMultiSigma_c_PlusPlus_0;
00755 Histo1DPtr _histMeanMultiLambda1520;
00756
00757
00758
00759 };
00760
00761
00762
00763
00764 DECLARE_RIVET_PLUGIN(PDG_HADRON_MULTIPLICITIES_RATIOS);
00765
00766 }