|
|
#include <SeedForPhotonConversion1Leg.h>
|
const TrajectorySeed * | buildSeed (TrajectorySeedCollection &seedCollection, const SeedingHitSet &hits, const FreeTrajectoryState &fts, const edm::EventSetup &es) const |
|
bool | checkHit (const TrajectoryStateOnSurface &, const SeedingHitSet::ConstRecHitPointer &hit, const edm::EventSetup &es) const |
|
CurvilinearTrajectoryError | initialError (const GlobalVector &vertexBounds, float ptMin, float sinTheta) const |
|
GlobalTrajectoryParameters | initialKinematic (const SeedingHitSet &hits, const GlobalPoint &vertexPos, const edm::EventSetup &es, const float cotTheta) const |
|
SeedingHitSet::RecHitPointer | refitHit (SeedingHitSet::ConstRecHitPointer hit, const TrajectoryStateOnSurface &state, const TkClonerImpl &cloner) const |
|
◆ SeedForPhotonConversion1Leg()
SeedForPhotonConversion1Leg::SeedForPhotonConversion1Leg |
( |
const edm::ParameterSet & |
cfg | ) |
|
|
inline |
◆ ~SeedForPhotonConversion1Leg()
SeedForPhotonConversion1Leg::~SeedForPhotonConversion1Leg |
( |
| ) |
|
|
inline |
◆ buildSeed()
Definition at line 124 of file SeedForPhotonConversion1Leg.cc.
142 auto cloner = (*builder).cloner();
153 for (
unsigned int iHit = 0; iHit <
hits.size() && iHit < 1; iHit++) {
163 std::unique_ptr<BaseTrackerRecHit> newtth(
refitHit(tth, state, cloner));
174 uint32_t detid =
hit->geographicalId().rawId();
175 (*pss) <<
"\n[SeedForPhotonConversion1Leg] hit " << iHit;
177 (*pss) <<
" " << detid <<
"\t lp " <<
hit->localPosition() <<
" tth " << tth->localPosition() <<
" newtth "
References alongMomentum, checkHit(), edm::EventSetup::get(), get, TrajectoryStateOnSurface::globalMomentum(), hfClusterShapes_cfi::hits, TrajectoryStateOnSurface::isValid(), PV3DBase< T, PVType, FrameType >::perp(), trajectoryStateTransform::persistentState(), po, PrintRecoObjects::print(), edm::ESHandle< T >::product(), TrackCandidateProducer_cfi::propagator, edm::OwnVector< T, P >::push_back(), refitHit(), ElectronSeedTrackRefFix_cfi::seedCollection, thePropagatorLabel, PbPb_ZMuSkimMuonDPG_cff::tracker, TTRHBuilder, TrackInfoProducer_cfi::updatedState, and HLT_2018_cff::updator.
Referenced by trajectorySeed().
◆ checkHit()
◆ initialError()
Definition at line 101 of file SeedForPhotonConversion1Leg.cc.
113 float sin2th =
sqr(sinTheta);
116 float zErr = vertexErr.czz();
117 float transverseErr = vertexErr.cxx();
118 C[3][3] = transverseErr;
119 C[4][4] = zErr * sin2th + transverseErr * (1 - sin2th);
References gen::C, GlobalErrorBase< T, ErrorWeightType >::cxx(), GlobalErrorBase< T, ErrorWeightType >::czz(), SiStripPI::max, ptMin, sqr(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by trajectorySeed().
◆ initialKinematic()
Definition at line 48 of file SeedForPhotonConversion1Leg.cc.
62 FastHelix helix(tth2->globalPosition(), tth1->globalPosition(), vertexPos, nomField, &*bfield, vertexPos);
63 kine = helix.stateAtVertex();
69 GlobalVector(kine.momentum().x(), kine.momentum().y(), kine.momentum().perp() * cotTheta),
71 &kine.magneticField());
81 (*pss) <<
"[SeedForPhotonConversion1Leg] initialKinematic tth1 ";
82 detid = tth1->geographicalId().rawId();
84 (*pss) <<
" \t " << detid <<
" " << tth1->localPosition() <<
" " << tth1->globalPosition();
85 detid = tth2->geographicalId().rawId();
86 (*pss) <<
" \n\t tth2 ";
88 (*pss) <<
" \t " << detid <<
" " << tth2->localPosition() <<
" " << tth2->globalPosition() <<
"\nhelix momentum "
92 bool isBOFF = (0 == nomField);
References GlobalTrajectoryParameters::charge(), cotTheta_Max, edm::EventSetup::get(), get, hfClusterShapes_cfi::hits, GlobalTrajectoryParameters::magneticField(), GlobalTrajectoryParameters::momentum(), MagneticField::nominalValue(), PV3DBase< T, PVType, FrameType >::perp(), po, GlobalTrajectoryParameters::position(), PrintRecoObjects::print(), theBOFFMomentum, GlobalTrajectoryParameters::transverseCurvature(), Vector3DBase< T, FrameTag >::unit(), PV3DBase< T, PVType, FrameType >::x(), and PV3DBase< T, PVType, FrameType >::y().
Referenced by trajectorySeed().
◆ refitHit()
◆ trajectorySeed()
Definition at line 27 of file SeedForPhotonConversion1Leg.cc.
References buildSeed(), relativeConstraints::error, hfClusterShapes_cfi::hits, initialError(), initialKinematic(), GlobalTrajectoryParameters::momentum(), ptmin, ElectronSeedTrackRefFix_cfi::seedCollection, funct::sin(), contentValuesCheck::ss, PV3DBase< T, PVType, FrameType >::theta(), and bphysicsOniaDQM_cfi::vertex.
◆ cotTheta_Max
const int SeedForPhotonConversion1Leg::cotTheta_Max = 99999 |
|
static |
◆ po
◆ pss
std::stringstream* SeedForPhotonConversion1Leg::pss |
|
protected |
◆ theBOFFMomentum
double SeedForPhotonConversion1Leg::theBOFFMomentum |
|
protected |
◆ thePropagatorLabel
std::string SeedForPhotonConversion1Leg::thePropagatorLabel |
|
protected |
◆ TTRHBuilder
std::string SeedForPhotonConversion1Leg::TTRHBuilder |
|
protected |
T const * product() const
std::string thePropagatorLabel
GlobalTrajectoryParameters initialKinematic(const SeedingHitSet &hits, const GlobalPoint &vertexPos, const edm::EventSetup &es, const float cotTheta) const
void print(std::stringstream &ss, const SiStripCluster &clus)
GlobalPoint position() const
std::pair< ALIstring, ALIstring > pss
Geom::Theta< T > theta() const
SeedingHitSet::RecHitPointer refitHit(SeedingHitSet::ConstRecHitPointer hit, const TrajectoryStateOnSurface &state, const TkClonerImpl &cloner) const
BaseTrackerRecHit const * ConstRecHitPointer
TrackCharge charge() const
bool checkHit(const TrajectoryStateOnSurface &, const SeedingHitSet::ConstRecHitPointer &hit, const edm::EventSetup &es) const
Global3DVector GlobalVector
Sin< T >::type sin(const T &t)
Vector3DBase unit() const
int nominalValue() const
The nominal field value for this map in kGauss.
const TrajectorySeed * buildSeed(TrajectorySeedCollection &seedCollection, const SeedingHitSet &hits, const FreeTrajectoryState &fts, const edm::EventSetup &es) const
GlobalVector momentum() const
float transverseCurvature() const
GlobalVector globalMomentum() const
const MagneticField & magneticField() const
CurvilinearTrajectoryError initialError(const GlobalVector &vertexBounds, float ptMin, float sinTheta) const
static const int cotTheta_Max
ROOT::Math::SMatrix< double, 5, 5, ROOT::Math::MatRepSym< double, 5 > > AlgebraicSymMatrix55