#include <ClusterSequenceArea.hh>
Inheritance diagram for fastjet::ClusterSequenceArea:


Public Member Functions | |
| template<class L> | |
| ClusterSequenceArea (const std::vector< L > &pseudojets, const JetDefinition &jet_def, const AreaDefinition &area_def_in) | |
| main constructor | |
| template<class L> | |
| ClusterSequenceArea (const std::vector< L > &pseudojets, const JetDefinition &jet_def, const GhostedAreaSpec &area_spec) | |
| constructor with a GhostedAreaSpec | |
| template<class L> | |
| ClusterSequenceArea (const std::vector< L > &pseudojets, const JetDefinition &jet_def, const VoronoiAreaSpec &area_spec) | |
| constructor with a VoronoiAreaSpec | |
| const AreaDefinition & | area_def () const |
| return a reference to the area definition | |
| virtual double | area (const PseudoJet &jet) const |
| return the area associated with the given jet | |
| virtual double | area_error (const PseudoJet &jet) const |
| return the error (uncertainty) associated with the determination of the area of this jet | |
| virtual PseudoJet | area_4vector (const PseudoJet &jet) const |
| return the 4-vector area | |
| virtual double | empty_area (const RangeDefinition &range) const |
| return the total area, in the given rap-phi range, that is free of jets | |
| virtual double | n_empty_jets (const RangeDefinition &range) const |
| return something similar to the number of pure ghost jets in the given rap-phi range in an active area case. | |
| virtual bool | is_pure_ghost (const PseudoJet &jet) const |
| true if a jet is made exclusively of ghosts | |
| virtual void | get_median_rho_and_sigma (const RangeDefinition &range, bool use_area_4vector, double &median, double &sigma, double &mean_area) const |
| overload version of what's in the ClusterSequenceAreaBase class, which additionally checks compatibility between "range" and region in which ghosts are thrown. | |
| virtual void | get_median_rho_and_sigma (const RangeDefinition &range, bool use_area_4vector, double &median, double &sigma) const |
| overload version of what's in the ClusterSequenceAreaBase class, which actually just does the same thing as the base version (but since we've overridden the 5-argument version above, we have to override the 4-argument version too. | |
| virtual void | parabolic_pt_per_unit_area (double &a, double &b, const RangeDefinition &range, double exclude_above=-1.0, bool use_area_4vector=false) const |
| overload version of what's in the ClusterSequenceAreaBase class, which additionally checks compatibility between "range" and region in which ghosts are thrown. | |
Private Member Functions | |
| void | _warn_if_range_unsuitable (const RangeDefinition &range) const |
| print a warning if the range is unsuitable for the current calculation of the area (e.g. | |
| template<class L> | |
| void | initialize_and_run_cswa (const std::vector< L > &pseudojets, const JetDefinition &jet_def) |
Private Attributes | |
| std::auto_ptr< ClusterSequenceAreaBase > | _area_base |
| AreaDefinition | _area_def |
Static Private Attributes | |
| static LimitedWarning | _range_warnings |
Based on the area_def, it automatically dispatches the work to the appropriate actual ClusterSequenceAreaBase-derived-class to do the real work.
Definition at line 49 of file ClusterSequenceArea.hh.
|
||||||||||||||||||||
|
main constructor
Definition at line 53 of file ClusterSequenceArea.hh. 00055 : _area_def(area_def_in) { 00056 initialize_and_run_cswa(pseudojets, jet_def); 00057 }
|
|
||||||||||||||||||||
|
constructor with a GhostedAreaSpec
Definition at line 61 of file ClusterSequenceArea.hh. 00063 : _area_def(area_spec){ 00064 initialize_and_run_cswa(pseudojets, jet_def); 00065 }
|
|
||||||||||||||||||||
|
constructor with a VoronoiAreaSpec
Definition at line 69 of file ClusterSequenceArea.hh. 00071 : _area_def(area_spec){ 00072 initialize_and_run_cswa(pseudojets, jet_def); 00073 }
|
|
|
print a warning if the range is unsuitable for the current calculation of the area (e.g. because ghosts do not extend far enough). Definition at line 10 of file ClusterSequenceArea.cc. References _area_def, _range_warnings, fastjet::AreaDefinition::area_type(), fastjet::RangeDefinition::get_rap_limits(), fastjet::AreaDefinition::ghost_spec(), fastjet::ClusterSequence::jet_def(), fastjet::kt_algorithm, fastjet::passive_area, fastjet::voronoi_area, and LimitedWarning::warn(). 00010 {
00011 bool no_ghosts = (_area_def.area_type() == voronoi_area)
00012 || (_area_def.area_type() == passive_area
00013 && jet_def().jet_algorithm() == kt_algorithm);
00014 if (! no_ghosts) {
00015 double rapmin, rapmax;
00016 range.get_rap_limits(rapmin, rapmax);
00017 if (rapmin < -_area_def.ghost_spec().ghost_maxrap()+0.95*jet_def().R() ||
00018 rapmax > _area_def.ghost_spec().ghost_maxrap()-0.95*jet_def().R()) {
00019 _range_warnings.warn("rapidity range for median (rho) extends beyond +-(ghost_maxrap - 0.95*R); this is likely to cause the results to be unreliable; safest option is to increase ghost_maxrap in the area definition");
00020 }
00021 }
00022 }
|
|
|
return the area associated with the given jet
Reimplemented from fastjet::ClusterSequenceAreaBase. Definition at line 80 of file ClusterSequenceArea.hh. 00080 {
00081 return _area_base->area(jet);}
|
|
|
return the 4-vector area
Reimplemented from fastjet::ClusterSequenceAreaBase. Definition at line 89 of file ClusterSequenceArea.hh. 00089 {
00090 return _area_base->area_4vector(jet);}
|
|
|
return a reference to the area definition
Definition at line 76 of file ClusterSequenceArea.hh. 00076 {return _area_def;}
|
|
|
return the error (uncertainty) associated with the determination of the area of this jet
Reimplemented from fastjet::ClusterSequenceAreaBase. Definition at line 85 of file ClusterSequenceArea.hh. 00085 {
00086 return _area_base->area_error(jet);}
|
|
|
return the total area, in the given rap-phi range, that is free of jets
Reimplemented from fastjet::ClusterSequenceAreaBase. Definition at line 105 of file ClusterSequenceArea.hh. 00105 {
00106 return _area_base->empty_area(range);}
|
|
||||||||||||||||||||
|
overload version of what's in the ClusterSequenceAreaBase class, which actually just does the same thing as the base version (but since we've overridden the 5-argument version above, we have to override the 4-argument version too.
Reimplemented from fastjet::ClusterSequenceAreaBase. Definition at line 138 of file ClusterSequenceArea.hh. 00140 {
00141 ClusterSequenceAreaBase::get_median_rho_and_sigma(range,use_area_4vector,
00142 median,sigma);
00143 }
|
|
||||||||||||||||||||||||
|
overload version of what's in the ClusterSequenceAreaBase class, which additionally checks compatibility between "range" and region in which ghosts are thrown.
Reimplemented from fastjet::ClusterSequenceAreaBase. Definition at line 125 of file ClusterSequenceArea.hh. 00128 {
00129 _warn_if_range_unsuitable(range);
00130 ClusterSequenceAreaBase::get_median_rho_and_sigma(range, use_area_4vector,
00131 median, sigma, mean_area);
00132 }
|
|
||||||||||||||||
|
Definition at line 177 of file ClusterSequenceArea.hh. References _area_base, _area_def, fastjet::active_area, fastjet::active_area_explicit_ghosts, fastjet::AreaDefinition::area_type(), fastjet::AreaDefinition::ghost_spec(), fastjet::one_ghost_passive_area, fastjet::passive_area, fastjet::ClusterSequence::transfer_from_sequence(), fastjet::voronoi_area, and fastjet::AreaDefinition::voronoi_spec(). 00180 {
00181
00182 ClusterSequenceAreaBase * _area_base_ptr;
00183 switch(_area_def.area_type()) {
00184 case active_area:
00185 _area_base_ptr = new ClusterSequenceActiveArea(pseudojets,
00186 jet_def,
00187 _area_def.ghost_spec());
00188 break;
00189 case active_area_explicit_ghosts:
00190 _area_base_ptr = new ClusterSequenceActiveAreaExplicitGhosts(pseudojets,
00191 jet_def,
00192 _area_def.ghost_spec());
00193 break;
00194 case voronoi_area:
00195 _area_base_ptr = new ClusterSequenceVoronoiArea(pseudojets,
00196 jet_def,
00197 _area_def.voronoi_spec());
00198 break;
00199 case one_ghost_passive_area:
00200 _area_base_ptr = new ClusterSequence1GhostPassiveArea(pseudojets,
00201 jet_def,
00202 _area_def.ghost_spec());
00203 break;
00204 case passive_area:
00205 _area_base_ptr = new ClusterSequencePassiveArea(pseudojets,
00206 jet_def,
00207 _area_def.ghost_spec());
00208 break;
00209 default:
00210 std::cerr << "Error: unrecognized area_type in ClusterSequenceArea:"
00211 << _area_def.area_type() << std::endl;
00212 exit(-1);
00213 }
00214 // now copy across the information from the area base class
00215 _area_base = std::auto_ptr<ClusterSequenceAreaBase>(_area_base_ptr);
00216 transfer_from_sequence(*_area_base);
00217 }
|
|
|
true if a jet is made exclusively of ghosts
Reimplemented from fastjet::ClusterSequenceAreaBase. Definition at line 118 of file ClusterSequenceArea.hh. 00118 {
00119 return _area_base->is_pure_ghost(jet);
00120 }
|
|
|
return something similar to the number of pure ghost jets in the given rap-phi range in an active area case. For the local implementation we return empty_area/(0.55 pi R^2), based on measured properties of ghost jets with kt and cam. Note that the number returned is a double. Reimplemented from fastjet::ClusterSequenceAreaBase. Definition at line 113 of file ClusterSequenceArea.hh. 00113 {
00114 return _area_base->n_empty_jets(range);
00115 }
|
|
||||||||||||||||||||||||
|
overload version of what's in the ClusterSequenceAreaBase class, which additionally checks compatibility between "range" and region in which ghosts are thrown.
Reimplemented from fastjet::ClusterSequenceAreaBase. Definition at line 149 of file ClusterSequenceArea.hh. 00152 {
00153 _warn_if_range_unsuitable(range);
00154 ClusterSequenceAreaBase::parabolic_pt_per_unit_area(
00155 a,b,range, exclude_above, use_area_4vector);
00156 }
|
|
|
Definition at line 170 of file ClusterSequenceArea.hh. Referenced by initialize_and_run_cswa(). |
|
|
Definition at line 171 of file ClusterSequenceArea.hh. Referenced by _warn_if_range_unsuitable(), and initialize_and_run_cswa(). |
|
|
Definition at line 5 of file ClusterSequenceArea.cc. Referenced by _warn_if_range_unsuitable(). |
1.4.2