13 for (
int i = 0;
i < 5;
i++) {
40 for (
int i = 0;
i < 5;
i++) {
59 fill(recVertex, recTrackV, simv, recSimColl, time);
88 if (simv !=
nullptr) {
101 vert, momAtVtx, (
float)(**simTrack).charge(), *
theMagField, recTrackV.front().stateAtBeamLine().beamSpot());
102 if (paramPair.first) {
113 for (TTrackCont::const_iterator recTrack = recTrackV.begin();
121 std::vector<std::pair<TrackingParticleRef, double> > simFound;
124 if ((ttt !=
nullptr) && (recSimColl !=
nullptr))
135 if (!simFound.empty()) {
138 if (simTrackI != simTrackV.
end())
140 int simTrackIndex = simTrackI - simTrackV.
begin();
179 params[0][trackNumber] = perigee[0];
180 params[1][trackNumber] = perigee[1];
181 params[2][trackNumber] = perigee[2];
182 params[3][trackNumber] = perigee[3];
183 params[4][trackNumber] = perigee[4];
188 params[0][trackNumber] = perigee[0];
189 params[1][trackNumber] = perigee[1];
190 params[2][trackNumber] = perigee[2];
191 params[3][trackNumber] = perigee[3];
192 params[4][trackNumber] = perigee[4];
198 errors[2][trackNumber] = pte.
phiError();
204 for (
int i = 0;
i < 3; ++
i) {
215 for (
int i = 0;
i < 5; ++
i) {
225 for (
int i = 0;
i < 5; ++
i) {
231 numberOfRecTracks = 0;
232 numberOfSimTracks = 0;
void fill(const TransientVertex &recv, const TrackingVertex *simv=nullptr, reco::RecoToSimCollection *recSimColl=nullptr, const float &time=0)
GlobalError positionError() const
const AlgebraicVector5 & vector() const
tp_iterator daughterTracks_begin() const
double longitudinalImpactParameterError() const
const MagneticField * theMagField
void fillErrors(const PerigeeTrajectoryError &pte, float *errors[5], int trackNumber)
const PerigeeTrajectoryError & perigeeError() const
std::vector< reco::TransientTrack > TTrackCont
double thetaError() const
float totalChiSquared() const
void fillParameters(const reco::TrackBase::ParameterVector &perigee, float *params[5], int trackNumber)
math::Vector< dimension >::type ParameterVector
parameter vector
const_iterator end() const
Termination of iteration.
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
const_iterator begin() const
Initialize an iterator over the RefVector.
std::vector< reco::TransientTrack > const & originalTracks() const
float degreesOfFreedom() const
GlobalPoint position() const
VertexFitterResult(const int maxTracks=100, const MagneticField *=nullptr)
ROOT::Math::SVector< double, 5 > AlgebraicVector5
float ChiSquaredProbability(double chiSquared, double nrDOF)
tp_iterator daughterTracks_end() const
double transverseImpactParameterError() const
std::pair< bool, reco::TrackBase::ParameterVector > trackingParametersAtClosestApproachToBeamSpot(const Basic3DVector< double > &vertex, const Basic3DVector< double > &momAtVtx, float charge, const MagneticField &magField, const BeamSpot &bs)
const TrackingParticleRefVector & daughterTracks() const
const float * time() const
double transverseCurvatureError() const
const LorentzVector & position() const
TrackBaseRef trackBaseRef() const override