Index: contrib/contribs/KTClusCXX/trunk/example.cc =================================================================== --- contrib/contribs/KTClusCXX/trunk/example.cc (revision 1336) +++ contrib/contribs/KTClusCXX/trunk/example.cc (revision 1337) @@ -1,87 +1,87 @@ #include #include #include #include #include #include #include "KTClusCXX.hh" using namespace fastjet; class Input { public: Input() {}; ~Input() {}; const double PIMASS = 0.139; std::vector input_particles; std::size_t N; void fill(const std::string& inp="") { input_particles.clear(); std::size_t i = 0; double px, py, pz, E; if (inp.size()) { std::ifstream myfile; myfile.open (inp.c_str()); while (myfile >> px >> py >> pz >> E) { input_particles.push_back(PseudoJet(px, py, pz, E)); i++; } myfile.close(); } else { while (std::cin >> px >> py >> pz >> E) { input_particles.push_back(PseudoJet(px, py, pz, E)); i++; } } N = i; } }; inline std::ostream& operator<<(std::ostream& os, const PseudoJet &j) { os << j.px() << " " << j.py() << " " << j.pz() << " " << j.e(); return os; } int main( int argc, char** argv) { ///2111 1.0 0.0001 1.0 if (argc<2) std::cout <<"#Usage: "< " <2?std::string(argv[2]):"2111"; bool inclusive = (smode.length() > 4 && smode[4] == 'i'); int mode = std::atoi(smode.substr(0, 4).c_str()); double Radius = argc>3?std::atof(argv[3]):1.0; double YCUT = argc>4?std::atof(argv[4]):0.0001; double ECUT =argc>5?std::atof(argv[5]):1.0; Input IN; IN.fill(argc>1?argv[1]:""); std::vector < PseudoJet > fastjets; fastjets.reserve(IN.N); ClusterSequence cs(IN.input_particles, contrib::KTClusCXXJetDefinition(mode, Radius)); if (inclusive) { fastjets = cs.inclusive_jets(); } else { fastjets = cs.exclusive_jets(ECUT*ECUT*YCUT); } std::vector < double > fastjets_dmerge; std::sort(fastjets.begin(), fastjets.end(), [](const PseudoJet & a, const PseudoJet & b) -> bool { return a.E() > b.E(); }); for (std::size_t i = 0; i < IN.N; i++) { fastjets_dmerge.push_back(cs.exclusive_dmerge_max(i)); } std::cout << std::fixed << std::setw(11) << std::setprecision(6); std::cout<<"Input particles:"<