/
githubmirror
/
cmssw
Обзор
Документация
Войти
/
githubmirror
/
cmssw
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
GeneratorInterface/HijingInterface/interface/HijingHadronizer.h
94 строки
3 KB
Cms Build
Clang-Format
16 май 2019, 15:48
16 май 2019, 15:48
0847e19
Код
Авторство
О чём код?
#ifndef HijingHadronizer_h #define HijingHadronizer_h #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "GeneratorInterface/Core/interface/BaseHadronizer.h" #include <map> #include <string> #include <vector> #include <cmath> namespace HepMC { class GenEvent; class GenParticle; class GenVertex; } // namespace HepMC namespace CLHEP { class HepRandomEngine; } namespace gen { extern "C" { float hijran_(int*); } class HijingHadronizer : public BaseHadronizer { public: HijingHadronizer(const edm::ParameterSet&); ~HijingHadronizer() override; bool generatePartonsAndHadronize(); bool hadronize(); bool decay(); bool residualDecay(); bool readSettings(int) { return true; } bool initializeForExternalPartons(); bool initializeForInternalPartons(); bool declareStableParticles(const std::vector<int>&); bool declareSpecialSettings(const std::vector<std::string>&) { return true; } void finalizeEvent(); void statistics(); const char* classname() const; private: void doSetRandomEngine(CLHEP::HepRandomEngine* v) override; std::vector<std::string> const& doSharedResources() const override { return theSharedResources; } void add_heavy_ion_rec(HepMC::GenEvent* evt); HepMC::GenParticle* build_hijing(int index, int barcode); HepMC::GenVertex* build_hijing_vertex(int i, int id); bool get_particles(HepMC::GenEvent* evt); bool call_hijset( double efrm, std::string frame, std::string proj, std::string targ, int iap, int izp, int iat, int izt); // inline double nuclear_radius() const; void rotateEvtPlane(); HepMC::GenEvent* evt; edm::ParameterSet pset_; double bmax_; // max impact param; // units of nucl radius double bmin_; // min impact param; // units of nucl radius double efrm_; // collision energy std::string frame_; std::string proj_; std::string targ_; int iap_; int izp_; int iat_; int izt_; // unsigned int maxEventsToPrint_; // Events to print if verbosity // unsigned int pythiaPylistVerbosity_; // pythia verbosity; def=1 double phi0_; // Event plane angle double sinphi0_; double cosphi0_; bool rotate_; // Switch to rotate event plane static const std::vector<std::string> theSharedResources; // unsigned int shadowingswitch_; // shadowing switcher // 1-ON, 0-OFF // double signn_; // inelastic nucleon nucleon cross section [mb] // DEFAULT= 58 mb // CLHEP::HepRandomEngine* fRandomEngine; // Pythia6Service* pythia6Service_; }; } // namespace gen #endif