31#ifndef __FASTJET_CLUSTERSEQUENCEACTIVEAREA_HH__ 
   32#define __FASTJET_CLUSTERSEQUENCEACTIVEAREA_HH__ 
   35#include "fastjet/PseudoJet.hh" 
   36#include "fastjet/ClusterSequenceAreaBase.hh" 
   37#include "fastjet/ClusterSequenceActiveAreaExplicitGhosts.hh" 
   48FASTJET_BEGIN_NAMESPACE      
 
   71         (
const std::vector<L> & pseudojets, 
 
   74          const bool & writeout_combinations = 
false) ;
 
   77                             return _average_area[jet.cluster_hist_index()];};
 
   79                             return _average_area2[jet.cluster_hist_index()];};
 
   82                    return _average_area_4vector[jet.cluster_hist_index()];};
 
   91                          pttot_over_areatot_cut, mean_ratio_cut, play,
 
  103  double pt_per_unit_area(mean_pt_strategies strat=median, 
 
  104                          double range=2.0 ) 
const;
 
  112  virtual double empty_area(
const Selector & selector) 
const FASTJET_OVERRIDE;
 
  116  virtual double n_empty_jets(
const Selector & selector) 
const FASTJET_OVERRIDE;
 
  119  void _resize_and_zero_AA ();
 
  122                      const bool & writeout_combinations,
 
  123                      bool & continue_running);
 
  133                               const bool & writeout_combinations = 
false);
 
  137  void _transfer_ghost_free_history(
 
  143  void _transfer_areas(
const std::vector<int> & unique_hist_order, 
 
  148  std::valarray<PseudoJet> _average_area_4vector;
 
  158  double           _non_jet_area, _non_jet_area2, _non_jet_number;
 
  160  double _maxrap_for_area; 
 
  161  double _safe_rap_for_area; 
 
  163  bool   _has_dangerous_particles; 
 
  169  void _extract_tree(std::vector<int> &) 
const;
 
  172  void _extract_tree_children(
int pos, std::valarray<bool> &, 
const std::valarray<int> &, std::vector<int> &) 
const;
 
  174  void _extract_tree_parents (
int pos, std::valarray<bool> &, 
const std::valarray<int> &,  std::vector<int> &) 
const;
 
  179  void _throw_unless_jets_have_same_perp_or_E(
const PseudoJet & jet, 
 
  191  int _ghost_spec_repeat;
 
  200  std::vector<GhostJet> _ghost_jets;
 
  201  std::vector<GhostJet> _unclustered_ghosts;
 
  207template<
class L> ClusterSequenceActiveArea::ClusterSequenceActiveArea 
 
  208(
const std::vector<L> & pseudojets, 
 
  211 const bool & writeout_combinations) {
 
  214  _transfer_input_jets(pseudojets);
 
  217  _initialise_and_run_AA(jet_def_in, ghost_spec, writeout_combinations);
 
Like ClusterSequence with computation of the active jet area with the addition of explicit ghosts.
 
Like ClusterSequence with computation of the active jet area.
 
ClusterSequenceActiveArea()
default constructor
 
virtual PseudoJet area_4vector(const PseudoJet &jet) const override
return a PseudoJet whose 4-vector is defined by the following integral
 
virtual double area_error(const PseudoJet &jet) const override
return the error (uncertainty) associated with the determination of the area of this jet; this base c...
 
mean_pt_strategies
enum providing a variety of tentative strategies for estimating the background (e....
 
virtual double area(const PseudoJet &jet) const override
return the area associated with the given jet; this base class returns 0.
 
std::valarray< double > _average_area
child classes benefit from having these at their disposal
 
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...
 
base class that sets interface for extensions of ClusterSequence that provide information about the a...
 
Parameters to configure the computation of jet areas using ghosts.
 
class that is intended to hold a full definition of the jet clusterer
 
Class to contain pseudojets, including minimal information of use to jet-clustering routines.
 
Class that encodes information about cuts and other selection criteria that can be applied to PseudoJ...