6 src_(iPSet.getParameter<edm::
InputTag>(
"src")),
7 tolerance_(iPSet.getParameter<double>(
"tolerance")),
8 verbose_(iPSet.getUntrackedParameter<bool>(
"verbose",
false))
18 unsigned int nInit = 0;
20 std::vector<float> p4tot(4,0.);
21 unsigned int nPart = 0;
27 for (reco::GenParticleCollection::const_iterator iter=genParticles->begin();iter!=genParticles->end();++iter){
28 if ( nInit < 3 && (*iter).status() == 3 && (*iter).pdgId() == 2212 ) {
30 nEcms += (*iter).energy();
32 if ( (*iter).status() == 1) {
35 std::cout <<
"Status 1 part # " << std::setw(4) << std::fixed << nPart
36 << std::setw(14) << std::fixed << (*iter).pdgId()
37 << std::setw(14) << std::fixed << (*iter).px()
38 << std::setw(14) << std::fixed << (*iter).py()
39 << std::setw(14) << std::fixed << (*iter).pz() << std::endl;
41 p4tot[0] += (*iter).px();
42 p4tot[1] += (*iter).py();
43 p4tot[2] += (*iter).pz();
44 p4tot[3] +=
std::sqrt( (*iter).px()*(*iter).px() +
45 (*iter).py()*(*iter).py() +
46 (*iter).pz()*(*iter).pz() +
47 (*iter).mass()*(*iter).mass()) ;
52 std::cout <<
"Initial sqrt(s) = " << nEcms << std::endl;
53 for (
unsigned int i=0;
i<4;
i++) {
54 std::cout <<
"p4tot["<<
i<<
"] = " << p4tot[
i] << std::endl;
virtual bool filter(edm::Event &, const edm::EventSetup &)
Abs< T >::type abs(const T &t)
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
TString nPart(Int_t part, TString string, TString delimit=";", Bool_t removerest=true)
TotalKinematicsFilter(const edm::ParameterSet &)
volatile std::atomic< bool > shutdown_flag false