48 edm::LogVerbatim(
"CosmicParametersDefinerForTP")<<
"\t in CosmicParametersDefinerForTP::momentum";
50 <<
"\t \t Original TP state: pt = "<<tpr->pt()<<
", pz = "<<tpr->pz();
53 LogError(
"TrackAssociation") <<
"Invalid handle!";
56 std::pair<TrackingParticleRef, TrackPSimHitRef> clusterTPpairWithDummyTP(tpr,
TrackPSimHitRef());
60 for(
auto ip = range.first; ip != range.second; ++ip) {
62 const GeomDet* tmpDet = theGeometry->idToDet(
DetId(it->detUnitId()) ) ;
65 <<
"***WARNING in CosmicParametersDefinerForTP::momentum: no GeomDet for: "<<it->detUnitId()<<
". Skipping it."<<
"\n";
75 if (it->processType()!=0)
continue;
88 <<
"\t \t FINAL State at InnerMost Hit: pt = "<< finalGV.
perp() <<
", pz = "<< finalGV.
z();
96 if(tsAtClosestApproach.
isValid()){
102 <<
"*** WARNING in CosmicParametersDefinerForTP::momentum: tsAtClosestApproach is not valid." <<
"\n";
106 <<
"\t \t FINAL State extrap. at PCA: pt = "<<
sqrt(momentum.x()*momentum.x()+momentum.y()*momentum.y()) <<
", pz = "<< momentum.z() <<
"\n";
112 <<
"*** WARNING in CosmicParametersDefinerForTP::momentum: NOT found the innermost TP point" <<
"\n";
114 <<
"*** FINAL Reference MOMENTUM TP (px,py,pz) = "<<momentum.x()<<momentum.y()<<momentum.z()<<
"\n";
122 using namespace reco;
141 edm::LogVerbatim(
"CosmicParametersDefinerForTP")<<
"\t in CosmicParametersDefinerForTP::vertex";
143 <<
"\t \t Original TP state: radius = "<<
sqrt(tpr->vertex().x()*tpr->vertex().x()+tpr->vertex().y()*tpr->vertex().y())<<
", z = "<<tpr->vertex().z();
146 LogError(
"TrackAssociation") <<
"Invalid handle!";
149 std::pair<TrackingParticleRef, TrackPSimHitRef> clusterTPpairWithDummyTP(tpr,
TrackPSimHitRef());
153 for(
auto ip = range.first; ip != range.second; ++ip) {
155 const GeomDet* tmpDet = theGeometry->idToDet(
DetId(it->detUnitId()) ) ;
158 <<
"***WARNING in CosmicParametersDefinerForTP::vertex: no GeomDet for: "<<it->detUnitId()<<
". Skipping it."<<
"\n";
168 if (it->processType()!=0)
continue;
178 <<
"\t \t FINAL State at InnerMost Hit: radius = "<< finalGP.
perp() <<
", z = "<< finalGP.
z();
186 if(tsAtClosestApproach.
isValid()){
192 <<
"*** WARNING in CosmicParametersDefinerForTP::vertex: tsAtClosestApproach is not valid." <<
"\n";
195 <<
"\t \t FINAL State extrap. at PCA: radius = "
196 <<
sqrt(vertex.x()*vertex.x()+vertex.y()*vertex.y())<<
", z = "<<vertex.z()<<
"\n";
202 <<
"*** WARNING in CosmicParametersDefinerForTP::vertex: NOT found the innermost TP point" <<
"\n";
204 <<
"*** FINAL Reference VERTEX TP V(x,y,z) = "<<vertex.x()<<vertex.y()<<vertex.z()<<
"\n";
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
static bool simHitTPAssociationListGreater(SimHitTPPair i, SimHitTPPair j)
virtual TrackingParticle::Vector momentum(const edm::Event &iEvent, const edm::EventSetup &iSetup, const TrackingParticleRef &tpr) const override
const Plane & surface() const
The nominal surface of the GeomDet.
math::XYZPointD Point
point in the space
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
GlobalVector momentum() const
FTS const & trackStateAtPCA() const
#define TYPELOOKUP_DATA_REG(_dataclass_)
GlobalPoint position() const
virtual TrackingParticle::Point vertex(const edm::Event &iEvent, const edm::EventSetup &iSetup, const TrackingParticleRef &tpr) const override
edm::Ref< edm::PSimHitContainer > TrackPSimHitRef
math::XYZVectorD Vector
point in the space
edm::Handle< SimHitTPAssociationProducer::SimHitTPAssociationList > simHitsTPAssoc