CMS 3D CMS Logo

PatternRecognitionbyCA.h
Go to the documentation of this file.
1 // Author: Felice Pantaleo,Marco Rovere - felice.pantaleo@cern.ch, marco.rovere@cern.ch
2 // Date: 09/2018
3 
4 #ifndef __RecoHGCal_TICL_PRbyCA_H__
5 #define __RecoHGCal_TICL_PRbyCA_H__
6 #include <memory> // unique_ptr
10 #include "HGCGraph.h"
11 
12 namespace ticl {
13  template <typename TILES>
15  public:
17  ~PatternRecognitionbyCA() override;
18 
20  std::vector<Trackster>& result,
21  std::unordered_map<int, std::vector<int>>& seedToTracksterAssociation) override;
22 
23  void energyRegressionAndID(const std::vector<reco::CaloCluster>& layerClusters, std::vector<Trackster>& result);
24  void emptyTrackstersFromSeedsTRK(std::vector<Trackster>& tracksters,
25  std::unordered_map<int, std::vector<int>>& seedToTracksterAssociation,
26  const edm::ProductID& collectionID) const;
27 
28  private:
29  void mergeTrackstersTRK(const std::vector<Trackster>&,
30  const std::vector<reco::CaloCluster>&,
31  std::vector<Trackster>&,
32  std::unordered_map<int, std::vector<int>>& seedToTracksterAssociation) const;
33  const std::unique_ptr<HGCGraphT<TILES>> theGraph_;
36  const bool out_in_dfs_;
37  const unsigned int max_out_in_hops_;
38  const float min_cos_theta_;
39  const float min_cos_pointing_;
42  const int skip_layers_;
44  bool check_missing_layers_ = false;
45  const unsigned int shower_start_max_layer_;
46  const unsigned int min_layers_per_trackster_;
47  const std::vector<int> filter_on_categories_;
48  const double pid_threshold_;
52  const float max_delta_time_;
56  const float eidMinClusterEnergy_;
57  const int eidNLayers_;
58  const int eidNClusters_;
59 
61  tensorflow::Session* eidSession_;
62 
63  static const int eidNFeatures_ = 3;
64  };
65 
66 } // namespace ticl
67 #endif
PatternRecognitionAlgoBase.h
ticl::PatternRecognitionbyCA::eidOutputNameEnergy_
const std::string eidOutputNameEnergy_
Definition: PatternRecognitionbyCA.h:54
hgcal::RecHitTools
Definition: RecHitTools.h:23
input
static const std::string input
Definition: EdmProvDump.cc:48
TensorFlow.h
ticl::PatternRecognitionbyCA::shower_start_max_layer_
const unsigned int shower_start_max_layer_
Definition: PatternRecognitionbyCA.h:45
ticl::PatternRecognitionbyCA::rhtools_
hgcal::RecHitTools rhtools_
Definition: PatternRecognitionbyCA.h:60
ticl::PatternRecognitionbyCA::oneTracksterPerTrackSeed_
const bool oneTracksterPerTrackSeed_
Definition: PatternRecognitionbyCA.h:34
ticl::PatternRecognitionbyCA::skip_layers_
const int skip_layers_
Definition: PatternRecognitionbyCA.h:42
ticl::PatternRecognitionbyCA::eidNLayers_
const int eidNLayers_
Definition: PatternRecognitionbyCA.h:57
ticl::PatternRecognitionbyCA::max_out_in_hops_
const unsigned int max_out_in_hops_
Definition: PatternRecognitionbyCA.h:37
ticl::PatternRecognitionbyCA::max_longitudinal_sigmaPCA_
const double max_longitudinal_sigmaPCA_
Definition: PatternRecognitionbyCA.h:50
ticl::PatternRecognitionbyCA::max_missing_layers_in_trackster_
const int max_missing_layers_in_trackster_
Definition: PatternRecognitionbyCA.h:43
ticl
Definition: Common.h:8
ticl::PatternRecognitionbyCA::out_in_dfs_
const bool out_in_dfs_
Definition: PatternRecognitionbyCA.h:36
ticl::PatternRecognitionbyCA::filter_on_categories_
const std::vector< int > filter_on_categories_
Definition: PatternRecognitionbyCA.h:47
ticl::PatternRecognitionAlgoBaseT
Definition: PatternRecognitionAlgoBase.h:24
ticl::PatternRecognitionbyCA::eidSession_
tensorflow::Session * eidSession_
Definition: PatternRecognitionbyCA.h:61
ticl::CacheBase
Definition: GlobalCache.h:11
ticl::PatternRecognitionbyCA::~PatternRecognitionbyCA
~PatternRecognitionbyCA() override
Definition: PatternRecognitionbyCA.cc:59
ticl::PatternRecognitionbyCA::theGraph_
const std::unique_ptr< HGCGraphT< TILES > > theGraph_
Definition: PatternRecognitionbyCA.h:33
ticl::PatternRecognitionbyCA::min_cos_pointing_
const float min_cos_pointing_
Definition: PatternRecognitionbyCA.h:39
HLTEgPhaseIITestSequence_cff.layerClusters
layerClusters
Definition: HLTEgPhaseIITestSequence_cff.py:2506
ticl::PatternRecognitionbyCA::emptyTrackstersFromSeedsTRK
void emptyTrackstersFromSeedsTRK(std::vector< Trackster > &tracksters, std::unordered_map< int, std::vector< int >> &seedToTracksterAssociation, const edm::ProductID &collectionID) const
Definition: PatternRecognitionbyCA.cc:311
utilities.cache
def cache(function)
Definition: utilities.py:3
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
ticl::PatternRecognitionbyCA::min_clusters_per_ntuplet_
const int min_clusters_per_ntuplet_
Definition: PatternRecognitionbyCA.h:51
edm::ParameterSet
Definition: ParameterSet.h:47
ticl::PatternRecognitionbyCA::makeTracksters
void makeTracksters(const typename PatternRecognitionAlgoBaseT< TILES >::Inputs &input, std::vector< Trackster > &result, std::unordered_map< int, std::vector< int >> &seedToTracksterAssociation) override
Definition: PatternRecognitionbyCA.cc:62
ticl::PatternRecognitionbyCA::check_missing_layers_
bool check_missing_layers_
Definition: PatternRecognitionbyCA.h:44
ticl::PatternRecognitionbyCA::eidOutputNameId_
const std::string eidOutputNameId_
Definition: PatternRecognitionbyCA.h:55
ticl::PatternRecognitionbyCA::etaLimitIncreaseWindow_
const float etaLimitIncreaseWindow_
Definition: PatternRecognitionbyCA.h:41
ticl::PatternRecognitionAlgoBaseT::Inputs
Definition: PatternRecognitionAlgoBase.h:30
ticl::PatternRecognitionbyCA::root_doublet_max_distance_from_seed_squared_
const float root_doublet_max_distance_from_seed_squared_
Definition: PatternRecognitionbyCA.h:40
ticl::PatternRecognitionbyCA::PatternRecognitionbyCA
PatternRecognitionbyCA(const edm::ParameterSet &conf, const CacheBase *cache)
Definition: PatternRecognitionbyCA.cc:19
ticl::PatternRecognitionbyCA::eidNFeatures_
static const int eidNFeatures_
Definition: PatternRecognitionbyCA.h:63
ticl::PatternRecognitionbyCA::min_layers_per_trackster_
const unsigned int min_layers_per_trackster_
Definition: PatternRecognitionbyCA.h:46
ticl::PatternRecognitionbyCA::min_cos_theta_
const float min_cos_theta_
Definition: PatternRecognitionbyCA.h:38
ticl::PatternRecognitionbyCA::energy_em_over_total_threshold_
const double energy_em_over_total_threshold_
Definition: PatternRecognitionbyCA.h:49
ticl::PatternRecognitionbyCA::promoteEmptyRegionToTrackster_
const bool promoteEmptyRegionToTrackster_
Definition: PatternRecognitionbyCA.h:35
ticl::PatternRecognitionbyCA::energyRegressionAndID
void energyRegressionAndID(const std::vector< reco::CaloCluster > &layerClusters, std::vector< Trackster > &result)
Definition: PatternRecognitionbyCA.cc:329
mps_fire.result
result
Definition: mps_fire.py:311
ticl::PatternRecognitionbyCA::eidInputName_
const std::string eidInputName_
Definition: PatternRecognitionbyCA.h:53
ticl::PatternRecognitionbyCA::pid_threshold_
const double pid_threshold_
Definition: PatternRecognitionbyCA.h:48
ticl::PatternRecognitionbyCA
Definition: PatternRecognitionbyCA.h:14
ticl::PatternRecognitionbyCA::eidNClusters_
const int eidNClusters_
Definition: PatternRecognitionbyCA.h:58
ticl::PatternRecognitionbyCA::mergeTrackstersTRK
void mergeTrackstersTRK(const std::vector< Trackster > &, const std::vector< reco::CaloCluster > &, std::vector< Trackster > &, std::unordered_map< int, std::vector< int >> &seedToTracksterAssociation) const
Definition: PatternRecognitionbyCA.cc:275
HGCGraph.h
edm::ProductID
Definition: ProductID.h:27
RecHitTools.h
ticl::PatternRecognitionbyCA::max_delta_time_
const float max_delta_time_
Definition: PatternRecognitionbyCA.h:52
ticl::PatternRecognitionbyCA::eidMinClusterEnergy_
const float eidMinClusterEnergy_
Definition: PatternRecognitionbyCA.h:56