[Rivet-svn] r2209 - in trunk: . src/Core

blackhole at projects.hepforge.org blackhole at projects.hepforge.org
Fri Jan 15 16:49:40 GMT 2010


Author: buckley
Date: Fri Jan 15 16:49:39 2010
New Revision: 2209

Log:
Check jet constituents directly to see if they are 'stable' heavy flavour hadrons, rather than just searching their ancestor lists.

Modified:
   trunk/ChangeLog
   trunk/src/Core/Jet.cc

Modified: trunk/ChangeLog
==============================================================================
--- trunk/ChangeLog	Fri Jan 15 16:47:44 2010	(r2208)
+++ trunk/ChangeLog	Fri Jan 15 16:49:39 2010	(r2209)
@@ -1,3 +1,9 @@
+2010-01-15  Andy Buckley  <andy at insectnation.org>
+
+	* Add tests for "stable" heavy flavour hadrons in jets (rather
+	than just testing for c/b hadrons in the ancestor lists of stable
+	jet constituents)
+
 2009-12-23  Hendrik Hoeth <hendrik.hoeth at cern.ch>
 
 	* New option "RatioPlotMode=deviation" in make-plots.

Modified: trunk/src/Core/Jet.cc
==============================================================================
--- trunk/src/Core/Jet.cc	Fri Jan 15 16:47:44 2010	(r2208)
+++ trunk/src/Core/Jet.cc	Fri Jan 15 16:49:39 2010	(r2209)
@@ -96,12 +96,14 @@
 
   bool Jet::containsCharm() const {
     foreach (const Particle& p, particles()) {
-      if (abs(p.pdgId()) == CQUARK) return true;
+      const PdgId pid = p.pdgId();
+      if (abs(pid) == CQUARK) return true;
+      if (PID::isHadron(pid) && PID::hasCharm(pid)) return true;
       HepMC::GenVertex* gv = p.genParticle().production_vertex();
       if (gv) {
         foreach (const GenParticle* pi, Rivet::particles(gv, HepMC::ancestors)) {
-          const PdgId pid = pi->pdg_id();
-          if (PID::isHadron(pid) && PID::hasCharm(pid)) return true;
+          const PdgId pid2 = pi->pdg_id();
+          if (PID::isHadron(pid2) && PID::hasCharm(pid2)) return true;
         }
       }
     }
@@ -111,12 +113,14 @@
 
   bool Jet::containsBottom() const {
     foreach (const Particle& p, particles()) {
-      if (abs(p.pdgId()) == BQUARK) return true;
+      const PdgId pid = p.pdgId();
+      if (abs(pid) == BQUARK) return true;
+      if (PID::isHadron(pid) && PID::hasBottom(pid)) return true;
       HepMC::GenVertex* gv = p.genParticle().production_vertex();
       if (gv) {
         foreach (const GenParticle* pi, Rivet::particles(gv, HepMC::ancestors)) {
-          const PdgId pid = pi->pdg_id();
-          if (PID::isHadron(pid) && PID::hasBottom(pid)) return true;
+          const PdgId pid2 = pi->pdg_id();
+          if (PID::isHadron(pid2) && PID::hasBottom(pid2)) return true;
         }
       }
     }


More information about the Rivet-svn mailing list