49 edm::LogVerbatim(
"CosmicParametersDefinerForTP") <<
"\t in CosmicParametersDefinerForTP::momentum";
51 <<
"\t \t Original TP state: pt = " << tpr->pt() <<
", pz = " << tpr->pz();
54 LogError(
"TrackAssociation") <<
"Invalid handle!";
57 std::pair<TrackingParticleRef, TrackPSimHitRef> clusterTPpairWithDummyTP(
63 clusterTPpairWithDummyTP,
65 for (
auto ip = range.first; ip != range.second; ++ip) {
70 <<
"***WARNING in CosmicParametersDefinerForTP::momentum: no GeomDet " 72 << it->detUnitId() <<
". Skipping it." 83 if (it->processType() != 0)
98 <<
"\t \t FINAL State at InnerMost Hit: pt = " << finalGV.
perp() <<
", pz = " << finalGV.
z();
104 tscblBuilder(ftsAtProduction, *bs);
106 if (tsAtClosestApproach.
isValid()) {
110 edm::LogVerbatim(
"CosmicParametersDefinerForTP") <<
"*** WARNING in CosmicParametersDefinerForTP::momentum: " 111 "tsAtClosestApproach is not valid." 116 <<
"\t \t FINAL State extrap. at PCA: pt = " <<
sqrt(momentum.x() * momentum.x() + momentum.y() * momentum.y())
117 <<
", pz = " << momentum.z() <<
"\n";
123 <<
"*** WARNING in CosmicParametersDefinerForTP::momentum: NOT found the " 127 <<
"*** FINAL Reference MOMENTUM TP (px,py,pz) = " << momentum.x() << momentum.y() << momentum.z() <<
"\n";
136 using namespace reco;
155 edm::LogVerbatim(
"CosmicParametersDefinerForTP") <<
"\t in CosmicParametersDefinerForTP::vertex";
157 <<
"\t \t Original TP state: radius = " 158 <<
sqrt(tpr->vertex().x() * tpr->vertex().x() + tpr->vertex().y() * tpr->vertex().y())
159 <<
", z = " << tpr->vertex().z();
162 LogError(
"TrackAssociation") <<
"Invalid handle!";
165 std::pair<TrackingParticleRef, TrackPSimHitRef> clusterTPpairWithDummyTP(
171 clusterTPpairWithDummyTP,
173 for (
auto ip = range.first; ip != range.second; ++ip) {
178 <<
"***WARNING in CosmicParametersDefinerForTP::vertex: no GeomDet " 180 << it->detUnitId() <<
". Skipping it." 191 if (it->processType() != 0)
202 <<
"\t \t FINAL State at InnerMost Hit: radius = " << finalGP.
perp() <<
", z = " << finalGP.
z();
208 tscblBuilder(ftsAtProduction, *bs);
210 if (tsAtClosestApproach.
isValid()) {
217 edm::LogVerbatim(
"CosmicParametersDefinerForTP") <<
"*** WARNING in CosmicParametersDefinerForTP::vertex: " 218 "tsAtClosestApproach is not valid." 222 <<
"\t \t FINAL State extrap. at PCA: radius = " <<
sqrt(vertex.x() * vertex.x() + vertex.y() * vertex.y())
223 <<
", z = " << vertex.z() <<
"\n";
229 <<
"*** WARNING in CosmicParametersDefinerForTP::vertex: NOT found the " 233 <<
"*** FINAL Reference VERTEX TP V(x,y,z) = " << vertex.x() << vertex.y() << vertex.z() <<
"\n";
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
double z0() const
z coordinate
static bool simHitTPAssociationListGreater(SimHitTPPair i, SimHitTPPair j)
const Plane & surface() const
The nominal surface of the GeomDet.
math::XYZPointD Point
point in the space
TrackingParticle::Point vertex(const edm::Event &iEvent, const edm::EventSetup &iSetup, const TrackingParticleRef &tpr) const override
TrackingParticle::Vector momentum(const edm::Event &iEvent, const edm::EventSetup &iSetup, const TrackingParticleRef &tpr) const override
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
GlobalVector momentum() const
FTS const & trackStateAtPCA() const
#define TYPELOOKUP_DATA_REG(_dataclass_)
GlobalPoint position() const
const GeomDet * idToDet(DetId) const override
double y0() const
y coordinate
edm::Ref< edm::PSimHitContainer > TrackPSimHitRef
math::XYZVectorD Vector
point in the space
T const * product() const
edm::Handle< SimHitTPAssociationProducer::SimHitTPAssociationList > simHitsTPAssoc
double x0() const
x coordinate