FastJet 3.4.0
Loading...
Searching...
No Matches
fastjet::MassDropTagger Class Reference

Class that helps perform 2-pronged boosted tagging using the "mass-drop" technique (with asymmetry cut) introduced by Jonathan Butterworth, Adam Davison, Mathieu Rubin and Gavin Salam in arXiv:0802.2470 in the context of a boosted Higgs search. More...

#include <fastjet/tools/MassDropTagger.hh>

Inheritance diagram for fastjet::MassDropTagger:
Collaboration diagram for fastjet::MassDropTagger:

Public Types

typedef MassDropTaggerStructure StructureType
 the type of the associated structure
Public Types inherited from fastjet::Transformer
typedef PseudoJetStructureBase StructureType
 A typedef that is needed to ensure that the PseudoJet::structure_of() template function works.

Public Member Functions

 MassDropTagger (const double mu=0.67, const double ycut=0.09)
 default ctor
virtual std::string description () const
 returns a textual description of the tagger
virtual PseudoJet result (const PseudoJet &jet) const
 runs the tagger on the given jet and returns the tagged PseudoJet if successful, a PseudoJet==0 otherwise (standard access is through operator()).
Public Member Functions inherited from fastjet::Transformer
 Transformer ()
 default ctor
virtual ~Transformer ()
 default dtor
Public Member Functions inherited from fastjet::FunctionOfPseudoJet< PseudoJet >
 FunctionOfPseudoJet ()
 default ctor
virtual ~FunctionOfPseudoJet ()
 default dtor (virtual to allow safe polymorphism)
PseudoJet operator() (const PseudoJet &pj) const
 apply the function using the "traditional" () operator.

Protected Attributes

double _mu
double _ycut

Static Protected Attributes

static LimitedWarning _warnings_nonca
static LimitedWarning _negative_mass_warning

Detailed Description

Class that helps perform 2-pronged boosted tagging using the "mass-drop" technique (with asymmetry cut) introduced by Jonathan Butterworth, Adam Davison, Mathieu Rubin and Gavin Salam in arXiv:0802.2470 in the context of a boosted Higgs search.

The tagger proceeds as follows:

  1. start from a jet obtained from with the Cambridge/Aachen algorithm
  2. undo the last step of the clustering step j -> j1 + j2 (label them such as j1 is the most massive).
  3. if there is a mass drop, i.e. m_j1/m_j < mu_cut, and the splitting is sufficiently symmetric, ${\rm
    min}(p_{tj1}^2,p_{tj2}^2)\Delta R_{j1,j2}^2 > y_{\rm cut}
    m_j^2$, keep j as the result of the tagger (with j1 and j2 its 2 subjets)
  4. otherwise, redefine j to be equal to j1 and return to step 1.

Note that in the original proposal, j1 and j2 are both required to be b-tagged and a filter (with Rfilt=min(0.3,Rbb/2) and n_filt=3) is also applied to j to obtain the final "Higgs candidate". See the example 12 - boosted Higgs tagging for details.

Options

The constructor has the following arguments:

  • The first argument is the minimal mass drop that is required (mu_cut) [0.67 by default]
  • The second argument is the asymmetry cut (y_cut) [0.09 by default]

Input conditions

  • one must be able to successively "uncluster" the original jet using "has_parents"

Output/structure

  • the 2 subjets are kept as pieces if some substructure is found, otherwise a single 0-momentum piece is returned
  • the 'mu' and 'y' values corresponding to the unclustering step that passed the tagger's cuts

See also 12 - boosted Higgs tagging for a usage example.

Definition at line 92 of file MassDropTagger.hh.

Member Typedef Documentation

◆ StructureType

the type of the associated structure

Definition at line 107 of file MassDropTagger.hh.

Constructor & Destructor Documentation

◆ MassDropTagger()

fastjet::MassDropTagger::MassDropTagger ( const double mu = 0.67,
const double ycut = 0.09 )
inline

default ctor

Definition at line 95 of file MassDropTagger.hh.

Member Function Documentation

◆ description()

string fastjet::MassDropTagger::description ( ) const
virtual

returns a textual description of the tagger

Implements fastjet::Transformer.

Definition at line 48 of file MassDropTagger.cc.

◆ result()

PseudoJet fastjet::MassDropTagger::result ( const PseudoJet & jet) const
virtual

runs the tagger on the given jet and returns the tagged PseudoJet if successful, a PseudoJet==0 otherwise (standard access is through operator()).

Parameters
jetthe PseudoJet to tag

Implements fastjet::Transformer.

Definition at line 57 of file MassDropTagger.cc.

Member Data Documentation

◆ _mu

double fastjet::MassDropTagger::_mu
protected

Definition at line 110 of file MassDropTagger.hh.

◆ _ycut

double fastjet::MassDropTagger::_ycut
protected

Definition at line 110 of file MassDropTagger.hh.

◆ _warnings_nonca

LimitedWarning fastjet::MassDropTagger::_warnings_nonca
staticprotected

Definition at line 111 of file MassDropTagger.hh.

◆ _negative_mass_warning

LimitedWarning fastjet::MassDropTagger::_negative_mass_warning
staticprotected

Definition at line 112 of file MassDropTagger.hh.


The documentation for this class was generated from the following files: