rivet is hosted by Hepforge, IPPP Durham
ALEPH_1996_S3486095.cc
Go to the documentation of this file.
00001 // -*- C++ -*-
00002 #include "Rivet/Analysis.hh"
00003 #include "Rivet/Projections/Beam.hh"
00004 #include "Rivet/Projections/Sphericity.hh"
00005 #include "Rivet/Projections/Thrust.hh"
00006 #include "Rivet/Projections/FastJets.hh"
00007 #include "Rivet/Projections/ParisiTensor.hh"
00008 #include "Rivet/Projections/Hemispheres.hh"
00009 #include "Rivet/Projections/FinalState.hh"
00010 #include "Rivet/Projections/ChargedFinalState.hh"
00011 #include "Rivet/Projections/UnstableFinalState.hh"
00012 
00013 namespace Rivet {
00014 
00015 
00016   /// @brief ALEPH QCD study with event shapes and identified particles
00017   /// @author Holger Schulz
00018   class ALEPH_1996_S3486095 : public Analysis {
00019 
00020   public:
00021 
00022     /// Constructor
00023     ALEPH_1996_S3486095()
00024       : Analysis("ALEPH_1996_S3486095")
00025     {
00026       _numChParticles               = 0;
00027       _weightedTotalPartNum         = 0;
00028       _weightedTotalNumPiPlus       = 0;
00029       _weightedTotalNumKPlus        = 0;
00030       _weightedTotalNumP            = 0;
00031       _weightedTotalNumPhoton       = 0;
00032       _weightedTotalNumPi0          = 0;
00033       _weightedTotalNumEta          = 0;
00034       _weightedTotalNumEtaPrime     = 0;
00035       _weightedTotalNumK0           = 0;
00036       _weightedTotalNumLambda0      = 0;
00037       _weightedTotalNumXiMinus      = 0;
00038       _weightedTotalNumSigma1385Plus= 0;
00039       _weightedTotalNumXi1530_0     = 0;
00040       _weightedTotalNumRho          = 0;
00041       _weightedTotalNumOmega782     = 0;
00042       _weightedTotalNumKStar892_0   = 0;
00043       _weightedTotalNumPhi          = 0;
00044       _weightedTotalNumKStar892Plus = 0;
00045     }
00046 
00047 
00048     /// @name Analysis methods
00049     //@{
00050 
00051     void init() {
00052       // Set up projections
00053       addProjection(Beam(), "Beams");
00054       const ChargedFinalState cfs;
00055       addProjection(cfs, "FS");
00056       addProjection(UnstableFinalState(), "UFS");
00057       addProjection(FastJets(cfs, FastJets::DURHAM, 0.7), "DurhamJets");
00058       addProjection(Sphericity(cfs), "Sphericity");
00059       addProjection(ParisiTensor(cfs), "Parisi");
00060       const Thrust thrust(cfs);
00061       addProjection(thrust, "Thrust");
00062       addProjection(Hemispheres(thrust), "Hemispheres");
00063 
00064       // Book histograms
00065       _histSphericity   = bookHisto1D(1, 1, 1);
00066       _histAplanarity   = bookHisto1D(2, 1, 1);
00067 
00068       _hist1MinusT      = bookHisto1D(3, 1, 1);
00069       _histTMinor       = bookHisto1D(4, 1, 1);
00070 
00071       _histY3           = bookHisto1D(5, 1, 1);
00072       _histHeavyJetMass = bookHisto1D(6, 1, 1);
00073       _histCParam       = bookHisto1D(7, 1, 1);
00074       _histOblateness   = bookHisto1D(8, 1, 1);
00075 
00076       _histScaledMom    = bookHisto1D(9, 1, 1);
00077       _histRapidityT    = bookHisto1D(10, 1, 1);
00078 
00079       _histPtSIn        = bookHisto1D(11, 1, 1);
00080       _histPtSOut       = bookHisto1D(12, 1, 1);
00081 
00082       _histLogScaledMom = bookHisto1D(17, 1, 1);
00083 
00084       _histChMult       = bookHisto1D(18, 1, 1);
00085       _histMeanChMult   = bookHisto1D(19, 1, 1);
00086 
00087       _histMeanChMultRapt05= bookHisto1D(20, 1, 1);
00088       _histMeanChMultRapt10= bookHisto1D(21, 1, 1);
00089       _histMeanChMultRapt15= bookHisto1D(22, 1, 1);
00090       _histMeanChMultRapt20= bookHisto1D(23, 1, 1);
00091 
00092 
00093       // Particle spectra
00094       _histMultiPiPlus        = bookHisto1D(25, 1, 1);
00095       _histMultiKPlus         = bookHisto1D(26, 1, 1);
00096       _histMultiP             = bookHisto1D(27, 1, 1);
00097       _histMultiPhoton        = bookHisto1D(28, 1, 1);
00098       _histMultiPi0           = bookHisto1D(29, 1, 1);
00099       _histMultiEta           = bookHisto1D(30, 1, 1);
00100       _histMultiEtaPrime      = bookHisto1D(31, 1, 1);
00101       _histMultiK0            = bookHisto1D(32, 1, 1);
00102       _histMultiLambda0       = bookHisto1D(33, 1, 1);
00103       _histMultiXiMinus       = bookHisto1D(34, 1, 1);
00104       _histMultiSigma1385Plus = bookHisto1D(35, 1, 1);
00105       _histMultiXi1530_0      = bookHisto1D(36, 1, 1);
00106       _histMultiRho           = bookHisto1D(37, 1, 1);
00107       _histMultiOmega782      = bookHisto1D(38, 1, 1);
00108       _histMultiKStar892_0    = bookHisto1D(39, 1, 1);
00109       _histMultiPhi           = bookHisto1D(40, 1, 1);
00110 
00111       _histMultiKStar892Plus  = bookHisto1D(43, 1, 1);
00112 
00113       // Mean multiplicities
00114       _histMeanMultiPi0           = bookHisto1D(44, 1,  2);
00115       _histMeanMultiEta           = bookHisto1D(44, 1,  3);
00116       _histMeanMultiEtaPrime      = bookHisto1D(44, 1,  4);
00117       _histMeanMultiK0            = bookHisto1D(44, 1,  5);
00118       _histMeanMultiRho           = bookHisto1D(44, 1,  6);
00119       _histMeanMultiOmega782      = bookHisto1D(44, 1,  7);
00120       _histMeanMultiPhi           = bookHisto1D(44, 1,  8);
00121       _histMeanMultiKStar892Plus  = bookHisto1D(44, 1,  9);
00122       _histMeanMultiKStar892_0    = bookHisto1D(44, 1, 10);
00123       _histMeanMultiLambda0       = bookHisto1D(44, 1, 11);
00124       _histMeanMultiSigma0        = bookHisto1D(44, 1, 12);
00125       _histMeanMultiXiMinus       = bookHisto1D(44, 1, 13);
00126       _histMeanMultiSigma1385Plus = bookHisto1D(44, 1, 14);
00127       _histMeanMultiXi1530_0      = bookHisto1D(44, 1, 15);
00128       _histMeanMultiOmegaOmegaBar = bookHisto1D(44, 1, 16);
00129     }
00130 
00131 
00132     void analyze(const Event& e) {
00133       // First, veto on leptonic events by requiring at least 4 charged FS particles
00134       const FinalState& fs = applyProjection<FinalState>(e, "FS");
00135       const size_t numParticles = fs.particles().size();
00136 
00137       // Even if we only generate hadronic events, we still need a cut on numCharged >= 2.
00138       if (numParticles < 2) {
00139         MSG_DEBUG("Failed leptonic event cut");
00140         vetoEvent;
00141       }
00142       MSG_DEBUG("Passed leptonic event cut");
00143 
00144       // Get event weight for histo filling
00145       const double weight = e.weight();
00146       _weightedTotalPartNum += numParticles * weight;
00147 
00148       // Get beams and average beam momentum
00149       const ParticlePair& beams = applyProjection<Beam>(e, "Beams").beams();
00150       const double meanBeamMom = ( beams.first.momentum().vector3().mod() +
00151                                    beams.second.momentum().vector3().mod() ) / 2.0;
00152       MSG_DEBUG("Avg beam momentum = " << meanBeamMom);
00153 
00154       // Thrusts
00155       MSG_DEBUG("Calculating thrust");
00156       const Thrust& thrust = applyProjection<Thrust>(e, "Thrust");
00157       _hist1MinusT->fill(1 - thrust.thrust(), weight);
00158       _histTMinor->fill(thrust.thrustMinor(), weight);
00159       _histOblateness->fill(thrust.oblateness(), weight);
00160 
00161       // Jets
00162       MSG_DEBUG("Calculating differential jet rate plots:");
00163       const FastJets& durjet = applyProjection<FastJets>(e, "DurhamJets");
00164       if (durjet.clusterSeq()) {
00165         double y3 = durjet.clusterSeq()->exclusive_ymerge_max(2);
00166         if (y3>0.0) _histY3->fill(-1. * std::log(y3), weight);
00167       }
00168 
00169       // Sphericities
00170       MSG_DEBUG("Calculating sphericity");
00171       const Sphericity& sphericity = applyProjection<Sphericity>(e, "Sphericity");
00172       _histSphericity->fill(sphericity.sphericity(), weight);
00173       _histAplanarity->fill(sphericity.aplanarity(), weight);
00174 
00175       // C param
00176       MSG_DEBUG("Calculating Parisi params");
00177       const ParisiTensor& parisi = applyProjection<ParisiTensor>(e, "Parisi");
00178       _histCParam->fill(parisi.C(), weight);
00179 
00180       // Hemispheres
00181       MSG_DEBUG("Calculating hemisphere variables");
00182       const Hemispheres& hemi = applyProjection<Hemispheres>(e, "Hemispheres");
00183       _histHeavyJetMass->fill(hemi.scaledM2high(), weight);
00184 
00185       // Iterate over all the charged final state particles.
00186       double Evis = 0.0;
00187       double rapt05 = 0.;
00188       double rapt10 = 0.;
00189       double rapt15 = 0.;
00190       double rapt20 = 0.;
00191       //int numChParticles = 0;
00192       MSG_DEBUG("About to iterate over charged FS particles");
00193       foreach (const Particle& p, fs.particles()) {
00194         // Get momentum and energy of each particle.
00195         const Vector3 mom3 = p.momentum().vector3();
00196         const double energy = p.momentum().E();
00197         Evis += energy;
00198         _numChParticles += weight;
00199 
00200         // Scaled momenta.
00201         const double mom = mom3.mod();
00202         const double scaledMom = mom/meanBeamMom;
00203         const double logInvScaledMom = -std::log(scaledMom);
00204         _histLogScaledMom->fill(logInvScaledMom, weight);
00205         _histScaledMom->fill(scaledMom, weight);
00206 
00207         // Get momenta components w.r.t. thrust and sphericity.
00208         const double momT = dot(thrust.thrustAxis(), mom3);
00209         const double pTinS = dot(mom3, sphericity.sphericityMajorAxis());
00210         const double pToutS = dot(mom3, sphericity.sphericityMinorAxis());
00211         _histPtSIn->fill(fabs(pTinS/GeV), weight);
00212         _histPtSOut->fill(fabs(pToutS/GeV), weight);
00213 
00214         // Calculate rapidities w.r.t. thrust.
00215         const double rapidityT = 0.5 * std::log((energy + momT) / (energy - momT));
00216         _histRapidityT->fill(fabs(rapidityT), weight);
00217         if (std::fabs(rapidityT) <= 0.5)  {
00218             rapt05 += 1.0;
00219         }
00220         if (std::fabs(rapidityT) <= 1.0)  {
00221             rapt10 += 1.0;
00222         }
00223         if (std::fabs(rapidityT) <= 1.5) {
00224             rapt15 += 1.0;
00225         }
00226         if (std::fabs(rapidityT) <= 2.0)  {
00227             rapt20 += 1.0;
00228         }
00229 
00230       }
00231 
00232       _histChMult->fill(numParticles, weight);
00233 
00234       _histMeanChMultRapt05->fill(_histMeanChMultRapt05->bin(0).midpoint(), rapt05 * weight);
00235       _histMeanChMultRapt10->fill(_histMeanChMultRapt10->bin(0).midpoint(), rapt10 * weight);
00236       _histMeanChMultRapt15->fill(_histMeanChMultRapt15->bin(0).midpoint(), rapt15 * weight);
00237       _histMeanChMultRapt20->fill(_histMeanChMultRapt20->bin(0).midpoint(), rapt20 * weight);
00238       _histMeanChMult->fill(_histMeanChMult->bin(0).midpoint(), numParticles*weight);
00239 
00240 
00241       //// Final state of unstable particles to get particle spectra
00242       const UnstableFinalState& ufs = applyProjection<UnstableFinalState>(e, "UFS");
00243       for (Particles::const_iterator p = ufs.particles().begin(); p != ufs.particles().end(); ++p) {
00244         const Vector3 mom3 = p->momentum().vector3();
00245         int id = abs(p->pdgId());
00246         const double mom = mom3.mod();
00247         const double energy = p->momentum().E();
00248         const double scaledMom = mom/meanBeamMom;
00249         const double scaledEnergy = energy/meanBeamMom;  // meanBeamMom is approximately beam energy
00250         switch (id) {
00251            case 22:
00252               _histMultiPhoton->fill(-1.*std::log(scaledMom), weight);
00253               _weightedTotalNumPhoton += weight;
00254               break;
00255            case -321:
00256            case 321:
00257               _weightedTotalNumKPlus += weight;
00258               _histMultiKPlus->fill(scaledMom, weight);
00259               break;
00260            case 211:
00261            case -211:
00262               _histMultiPiPlus->fill(scaledMom, weight);
00263               _weightedTotalNumPiPlus += weight;
00264               break;
00265            case 2212:
00266            case -2212:
00267               _histMultiP->fill(scaledMom, weight);
00268               _weightedTotalNumP += weight;
00269               break;
00270            case 111:
00271               _histMultiPi0->fill(scaledMom, weight);
00272               _histMeanMultiPi0->fill(_histMeanMultiPi0->bin(0).midpoint(), weight);
00273               _weightedTotalNumPi0 += weight;
00274               break;
00275            case 221:
00276               if (scaledMom >= 0.1) {
00277                 _histMultiEta->fill(scaledEnergy, weight);
00278                 _histMeanMultiEta->fill(_histMeanMultiEta->bin(0).midpoint(), weight);
00279                 _weightedTotalNumEta += weight;
00280               }
00281               break;
00282            case 331:
00283               if (scaledMom >= 0.1) {
00284                 _histMultiEtaPrime->fill(scaledEnergy, weight);
00285                 _histMeanMultiEtaPrime->fill(_histMeanMultiEtaPrime->bin(0).midpoint(), weight);
00286                 _weightedTotalNumEtaPrime += weight;
00287               }
00288               break;
00289            case 130: //klong
00290            case 310: //kshort
00291               _histMultiK0->fill(scaledMom, weight);
00292               _histMeanMultiK0->fill(_histMeanMultiK0->bin(0).midpoint(), weight);
00293               _weightedTotalNumK0 += weight;
00294               break;
00295            case 113:
00296               _histMultiRho->fill(scaledMom, weight);
00297               _histMeanMultiRho->fill(_histMeanMultiRho->bin(0).midpoint(), weight);
00298               _weightedTotalNumRho += weight;
00299               break;
00300            case 223:
00301               _histMultiOmega782->fill(scaledMom, weight);
00302               _histMeanMultiOmega782->fill(_histMeanMultiOmega782->bin(0).midpoint(), weight);
00303               _weightedTotalNumOmega782 += weight;
00304               break;
00305            case 333:
00306               _histMultiPhi->fill(scaledMom, weight);
00307               _histMeanMultiPhi->fill(_histMeanMultiPhi->bin(0).midpoint(), weight);
00308               _weightedTotalNumPhi += weight;
00309               break;
00310            case 313:
00311            case -313:
00312               _histMultiKStar892_0->fill(scaledMom, weight);
00313               _histMeanMultiKStar892_0->fill(_histMeanMultiKStar892_0->bin(0).midpoint(), weight);
00314               _weightedTotalNumKStar892_0 += weight;
00315               break;
00316            case 323:
00317            case -323:
00318               _histMultiKStar892Plus->fill(scaledEnergy, weight);
00319               _histMeanMultiKStar892Plus->fill(_histMeanMultiKStar892Plus->bin(0).midpoint(), weight);
00320               _weightedTotalNumKStar892Plus += weight;
00321               break;
00322            case 3122:
00323            case -3122:
00324               _histMultiLambda0->fill(scaledMom, weight);
00325               _histMeanMultiLambda0->fill(_histMeanMultiLambda0->bin(0).midpoint(), weight);
00326               _weightedTotalNumLambda0 += weight;
00327               break;
00328            case 3212:
00329            case -3212:
00330               _histMeanMultiSigma0->fill(_histMeanMultiSigma0->bin(0).midpoint(), weight);
00331               break;
00332            case 3312:
00333            case -3312:
00334               _histMultiXiMinus->fill(scaledEnergy, weight);
00335               _histMeanMultiXiMinus->fill(_histMeanMultiXiMinus->bin(0).midpoint(), weight);
00336               _weightedTotalNumXiMinus += weight;
00337               break;
00338            case 3114:
00339            case -3114:
00340            case 3224:
00341            case -3224:
00342               _histMultiSigma1385Plus->fill(scaledEnergy, weight);
00343               _histMeanMultiSigma1385Plus->fill(_histMeanMultiSigma1385Plus->bin(0).midpoint(), weight);
00344               _weightedTotalNumSigma1385Plus += weight;
00345               break;
00346            case 3324:
00347            case -3324:
00348               _histMultiXi1530_0->fill(scaledEnergy, weight);
00349               _histMeanMultiXi1530_0->fill(_histMeanMultiXi1530_0->bin(0).midpoint(), weight);
00350               _weightedTotalNumXi1530_0 += weight;
00351               break;
00352            case 3334:
00353               _histMeanMultiOmegaOmegaBar->fill(_histMeanMultiOmegaOmegaBar->bin(0).midpoint(), weight);
00354               break;
00355         }
00356       }
00357 
00358     }
00359 
00360 
00361 
00362     /// Finalize
00363     void finalize() {
00364       // Normalize inclusive single particle distributions to the average number
00365       // of charged particles per event.
00366       const double avgNumParts = _weightedTotalPartNum / sumOfWeights();
00367 
00368       normalize(_histPtSIn, avgNumParts);
00369       normalize(_histPtSOut, avgNumParts);
00370 
00371       normalize(_histRapidityT, avgNumParts);
00372       normalize(_histY3);
00373 
00374       normalize(_histLogScaledMom, avgNumParts);
00375       normalize(_histScaledMom, avgNumParts);
00376 
00377       // particle spectra
00378       scale(_histMultiPiPlus        ,1./sumOfWeights());
00379       scale(_histMultiKPlus         ,1./sumOfWeights());
00380       scale(_histMultiP             ,1./sumOfWeights());
00381       scale(_histMultiPhoton        ,1./sumOfWeights());
00382       scale(_histMultiPi0           ,1./sumOfWeights());
00383       scale(_histMultiEta           ,1./sumOfWeights());
00384       scale(_histMultiEtaPrime      ,1./sumOfWeights());
00385       scale(_histMultiK0            ,1./sumOfWeights());
00386       scale(_histMultiLambda0       ,1./sumOfWeights());
00387       scale(_histMultiXiMinus       ,1./sumOfWeights());
00388       scale(_histMultiSigma1385Plus ,1./sumOfWeights());
00389       scale(_histMultiXi1530_0      ,1./sumOfWeights());
00390       scale(_histMultiRho           ,1./sumOfWeights());
00391       scale(_histMultiOmega782      ,1./sumOfWeights());
00392       scale(_histMultiKStar892_0    ,1./sumOfWeights());
00393       scale(_histMultiPhi           ,1./sumOfWeights());
00394 
00395       scale(_histMultiKStar892Plus  ,1./sumOfWeights());
00396 
00397       //normalize(_histMultiPiPlus        ,_weightedTotalNumPiPlus / sumOfWeights());
00398       //normalize(_histMultiKPlus         ,_weightedTotalNumKPlus/sumOfWeights());
00399       //normalize(_histMultiP             ,_weightedTotalNumP/sumOfWeights());
00400       //normalize(_histMultiPhoton            ,_weightedTotalNumPhoton/sumOfWeights());
00401       //normalize(_histMultiPi0           ,_weightedTotalNumPi0/sumOfWeights());
00402       //normalize(_histMultiEta           ,_weightedTotalNumEta/sumOfWeights());
00403       //normalize(_histMultiEtaPrime      ,_weightedTotalNumEtaPrime/sumOfWeights());
00404       //normalize(_histMultiK0            ,_weightedTotalNumK0/sumOfWeights());
00405       //normalize(_histMultiLambda0       ,_weightedTotalNumLambda0/sumOfWeights());
00406       //normalize(_histMultiXiMinus       ,_weightedTotalNumXiMinus/sumOfWeights());
00407       //normalize(_histMultiSigma1385Plus ,_weightedTotalNumSigma1385Plus/sumOfWeights());
00408       //normalize(_histMultiXi1530_0      ,_weightedTotalNumXi1530_0 /sumOfWeights());
00409       //normalize(_histMultiRho           ,_weightedTotalNumRho/sumOfWeights());
00410       //normalize(_histMultiOmegaMinus    ,_weightedTotalNumOmegaMinus/sumOfWeights());
00411       //normalize(_histMultiKStar892_0    ,_weightedTotalNumKStar892_0/sumOfWeights());
00412       //normalize(_histMultiPhi           ,_weightedTotalNumPhi/sumOfWeights());
00413 
00414       //normalize(_histMultiKStar892Plus  ,_weightedTotalNumKStar892Plus/sumOfWeights());
00415 
00416       // event shape
00417       normalize(_hist1MinusT);
00418       normalize(_histTMinor);
00419       normalize(_histOblateness);
00420 
00421       normalize(_histSphericity);
00422       normalize(_histAplanarity);
00423       normalize(_histHeavyJetMass);
00424       normalize(_histCParam);
00425 
00426 
00427       // mean multiplicities
00428       scale(_histChMult              , 2.0/sumOfWeights()); // taking into account the binwidth of 2
00429       scale(_histMeanChMult          , 1.0/sumOfWeights());
00430       scale(_histMeanChMultRapt05    , 1.0/sumOfWeights());
00431       scale(_histMeanChMultRapt10    , 1.0/sumOfWeights());
00432       scale(_histMeanChMultRapt15    , 1.0/sumOfWeights());
00433       scale(_histMeanChMultRapt20    , 1.0/sumOfWeights());
00434 
00435 
00436       scale(_histMeanMultiPi0          , 1.0/sumOfWeights());
00437       scale(_histMeanMultiEta          , 1.0/sumOfWeights());
00438       scale(_histMeanMultiEtaPrime     , 1.0/sumOfWeights());
00439       scale(_histMeanMultiK0           , 1.0/sumOfWeights());
00440       scale(_histMeanMultiRho          , 1.0/sumOfWeights());
00441       scale(_histMeanMultiOmega782     , 1.0/sumOfWeights());
00442       scale(_histMeanMultiPhi          , 1.0/sumOfWeights());
00443       scale(_histMeanMultiKStar892Plus , 1.0/sumOfWeights());
00444       scale(_histMeanMultiKStar892_0   , 1.0/sumOfWeights());
00445       scale(_histMeanMultiLambda0      , 1.0/sumOfWeights());
00446       scale(_histMeanMultiSigma0       , 1.0/sumOfWeights());
00447       scale(_histMeanMultiXiMinus      , 1.0/sumOfWeights());
00448       scale(_histMeanMultiSigma1385Plus, 1.0/sumOfWeights());
00449       scale(_histMeanMultiXi1530_0     , 1.0/sumOfWeights());
00450       scale(_histMeanMultiOmegaOmegaBar, 1.0/sumOfWeights());
00451     }
00452 
00453     //@}
00454 
00455 
00456   private:
00457     /// Store the weighted sums of numbers of charged / charged+neutral
00458     /// particles - used to calculate average number of particles for the
00459     /// inclusive single particle distributions' normalisations.
00460     double _weightedTotalPartNum;
00461     double _weightedTotalNumPiPlus;
00462     double _weightedTotalNumKPlus;
00463     double _weightedTotalNumP;
00464     double _weightedTotalNumPhoton;
00465     double _weightedTotalNumPi0;
00466     double _weightedTotalNumEta;
00467     double _weightedTotalNumEtaPrime;
00468     double _weightedTotalNumK0;
00469     double _weightedTotalNumLambda0;
00470     double _weightedTotalNumXiMinus;
00471     double _weightedTotalNumSigma1385Plus;
00472     double _weightedTotalNumXi1530_0;
00473     double _weightedTotalNumRho;
00474     double _weightedTotalNumOmega782;
00475     double _weightedTotalNumKStar892_0;
00476     double _weightedTotalNumPhi;
00477     double _weightedTotalNumKStar892Plus;
00478     double _numChParticles;
00479 
00480     /// @name Histograms
00481     //@{
00482     Histo1DPtr _histSphericity;
00483     Histo1DPtr _histAplanarity;
00484 
00485     Histo1DPtr _hist1MinusT;
00486     Histo1DPtr _histTMinor;
00487 
00488     Histo1DPtr _histY3;
00489     Histo1DPtr _histHeavyJetMass;
00490     Histo1DPtr _histCParam;
00491     Histo1DPtr _histOblateness;
00492 
00493     Histo1DPtr _histScaledMom;
00494     Histo1DPtr _histRapidityT;
00495 
00496     Histo1DPtr _histPtSIn;
00497     Histo1DPtr _histPtSOut;
00498 
00499     Histo1DPtr _histJetRate2Durham;
00500     Histo1DPtr _histJetRate3Durham;
00501     Histo1DPtr _histJetRate4Durham;
00502     Histo1DPtr _histJetRate5Durham;
00503 
00504     Histo1DPtr _histLogScaledMom;
00505 
00506     Histo1DPtr _histChMult;
00507 
00508     Histo1DPtr _histMultiPiPlus;
00509     Histo1DPtr _histMultiKPlus;
00510     Histo1DPtr _histMultiP;
00511     Histo1DPtr _histMultiPhoton;
00512     Histo1DPtr _histMultiPi0;
00513     Histo1DPtr _histMultiEta;
00514     Histo1DPtr _histMultiEtaPrime;
00515     Histo1DPtr _histMultiK0;
00516     Histo1DPtr _histMultiLambda0;
00517     Histo1DPtr _histMultiXiMinus;
00518     Histo1DPtr _histMultiSigma1385Plus;
00519     Histo1DPtr _histMultiXi1530_0;
00520     Histo1DPtr _histMultiRho;
00521     Histo1DPtr _histMultiOmega782;
00522     Histo1DPtr _histMultiKStar892_0;
00523     Histo1DPtr _histMultiPhi;
00524     Histo1DPtr _histMultiKStar892Plus;
00525 
00526     // mean multiplicities
00527     Histo1DPtr _histMeanChMult;
00528     Histo1DPtr _histMeanChMultRapt05;
00529     Histo1DPtr _histMeanChMultRapt10;
00530     Histo1DPtr _histMeanChMultRapt15;
00531     Histo1DPtr _histMeanChMultRapt20;
00532 
00533     Histo1DPtr _histMeanMultiPi0;
00534     Histo1DPtr _histMeanMultiEta;
00535     Histo1DPtr _histMeanMultiEtaPrime;
00536     Histo1DPtr _histMeanMultiK0;
00537     Histo1DPtr _histMeanMultiRho;
00538     Histo1DPtr _histMeanMultiOmega782;
00539     Histo1DPtr _histMeanMultiPhi;
00540     Histo1DPtr _histMeanMultiKStar892Plus;
00541     Histo1DPtr _histMeanMultiKStar892_0;
00542     Histo1DPtr _histMeanMultiLambda0;
00543     Histo1DPtr _histMeanMultiSigma0;
00544     Histo1DPtr _histMeanMultiXiMinus;
00545     Histo1DPtr _histMeanMultiSigma1385Plus;
00546     Histo1DPtr _histMeanMultiXi1530_0;
00547     Histo1DPtr _histMeanMultiOmegaOmegaBar;
00548     //@}
00549 
00550   };
00551 
00552 
00553 
00554   // The hook for the plugin system
00555   DECLARE_RIVET_PLUGIN(ALEPH_1996_S3486095);
00556 
00557 }