14 betaBoost(iConfig.getUntrackedParameter(
"BetaBoost",0.))
20 vector<double> defpmin ;
21 defpmin.push_back(0.);
24 vector<double> defptmin ;
25 defptmin.push_back(0.);
28 vector<double> defetamin ;
29 defetamin.push_back(-10.);
31 vector<double> defetamax ;
32 defetamax.push_back(10.);
38 vector<double> defDecayRadiusmin;
39 defDecayRadiusmin.push_back(-1.);
42 vector<double> defDecayRadiusmax;
43 defDecayRadiusmax.push_back(1.e5);
46 vector<double> defDecayZmin;
47 defDecayZmin.push_back(-1.e5);
50 vector<double> defDecayZmax;
51 defDecayZmax.push_back(1.e5);
64 cout <<
"WARNING: MCPROCESSFILTER : size of MinPthat and/or MaxPthat not matching with ProcessID size!!" << endl;
108 edm::LogError(
"MCSmartSingleParticleFilter") <<
"Input beta boost is >= 1 !";
134 for ( HepMC::GenEvent::particle_const_iterator
p = myGenEvent->particles_begin();
135 p != myGenEvent->particles_end(); ++
p ) {
141 if ( (*p)->momentum().perp() >
ptMin[
i]
145 if ( mom.rho() >
pMin[
i]
148 if (!((*p)->production_vertex()))
continue;
150 double decx = (*p)->production_vertex()->position().x();
151 double decy = (*p)->production_vertex()->position().y();
152 double decrad =
sqrt(decx*decx+decy*decy);
156 double decz = (*p)->production_vertex()->position().z();
171 if (accepted){
return true; }
else {
return false;}
HepMC::FourVector zboost(const HepMC::FourVector &, double)
T getUntrackedParameter(std::string const &, T const &) const
std::vector< int > status
bool getByToken(EDGetToken token, Handle< PROD > &result) const
std::vector< double > decayZMax
bool filter(edm::Event &, const edm::EventSetup &) override
std::vector< double > pMin
MCSmartSingleParticleFilter(const edm::ParameterSet &)
std::vector< double > etaMin
Abs< T >::type abs(const T &t)
std::vector< double > decayZMin
const HepMC::GenEvent * GetEvent() const
std::vector< int > particleID
edm::EDGetTokenT< edm::HepMCProduct > token_
std::vector< double > etaMax
bool accepted(std::vector< std::string_view > const &, std::string_view)
std::vector< double > ptMin
~MCSmartSingleParticleFilter() override
std::vector< double > decayRadiusMin
std::vector< double > decayRadiusMax