31 #ifndef __FASTJET_CLUSTERSEQUENCEAREABASE_HH__ 32 #define __FASTJET_CLUSTERSEQUENCEAREABASE_HH__ 34 #include "fastjet/ClusterSequence.hh" 35 #include "fastjet/LimitedWarning.hh" 36 #include "fastjet/Selector.hh" 37 #include "fastjet/internal/deprecated.hh" 39 FASTJET_BEGIN_NAMESPACE
54 (
const std::vector<L> & pseudojets,
56 const bool & writeout_combinations =
false) :
114 virtual double empty_area(
const Selector & selector)
const;
122 double empty_area_from_jets(
const std::vector<PseudoJet> & all_jets,
137 double R = jet_def().R();
138 return empty_area(selector)/(0.55*pi*R*R);
147 FASTJET_DEPRECATED_MSG(
"ClusterSequenceAreaBase::median_pt_per_unit_area(...) is deprecated since FastJet 3.0. Use the BackgroundEstimator series of tools instead")
148 double median_pt_per_unit_area(
const Selector & selector)
const;
155 FASTJET_DEPRECATED_MSG(
"ClusterSequenceAreaBase::median_pt_per_unit_area_4vector(...) is deprecated since FastJet 3.0. Use the BackgroundEstimator series of tools instead")
156 double median_pt_per_unit_area_4vector(
const Selector & selector)
const;
162 FASTJET_DEPRECATED_MSG(
"ClusterSequenceAreaBase::median_pt_per_unit_something(...) is deprecated since FastJet 3.0. Use the BackgroundEstimator series of tools instead")
163 double median_pt_per_unit_something(
const Selector & selector,
164 bool use_area_4vector)
const;
191 virtual void get_median_rho_and_sigma(
const Selector & selector,
192 bool use_area_4vector,
193 double & median,
double & sigma,
194 double & mean_area)
const;
216 virtual void get_median_rho_and_sigma(
const std::vector<PseudoJet> & all_jets,
218 bool use_area_4vector,
219 double & median,
double & sigma,
221 bool all_are_inclusive =
false)
const;
231 bool use_area_4vector,
232 double & median,
double & sigma)
const{
233 return _get_median_rho_and_sigma(selector, use_area_4vector, median, sigma);
246 virtual void parabolic_pt_per_unit_area(
double & a,
double & b,
248 double exclude_above=-1.0,
249 bool use_area_4vector=
false)
const;
255 FASTJET_DEPRECATED_MSG(
"ClusterSequenceAreaBase::subtracted_jets(...) is deprecated since FastJet 3.0. Use the Subtractor tool (with the BackgroundEstimator series of tools) instead")
256 std::vector<PseudoJet> subtracted_jets(
const double rho,
257 const double ptmin=0.0)
const;
267 FASTJET_DEPRECATED_MSG(
"ClusterSequenceAreaBase::subtracted_jets(...) is deprecated since FastJet 3.0. Use the Subtractor tool (with the BackgroundEstimator series of tools) instead")
268 std::vector<PseudoJet> subtracted_jets(
const Selector & selector,
269 const double ptmin=0.0)
const;
272 FASTJET_DEPRECATED_MSG(
"ClusterSequenceAreaBase::subtracted_jet(...) is deprecated since FastJet 3.0. Use the Subtractor tool (with the BackgroundEstimator series of tools) instead")
274 const double rho)
const;
284 FASTJET_DEPRECATED_MSG(
"ClusterSequenceAreaBase::subtracted_jet(...) is deprecated since FastJet 3.0. Use the Subtractor tool (with the BackgroundEstimator series of tools) instead")
289 FASTJET_DEPRECATED_MSG(
"ClusterSequenceAreaBase::subtracted_pt(...) is deprecated since FastJet 3.0. Use the Subtractor tool (with the BackgroundEstimator series of tools) instead")
290 double subtracted_pt(
const PseudoJet & jet,
292 bool use_area_4vector=
false)
const;
301 FASTJET_DEPRECATED_MSG(
"ClusterSequenceAreaBase::subtracted_pt(...) is deprecated since FastJet 3.0. Use the Subtractor tool (with the BackgroundEstimator series of tools) instead")
302 double subtracted_pt(
const PseudoJet & jet,
304 bool use_area_4vector=
false)
const;
308 void _check_selector_good_for_median(
const Selector &selector)
const;
316 virtual void _get_median_rho_and_sigma(
const Selector & selector,
317 bool use_area_4vector,
318 double & median,
double & sigma,
319 double & mean_area)
const;
320 virtual void _get_median_rho_and_sigma(
const std::vector<PseudoJet> & all_jets,
322 bool use_area_4vector,
323 double & median,
double & sigma,
325 bool all_are_inclusive =
false)
const;
326 virtual void _get_median_rho_and_sigma(
const Selector & selector,
327 bool use_area_4vector,
328 double & median,
double & sigma)
const {
330 _get_median_rho_and_sigma(selector, use_area_4vector,
331 median, sigma, mean_area);
333 virtual void _parabolic_pt_per_unit_area(
double & a,
double & b,
335 double exclude_above=-1.0,
336 bool use_area_4vector=
false)
const;
345 void _check_jet_alg_good_for_median()
const;
353 double _median_pt_per_unit_area(
const Selector & selector)
const;
354 double _median_pt_per_unit_area_4vector(
const Selector & selector)
const;
355 double _median_pt_per_unit_something(
const Selector & selector,
356 bool use_area_4vector)
const;
357 std::vector<PseudoJet> _subtracted_jets(
const double rho,
358 const double ptmin=0.0)
const;
360 const double rho)
const;
363 double _subtracted_pt(
const PseudoJet & jet,
365 bool use_area_4vector=
false)
const;
370 FASTJET_END_NAMESPACE
372 #endif // __FASTJET_CLUSTERSEQUENCEAREABASE_HH__ virtual ~ClusterSequenceAreaBase()
destructor
virtual double n_empty_jets(const Selector &selector) const
return something similar to the number of pure ghost jets in the given selector's range in an active ...
virtual double area(const PseudoJet &) const
return the area associated with the given jet; this base class returns 0.
class to provide facilities for giving warnings up to some maximum number of times and to provide glo...
virtual PseudoJet area_4vector(const PseudoJet &) const
return a PseudoJet whose 4-vector is defined by the following integral
ClusterSequenceAreaBase()
default constructor
base class that sets interface for extensions of ClusterSequence that provide information about the a...
virtual bool has_explicit_ghosts() const
returns true if ghosts are explicitly included within jets for this ClusterSequence; ...
Class that encodes information about cuts and other selection criteria that can be applied to PseudoJ...
virtual double area_error(const PseudoJet &) const
return the error (uncertainty) associated with the determination of the area of this jet; this base c...
virtual void get_median_rho_and_sigma(const Selector &selector, bool use_area_4vector, double &median, double &sigma) const
same as the full version of get_median_rho_and_error, but without access to the mean_area ...
Class to contain pseudojets, including minimal information of use to jet-clustering routines...
class that is intended to hold a full definition of the jet clusterer
virtual bool is_pure_ghost(const PseudoJet &) const
true if a jet is made exclusively of ghosts