/
githubmirror
/
cmssw
Обзор
Документация
Войти
/
githubmirror
/
cmssw
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
SimG4CMS/Forward/interface/ZdcShowerLibrary.h
59 строк
2 KB
Sunanda
Take comments from Vladimir
02 ноя 2023, 10:27
02 ноя 2023, 10:27
395e225
Код
Авторство
О чём код?
#ifndef SimG4CMS_ZdcShowerLibrary_h #define SimG4CMS_ZdcShowerLibrary_h 1 /////////////////////////////////////////////////////////////////////////////// // File: ZdcShowerLibrary.h // Description: Gets information from a shower library // E. Garcia June 2008 /////////////////////////////////////////////////////////////////////////////// #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" #include "Geometry/ForwardGeometry/interface/ZdcHardcodeGeometryData.h" #include "G4ParticleTable.hh" #include "G4ThreeVector.hh" #include "DetectorDescription/Core/interface/DDsvalues.h" #include "DataFormats/HcalDetId/interface/HcalZDCDetId.h" #include <string> #include <memory> class G4Step; class ZdcShowerLibrary { public: //Constructor and Destructor ZdcShowerLibrary(const std::string& name, edm::ParameterSet const& p); ~ZdcShowerLibrary() = default; struct Hit { Hit() {} G4ThreeVector entryLocal; G4ThreeVector position; int depth; double time; int detID; double DeHad; double DeEM; }; void initRun(G4ParticleTable* theParticleTable); std::vector<Hit>& getHits(const G4Step* aStep, bool& ok); int getEnergyFromLibrary(const G4ThreeVector& posHit, const G4ThreeVector& momDir, double energy, G4int parCode, HcalZDCDetId::Section section, bool side, int channel); int photonFluctuation(double eav, double esig, double edis); int encodePartID(G4int parCode); private: bool verbose; G4int emPDG, epPDG, gammaPDG; G4int pi0PDG, etaPDG, nuePDG, numuPDG, nutauPDG; G4int anuePDG, anumuPDG, anutauPDG, geantinoPDG; int npe; std::vector<ZdcShowerLibrary::Hit> hits; }; #endif