45 dotprodTrackSeed2D_(0),
46 dotprodTrackSeed2DV_(0),
47 dotprodTrackSeed3D_(0),
48 dotprodTrackSeed3DV_(0),
51 pca_jetAxis_dotprod_(0),
62 const std::pair<bool, Measurement1D>& t_ip,
63 const std::pair<bool, Measurement1D>& t_ip2d) {
70 auto const& tImpactState =
tt->impactPointState();
72 if (dist.
calculate(tImpactState, iImpactState)) {
74 GlobalError ttPointErr = tImpactState.cartesianError().position();
76 GlobalError seedPositionErr = iImpactState.cartesianError().position();
86 float pvToPCAseed = (seedPosition - pvp).
mag();
87 float pvToPCAtrack = (ttPoint - pvp).
mag();
90 GlobalVector trackDir2D(tImpactState.globalDirection().x(), tImpactState.globalDirection().y(), 0.);
91 GlobalVector seedDir2D(iImpactState.globalDirection().x(), iImpactState.globalDirection().y(), 0.);
92 GlobalVector trackPCADir2D(ttPoint.
x() - pvp.x(), ttPoint.
y() - pvp.y(), 0.);
93 GlobalVector seedPCADir2D(seedPosition.
x() - pvp.x(), seedPosition.
y() - pvp.y(), 0.);
96 float dotprodSeed = (seedPosition - pvp).
unit().
dot(iImpactState.globalDirection().unit());
102 Line PCAMomentumLine(
cp, pairMomentumDir);
138 dotprodTrackSeed3D_ = iImpactState.globalDirection().unit().dot(tImpactState.globalDirection().unit());