CMS 3D CMS Logo

TRecHit5DParamConstraint.h
Go to the documentation of this file.
1 #ifndef RECOTRACKER_TRANSIENTRACKINGRECHIT_TRecHit5DParamConstraint_H
2 #define RECOTRACKER_TRANSIENTRACKINGRECHIT_TRecHit5DParamConstraint_H
3 
8 
10 public:
13 
16 
19 
21 
22  int dimension() const override { return 5; }
23 
24  AlgebraicMatrix projectionMatrix() const override {
26  return projectionMatrix;
27  }
28 
30 
32 
33  LocalPoint localPosition() const override { return tsos_.localPosition(); }
34 
35  LocalError localPositionError() const override { return tsos_.localError().positionError(); }
36 
37  int charge() const { return tsos_.charge(); }
38  const TrajectoryStateOnSurface& trajectoryState() const { return tsos_; }
39 
40  bool canImproveWithTrack() const override { return false; }
41 
42  std::vector<const TrackingRecHit*> recHits() const override { return std::vector<const TrackingRecHit*>(); }
43  std::vector<TrackingRecHit*> recHits() override { return std::vector<TrackingRecHit*>(); }
44 
45  // verify if same tsos
46  bool sharesInput(const TrackingRecHit*, SharedInputType) const override { return false; }
47 
48  const Surface* surface() const override { return &tsos_.surface(); }
49 
50  GlobalPoint globalPosition() const override { return surface()->toGlobal(localPosition()); }
51  GlobalError globalPositionError() const override {
53  }
54  float errorGlobalR() const override { return std::sqrt(globalPositionError().rerr(globalPosition())); }
55  float errorGlobalZ() const override { return std::sqrt(globalPositionError().czz()); }
56  float errorGlobalRPhi() const override {
57  return globalPosition().perp() * sqrt(globalPositionError().phierr(globalPosition()));
58  }
59 
61  virtual RecHitPointer clone(const TrajectoryStateOnSurface& tsos) const {
62  return RecHitPointer(new TRecHit5DParamConstraint(tsos));
63  }
64 
66  return RecHitPointer(new TRecHit5DParamConstraint(tsos));
67  }
68 
69 private:
71 
72  TRecHit5DParamConstraint* clone() const override { return new TRecHit5DParamConstraint(*this); }
73 };
74 
75 #endif
TRecHit5DParamConstraint::localPosition
LocalPoint localPosition() const override
Definition: TRecHit5DParamConstraint.h:33
TrajectoryStateOnSurface.h
TRecHit5DParamConstraint::errorGlobalZ
float errorGlobalZ() const override
Definition: TRecHit5DParamConstraint.h:55
GeomDet
Definition: GeomDet.h:27
LocalTrajectoryError::positionError
LocalError positionError() const
Definition: LocalTrajectoryError.h:81
TRecHit5DParamConstraint::sharesInput
bool sharesInput(const TrackingRecHit *, SharedInputType) const override
Definition: TRecHit5DParamConstraint.h:46
TRecHit5DParamConstraint::tsos_
const TrajectoryStateOnSurface tsos_
Definition: TRecHit5DParamConstraint.h:70
TrajectoryStateOnSurface::charge
TrackCharge charge() const
Definition: TrajectoryStateOnSurface.h:68
TRecHit5DParamConstraint::charge
int charge() const
Definition: TRecHit5DParamConstraint.h:37
Surface
Definition: Surface.h:36
LocalTrajectoryError::matrix
const AlgebraicSymMatrix55 & matrix() const
Definition: LocalTrajectoryError.h:60
TrackingRecHit::RecHitPointer
std::shared_ptr< TrackingRecHit const > RecHitPointer
Definition: TrackingRecHit.h:24
TRecHit5DParamConstraint::globalPosition
GlobalPoint globalPosition() const override
Definition: TRecHit5DParamConstraint.h:50
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
TrackingRecHit::SharedInputType
SharedInputType
definition of equality via shared input
Definition: TrackingRecHit.h:59
ErrorFrameTransformer
Definition: ErrorFrameTransformer.h:12
TRecHit5DParamConstraint::clone
virtual RecHitPointer clone(const TrajectoryStateOnSurface &tsos) const
????
Definition: TRecHit5DParamConstraint.h:61
AlgebraicVector
CLHEP::HepVector AlgebraicVector
Definition: AlgebraicObjects.h:13
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
Surface::toGlobal
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
Definition: Surface.h:79
TRecHit5DParamConstraint::recHits
std::vector< TrackingRecHit * > recHits() override
Non-const access to component RecHits (if any)
Definition: TRecHit5DParamConstraint.h:43
TRecHit5DParamConstraint::~TRecHit5DParamConstraint
~TRecHit5DParamConstraint() override
Definition: TRecHit5DParamConstraint.h:20
TRecHit5DParamConstraint::trajectoryState
const TrajectoryStateOnSurface & trajectoryState() const
Definition: TRecHit5DParamConstraint.h:38
trackingPlots.other
other
Definition: trackingPlots.py:1464
LocalTrajectoryParameters::vector
AlgebraicVector5 vector() const
Definition: LocalTrajectoryParameters.h:120
Point3DBase< float, LocalTag >
TRecHit5DParamConstraint::dimension
int dimension() const override
Definition: TRecHit5DParamConstraint.h:22
TrajectoryStateOnSurface::localParameters
const LocalTrajectoryParameters & localParameters() const
Definition: TrajectoryStateOnSurface.h:73
TrajectoryStateOnSurface::localPosition
LocalPoint localPosition() const
Definition: TrajectoryStateOnSurface.h:74
LocalError
Definition: LocalError.h:12
createfilelist.int
int
Definition: createfilelist.py:10
TRecHit5DParamConstraint::globalPositionError
GlobalError globalPositionError() const override
Definition: TRecHit5DParamConstraint.h:51
trackerHitRTTI.h
GlobalErrorBase< double, ErrorMatrixTag >
AlgebraicSymMatrix
CLHEP::HepSymMatrix AlgebraicSymMatrix
Definition: AlgebraicObjects.h:15
TRecHit5DParamConstraint::TRecHit5DParamConstraint
TRecHit5DParamConstraint(const TrajectoryStateOnSurface &tsos)
Definition: TRecHit5DParamConstraint.h:11
TRecHit5DParamConstraint::TRecHit5DParamConstraint
TRecHit5DParamConstraint(const GeomDet &idet, const TrajectoryStateOnSurface &tsos)
Definition: TRecHit5DParamConstraint.h:14
TRecHit5DParamConstraint::parametersError
AlgebraicSymMatrix parametersError() const override
Definition: TRecHit5DParamConstraint.h:31
TrackingRecHit
Definition: TrackingRecHit.h:21
TRecHit5DParamConstraint::errorGlobalR
float errorGlobalR() const override
Definition: TRecHit5DParamConstraint.h:54
TRecHit5DParamConstraint::build
static RecHitPointer build(const TrajectoryStateOnSurface &tsos)
Definition: TRecHit5DParamConstraint.h:65
TRecHit5DParamConstraint::parameters
AlgebraicVector parameters() const override
Definition: TRecHit5DParamConstraint.h:29
Migration.h
TRecHit5DParamConstraint::surface
const Surface * surface() const override
Definition: TRecHit5DParamConstraint.h:48
AlgebraicMatrix
CLHEP::HepMatrix AlgebraicMatrix
Definition: AlgebraicObjects.h:14
ErrorFrameTransformer.h
asHepVector
CLHEP::HepVector asHepVector(const ROOT::Math::SVector< double, N > &v)
Definition: Migration.h:53
TRecHit5DParamConstraint::canImproveWithTrack
bool canImproveWithTrack() const override
Definition: TRecHit5DParamConstraint.h:40
TrajectoryStateOnSurface::surface
const SurfaceType & surface() const
Definition: TrajectoryStateOnSurface.h:78
TRecHit5DParamConstraint::clone
TRecHit5DParamConstraint * clone() const override
Definition: TRecHit5DParamConstraint.h:72
TRecHit5DParamConstraint::localPositionError
LocalError localPositionError() const override
Definition: TRecHit5DParamConstraint.h:35
TRecHit5DParamConstraint
Definition: TRecHit5DParamConstraint.h:9
ErrorFrameTransformer::transform
static GlobalError transform(const LocalError &le, const Surface &surf)
Definition: ErrorFrameTransformer.h:16
trackerHitRTTI::notFromCluster
Definition: trackerHitRTTI.h:19
TRecHit5DParamConstraint::projectionMatrix
AlgebraicMatrix projectionMatrix() const override
Definition: TRecHit5DParamConstraint.h:24
trackerHitRTTI
Definition: trackerHitRTTI.h:6
TrajectoryStateOnSurface::localError
const LocalTrajectoryError & localError() const
Definition: TrajectoryStateOnSurface.h:77
TRecHit5DParamConstraint::recHits
std::vector< const TrackingRecHit * > recHits() const override
Access to component RecHits (if any)
Definition: TRecHit5DParamConstraint.h:42
asHepMatrix
CLHEP::HepMatrix asHepMatrix(const ROOT::Math::SMatrix< double, N1, N2, typename ROOT::Math::MatRepStd< double, N1, N2 > > &rm)
Definition: Migration.h:60
PV3DBase::perp
T perp() const
Definition: PV3DBase.h:69
TRecHit5DParamConstraint::errorGlobalRPhi
float errorGlobalRPhi() const override
Definition: TRecHit5DParamConstraint.h:56