16 case 2:
return estimate<2>(tsos,aRecHit);
18 case ( 1 || 3 || 4 || 5 ):{
19 LogDebug(
"MRHChi2MeasurementEstimator") <<
"WARNING:The hit is not 2D: does not count in the MRH Chi2 estimation." ;
24 throw cms::Exception(
"Rec hit of invalid dimension (not 1,2,3,4,5)") <<
25 "The value was " << aRecHit.
dimension() <<
26 ", type is " <<
typeid(aRecHit).
name() <<
"\n";
30 template <
unsigned int N>
38 LogDebug(
"MRHChi2MeasurementEstimator") <<
"Current annealing factor is " << annealing;
41 LogDebug(
"MRHChi2MeasurementEstimator") <<
"this hit has " << components.size() <<
" components";
44 for(std::vector<const TrackingRecHit*>::const_iterator
iter = components.begin();
iter != components.end();
iter++, iComp++){
55 holder.template setup<N>(&
r, &V, &pf, &rMeas, &VMeas,
x,
C);
56 (**iter).getKfComponents(holder);
59 V = V*annealing + VMeas;
62 edm::LogError(
"SiTrackerMultiRecHitUpdator")<<
"SiTrackerMultiRecHitUpdator::ComputeParameters2dim: W not valid!"<<std::endl;
65 LogDebug(
"MRHChi2MeasurementEstimator") <<
"Hit with weight " << mHit.
weight(iComp);
66 est += ROOT::Math::Similarity(r, V)*mHit.
weight(iComp);
virtual int dimension() const =0
ROOT::Math::SMatrix< double, D1, D1, ROOT::Math::MatRepSym< double, D1 > > SymMatrix
std::pair< bool, double > returnIt(double est) const
const LocalTrajectoryParameters & localParameters() const
virtual double getAnnealingFactor() const
ROOT::Math::SMatrix< double, 5, 5, ROOT::Math::MatRepSym< double, 5 > > AlgebraicSymMatrix55
float weight(unsigned int i) const
AlgebraicVector5 vector() const
virtual std::vector< const TrackingRecHit * > recHits() const
Access to component RecHits (if any)
bool invertPosDefMatrix(ROOT::Math::SMatrix< T, N, N, ROOT::Math::MatRepSym< T, N > > &m)
const AlgebraicSymMatrix55 & matrix() const
const LocalTrajectoryError & localError() const
std::pair< bool, double > HitReturnType
ROOT::Math::SVector< double, D1 > Vector
ROOT::Math::SVector< double, 5 > AlgebraicVector5
std::pair< bool, double > estimate(const TrajectoryStateOnSurface &tsos, const TrackingRecHit &aRecHit) const