31 #include <fastjet/tools/MassDropTagger.hh>
32 #include <fastjet/ClusterSequence.hh>
35 FASTJET_BEGIN_NAMESPACE
37 LimitedWarning MassDropTagger::_warnings_nonca;
38 LimitedWarning MassDropTagger::_negative_mass_warning;
48 string MassDropTagger::description()
const{
50 oss <<
"MassDropTagger with mu=" << _mu <<
" and ycut=" << _ycut;
64 _warnings_nonca.warn(
"MassDropTagger should only be applied on jets from a Cambridge/Aachen clustering; use it with other algorithms at your own risk.");
75 _negative_mass_warning.warn(
76 "MassDropTagger: parent (sub)jet has mass^2<=0; returning null jet");
80 if (j1.
m2() < j2.
m2()) std::swap(j1,j2);
99 s->
_mu = j1.
m() / j.
m();
107 FASTJET_END_NAMESPACE
bool has_associated_cluster_sequence() const
returns true if this PseudoJet has an associated ClusterSequence.
virtual bool has_parents(PseudoJet &parent1, PseudoJet &parent2) const
check if it is the product of a recombination, in which case return the 2 parents through the 'parent...
const JetDefinition & jet_def() const
return a reference to the jet definition
the longitudinally invariant variant of the cambridge algorithm (aka Aachen algoithm).
double m2() const
returns the squared invariant mass // like CLHEP
const ClusterSequence * validated_cs() const
shorthand for validated_cluster_sequence()
double kt_distance(const PseudoJet &other) const
returns kt distance (R=1) between this jet and another
JetAlgorithm jet_algorithm() const
return information about the definition...
double _y
the value of the asymmetry parameter
void set_structure_shared_ptr(const SharedPtr< PseudoJetStructureBase > &structure)
set the associated structure
double m() const
returns the invariant mass (If m2() is negative then -sqrt(-m2()) is returned, as in CLHEP)
double _mu
the value of the mass-drop parameter