rivet is hosted by Hepforge, IPPP Durham
LHCB_2012_I1119400.cc
Go to the documentation of this file.
00001 // -*- C++ -*-
00002 #include "Rivet/Analysis.hh"
00003 #include "Rivet/Projections/ChargedFinalState.hh"
00004 #include "Rivet/Math/MathUtils.hh"
00005 #include "Rivet/Math/Constants.hh"
00006 
00007 #include "HepMC/GenEvent.h"
00008 #include "HepMC/GenParticle.h"
00009 #include "HepMC/GenVertex.h"
00010 #include "HepMC/SimpleVector.h"
00011 
00012 #include <iostream>
00013 #include <sstream>
00014 #include <string>
00015 #include <vector>
00016 #include <map>
00017 #include <utility>
00018 
00019 namespace Rivet {
00020 
00021 
00022   class LHCB_2012_I1119400 : public Analysis {
00023     public:
00024 
00025     /// @name Constructors etc.
00026     //@{
00027 
00028     /// Constructor
00029     LHCB_2012_I1119400() : Analysis("LHCB_2012_I1119400"),
00030       _p_min(5.0),
00031       _pt_min(0.0),_pt1_edge(0.8), _pt2_edge(1.2),
00032       //_eta_nbins(4),
00033       _eta_min(2.5),
00034       _eta_max(4.5)
00035     {   }
00036 
00037     //@}
00038 
00039 
00040     public:
00041 
00042     /// @name Analysis methods
00043     //@{
00044 
00045     /// Book histograms and initialise projections before the run
00046     void init() {
00047       fillMap(_partLftMap);
00048 
00049       int id_shift = 0;
00050       if (fuzzyEquals(sqrtS(), 7*TeV)) id_shift = 1;
00051       // define ratios if second pdgid in pair is -1, it means that is a antiparticle/particle ratio
00052 
00053       _ratiotype["pbarp"]         = make_pair(2212, -1);
00054       _ratiotype["kminuskplus"]   = make_pair(321, -1);
00055       _ratiotype["piminuspiplus"] = make_pair(211, -1);
00056       _ratiotype["ppi"]           = make_pair(2212, 211);
00057       _ratiotype["kpi"]           = make_pair(321, 211);
00058       _ratiotype["pk"]            = make_pair(2212, 321);
00059 
00060       std::map<string, int > _hepdataid;
00061       _hepdataid["pbarp"]         =  1 + id_shift;
00062       _hepdataid["kminuskplus"]   =  3 + id_shift;
00063       _hepdataid["piminuspiplus"] =  5 + id_shift;
00064       _hepdataid["ppi"]           =  7 + id_shift;
00065       _hepdataid["kpi"]           =  9 + id_shift;
00066       _hepdataid["pk"]            = 11 + id_shift;
00067 
00068       std::map<std::string, std::pair<int, int> >::iterator it;
00069 
00070       // booking histograms
00071       for (it=_ratiotype.begin(); it!=_ratiotype.end(); it++) {
00072         _h_ratio_lowpt [it->first] = bookScatter2D(_hepdataid[it->first], 1, 1);
00073         _h_ratio_midpt [it->first] = bookScatter2D(_hepdataid[it->first], 1, 2);
00074         _h_ratio_highpt[it->first] = bookScatter2D(_hepdataid[it->first], 1, 3);
00075         _h_num_lowpt   [it->first] = bookHisto1D  (_hepdataid[it->first], 1, 1, "num_l_"+it->first);
00076         _h_num_midpt   [it->first] = bookHisto1D  (_hepdataid[it->first], 1, 2, "num_m_"+it->first);
00077         _h_num_highpt  [it->first] = bookHisto1D  (_hepdataid[it->first], 1, 3, "num_h_"+it->first);
00078         _h_den_lowpt   [it->first] = bookHisto1D  (_hepdataid[it->first], 1, 1, "den_l_"+it->first);
00079         _h_den_midpt   [it->first] = bookHisto1D  (_hepdataid[it->first], 1, 2, "den_m_"+it->first);
00080         _h_den_highpt  [it->first] = bookHisto1D  (_hepdataid[it->first], 1, 3, "den_h_"+it->first);
00081       }
00082 
00083       addProjection(ChargedFinalState(_eta_min, _eta_max, _pt_min*GeV), "CFS");
00084     }
00085 
00086 
00087     // Perform the per-event analysis
00088     void analyze(const Event& event) {
00089       const double weight = event.weight();
00090       const ChargedFinalState& cfs = applyProjection<ChargedFinalState>(event, "CFS");
00091 
00092       foreach (const Particle& p, cfs.particles()) {
00093         int id = p.pdgId();
00094         // continue if particle not a proton, a kaon or a pion
00095         if ( !( (abs(id) == 211) || (abs(id) == 321) || (abs(id) == 2212)))  {
00096           continue;
00097         }
00098 
00099         // cut in momentum
00100         const FourMomentum& qmom = p.momentum();
00101         if (qmom.p().mod() < _p_min) continue;
00102 
00103         // Lifetime cut: ctau sum of all particle ancestors < 10^-9 m according to the paper (see eq. 5)
00104         const double MAX_CTAU = 1.0e-9; // [m]
00105         double ancestor_lftsum = getMotherLifeTimeSum(p);
00106         if ( (ancestor_lftsum < 0.0) || (ancestor_lftsum > MAX_CTAU) ) continue;
00107 
00108         double eta = qmom.eta();
00109         double pT  = qmom.pT();
00110 
00111         std::map<std::string, std::pair<int, int> >::iterator it;
00112 
00113         for (it=_ratiotype.begin(); it!=_ratiotype.end(); it++) {
00114           // check what type of ratio is
00115           if ((it->second.second)==-1) {
00116             // check ptbin
00117             if (pT < _pt1_edge) {
00118               // filling histos for numerator and denominator
00119               if (id == -abs(it->second.first)) _h_num_lowpt[it->first]->fill(eta, weight);
00120               if (id ==  abs(it->second.first)) _h_den_lowpt[it->first]->fill(eta, weight);
00121             }
00122             else if (pT < _pt2_edge) {
00123               // filling histos for numerator and denominator
00124               if (id == -abs(it->second.first)) _h_num_midpt[it->first]->fill(eta, weight);
00125               if (id ==  abs(it->second.first)) _h_den_midpt[it->first]->fill(eta, weight);
00126             }
00127             else {
00128               // filling histos for numerator and denominator
00129               if (id == -abs(it->second.first)) _h_num_highpt[it->first]->fill(eta, weight);
00130               if (id ==  abs(it->second.first)) _h_den_highpt[it->first]->fill(eta, weight);
00131             }
00132           }
00133           else {
00134             // check what type of ratio is
00135             if (pT < _pt1_edge) {
00136               // filling histos for numerator and denominator
00137               if (abs(id) == abs(it->second.first))  _h_num_lowpt[it->first]->fill(eta, weight);
00138               if (abs(id) == abs(it->second.second)) _h_den_lowpt[it->first]->fill(eta, weight);
00139             }
00140             else if (pT < _pt2_edge) {
00141               // filling histos for numerator and denominator
00142               if (abs(id) == abs(it->second.first))  _h_num_midpt[it->first]->fill(eta, weight);
00143               if (abs(id) == abs(it->second.second)) _h_den_midpt[it->first]->fill(eta, weight);
00144             }
00145             else {
00146               // filling histos for numerator and denominator
00147               if (abs(id) == abs(it->second.first))  _h_num_highpt[it->first]->fill(eta, weight);
00148               if (abs(id) == abs(it->second.second)) _h_den_highpt[it->first]->fill(eta, weight);
00149             }
00150           }
00151         }
00152       }
00153     }
00154 
00155 
00156     // Generate the ratio histograms
00157     void finalize() {
00158       std::map<std::string, std::pair<int, int> >::iterator it;
00159 
00160       // booking histograms
00161       for (it=_ratiotype.begin(); it!=_ratiotype.end(); it++) {
00162         divide(_h_num_lowpt[it->first],  _h_den_lowpt[it->first],  _h_ratio_lowpt[it->first]);
00163         divide(_h_num_midpt[it->first],  _h_den_midpt[it->first],  _h_ratio_midpt[it->first]);
00164         divide(_h_num_highpt[it->first], _h_den_highpt[it->first], _h_ratio_highpt[it->first]);
00165       }
00166     }
00167 
00168     //@}
00169 
00170 
00171     private:
00172 
00173 
00174     // Get particle lifetime from hardcoded data
00175     double getLifeTime(int pid) {
00176       pid = abs(pid);
00177       double lft = -1.0;
00178       map<int, double>::iterator pPartLft = _partLftMap.find(pid);
00179       // search stable particle list
00180       if (pPartLft == _partLftMap.end()) {
00181         if (pid <= 100) return 0.0;
00182         for (size_t i=0; i < sizeof(_stablePDGIds)/sizeof(unsigned int); i++) {
00183           if (pid == _stablePDGIds[i]) {
00184             lft = 0.0;
00185             break;
00186           }
00187         }
00188       } else {
00189         lft = (*pPartLft).second;
00190       }
00191       if (lft < 0.0 && PID::isHadron(pid)) {
00192         MSG_ERROR("Could not determine lifetime for particle with PID " << pid
00193             << "... This will be considered unprompt!");
00194       }
00195       return lft;
00196     }
00197 
00198     // Data members like post-cuts event weight counters go here
00199     const double getMotherLifeTimeSum(const Particle& p) {
00200       if (p.genParticle() == NULL) return -1.;
00201       double lftSum = 0.;
00202       double plft = 0.;
00203       const GenParticle* part = p.genParticle();
00204       GenVertex* ivtx = part->production_vertex();
00205       while(ivtx)
00206       {
00207         if (ivtx->particles_in_size() < 1) { lftSum = -1.; break; };
00208         const HepMC::GenVertex::particles_in_const_iterator iPart_invtx = ivtx->particles_in_const_begin();
00209         part = (*iPart_invtx);
00210         if ( !(part) ) { lftSum = -1.; break; };
00211         ivtx = part->production_vertex();
00212         if ( (part->pdg_id() == 2212) || !(ivtx) ) break; // reached beam
00213         plft = getLifeTime(part->pdg_id());
00214         if (plft < 0.) { lftSum = -1.; break; };
00215         lftSum += plft;
00216       };
00217       return (lftSum * c_light);
00218     }
00219 
00220     /// @name Private variables
00221     // Momentum threshold
00222     double _p_min;
00223 
00224     // The edges of the intervals of transversal momentum
00225     double _pt_min;
00226     double _pt1_edge;
00227     double _pt2_edge;
00228 
00229     // The limits of the pseudorapidity window
00230     //int    _eta_nbins;
00231     double _eta_min;
00232     double _eta_max;
00233 
00234     // Map between PDG id and particle lifetimes in seconds
00235     std::map<int, double> _partLftMap;
00236 
00237     // Set of PDG Ids for stable particles (PDG Id <= 100 are considered stable)
00238     static const int _stablePDGIds[205];
00239 
00240     // Define histograms
00241     // ratio
00242     std::map<std::string, Scatter2DPtr > _h_ratio_lowpt;
00243     std::map<std::string, Scatter2DPtr > _h_ratio_midpt;
00244     std::map<std::string, Scatter2DPtr > _h_ratio_highpt;
00245     // numerator
00246     std::map<std::string, Histo1DPtr > _h_num_lowpt;
00247     std::map<std::string, Histo1DPtr > _h_num_midpt;
00248     std::map<std::string, Histo1DPtr > _h_num_highpt;
00249     // denominator
00250     std::map<std::string, Histo1DPtr > _h_den_lowpt;
00251     std::map<std::string, Histo1DPtr > _h_den_midpt;
00252     std::map<std::string, Histo1DPtr > _h_den_highpt;
00253 
00254     // Map of ratios and IDs of numerator and denominator
00255     std::map<string, pair<int,int> > _ratiotype;
00256 
00257     // Fill the PDG Id to Lifetime[seconds] map
00258     // Data was extracted from LHCb Particle Table through LHCb::ParticlePropertySvc
00259     bool fillMap(map<int, double> &m) {
00260       m[6] =  4.707703E-25;  m[11] =  1.E+16;  m[12] =  1.E+16;
00261       m[13] =  2.197019E-06;  m[14] =  1.E+16;  m[15] =  2.906E-13;  m[16] =  1.E+16;  m[22] =  1.E+16;
00262       m[23] =  2.637914E-25;  m[24] =  3.075758E-25;  m[25] =  9.4E-26;  m[35] =  9.4E-26;
00263       m[36] =  9.4E-26;  m[37] =  9.4E-26;  m[84] =  3.335641E-13;  m[85] =  1.290893E-12;
00264       m[111] =  8.4E-17;  m[113] =  4.405704E-24;  m[115] =  6.151516E-24;  m[117] =  4.088275E-24;
00265       m[119] =  2.102914E-24;  m[130] =  5.116E-08;  m[150] =  1.525E-12;  m[211] =  2.6033E-08;
00266       m[213] =  4.405704E-24;  m[215] =  6.151516E-24;  m[217] =  4.088275E-24;  m[219] =  2.102914E-24;
00267       m[221] =  5.063171E-19;  m[223] =  7.752794E-23;  m[225] =  3.555982E-24;  m[227] =  3.91793E-24;
00268       m[229] =  2.777267E-24;  m[310] =  8.953E-11;  m[313] =  1.308573E-23;  m[315] =  6.038644E-24;
00269       m[317] =  4.139699E-24;  m[319] =  3.324304E-24;  m[321] =  1.238E-08;  m[323] =  1.295693E-23;
00270       m[325] =  6.682357E-24;  m[327] =  4.139699E-24;  m[329] =  3.324304E-24;  m[331] =  3.210791E-21;
00271       m[333] =  1.545099E-22;  m[335] =  9.016605E-24;  m[337] =  7.565657E-24;  m[350] =  1.407125E-12;
00272       m[411] =  1.04E-12;  m[413] =  6.856377E-21;  m[415] =  1.778952E-23;  m[421] =  4.101E-13;
00273       m[423] =  1.000003E-19;  m[425] =  1.530726E-23;  m[431] =  5.E-13;  m[433] =  1.000003E-19;
00274       m[435] =  3.291061E-23;  m[441] =  2.465214E-23;  m[443] =  7.062363E-21;  m[445] =  3.242425E-22;
00275       m[510] =  1.525E-12;  m[511] =  1.525E-12;  m[513] =  1.000019E-19;  m[515] =  1.31E-23;
00276       m[521] =  1.638E-12;  m[523] =  1.000019E-19;  m[525] =  1.31E-23;  m[530] =  1.536875E-12;
00277       m[531] =  1.472E-12;  m[533] =  1.E-19;  m[535] =  1.31E-23;  m[541] =  4.5E-13;
00278       m[553] =  1.218911E-20;  m[1112] =  4.539394E-24;  m[1114] =  5.578069E-24;  m[1116] =  1.994582E-24;
00279       m[1118] =  2.269697E-24;  m[1212] =  4.539394E-24;  m[1214] =  5.723584E-24;  m[1216] =  1.994582E-24;
00280       m[1218] =  1.316424E-24;  m[2112] =  8.857E+02;  m[2114] =  5.578069E-24;  m[2116] =  4.388081E-24;
00281       m[2118] =  2.269697E-24;  m[2122] =  4.539394E-24;  m[2124] =  5.723584E-24;  m[2126] =  1.994582E-24;
00282       m[2128] =  1.316424E-24;  m[2212] =  1.E+16;  m[2214] =  5.578069E-24;  m[2216] =  4.388081E-24;
00283       m[2218] =  2.269697E-24;  m[2222] =  4.539394E-24;  m[2224] =  5.578069E-24;  m[2226] =  1.994582E-24;
00284       m[2228] =  2.269697E-24;  m[3112] =  1.479E-10;  m[3114] =  1.670589E-23;  m[3116] =  5.485102E-24;
00285       m[3118] =  3.656734E-24;  m[3122] =  2.631E-10;  m[3124] =  4.219309E-23;  m[3126] =  8.227653E-24;
00286       m[3128] =  3.291061E-24;  m[3212] =  7.4E-20;  m[3214] =  1.828367E-23;  m[3216] =  5.485102E-24;
00287       m[3218] =  3.656734E-24;  m[3222] =  8.018E-11;  m[3224] =  1.838582E-23;  m[3226] =  5.485102E-24;
00288       m[3228] =  3.656734E-24;  m[3312] =  1.639E-10;  m[3314] =  6.648608E-23;  m[3322] =  2.9E-10;
00289       m[3324] =  7.233101E-23;  m[3334] =  8.21E-11;  m[4112] =  2.991874E-22;  m[4114] =  4.088274E-23;
00290       m[4122] =  2.E-13;  m[4132] =  1.12E-13;  m[4212] =  3.999999E-22;  m[4214] =  3.291061E-22;
00291       m[4222] =  2.951624E-22;  m[4224] =  4.417531E-23;  m[4232] =  4.42E-13;  m[4332] =  6.9E-14;
00292       m[4412] =  3.335641E-13;  m[4422] =  3.335641E-13;  m[4432] =  3.335641E-13;  m[5112] =  1.E-19;
00293       m[5122] =  1.38E-12;  m[5132] =  1.42E-12;  m[5142] =  1.290893E-12;  m[5212] =  1.E-19;
00294       m[5222] =  1.E-19;  m[5232] =  1.42E-12;  m[5242] =  1.290893E-12;  m[5312] =  1.E-19;
00295       m[5322] =  1.E-19;  m[5332] =  1.55E-12;  m[5342] =  1.290893E-12;  m[5442] =  1.290893E-12;
00296       m[5512] =  1.290893E-12;  m[5522] =  1.290893E-12;  m[5532] =  1.290893E-12;  m[5542] =  1.290893E-12;
00297       m[10111] =  2.48382E-24;  m[10113] =  4.635297E-24;  m[10115] =  2.54136E-24;  m[10211] =  2.48382E-24;
00298       m[10213] =  4.635297E-24;  m[10215] =  2.54136E-24;  m[10223] =  1.828367E-24;  m[10225] =  3.636531E-24;
00299       m[10311] =  2.437823E-24;  m[10313] =  7.313469E-24;  m[10315] =  3.538775E-24;
00300       m[10321] =  2.437823E-24;  m[10323] =  7.313469E-24;  m[10325] =  3.538775E-24;
00301       m[10331] =  4.804469E-24;  m[10411] =  4.38E-24;  m[10413] =  3.29E-23;  m[10421] =  4.38E-24;
00302       m[10423] =  3.22653E-23;  m[10431] =  6.5821E-22;  m[10433] =  6.5821E-22;  m[10441] =  6.453061E-23;
00303       m[10511] =  4.39E-24;  m[10513] =  1.65E-23;  m[10521] =  4.39E-24;  m[10523] =  1.65E-23;
00304       m[10531] =  4.39E-24;  m[10533] =  1.65E-23;  m[11114] =  2.194041E-24;  m[11116] =  1.828367E-24;
00305       m[11212] =  1.880606E-24;  m[11216] =  1.828367E-24;  m[12112] =  2.194041E-24;
00306       m[12114] =  2.194041E-24;  m[12116] =  5.063171E-24;  m[12126] =  1.828367E-24;
00307       m[12212] =  2.194041E-24;  m[12214] =  2.194041E-24;  m[12216] =  5.063171E-24;
00308       m[12224] =  2.194041E-24;  m[12226] =  1.828367E-24;  m[13112] =  6.582122E-24;  m[13114] =  1.09702E-23;
00309       m[13116] =  5.485102E-24;  m[13122] =  1.316424E-23;  m[13124] =  1.09702E-23;  m[13126] =  6.928549E-24;
00310       m[13212] =  6.582122E-24;  m[13214] =  1.09702E-23;  m[13216] =  5.485102E-24;  m[13222] =  6.582122E-24;
00311       m[13224] =  1.09702E-23;  m[13226] =  5.485102E-24;  m[13314] =  2.742551E-23;
00312       m[13324] =  2.742551E-23;  m[14122] =  1.828367E-22;  m[20022] =  1.E+16;  m[20113] =  1.567172E-24;
00313       m[20213] =  1.567172E-24;  m[20223] =  2.708692E-23;  m[20313] =  3.782829E-24;
00314       m[20315] =  2.384827E-24;  m[20323] =  3.782829E-24;  m[20325] =  2.384827E-24;
00315       m[20333] =  1.198929E-23;  m[20413] =  2.63E-24;  m[20423] =  2.63E-24;  m[20433] =  6.5821E-22;
00316       m[20443] =  7.395643E-22;  m[20513] =  2.63E-24;  m[20523] =  2.63E-24;  m[20533] =  2.63E-24;
00317       m[21112] =  2.632849E-24;  m[21114] =  3.291061E-24;  m[21212] =  2.632849E-24;
00318       m[21214] =  6.582122E-24;  m[22112] =  4.388081E-24;  m[22114] =  3.291061E-24;
00319       m[22122] =  2.632849E-24;  m[22124] =  6.582122E-24;  m[22212] =  4.388081E-24;
00320       m[22214] =  3.291061E-24;  m[22222] =  2.632849E-24;  m[22224] =  3.291061E-24;
00321       m[23112] =  7.313469E-24;  m[23114] =  2.991874E-24;  m[23122] =  4.388081E-24;
00322       m[23124] =  6.582122E-24;  m[23126] =  3.291061E-24;  m[23212] =  7.313469E-24;
00323       m[23214] =  2.991874E-24;  m[23222] =  7.313469E-24;  m[23224] =  2.991874E-24;
00324       m[30113] =  2.632849E-24;  m[30213] =  2.632849E-24;  m[30221] =  1.880606E-24;
00325       m[30223] =  2.089563E-24;  m[30313] =  2.056913E-24;  m[30323] =  2.056913E-24;
00326       m[30443] =  2.419898E-23;  m[31114] =  1.880606E-24;  m[31214] =  3.291061E-24;
00327       m[32112] =  3.989164E-24;  m[32114] =  1.880606E-24;  m[32124] =  3.291061E-24;
00328       m[32212] =  3.989164E-24;  m[32214] =  1.880606E-24;  m[32224] =  1.880606E-24;
00329       m[33122] =  1.880606E-23;  m[42112] =  6.582122E-24;  m[42212] =  6.582122E-24;
00330       m[43122] =  2.194041E-24;  m[53122] =  4.388081E-24;  m[100111] =  1.645531E-24;
00331       m[100113] =  1.64553E-24;  m[100211] =  1.645531E-24;  m[100213] =  1.64553E-24;
00332       m[100221] =  1.196749E-23;  m[100223] =  3.061452E-24;  m[100313] =  2.837122E-24;
00333       m[100323] =  2.837122E-24;  m[100331] =  4.459432E-25;  m[100333] =  4.388081E-24;
00334       m[100441] =  4.701516E-23;  m[100443] =  2.076379E-21;  m[100553] =  2.056913E-20;
00335       m[200553] =  3.242425E-20;  m[300553] =  3.210791E-23;  m[9000111] =  8.776163E-24;
00336       m[9000211] =  8.776163E-24;  m[9000443] =  8.227652E-24;  m[9000553] =  5.983747E-24;
00337       m[9010111] =  3.164482E-24;  m[9010211] =  3.164482E-24;  m[9010221] =  9.403031E-24;
00338       m[9010443] =  8.438618E-24;  m[9010553] =  8.3318E-24;  m[9020443] =  1.061633E-23;
00339       m[9030221] =  6.038644E-24;  m[9042413] =  2.07634E-21;  m[9050225] =  1.394517E-24;
00340       m[9060225] =  3.291061E-24;  m[9080225] =  4.388081E-24;  m[9090225] =  2.056913E-24;
00341       m[9910445] =  2.07634E-21;  m[9920443] =  2.07634E-21;
00342       return true;
00343     }
00344 
00345   };
00346 
00347 
00348   const int LHCB_2012_I1119400::_stablePDGIds[205] = {
00349     311, 543, 545, 551, 555, 557, 1103, 2101, 2103, 2203, 3101, 3103, 3201, 3203, 3303,
00350     4101, 4103, 4124, 4201, 4203, 4301, 4303, 4312, 4314, 4322, 4324, 4334, 4403, 4414,
00351     4424, 4434, 4444, 5101, 5103, 5114, 5201, 5203, 5214, 5224, 5301, 5303, 5314, 5324,
00352     5334, 5401, 5403, 5412, 5414, 5422, 5424, 5432, 5434, 5444, 5503, 5514, 5524, 5534,
00353     5544, 5554, 10022, 10333, 10335, 10443, 10541, 10543, 10551, 10553, 10555, 11112,
00354     12118, 12122, 12218, 12222, 13316, 13326, 20543, 20553, 20555, 23314, 23324, 30343,
00355     30353, 30363, 30553, 33314, 33324, 41214, 42124, 52114, 52214, 100311, 100315, 100321,
00356     100325, 100411, 100413, 100421, 100423, 100551, 100555, 100557, 110551, 110553, 110555,
00357     120553, 120555, 130553, 200551, 200555, 210551, 210553, 220553, 1000001, 1000002,
00358     1000003, 1000004, 1000005, 1000006, 1000011, 1000012, 1000013, 1000014, 1000015,
00359     1000016, 1000021, 1000022, 1000023, 1000024, 1000025, 1000035, 1000037, 1000039,
00360     2000001, 2000002, 2000003, 2000004, 2000005, 2000006, 2000011, 2000012, 2000013,
00361     2000014, 2000015, 2000016, 3000111, 3000113, 3000211, 3000213, 3000221, 3000223,
00362     3000331, 3100021, 3100111, 3100113, 3200111, 3200113, 3300113, 3400113, 4000001,
00363     4000002, 4000011, 4000012, 5000039, 9000221, 9900012, 9900014, 9900016, 9900023,
00364     9900024, 9900041, 9900042 };
00365 
00366 
00367   // Plugin hook
00368   DECLARE_RIVET_PLUGIN(LHCB_2012_I1119400);
00369 
00370 }