144 LogInfo(
"ElectronConversionRejectionValidator")
145 <<
"ElectronConversionRejectionValidator Analyzing event number: " << e.
id() <<
" Global Counter " <<
nEvt_
150 if (!convHandle.isValid()) {
151 edm::LogError(
"ElectronConversionRejectionValidator") <<
"Error! Can't get the Conversion collection " << std::endl;
158 if (!gsfElectronHandle.isValid()) {
159 edm::LogError(
"ElectronConversionRejectionValidator") <<
"Error! Can't get the Electron collection " << std::endl;
165 if (!vertexHandle.isValid()) {
166 edm::LogError(
"ElectronConversionRejectionValidator") <<
"Error! Can't get the product primary Vertex Collection "
173 if (!bsHandle.isValid()) {
174 edm::LogError(
"ElectronConversionRejectionValidator") <<
"Error! Can't get the product beamspot Collection "
181 for (reco::GsfElectronCollection::const_iterator iele = gsfElectronCollection.begin();
182 iele != gsfElectronCollection.end();
202 if (conv ==
nullptr) {
227 if (conv->
tracks().size() < 2)
235 if (tk1->
pt() >= tk2->
pt()) {
const reco::Vertex & conversionVertex() const
returns the reco conversion vertex
MonitorElement * h_elePhiFail_
MonitorElement * h_eleEtaAll_
MonitorElement * h_elePhiPass_
MonitorElement * h_convPt_
MonitorElement * h_eleEtaPass_
Log< level::Error, false > LogError
edm::EDGetTokenT< reco::BeamSpot > beamspotToken_
const Point & position() const
position
std::vector< GsfElectron > GsfElectronCollection
collection of GsfElectron objects
math::XYZVectorF refittedPairMomentum() const
Conversion tracks momentum from the tracks refitted with vertex constraint.
MonitorElement * h_convProb_
MonitorElement * h_convLog10TrailTrackpt_
MonitorElement * h_elePtFail_
TrackAlgorithm algo() const
int eleExpectedHitsInnerMax_
Handle< PROD > getHandle(EDGetTokenT< PROD > token) const
MonitorElement * h_elePtPass_
double pt() const
track transverse momentum
MonitorElement * h_eleEtaFail_
MonitorElement * h_convPhi_
Abs< T >::type abs(const T &t)
double chi2() const
chi-squares
float ChiSquaredProbability(double chiSquared, double nrDOF)
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< float > > XYZVectorF
spatial vector with cartesian internal representation
edm::EDGetTokenT< reco::VertexCollection > offline_pvToken_
Log< level::Info, false > LogInfo
MonitorElement * h_convTrailTrackpt_
MonitorElement * h_convLeadTrackAlgo_
MonitorElement * h_convRho_
MonitorElement * h_convLeadTrackpt_
MonitorElement * h_elePhiAll_
MonitorElement * h_convZ_
MonitorElement * h_convEta_
edm::EDGetTokenT< reco::GsfElectronCollection > gsfElecToken_
MonitorElement * h_elePtAll_
edm::EDGetTokenT< reco::ConversionCollection > convToken_
MonitorElement * h_convTrailTrackAlgo_
std::vector< edm::RefToBase< reco::Track > > const & tracks() const
vector of track to base references