Table of Contents

Inclusive Vertex Finder (IVF)

The IVF will run out-of-the-box in CMSSW_5_3_11. If unsure, you can check out the following two packages:

cvs co -r V02-02-06 RecoVertex/AdaptiveVertexFinder
cvs co -r V01-10-02 RecoBTag/SecondaryVertex

To use the same approach as the VHbb group, one also needs to check out two additional packages:

cvs co -d IVF/BCandidateProducer UserCode/BbCorrelation/CMSSW/BAnalysis/BCandidateProducer
cvs co -d ZSV/BAnalysis UserCode/ZSV/BAnalysis/
scram b -c

Last command needed to update really old IVF package config files to BuildFile.xml files.

Work flow

General vertexing

In order to get the IVF to work one has to perform inclusive vertexing by including inclusiveVertexing_cff.py:

process.load('RecoVertex/AdaptiveVertexFinder/inclusiveVertexing_cff')

The IVF runs on pre-selected vertices. After a coarse pre-clustering based on track distances and angles, vertices are reconstructed with the Adaptive fitter (outlier resistant, iterative procedure). This is done using the inclusive vertex finder from the adaptive vertex finder package:

These vertices are then merged depending on their significance in distance and the fraction of tracks they share (in particular vertices with a large fraction of common tracks are merged):

In the next step it is made sure that all tracks belong either to a secondary vertex or the primary vertex only optimising the assignment of tracks to vertices, followed by another vertex fit:

These refitted vertices are then again merged depending on their significance in distance and the fraction of tracks they share:

b-vertex filtering

The optimised vertices undergo a b-vertex filter:

b to charm decay vertex merging

The b-to-charm decay vertex merging attempts to identify B to D meson decays and merges them based on DeltaR, the vertex mass, the angle between them and the relative transverse momentum:

partly used in VHbb ntuples:

Carlotta's code:

twiki documentation:

CMSSW:

Current errors

none

Steps for MSSM Hbb analysis

cvs co -r V02-02-06 RecoVertex/AdaptiveVertexFinder
cvs co -r V01-10-02 RecoBTag/SecondaryVertex

Replace PhysicsTools/PatAlgos/python/tools/jetTools.py by this version.

Check for details of information:

RecoBTag/SecondaryVertex/test/runIVFAnalyzer_cff.py
RecoBTag/SecondaryVertex/test/IVFAnalyzer.cc

And voila:

The bdiscriminators below will be written to the jet collection in the PATtuple (default is all, see PatAlgos/PhysicsTools/python/tools/jetTools.py)
jetBProbabilityBJetTags
jetProbabilityBJetTags
trackCountingHighPurBJetTags
trackCountingHighEffBJetTags
simpleSecondaryVertexHighEffBJetTags
simpleSecondaryVertexHighPurBJetTags
simpleInclusiveSecondaryVertexHighEffBJetTags
simpleInclusiveSecondaryVertexHighPurBJetTags
combinedSecondaryVertexBJetTags
combinedSecondaryVertexMVABJetTags
softMuonBJetTags
softMuonByPtBJetTags
softMuonByIP3dBJetTags
simpleSecondaryVertexNegativeHighEffBJetTags
simpleSecondaryVertexNegativeHighPurBJetTags
negativeTrackCountingHighEffJetTags
negativeTrackCountingHighPurJetTags
combinedInclusiveSecondaryVertexBJetTags
combinedMVABJetTags
doubleSecondaryVertexHighEffBJetTags