CMS 3D CMS Logo

StripCPEfromTrackAngle.h
Go to the documentation of this file.
1 #ifndef RecoLocalTracker_SiStripRecHitConverter_StripCPEfromTrackAngle_H
2 #define RecoLocalTracker_SiStripRecHitConverter_StripCPEfromTrackAngle_H
3 
5 
7 {
8 
9 private:
11 
12  //Error parameterization, low cluster width function
13  float mLC_P[3];
14  float mHC_P[4][2];
15 
16  //High cluster width is broken down by sub-det
17  std::map<SiStripDetId::SubDetector, float> mHC_P0;
18  std::map<SiStripDetId::SubDetector, float> mHC_P1;
19 
20  //Set to true if we are using the old error parameterization
21  const bool useLegacyError;
22 
23  //Clusters with charge/path > this cut will use old error parameterization
24  // (overridden by useLegacyError; negative value disables the cut)
25  const float maxChgOneMIP;
26 
27  enum class Algo { legacy, mergeCK, chargeCK };
28 
30 
31 public:
35 
36  void localParameters(AClusters const & clusters, ALocalValues & retValues, const GeomDetUnit& gd, const LocalTrajectoryParameters &ltp) const override;
37 
39  localParameters( const SiStripCluster& cl, AlgoParam const & ap) const override;
40 
41 
43  localParameters( const SiStripCluster&, const GeomDetUnit&, const LocalTrajectoryParameters&) const override;
44 
45  float stripErrorSquared(const unsigned N, const float uProj, const SiStripDetId::SubDetector loc ) const ;
46  float legacyStripErrorSquared(const unsigned N, const float uProj) const;
47 
48 
50  const MagneticField& mag,
51  const TrackerGeometry& geom,
52  const SiStripLorentzAngle& lorentz,
53  const SiStripBackPlaneCorrection& backPlaneCorrection,
54  const SiStripConfObject& confObj,
55  const SiStripLatency& latency);
56 
57 };
58 #endif
float legacyStripErrorSquared(const unsigned N, const float uProj) const
DynArray< SiStripCluster const * > AClusters
StripCPEfromTrackAngle(edm::ParameterSet &conf, const MagneticField &mag, const TrackerGeometry &geom, const SiStripLorentzAngle &lorentz, const SiStripBackPlaneCorrection &backPlaneCorrection, const SiStripConfObject &confObj, const SiStripLatency &latency)
std::map< SiStripDetId::SubDetector, float > mHC_P1
T mag() const
The vector magnitude. Equivalent to sqrt(vec.mag2())
std::pair< LocalPoint, LocalError > LocalValues
StripClusterParameterEstimator::LocalValues localParameters(const SiStripCluster &cl, const GeomDetUnit &) const override
Definition: StripCPE.cc:65
std::map< SiStripDetId::SubDetector, float > mHC_P0
#define N
Definition: blowfish.cc:9
void localParameters(AClusters const &clusters, ALocalValues &retValues, const GeomDetUnit &gd, const LocalTrajectoryParameters &ltp) const override
latency
hardware algo
Definition: fakeMenu.h:6
float stripErrorSquared(const unsigned N, const float uProj, const SiStripDetId::SubDetector loc) const