|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #include "fastjet/ClusterSequenceArea.hh"
49 return knownAlgorithms;
57 {
"default", fastjet::Best},
58 {
"Best", fastjet::Best},
59 {
"N2MinHeapTiled", fastjet::N2MinHeapTiled},
60 {
"N2Tiled", fastjet::N2Tiled},
61 {
"N2PoorTiled", fastjet::N2PoorTiled},
62 {
"N2Plain", fastjet::N2Plain},
63 {
"N3Dumb", fastjet::N3Dumb},
64 {
"NlnN", fastjet::NlnN},
65 {
"NlnN3pi", fastjet::NlnN3pi},
66 {
"NlnN4pi", fastjet::NlnN4pi},
67 {
"NlnNCam4pi", fastjet::NlnNCam4pi},
68 {
"NlnNCam2pi2R", fastjet::NlnNCam2pi2R},
69 {
"NlnNCam", fastjet::NlnNCam},
70 {
"plugin_strategy", fastjet::plugin_strategy},
72 return knownStrategies;
80 {
"default", fastjet::E_scheme},
81 {
"E", fastjet::E_scheme},
82 {
"pt", fastjet::pt_scheme},
83 {
"pt2", fastjet::pt2_scheme},
84 {
"Et", fastjet::Et_scheme},
85 {
"Et2", fastjet::Et2_scheme},
86 {
"BIpt", fastjet::BIpt_scheme},
87 {
"BIpt2", fastjet::BIpt2_scheme},
89 return knownRecombinationSchemes;
95 #ifndef XAOD_STANDALONE
98 {
"default", fastjet::SISConePlugin::SM_pttilde},
99 {
"pttilde", fastjet::SISConePlugin::SM_pttilde},
100 {
"PtTilde", fastjet::SISConePlugin::SM_pttilde},
101 {
"Pt", fastjet::SISConePlugin::SM_pt},
102 {
"Et", fastjet::SISConePlugin::SM_Et},
103 {
"mt", fastjet::SISConePlugin::SM_mt},
108 return knownSplitMergeScales;
116 {
"default", fastjet::voronoi_area},
117 {
"ActiveArea", fastjet::active_area},
118 {
"ActiveAreaExplicitGhost", fastjet::active_area_explicit_ghosts},
119 {
"PassiveArea", fastjet::passive_area},
120 {
"1GhostPassiveArea", fastjet::one_ghost_passive_area},
121 {
"VoronoiArea", fastjet::voronoi_area},
134 , m_clusterSequenceType(
"ClusterSequence")
135 , m_jetAlgorithmType(
"anti-kt")
136 , m_clusterStrategyType(
"Best")
137 , m_recombinationSchemeType(
"E")
138 , m_CMS_seedThreshold(15.)
139 , m_SIS_overlapThreshold(0.75)
141 , m_SIS_protojetPtMin(0.0)
142 , m_SIS_doCaching(false)
143 , m_SIS_splitMergeScale_STRING(
"PtTilde")
144 , m_SIS_splitMergeStopScale(0.0)
147 , m_exclusiveDcut(0.5)
148 , m_exclusiveNjets(3)
152 , m_jetAreaDefinitionType(
"VoronoiArea")
154 , m_voronoiEffectiveRfact(1.0)
156 , m_ghostedMaxRap(
fastjet::gas::def_ghost_maxrap)
157 , m_ghostedMinRap(-m_ghostedMaxRap)
158 , m_ghostedRepeat(
fastjet::gas::def_repeat)
159 , m_ghostedArea(
fastjet::gas::def_ghost_area)
160 , m_ghostedGridScatter(
fastjet::gas::def_grid_scatter)
161 , m_ghostedKtScatter(
fastjet::gas::def_pt_scatter)
162 , m_ghostedMeanKt(
fastjet::gas::def_mean_ghost_pt)
166 , m_jetDefinition((
fastjet::JetDefinition*)nullptr)
168 , m_areaDefinition((
fastjet::AreaDefinition*)nullptr)
216 #ifndef XAOD_STANDALONE
242 msg(MSG::ERROR) <<
"FastJet configuration error: "
243 <<
"Unknown jet algorithm \042"
246 return StatusCode::FAILURE;
252 msg(MSG::ERROR) <<
"FastJet configuration error: "
253 <<
"Unknown recombination scheme \042"
256 return StatusCode::FAILURE;
262 msg(MSG::ERROR) <<
"FastJet configuration error: "
263 <<
"Unknown clustering strategy \042"
265 return StatusCode::FAILURE;
269 enum jetAlgTypeEnum { unknown_type, Kt_type, CMS_type, SIS_type } jetAlgType = Kt_type;
273 jetAlgType = CMS_type;
275 jetAlgType = SIS_type;
277 jetAlgType = unknown_type;
279 if (jetAlgType == unknown_type)
281 msg(MSG::ERROR) <<
"FastJet configuration error: "
282 <<
"Unknown jet algorithm plugin \042"
284 return StatusCode::FAILURE;
287 #ifndef XAOD_STANDALONE
290 if (jetAlgType == CMS_type)
292 else if (jetAlgType == SIS_type)
308 if ( (jetAlgType == CMS_type) || (jetAlgType == SIS_type)){
309 ATH_MSG_ERROR(
"CMS and SIScone plugin not supporeted outside athena yet");
310 return StatusCode::FAILURE;
330 msg(MSG::ERROR) <<
"FastJet configuration error: "
331 <<
"Clustering with areas requested but area type"
333 <<
"\042 is not known" <<
endmsg;
334 return StatusCode::FAILURE;
364 msg(MSG::ERROR) <<
"Invalid configuration for exclusive "
365 <<
"jet finder, one of ExclusiveDcut("
367 <<
") or ExclusiveNjets("
369 <<
") properties should be >= 0."
371 return StatusCode::FAILURE;
377 msg(MSG::INFO) <<
"JetAlgorithm ................ \042"
380 if (jetAlgType == Kt_type)
382 msg(MSG::INFO) <<
"Recombination scheme ........ \042"
384 msg(MSG::INFO) <<
"Strategy .................... \042"
387 else if (jetAlgType == CMS_type)
388 msg(MSG::INFO) <<
"CMS seed threshold .......... "
390 else if (jetAlgType == SIS_type)
392 msg(MSG::INFO) <<
"SIS overlap threshold ....... "
394 msg(MSG::INFO) <<
"SIS max num pass ............ "
396 msg(MSG::INFO) <<
"SIS protojet Pt min ......... "
398 msg(MSG::INFO) <<
"SIS do caching .............. "
400 msg(MSG::INFO) <<
"SIS split/merge scale ....... \042"
402 msg(MSG::INFO) <<
"SIS split/merge stop scale .. "
407 msg(MSG::INFO) <<
"Calculate jet areas ......... yes" <<
endmsg;
408 msg(MSG::INFO) <<
"Area type ................... \042"
414 return StatusCode::SUCCESS;
425 ATH_MSG_DEBUG(
" FastJetInterfaceTool::execute injet size = "<< inJets.size() );
433 if ( ((this->*
m_processor)(inJets,outJets)).isFailure() )
438 msg(MSG::WARNING) <<
"Cannot allocate new fastjet::ClusterSequence,"
439 <<
" no jets found (message "
445 msg(MSG::WARNING) <<
"Cannot allocate new fastjet::ClusterSequence,"
446 <<
" no jets found (message "
453 return StatusCode::SUCCESS;
461 fastjet::JetAlgorithm& fjalg)
464 return chkConfig(
key,fjalg,map);
471 return chkConfig(
key,fjstr,map);
475 fastjet::RecombinationScheme& fjrs)
478 return chkConfig(
key,fjrs,map);
481 #ifndef XAOD_STANDALONE
483 fastjet::SISConePlugin::SplitMergeScale& fjsms)
486 return chkConfig(
key,fjsms,map);
491 fastjet::AreaType& fjart)
494 return chkConfig(
key,fjart,map);
516 #ifndef XAOD_STANDALONE
541 ? (this->*
m_extractor)(outJets) : StatusCode::FAILURE;
553 ? (this->*
m_extractor)(outJets) : StatusCode::FAILURE;
559 ATH_MSG_DEBUG(
" extract inclusive outjets N= "<< outJets.size() );
560 return !outJets.empty() ? StatusCode::SUCCESS : StatusCode::FAILURE;
566 ATH_MSG_DEBUG(
" extract exclusiveNjets outjets N= "<< outJets.size() );
568 return !outJets.empty() ? StatusCode::SUCCESS : StatusCode::FAILURE;
574 ATH_MSG_DEBUG(
" extract exclusiveDcut outjets N= "<< outJets.size() );
575 return ! outJets.empty() ? StatusCode::SUCCESS : StatusCode::FAILURE;
599 {
return StatusCode::FAILURE; }
604 case fastjet::voronoi_area:
610 case fastjet::active_area:
611 case fastjet::active_area_explicit_ghosts:
612 case fastjet::one_ghost_passive_area:
613 case fastjet::passive_area:
643 return StatusCode::SUCCESS;
653 std::vector<int> seed;
656 Garea_spec.get_random_status (seed);
658 unsigned int evnum = 0;
674 for (
size_t i = 0;
i < seed.size();
i++) {
675 seed[
i] =
static_cast<int> (
static_cast<uint32_t> (crc));
676 crc = (crc >> 32) ^ crc;
680 Garea_spec.set_random_status (seed);
682 Garea_spec.get_random_status (seed);
def retrieve(aClass, aKey=None)
uint64_t eventNumber() const
The current event's event number.
std::map< std::string, fastjet::AreaType > areamap_t
Mapping keyword on fastjet area type tag.
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
const std::string & cfgName(D tag, const M &map, const std::string &invalidKey)
General configuration keyword finder.
std::map< std::string, fastjet::SISConePlugin::SplitMergeScale > splitMergeScaleMap_t
Mapping keyword on fastjet SIS Cone split merge scale tag.
uint32_t runNumber() const
The current event's run number.
@ cambridge_for_passive_algorithm
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
fastjet::ClusterSequence ClusterSequence
::StatusCode StatusCode
StatusCode definition for legacy code.
uint64_t crc64addint(uint64_t crc, uint64_t x)
Extend a previously-calculated CRC to include an int.
uint64_t crc64(const CRCTable &table, const char *data, size_t data_len)
Find the CRC-64 of a string,.
@ genkt_for_passive_algorithm
std::map< std::string, fastjet::Strategy > strategymap_t
Mapping keyword on fastjet clustering strategy tag.
Class describing the basic event information.
Collection of types for the internal dictionary.
A crc-64 implementation, using pclmul where possible.
std::map< std::string, fastjet::RecombinationScheme > schememap_t
Mapping keyword on fastjet recombination scheme tag.
std::map< std::string, fastjet::JetAlgorithm > algomap_t
Mapping keyword on fastjet jet algorithm tag.