![]() |
|
|||
File indexing completed on 2025-02-22 10:33:30
0001 /** 0002 \file 0003 Declaration of class erhic::EventPepsi. 0004 0005 \author Thomas Burton 0006 \date 2011-07-07 0007 \copyright 2011 Brookhaven National Lab 0008 */ 0009 0010 #ifndef INCLUDE_EICSMEAR_ERHIC_EVENTPEPSI_H_ 0011 #define INCLUDE_EICSMEAR_ERHIC_EVENTPEPSI_H_ 0012 0013 #include <string> 0014 0015 #include <Rtypes.h> 0016 0017 #include "eicsmear/erhic/EventMC.h" 0018 0019 namespace erhic { 0020 0021 /** 0022 Describes an event from the generator PEPSI. 0023 0024 \todo Add accessor and setter methods 0025 */ 0026 class EventPepsi : public EventMC { 0027 public: 0028 /** 0029 Parses the event information from a text string with the following format 0030 (no newlines): 0031 \verbatime 0032 "I ievent genevent process subprocess nucleon struckparton, 0033 partontrck trueY trueQ2 trueX trueW2 trueNu FixedWeight, 0034 weight dxsec Extraweight dilut F1 F2 A1 A2 R Depol d, 0035 eta eps chi gendilut genF1 genF2 genA1 genA2 genR genDepol, 0036 gend geneta geneps genchi Sigcor radgamEnucl nrTracks" 0037 \endverbatim 0038 Returns true in the event of a successful read operation, 0039 false in case of an error. 0040 */ 0041 virtual bool Parse(const std::string&); 0042 0043 /** 0044 Returns a pointer to the exchange boson, or NULL if it cannot be found. 0045 */ 0046 virtual const ParticleMC* ExchangeBoson() const; 0047 0048 /** 0049 Returns a pointer to the scattered lepton, or NULL if it cannot be found. 0050 */ 0051 virtual const ParticleMC* ScatteredLepton() const; 0052 0053 Int_t nucleon; ///< PDG code of the hadron beam 0054 Int_t struckparton; ///< Parton hit in the target LST(25) 0055 Int_t partontrck; ///< Number of parton track LST(26) 0056 Int_t genevent; ///< Trials required for this event 0057 Int_t subprocess; ///< PEPSI subprocess LST(23) 0058 Double32_t trueY; ///< Generated y of the event 0059 Double32_t trueQ2; ///< Generated Q<sup>2</sup> of the event 0060 Double32_t trueX; ///< Generated x of the event 0061 Double32_t trueW2; ///< Generated W<sup>2</sup> of the event 0062 Double32_t trueNu; ///< Generated nu of the event 0063 Double32_t FixedWeight; ///< Weight calculated from generation limits 0064 Double32_t Weight; ///< Total weight including everything 0065 Double32_t dxsec; ///< Cross section included in the weight 0066 Double32_t ExtraWeight; ///< PEPSI total cross section in pb from 0067 ///< numerical integration PARL(23) 0068 Double32_t Dilute; ///< True variables needed to calculate g<sub>1</sub> 0069 Double32_t F1; ///< True variables needed to calculate g<sub>1</sub> 0070 Double32_t F2; ///< True variables needed to calculate g<sub>1</sub> 0071 Double32_t A1; ///< True variables needed to calculate g<sub>1</sub> 0072 Double32_t A2; ///< True variables needed to calculate g<sub>1</sub> 0073 Double32_t R; ///< True variables needed to calculate g<sub>1</sub> 0074 Double32_t DePol; ///< True variables needed to calculate g<sub>1</sub> 0075 Double32_t D; ///< True variables needed to calculate g<sub>1</sub> 0076 Double32_t Eta; ///< True variables needed to calculate g<sub>1</sub> 0077 Double32_t Eps; ///< True variables needed to calculate g<sub>1</sub> 0078 Double32_t Chi; ///< True variables needed to calculate g<sub>1</sub> 0079 Double32_t gendilut; ///< Needed to calculate g1 0080 Double32_t genF1; ///< Needed to calculate g1 0081 Double32_t genF2; ///< Needed to calculate g1 0082 Double32_t genA1; ///< Needed to calculate g1 0083 Double32_t genA2; ///< Needed to calculate g1 0084 Double32_t genR; ///< Needed to calculate g1 0085 Double32_t genDepol; ///< Needed to calculate g1 0086 Double32_t gend; ///< Needed to calculate g1 0087 Double32_t geneta; ///< Needed to calculate g1 0088 Double32_t geneps; ///< Needed to calculate g1 0089 Double32_t genchi; ///< Needed to calculate g1 0090 Double32_t SigCorr; ///< Needed in the radiative correction code 0091 Double32_t radgamEnucl; 0092 0093 ClassDef(erhic::EventPepsi, 1) 0094 }; 0095 0096 // DJANGOH gives particle output according to the LEPTO convention, whereby 0097 // the exchange boson comes before the scattered lepton. This is different 0098 // to the PYTHIA convention (lepton then boson), which is the default from 0099 // EventMC. 0100 inline const ParticleMC* EventPepsi::ExchangeBoson() const { 0101 return GetTrack(2); 0102 } 0103 0104 inline const ParticleMC* EventPepsi::ScatteredLepton() const { 0105 return GetTrack(3); 0106 } 0107 0108 } // namespace erhic 0109 0110 #endif // INCLUDE_EICSMEAR_ERHIC_EVENTPEPSI_H_
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |