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