4 #include "vdt/vdtMath.h" 24 cos2ThetaMax_ = (vdt::fast_exp(2.*etaMax)-1.) / (vdt::fast_exp(2.*etaMax)+1.);
34 int absPdgId =
abs(particle.
pdgId());
37 if(absPdgId == 12 || absPdgId == 14 || absPdgId == 16 || absPdgId == 1000022)
54 for(
unsigned InvIdx = 0; InvIdx <
skipParticles_.size(); InvIdx++){
68 int absPdgId =
abs(particle.
pdgId());
T getParameter(std::string const &) const
const math::XYZTLorentzVector & position() const
Return position of the particle.
ParticleFilter(const edm::ParameterSet &cfg)
Default Constructor.
double cos2ThetaMax_
Particles must have abs(eta) < etaMax if close to beampipe.
bool accepts(const Particle &particle) const
Check all if all criteria are fullfilled.
double EMin_
Minimum energy of a particle.
int pdgId() const
Return pdgId of the particle.
std::vector< int > skipParticles_
List of invisible particles (neutrinos are excluded by default)
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
double protonEMin_
Allow ALL protons with energy > protonEMin.
bool acceptsEn(const Particle &particle) const
Kinematic cuts on the particle.
Abs< T >::type abs(const T &t)
double vertexRMax2_
Radius^2 of tracker volume.
double vertexZMax_
Z of tracker volume.
double charge() const
Return charge of the particle.
const math::XYZTLorentzVector & momentum() const
Return momentum of the particle.
Definition of a generic FastSim Particle which can be propagated through the detector (formerly Parti...
double chargedPtMin2_
Minimum pT^2 of a charged particle.
bool acceptsVtx(const math::XYZTLorentzVector &originVertexPosition) const
Vertex within tracker volume.