|
[Rivet] b-tagging in Rivet 2.x.xChristian Gütschow chris.g at cern.chSun Feb 15 14:05:07 GMT 2015
Dear Rivet authors, I'm just trying to implement a Rivet routine for a W+b ATLAS measurement and was wondering what the preferred way of doing particle-level b-tagging in Rivet is? Naively, I would think that the easiest way to decide whether a jet is a b-jet is to use the HeavyHadrons projection, e.g. like so addProjection(HeavyHadrons(-2.5, 2.5, 5.0*GeV), "BHadrons"); > ... > const Particles& bHadrons = applyProjection<HeavyHadrons>(event, > "BHadrons").bHadrons(); > ... > // for each jet "j": > foreach(const Particle& b, bHadrons) { > if( (b.pT() > 5.0*GeV) && (deltaR(j, b) < 0.3) ) { > // jet matched to B hadron! > ... > break; > } > } Turns out, this doesn't do anything at all because bHadrons has always size 0 for some reason. Is this to be expected or likely to be some sort of bug (on my side)? On the other hand, if I use the approach that was used in the Z+b(b) analysis (ATLAS_2014_I1306294), i.e. something like bool hasB = false; foreach(const GenParticle* b, particles(event.genEvent())) { > if(b->momentum().perp() < 5.0*GeV) continue; > for(uint k=0; k < stableB.size(); ++k) { > if( fabs(b->pdg_id()) == stableB[k] ) { > if( deltaR(j.momentum().eta(), j.momentum().phi(), > b->momentum().eta(), b->momentum().phi()) < 0.3 ) { > // jet matched to B hadron! > hasB = true; > break; > } > } > } > if(hasB) break; > } where stableB is a custom-made vector of the B-hadron PDG IDs, then I do find the B hadrons in the event and can successfully match my jets to them. I think it's safe to say that while the latter option does the trick, it is a bit of an awkward way to code this up. (Presumably that's the reason why the Z+b(b) analysis is still dwelling in the contributions area...?) Is there a better way of doing this? Many thanks for your advice in advance! Cheers, Chris -- Dr. Christian Gütschow TU Dresden Institut für Kern- und Teilchenphysik Zellescher Weg 19 01069 Dresden > E17, Andreas-Schubert-Bau > chris.g at cern.ch -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://www.hepforge.org/lists-archive/rivet/attachments/20150215/53462cf8/attachment.html>
More information about the Rivet mailing list |