//____________________________________________________________________________ /*! \class genie::GSeaEvent \brief A class for generated event by gSeaGen \author Carla Distefano LNS-INFN, Catania Included modifications by Alfonso Garcia NIKHEF, Amsterdam (January 2019) \created November 25, 2015 \cpright Copyright (c) 2015-2019, The KM3NeT Collaboration For the full text of the license see $GSEAGEN/LICENSE */ //____________________________________________________________________________ #ifndef _GSEAEVENT_H__ #define _GSEAEVENT_H__ #include "TObject.h" #include "TLorentzVector.h" #include "PropaMuon/PropaTracks.h" #include "SeaEvent/GBinParam.h" #include "SeaEvent/GSeaTrack.h" #include "SeaNuDrivers/GSeaSyst.h" using namespace std; class GSeaEvent : public TObject { public: unsigned int iEvt; ///< Event Id number unsigned int iEvtMC; ///< Event Id number int NInter; ///< Number of neutrino interctions double PScale; ///< Interaction probability scale int VerInCan; ///< True if the interaction vertex is inside the detector can bool LepInCan; ///< True if the primary lepton reached the can double SWXSec; ///< Total cross section per nucleon in pure water in m^2 double WaterXSec; ///< Total cross section per nucleon in pure water in m^2 double WaterIntLen; ///< Interaction lenght in pure water in m int TargetA; ///< Mass number of the target nucleus int TargetZ; ///< Atomic number of the target nucleus int InterId; ///< Interaction type Id, according to GENIE enumeration int ScattId; ///< Scattering type Id, according to GENIE enumeration double Bx; ///< Bjorken kinematic variable x double By; ///< Bjorken kinematic variable y double XSec; ///< Exclusive total cross section of the interaction double DXSec; ///< Differential cross section of the interaction (dsigma/dxdy) extracted from GENIE TLorentzVector Vertex; ///< Interaction vertex GSeaTrack EarthNeutrino; ///< GSeaTrack Neutrino; ///< Generated neutrino track GSeaTrack PrimaryLepton; ///< Track of the primary lepton generated in the neutrino interaction vector Tracks; ///< Tracks resulting from the neutrino interaction unsigned int NTracks; ///< Size of vector Tracks unsigned int NRetries; ///< Number of extra chances given to each CORSIKA shower to hit the can double GenWeight; ///< Generation weight double EvtWeight; ///< Event weight SystWeights SysWgt; ///< Systematic weights double Agen; ///< Generation area double PEarth; ///< Transmission probability through the Earth double ColumnDepth; ///< Column depth, entering in the calculation of PEarth double XSecMean; ///< Average cross section along the neutrino path, entering in the calculation of PEarth double DistaMax; ///< Distance added to the radius of the generation surface (CORSIKA muons) double LST; ///< Local Sidereal Time in radians double MJD; ///< Modified Julian Day unsigned int EvtTime[2]; ///< Generation time in UNIX TimeStamp GSeaEvent(); ~GSeaEvent(); void Copy(GSeaEvent * SeaEvt); void Reset(void); void Translate(float X0, float Y0, float Z0); ClassDef(GSeaEvent,1); private: static TClonesArray *fgTracks; }; #endif // _GSEAEVENT_H__