126 edm::LogInfo(
"RecoVertex/KineExample") <<
"Found: " << (*tks).size() <<
" reconstructed tracks" 128 edm::LogPrint(
"KineExample") <<
"got " << (*tks).size() <<
" tracks " << endl;
134 vector<TransientTrack> t_tks = (*theB).build(tks);
136 edm::LogPrint(
"KineExample") <<
"Found: " << t_tks.size() <<
" reconstructed tracks" 140 if (t_tks.size() > 3) {
148 vector<TransientTrack> ttv;
149 ttv.push_back(t_tks[0]);
150 ttv.push_back(t_tks[1]);
151 ttv.push_back(t_tks[2]);
152 ttv.push_back(t_tks[3]);
172 float muon_sigma = 0.0000001;
173 float kaon_sigma = 0.000016;
180 vector<RefCountedKinematicParticle> muonParticles;
181 vector<RefCountedKinematicParticle> phiParticles;
182 vector<RefCountedKinematicParticle> allParticles;
183 muonParticles.push_back(pFactory.
particle(ttMuPlus, muon_mass, chi, ndf, muon_sigma));
184 muonParticles.push_back(pFactory.
particle(ttMuMinus, muon_mass, chi, ndf, muon_sigma));
185 allParticles.push_back(pFactory.
particle(ttMuPlus, muon_mass, chi, ndf, muon_sigma));
186 allParticles.push_back(pFactory.
particle(ttMuMinus, muon_mass, chi, ndf, muon_sigma));
188 phiParticles.push_back(pFactory.
particle(ttKPlus, kaon_mass, chi, ndf, kaon_sigma));
189 phiParticles.push_back(pFactory.
particle(ttKMinus, kaon_mass, chi, ndf, kaon_sigma));
190 allParticles.push_back(pFactory.
particle(ttKPlus, kaon_mass, chi, ndf, kaon_sigma));
191 allParticles.push_back(pFactory.
particle(ttKMinus, kaon_mass, chi, ndf, kaon_sigma));
199 edm::LogPrint(
"KineExample") <<
"Simple vertex fit with KinematicParticleVertexFitter:\n";
231 float jp_m_sigma = 0.00004;
235 jpTree = csFitter.
fit(jpsi_c2, jpTree);
239 jpTree->movePointerToTheTop();
241 phiParticles.push_back(jpsi_part);
265 edm::LogError(
"KineExample") <<
"Exception during event number: " <<
iEvent.id() <<
"\n" <<
err.what() <<
"\n";
edm::EDGetTokenT< reco::TrackCollection > token_tracks
RefCountedKinematicTree fit(const std::vector< RefCountedKinematicParticle > &part)
GlobalPoint position() const
RefCountedKinematicTree fit(const std::vector< RefCountedKinematicParticle > &particles) const
Log< level::Error, false > LogError
const edm::ESGetToken< TransientTrackBuilder, TransientTrackRecord > estoken_ttk
void printout(const RefCountedKinematicVertex &myVertex) const
RefCountedKinematicParticle particle(const reco::TransientTrack &initialTrack, const ParticleMass &massGuess, float chiSquared, float degreesOfFr, float &m_sigma) const
Log< level::Warning, true > LogPrint
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
Log< level::Info, false > LogInfo
std::vector< RefCountedKinematicTree > fit(KinematicConstraint *cs, const std::vector< RefCountedKinematicTree > &trees) const