14 :
p.maxLength /
track.mag();
16 const float fullProjection =
p.coveredStrips(
track +
p.drift,
pos);
19 const float absProj = fabs(fullProjection);
25 const std::vector<stats_t<float> > Q =
29 const float corrected =
30 strip() - 0.5 * (1 -
p.backplanecorrection) * fullProjection + 0.5 *
p.coveredStrips(
track, ltp.
position());
33 return std::make_pair(
p.topology->localPosition(corrected, ltp.
vector()),
34 p.topology->localError(corrected, error2, ltp.
vector()));
46 if (
proj() < wc.
N - 2)
75 if (
proj() > wc.
N - 1)
79 if (
proj() < wc.
N - 3)
81 if (
proj() < wc.
N - 2)
83 if (wc.
eta().sigmaFrom(0) < 3)
90 if (wc.
sign() * wc.
eta()() > 1. / (wc.
N - 1))
101 :
N(Q.
size() - 2), clusterFirst(Q.begin() + 1),
first(clusterFirst) {}
104 if (
eta().sigmaFrom(0) < 1) {
132 sumXQ += (
i - clusterFirst) * (*i);
133 return sumXQ /
sumQ() + 0.5;
147 return N * (1 +
sign() *
eta()).inverse();
std::pair< LocalPoint, LocalError > LocalValues
stats_t< float > eta() const
uint16_t firstStrip() const
WrappedCluster(const std::vector< stats_t< float > > &)
void addSuppressedEdgeStrip()
stats_t< float > centroid() const
stats_t< float > maxProjection() const
stats_t< float > offset_from_firstStrip(const std::vector< stats_t< float > > &, const stats_t< float > &) const
stats_t< float > smallerEdgeStrip() const
Param const & param(const GeomDetUnit &det) const
const float scaling_squared
bool ambiguousSize(const WrappedCluster &, const stats_t< float > &) const
stats_t< float > geometric_position(const WrappedCluster &, const stats_t< float > &) const
std::vector< float > xtalk1
static stats_t from_relative_uncertainty2(T q, T re2)
LocalVector momentum() const
Momentum vector in the local frame.
AlgebraicVector5 vector() const
static std::vector< stats_t< float > > unfold(const SiStripCluster &q, const float x)
StripClusterParameterEstimator::LocalValues localParameters(const SiStripCluster &, const GeomDetUnit &, const LocalTrajectoryParameters &) const override
const float maybe_noise_threshold
stats_t< float > sumQ() const
void dropSmallerEdgeStrip()
const float minimum_uncertainty_squared
const float tan_diffusion_angle
const float thickness_rel_err2
bool useNMinusOne(const WrappedCluster &, const stats_t< float > &) const
LocalPoint position() const
Local x and y position coordinates.
const float noise_threshold
bool useNPlusOne(const WrappedCluster &, const stats_t< float > &) const
double sumQ(DIGI const &digi, double ped, int i=0, int j=3)