CMS 3D CMS Logo

StripCPEgeometric.h
Go to the documentation of this file.
1 #ifndef RecoLocalTracker_SiStripRecHitConverter_StripCPEgeometric_H
2 #define RecoLocalTracker_SiStripRecHitConverter_StripCPEgeometric_H
3 
6 
7 class StripCPEgeometric : public StripCPE {
8 public:
11  const GeomDetUnit&,
12  const LocalTrajectoryParameters&) const override;
13 
15  const MagneticField& mag,
16  const TrackerGeometry& geom,
18  const SiStripBackPlaneCorrection& BackPlaneCorrection,
19  const SiStripConfObject& confObj,
20  const SiStripLatency& latency)
21  : StripCPE(conf, mag, geom, LorentzAngle, BackPlaneCorrection, confObj, latency),
22  tan_diffusion_angle(conf.getParameter<double>("TanDiffusionAngle")),
23  thickness_rel_err2(pow(conf.getParameter<double>("ThicknessRelativeUncertainty"), 2)),
24  noise_threshold(conf.getParameter<double>("NoiseThreshold")),
25  maybe_noise_threshold(conf.getParameter<double>("MaybeNoiseThreshold")),
26  scaling_squared(pow(conf.getParameter<double>("UncertaintyScaling"), 2)),
27  minimum_uncertainty_squared(pow(conf.getParameter<double>("MinimumUncertainty"), 2)) {}
28 
29 private:
32 
34  public:
35  WrappedCluster(const std::vector<stats_t<float> >&);
36  void dropSmallerEdgeStrip();
38  float middle() const;
39  stats_t<float> centroid() const;
40  stats_t<float> sumQ() const;
41  stats_t<float> eta() const;
42  bool deformed() const;
45  int sign() const;
46  uint16_t N;
47 
48  private:
49  const stats_t<float>& last() const { return *(first + N - 1); }
50  std::vector<stats_t<float> >::const_iterator clusterFirst, first;
51  };
52 
53  stats_t<float> offset_from_firstStrip(const std::vector<stats_t<float> >&, const stats_t<float>&) const;
55  bool useNPlusOne(const WrappedCluster&, const stats_t<float>&) const;
56  bool useNMinusOne(const WrappedCluster&, const stats_t<float>&) const;
57  bool ambiguousSize(const WrappedCluster&, const stats_t<float>&) const;
58 };
59 
60 #endif
StripCPEgeometric::WrappedCluster
Definition: StripCPEgeometric.h:33
StripCPE
Definition: StripCPE.h:17
StripCPEgeometric::WrappedCluster::smallerEdgeStrip
stats_t< float > smallerEdgeStrip() const
Definition: StripCPEgeometric.cc:149
StripCPEgeometric::WrappedCluster::eta
stats_t< float > eta() const
Definition: StripCPEgeometric.cc:139
StripCPEgeometric::WrappedCluster::WrappedCluster
WrappedCluster(const std::vector< stats_t< float > > &)
Definition: StripCPEgeometric.cc:99
GeomDet
Definition: GeomDet.h:27
SiStripSimParameters_cfi.LorentzAngle
LorentzAngle
Definition: SiStripSimParameters_cfi.py:93
config_102169_raw_cff.latency
latency
Definition: config_102169_raw_cff.py:29
StripCPEgeometric::WrappedCluster::addSuppressedEdgeStrip
void addSuppressedEdgeStrip()
Definition: StripCPEgeometric.cc:102
StripCPEgeometric::geometric_position
stats_t< float > geometric_position(const WrappedCluster &, const stats_t< float > &) const
Definition: StripCPEgeometric.cc:62
StripCPEgeometric::WrappedCluster::centroid
stats_t< float > centroid() const
Definition: StripCPEgeometric.cc:128
StripCPEgeometric::ambiguousSize
bool ambiguousSize(const WrappedCluster &, const stats_t< float > &) const
Definition: StripCPEgeometric.cc:95
StripCPEgeometric::WrappedCluster::N
uint16_t N
Definition: StripCPEgeometric.h:46
StripCPEgeometric::WrappedCluster::last
const stats_t< float > & last() const
Definition: StripCPEgeometric.h:49
StripCPEgeometric::offset_from_firstStrip
stats_t< float > offset_from_firstStrip(const std::vector< stats_t< float > > &, const stats_t< float > &) const
Definition: StripCPEgeometric.cc:36
stats_t
Definition: ErrorPropogationTypes.h:38
LocalTrajectoryParameters
Definition: LocalTrajectoryParameters.h:25
StripCPEgeometric::WrappedCluster::maxProjection
stats_t< float > maxProjection() const
Definition: StripCPEgeometric.cc:145
SiStripLorentzAngle
Definition: SiStripLorentzAngle.h:26
StripCPEgeometric
Definition: StripCPEgeometric.h:7
StripCPEgeometric::scaling_squared
const float scaling_squared
Definition: StripCPEgeometric.h:30
StripCPEgeometric::localParameters
StripClusterParameterEstimator::LocalValues localParameters(const SiStripCluster &, const GeomDetUnit &, const LocalTrajectoryParameters &) const override
Definition: StripCPEgeometric.cc:6
relativeConstraints.geom
geom
Definition: relativeConstraints.py:72
StripCPEgeometric::WrappedCluster::dropSmallerEdgeStrip
void dropSmallerEdgeStrip()
Definition: StripCPEgeometric.cc:114
StripCPEgeometric::WrappedCluster::sumQ
stats_t< float > sumQ() const
Definition: StripCPEgeometric.cc:135
edm::ParameterSet
Definition: ParameterSet.h:36
StripCPEgeometric::WrappedCluster::deformed
bool deformed() const
Definition: StripCPEgeometric.cc:141
StripCPEgeometric::tan_diffusion_angle
const float tan_diffusion_angle
Definition: StripCPEgeometric.h:30
ErrorPropogationTypes.h
StripCPEgeometric::minimum_uncertainty_squared
const float minimum_uncertainty_squared
Definition: StripCPEgeometric.h:30
StripCPE::localParameters
StripClusterParameterEstimator::LocalValues localParameters(const SiStripCluster &cl, const GeomDetUnit &) const override
Definition: StripCPE.cc:66
mag
T mag() const
The vector magnitude. Equivalent to sqrt(vec.mag2())
Definition: Basic3DVectorLD.h:127
StripCPEgeometric::WrappedCluster::first
std::vector< stats_t< float > >::const_iterator first
Definition: StripCPEgeometric.h:50
StripCPEgeometric::WrappedCluster::sign
int sign() const
Definition: StripCPEgeometric.cc:151
StripCPEgeometric::maybe_noise_threshold
const float maybe_noise_threshold
Definition: StripCPEgeometric.h:30
StripCPEgeometric::useNMinusOne
bool useNMinusOne(const WrappedCluster &, const stats_t< float > &) const
Definition: StripCPEgeometric.cc:73
StripCPEgeometric::useNPlusOne
bool useNPlusOne(const WrappedCluster &, const stats_t< float > &) const
Definition: StripCPEgeometric.cc:69
funct::pow
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:30
StripCPEgeometric::noise_threshold
const float noise_threshold
Definition: StripCPEgeometric.h:30
StripClusterParameterEstimator::LocalValues
std::pair< LocalPoint, LocalError > LocalValues
Definition: StripClusterParameterEstimator.h:27
StripCPEgeometric::WrappedCluster::clusterFirst
std::vector< stats_t< float > >::const_iterator clusterFirst
Definition: StripCPEgeometric.h:50
StripCPE.h
StripCPEgeometric::WrappedCluster::middle
float middle() const
Definition: StripCPEgeometric.cc:126
SiStripLatency
Definition: SiStripLatency.h:59
MagneticField
Definition: MagneticField.h:19
StripCPEgeometric::thickness_rel_err2
const float thickness_rel_err2
Definition: StripCPEgeometric.h:30
SiStripCluster
Definition: SiStripCluster.h:9
SiStripBackPlaneCorrection
Definition: SiStripBackPlaneCorrection.h:27
StripCPEgeometric::StripCPEgeometric
StripCPEgeometric(edm::ParameterSet &conf, const MagneticField &mag, const TrackerGeometry &geom, const SiStripLorentzAngle &LorentzAngle, const SiStripBackPlaneCorrection &BackPlaneCorrection, const SiStripConfObject &confObj, const SiStripLatency &latency)
Definition: StripCPEgeometric.h:14
TrackerGeometry
Definition: TrackerGeometry.h:14
SiStripConfObject
Definition: SiStripConfObject.h:31