File indexing completed on 2024-11-16 09:02:05
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010 #ifndef INCLUDE_EICSMEAR_ERHIC_EVENTGMCTRANS_H_
0011 #define INCLUDE_EICSMEAR_ERHIC_EVENTGMCTRANS_H_
0012
0013 #include <string>
0014
0015 #include <TLorentzVector.h>
0016
0017 #include "eicsmear/erhic/EventMC.h"
0018
0019 namespace erhic {
0020
0021
0022
0023 class EventGmcTrans : public EventMC {
0024 public:
0025
0026
0027
0028
0029
0030 explicit EventGmcTrans(const std::string& = "");
0031
0032
0033
0034
0035 virtual ~EventGmcTrans() { }
0036
0037
0038
0039
0040
0041
0042
0043
0044
0045
0046
0047
0048
0049 virtual bool Parse(const std::string&);
0050
0051
0052
0053
0054 Double_t GetPhiSpin() const { return mPhiSpin; }
0055
0056
0057
0058
0059 Double_t GetPhiHadron() const { return mPhiHadron; }
0060
0061
0062
0063
0064 Double_t GetHadronZ() const { return mZ; }
0065
0066 Double_t GetHadronPt() const { return mHadronPt; }
0067
0068 Double_t GetF1() const { return mF1; }
0069
0070 Double_t GetG1() const { return mG1; }
0071
0072 Double_t GetH1() const { return mH1; }
0073
0074 Double_t GetD1() const { return mD1; }
0075
0076 Double_t GetF1TPerp() const { return mF1TPerp; }
0077
0078 Double_t GetF1TPerp1() const { return mF1TPerp1; }
0079
0080 Double_t GetH1Perp() const { return mH1Perp; }
0081
0082 Double_t GetH1Perp1() const { return mH1Perp1; }
0083
0084 Double_t GetH1Perp12() const { return mH1Perp12; }
0085
0086 Double_t GetSivers() const { return mAutSivAllQ; }
0087
0088 Double_t GetSiversWeight() const { return mAutWtSivAllQ; }
0089
0090 Double_t GetSiversStruckQuark() const { return mAutSiv; }
0091
0092 Double_t GetSiversStruckQuarkWeight() const { return mAutWtSiv; }
0093
0094 Double_t GetSiversPiDifference() const { return mAutSivPiDiff; }
0095
0096 Double_t GetSiversPiDifferenceWeight() const { return mAutWtSivPiDiff; }
0097
0098 Double_t GetCollins() const { return mAutColAllQ; }
0099
0100 Double_t GetCollinsWeight() const { return mAutWtColAllQ; }
0101
0102 Double_t GetCollinsStruckQuark() const { return mAutCol; }
0103
0104 Double_t GetCollinsStructQuarkWeight() const { return mAutWtCol; }
0105
0106 Double_t GetCollinsTwist3() const { return mAutTw3Col; }
0107
0108 Double_t GetCollinsTwist3Weight() const { return mAutWtTw3Col; }
0109
0110 Double_t GetCrossSectionUnpolarised() const { return mXUnpolarised; }
0111
0112 Double_t GetCrossSectionSivers() const { return mXSivers; }
0113
0114 Double_t GetCrossSectionCollins() const { return mXCollins; }
0115
0116
0117
0118
0119
0120
0121
0122
0123
0124
0125
0126
0127
0128
0129
0130
0131 TLorentzVector GetHadronPolarisation() const { return TLorentzVector(); }
0132
0133
0134
0135
0136
0137
0138
0139
0140 virtual double GetHermesPhiS() const { return 0.; }
0141
0142 protected:
0143 Int_t mStruckQuark;
0144 Double32_t mQSquared;
0145
0146 Double32_t mBjorkenX;
0147
0148 Double32_t mInelasticity;
0149 Double32_t mWSquared;
0150 Double32_t mNu;
0151 Double32_t mS;
0152 Double32_t mZ;
0153 Double32_t mHadronPt;
0154 Double32_t mLeptonTheta;
0155 Double32_t mLeptonPhi;
0156 Double32_t mPhiSpin;
0157
0158 Double32_t mPhiHadron;
0159 Double32_t mF1;
0160 Double32_t mG1;
0161 Double32_t mH1;
0162 Double32_t mD1;
0163 Double32_t mF1TPerp;
0164 Double32_t mF1TPerp1;
0165 Double32_t mF1TPerp12;
0166 Double32_t mH1Perp;
0167 Double32_t mH1Perp1;
0168 Double32_t mH1Perp12;
0169 Double32_t mAutSiv;
0170 Double32_t mAutWtSiv;
0171 Double32_t mAutSivAllQ;
0172 Double32_t mAutWtSivAllQ;
0173 Double32_t mAutSivPiDiff;
0174 Double32_t mAutWtSivPiDiff;
0175 Double32_t mAutCol;
0176 Double32_t mAutWtCol;
0177 Double32_t mAutTw3Col;
0178 Double32_t mAutWtTw3Col;
0179 Double32_t mAutColAllQ;
0180 Double32_t mAutWtColAllQ;
0181 Double32_t mXUnpolarised;
0182 Double32_t mXSivers;
0183 Double32_t mXCollins;
0184
0185 ClassDef(erhic::EventGmcTrans, 1)
0186 };
0187
0188 }
0189
0190 #endif