29 #ifndef __FASTJET_CLUSTERSEQUENCEACTIVEAREA_HH__ 30 #define __FASTJET_CLUSTERSEQUENCEACTIVEAREA_HH__ 33 #include "fastjet/PseudoJet.hh" 34 #include "fastjet/ClusterSequenceAreaBase.hh" 35 #include "fastjet/ClusterSequenceActiveAreaExplicitGhosts.hh" 46 FASTJET_BEGIN_NAMESPACE
69 (
const std::vector<L> & pseudojets,
72 const bool & writeout_combinations =
false) ;
86 pttot_over_areatot_cut, mean_ratio_cut, play,
98 double range=2.0 )
const;
115 virtual double empty_area(
const Selector & selector)
const;
119 virtual double n_empty_jets(
const Selector & selector)
const;
122 void _resize_and_zero_AA ();
125 const bool & writeout_combinations,
126 bool & continue_running);
136 const bool & writeout_combinations =
false);
140 void _transfer_ghost_free_history(
146 void _transfer_areas(
const std::vector<int> & unique_hist_order,
151 std::valarray<PseudoJet> _average_area_4vector;
161 double _non_jet_area, _non_jet_area2, _non_jet_number;
163 double _maxrap_for_area;
164 double _safe_rap_for_area;
166 bool _has_dangerous_particles;
172 void _extract_tree(std::vector<int> &)
const;
175 void _extract_tree_children(
int pos, std::valarray<bool> &,
const std::valarray<int> &, std::vector<int> &)
const;
177 void _extract_tree_parents (
int pos, std::valarray<bool> &,
const std::valarray<int> &, std::vector<int> &)
const;
182 void _throw_unless_jets_have_same_perp_or_E(
const PseudoJet & jet,
194 int _ghost_spec_repeat;
203 std::vector<GhostJet> _ghost_jets;
204 std::vector<GhostJet> _unclustered_ghosts;
210 template<
class L> ClusterSequenceActiveArea::ClusterSequenceActiveArea
211 (
const std::vector<L> & pseudojets,
214 const bool & writeout_combinations) {
217 _transfer_input_jets(pseudojets);
220 _initialise_and_run_AA(jet_def_in, ghost_spec, writeout_combinations);
226 FASTJET_END_NAMESPACE
228 #endif // __FASTJET_CLUSTERSEQUENCEACTIVEAREA_HH__ mean_pt_strategies
enum providing a variety of tentative strategies for estimating the background (e.g.
int cluster_hist_index() const
return the cluster_hist_index, intended to be used by clustering routines.
bool has_dangerous_particles() const
returns true if there are any particles whose transverse momentum if so low that there's a risk of th...
virtual double area_error(const PseudoJet &jet) const
return the error (uncertainty) associated with the determination of the area of this jet; this base c...
Like ClusterSequence with computation of the active jet area.
virtual double area(const PseudoJet &jet) const
return the area associated with the given jet; this base class returns 0.
base class that sets interface for extensions of ClusterSequence that provide information about the a...
Like ClusterSequence with computation of the active jet area with the addition of explicit ghosts...
std::valarray< double > _average_area
child classes benefit from having these at their disposal
ClusterSequenceActiveArea()
default constructor
Class that encodes information about cuts and other selection criteria that can be applied to PseudoJ...
virtual PseudoJet area_4vector(const PseudoJet &jet) const
return a PseudoJet whose 4-vector is defined by the following integral
Parameters to configure the computation of jet areas using ghosts.
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