Inizialize parameters for histo binning.
104 unsigned int theIndexOfThePrimaryVertex = 999.;
106 LogTrace(
metname) <<
"[EfficiencyAnalyzer] Could not find vertex collection" << std::endl;
107 for (
unsigned int ind=0; ind<vertex->size(); ++ind) {
108 if ( (*vertex)[ind].isValid() && !((*vertex)[ind].isFake()) ) {
109 theIndexOfThePrimaryVertex = ind;
115 if (theIndexOfThePrimaryVertex<100) {
116 posVtx = ((*vertex)[theIndexOfThePrimaryVertex]).
position();
117 errVtx = ((*vertex)[theIndexOfThePrimaryVertex]).
error();
120 LogInfo(
"RecoMuonValidator") <<
"reco::PrimaryVertex not found, use BeamSpot position instead\n";
129 errVtx(2,2) = bs.
sigmaZ();
138 for (std::vector<MonitorElement*>::iterator monitor =
workingPoints.begin();
142 if (
PassesCut_A(muon1, thePrimaryVertex,(*monitor)->getName()))
146 if (
PassesCut_B(muon1, thePrimaryVertex,(*monitor)->getName()))
151 (*monitor)->Fill(Pass_A,Pass_B);
bool getByToken(EDGetToken token, Handle< PROD > &result) const
math::Error< dimension >::type Error
covariance error matrix (3x3)
math::XYZPoint Point
point in the space
double BeamWidthX() const
beam width X
edm::EDGetTokenT< edm::View< pat::Muon > > theMuonCollectionLabel_
double sigmaZ() const
sigma z
double BeamWidthY() const
beam width Y
boost::indirect_iterator< typename seq_t::const_iterator > const_iterator
static int position[264][3]
std::vector< MonitorElement * > workingPoints
const Point & position() const
position
bool PassesCut_A(edm::View< pat::Muon >::const_iterator, reco::Vertex, TString)
edm::EDGetTokenT< reco::BeamSpot > theBeamSpotLabel_
bool PassesCut_B(edm::View< pat::Muon >::const_iterator, reco::Vertex, TString)
edm::EDGetTokenT< reco::VertexCollection > theVertexLabel_