10 : associatorForParamAtPca(associator)
14 for (
int i=0;
i<5;
i++ ) {
43 for (
int i=0;
i<5;
i++ ) {
61 fill(recVertex, recTrackV, simv, recSimColl, time);
103 std::pair<bool, reco::TrackBase::ParameterVector> paramPair =
105 (
float) (**simTrack).charge(), recTrackV.front().stateAtBeamLine().beamSpot());
106 if (paramPair.first) {
118 for(TTrackCont::const_iterator recTrack =recTrackV.begin();
119 (recTrack != recTrackV.end()
127 std::vector<std::pair<TrackingParticleRef, double> > simFound;
130 if ((ttt!=0) && (recSimColl!=0)) simFound = (*recSimColl)[ttt->
trackBaseRef()];
140 if(simFound.size() != 0) {
143 find(simTrackV.
begin(), simTrackV.
end(), simFound[0].first);
144 if (simTrackI!=simTrackV.
end()) ++
tracks[2];
145 int simTrackIndex = simTrackI-simTrackV.
begin();
183 float* params[5],
int trackNumber)
185 params[0][trackNumber] = perigee[0];
186 params[1][trackNumber] = perigee[1];
187 params[2][trackNumber] = perigee[2];
188 params[3][trackNumber] = perigee[3];
189 params[4][trackNumber] = perigee[4];
193 float* params[5],
int trackNumber)
196 params[0][trackNumber] = perigee[0];
197 params[1][trackNumber] = perigee[1];
198 params[2][trackNumber] = perigee[2];
199 params[3][trackNumber] = perigee[3];
200 params[4][trackNumber] = perigee[4];
204 float*
errors[5],
int trackNumber)
208 errors[2][trackNumber] = pte.
phiError();
215 for (
int i=0;
i<3; ++
i ) {
226 for (
int i=0;
i<5; ++
i ) {
236 for (
int i=0;
i<5; ++
i ) {
GlobalError positionError() const
const AlgebraicVector5 & vector() const
tp_iterator daughterTracks_begin() const
std::pair< bool, reco::TrackBase::ParameterVector > parametersAtClosestApproach(const Basic3DVector< double > &, const Basic3DVector< double > &, float, const reco::BeamSpot &) const
propagate the track parameters of TrackinParticle from production vertex to the point of closest appr...
double longitudinalImpactParameterError() const
void fillErrors(const PerigeeTrajectoryError &pte, float *errors[5], int trackNumber)
const PerigeeTrajectoryError & perigeeError() const
std::vector< reco::TransientTrack > TTrackCont
double thetaError() const
void fill(const TransientVertex &recv, const TrackingVertex *simv=0, reco::RecoToSimCollection *recSimColl=0, const float &time=0)
float totalChiSquared() const
VertexFitterResult(const int maxTracks=100, TrackAssociatorByChi2 *associator=0)
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.
TrackBaseRef trackBaseRef() const
TrackAssociatorByChi2 * associatorForParamAtPca
std::vector< reco::TransientTrack > const & originalTracks() const
float degreesOfFreedom() const
GlobalPoint position() const
float ChiSquaredProbability(double chiSquared, double nrDOF)
tp_iterator daughterTracks_end() const
double transverseImpactParameterError() const
ROOT::Math::SVector< double, 5 > AlgebraicVector5
const TrackingParticleRefVector & daughterTracks() const
const float * time() const
double transverseCurvatureError() const
const LorentzVector & position() const