select the final state (i.e status==1) muons (pdg==+/-13)
select the final state (i.e status==1) electrons (pdg==+/-11) and photons (pdg==22)
select the matrix element (i.e status==2) taus (pdg==+/-15) before decay
Definition at line 75 of file L1Validator.cc.
References _GenSource, _Hists, _L1EGammaBXSource, _L1GenJetSource, _L1JetBXSource, _L1MuonBXSource, _L1TauBXSource, _srcToken, funct::abs(), BXVector< T >::begin(), reco::deltaR(), BXVector< T >::end(), PVValHelper::eta, reco::LeafCandidate::eta(), L1ValidatorHists::Fill(), L1ValidatorHists::FillNumber(), nanoDQM_cfi::GenPart, TauGenJets_cfi::GenParticles, edm::Event::getByToken(), BXVector< T >::getFirstBX(), BXVector< T >::getLastBX(), mps_fire::i, metsig::jet, nanoDQM_cfi::Jet, electronTrackIsolations_cfi::minDR, RPCpg::mu, nanoDQM_cfi::Muon, L1ValidatorHists::NEvents, reco::LeafCandidate::pdgId(), phi, reco::LeafCandidate::phi(), EnergyCorrector::pt, reco::LeafCandidate::pt(), BXVector< T >::size(), mps_update::status, reco::LeafCandidate::status(), metsig::tau, and parallelization::uint().
89 bool GotEverything =
true;
92 GotEverything =
false;
94 GotEverything =
false;
96 GotEverything =
false;
98 GotEverything =
false;
100 GotEverything =
false;
102 GotEverything =
false;
104 GotEverything =
false;
121 int nL1Muons = 0, nL1EGammas = 0, nL1Taus = 0, nL1Jets = 0;
123 nL1Muons = MuonsBX->
size(0);
125 nL1EGammas = EGammasBX->
size(0);
127 nL1Taus = TausBX->
size(0);
129 nL1Jets = JetsBX->
size(0);
138 for (
auto &Genjet : *GenJets) {
140 if (fabs((&Genjet)->
eta()) > 4.7)
144 if ((&Genjet)->
pt() < 10.0)
147 double minDR = 999.0;
154 for (std::vector<l1t::Jet>::const_iterator
jet = JetsBX->
begin(iBx);
jet != JetsBX->
end(iBx); ++
jet) {
165 for (
uint i = 0;
i < GenParticles->size();
i++) {
170 double minDR = 999.0;
173 if (GenPart->
pt() < 10.0)
180 if (fabs(GenPart->
eta()) > 2.4)
188 for (std::vector<l1t::Muon>::const_iterator
mu = MuonsBX->
begin(iBx);
mu != MuonsBX->
end(iBx); ++
mu) {
200 }
else if (
status == 1 && (
abs(pdg) == 11 || pdg == 22)) {
203 if (fabs(GenPart->
eta()) > 2.5)
207 if (fabs(GenPart->
eta()) > 1.4442 && fabs(GenPart->
eta()) < 1.5660)
215 for (std::vector<l1t::EGamma>::const_iterator eg = EGammasBX->
begin(iBx); eg != EGammasBX->
end(iBx); ++eg) {
223 _Hists.
Fill(L1ValidatorHists::Type::Egamma, GenPart, L1Part);
227 }
else if (
status == 2 &&
abs(pdg) == 15) {
230 if (fabs(GenPart->
eta()) > 2.4)
238 for (std::vector<l1t::Tau>::const_iterator
tau = TausBX->
begin(iBx);
tau != TausBX->
end(iBx); ++
tau) {
void Fill(int, const reco::LeafCandidate *, const reco::LeafCandidate *)
const_iterator end(int bx) const
edm::EDGetTokenT< reco::GenJetCollection > _L1GenJetSource
int pdgId() const final
PDG identifier.
unsigned size(int bx) const
double eta() const final
momentum pseudorapidity
bool getByToken(EDGetToken token, Handle< PROD > &result) const
edm::EDGetTokenT< reco::GenParticleCollection > _GenSource
edm::EDGetTokenT< GenEventInfoProduct > _srcToken
double pt() const final
transverse momentum
void FillNumber(int, int)
edm::EDGetTokenT< l1t::TauBxCollection > _L1TauBXSource
edm::EDGetTokenT< l1t::JetBxCollection > _L1JetBXSource
Abs< T >::type abs(const T &t)
edm::EDGetTokenT< l1t::MuonBxCollection > _L1MuonBXSource
constexpr auto deltaR(const T1 &t1, const T2 &t2) -> decltype(t1.eta())
int status() const final
status word
edm::EDGetTokenT< l1t::EGammaBxCollection > _L1EGammaBXSource
const_iterator begin(int bx) const
double phi() const final
momentum azimuthal angle