12 #include "Math/VectorUtil.h" 74 if(
muon->genParticleById(0,1).isNonnull() ){
78 if(
muon->genParticleById(0,3).isNonnull() ){
82 if(
muon->genParticleById(0,-1).isNonnull() ){
86 if(
muon->genParticleById(0,1).isNull() &&
muon->genParticleById(0,3).isNull() &&
muon->genParticleById(0,-1).isNull())
noMatch++;
87 if(
muon->genParticleById(0,1).isNull() &&
muon->genParticleById(0,3).isNull() &&
muon->genParticleById(0,-1).isNonnull())
decayInFlight++;
91 if(
muon->genParticleById(-13,0, 1).isNonnull() ){
93 std::cout<<
" DIFF CHARGE!!! charge gen: "<<
muon->genParticleById(-13,0,
true)->charge()<<
" charge reco: "<<
muon->charge()<<std::endl;
108 histContainer_[
"DR_defaultMatch" ]=fs->
make<TH1F>(
"DR_defaultMatch",
"DR_defaultMatch", 100, 0, 0.02);
109 histContainer_[
"DR_status1Match" ]=fs->
make<TH1F>(
"DR_status1Match",
"DR_status1Match", 100, 0, 0.02);
110 histContainer_[
"DR_status3Match" ]=fs->
make<TH1F>(
"DR_status3Match",
"DR_status3Match", 100, 0, 0.02);
112 histContainer_[
"DPt_defaultMatch" ]=fs->
make<TH1F>(
"DPt_defaultMatch",
"DPt_defaultMatch", 10, 0, 1.2);
113 histContainer_[
"DPt_status1Match" ]=fs->
make<TH1F>(
"DPt_status1Match",
"DPt_status1Match", 10, 0, 1.2);
114 histContainer_[
"DPt_status3Match" ]=fs->
make<TH1F>(
"DPt_status3Match",
"DPt_status3Match", 10, 0, 1.2);
bool getByToken(EDGetToken token, Handle< PROD > &result) const
#define DEFINE_FWK_MODULE(type)
T * make(const Args &...args) const
make new ROOT object
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
unsigned int decayInFlight
~PatMCMatchingExtended() override
default destructor
std::map< std::string, TH1F * > histContainer_
boost::indirect_iterator< typename seq_t::const_iterator > const_iterator
void analyze(const edm::Event &, const edm::EventSetup &) override
PatMCMatchingExtended(const edm::ParameterSet &)
default constructor
edm::EDGetTokenT< edm::View< pat::Muon > > muonSrcToken_