RSHelicityAmplModelEMn.cxx
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*
3  Copyright (c) 2003-2020, The GENIE Collaboration
4  For the full text of the license visit http://copyright.genie-mc.org
5 
6  Costas Andreopoulos <constantinos.andreopoulos \at cern.ch>
7  University of Liverpool & STFC Rutherford Appleton Laboratory
8 */
9 //____________________________________________________________________________
10 
17 
18 using namespace genie;
19 using namespace genie::constants;
20 
21 //____________________________________________________________________________
23 RSHelicityAmplModelI("genie::RSHelicityAmplModelEMn")
24 {
25 
26 }
27 //____________________________________________________________________________
29 RSHelicityAmplModelI("genie::RSHelicityAmplModelEMn", config)
30 {
31 
32 }
33 //____________________________________________________________________________
35 {
36 
37 }
38 //____________________________________________________________________________
39 const RSHelicityAmpl &
41  Resonance_t res, const FKR & fkr) const
42 {
43  switch(res) {
44 
45  case (kP33_1232) :
46  {
47  fAmpl.fPlus1 = kSqrt2 * fkr.R;
48  fAmpl.fPlus3 = kSqrt6 * fkr.R;
49  fAmpl.fMinus1 = -1 * fAmpl.fPlus1;
50  fAmpl.fMinus3 = -1 * fAmpl.fPlus3;
51  fAmpl.f0Minus = 0.;
52  fAmpl.f0Plus = 0.;
53  break;
54  }
55  case (kS11_1535) :
56  {
57  fAmpl.fPlus1 = kSqrt3 * fkr.T + k1_Sqrt6 * fkr.Lamda * fkr.R;
58  fAmpl.f0Minus = kSqrt3_2 * fkr.Lamda * fkr.S;
59  fAmpl.fMinus1 = -1 * fAmpl.fPlus1;
60  fAmpl.f0Plus = -1 * fAmpl.f0Minus;
61  fAmpl.fMinus3 = 0.;
62  fAmpl.fPlus3 = 0.;
63 
64  break;
65  }
66  case (kD13_1520) :
67  {
68  fAmpl.fMinus1 = -kSqrt3_2 * fkr.T + k1_Sqrt3 * fkr.Lamda * fkr.R;
69  fAmpl.fMinus3 = -k3_Sqrt2 * fkr.T;
70  fAmpl.f0Minus = kSqrt3 * fkr.Lamda * fkr.S;
74  break;
75  }
76  case (kS11_1650) :
77  {
78  fAmpl.fPlus1 = k1_Sqrt6 * fkr.Lamda * fkr.R;
79  fAmpl.fMinus1 = -1 * fAmpl.fPlus1;
80  fAmpl.fMinus3 = 0.;
81  fAmpl.fPlus3 = 0.;
82  fAmpl.f0Minus = 0.;
83  fAmpl.f0Plus = 0.;
84  break;
85  }
86  case (kD13_1700) :
87  {
88  double LR = fkr.Lamda * fkr.R;
89 
90  fAmpl.fMinus1 = -(1./kSqrt30) * LR;
91  fAmpl.fMinus3 = -(3./kSqrt10) * LR;
94  fAmpl.f0Minus = 0.;
95  fAmpl.f0Plus = 0.;
96  break;
97  }
98  case (kD15_1675) :
99  {
100  double LR = fkr.Lamda * fkr.R;
101 
102  fAmpl.fMinus1 = kSqrt3_10 * LR;
103  fAmpl.fMinus3 = kSqrt3_5 * LR;
104  fAmpl.fPlus1 = -1 * fAmpl.fMinus1;
105  fAmpl.fPlus3 = -1 * fAmpl.fMinus3;
106  fAmpl.f0Minus = 0.;
107  fAmpl.f0Plus = 0.;
108  break;
109  }
110  case (kS31_1620) :
111  {
112  fAmpl.fMinus1 = kSqrt3 * fkr.T - k1_Sqrt6 * fkr.Lamda * fkr.R;
113  fAmpl.f0Minus = -kSqrt3_2 * fkr.Lamda * fkr.S;
114  fAmpl.fPlus1 = -1. * fAmpl.fMinus1;
115  fAmpl.f0Plus = -1. * fAmpl.f0Minus;
116  fAmpl.fMinus3 = 0.;
117  fAmpl.fPlus3 = 0.;
118  break;
119  }
120  case (kD33_1700) :
121  {
122  fAmpl.fMinus1 = kSqrt3_2 * fkr.T + k1_Sqrt3 * fkr.Lamda * fkr.R;
123  fAmpl.fMinus3 = k3_Sqrt2 * fkr.T;
124  fAmpl.f0Minus = -kSqrt3 * fkr.Lamda * fkr.S;
128  break;
129  }
130  case (kP11_1440) :
131  {
132  fAmpl.fMinus1 = k1_Sqrt3 * TMath::Power(fkr.Lamda, 2) * fkr.R;
134  fAmpl.fMinus3 = 0.;
135  fAmpl.fPlus3 = 0.;
136  fAmpl.f0Minus = 0.;
137  fAmpl.f0Plus = 0.;
138  break;
139  }
140  case (kP33_1600) :
141  {
142  double L2R = TMath::Power(fkr.Lamda, 2) * fkr.R;
143 
144  fAmpl.fMinus1 = k1_Sqrt6 * L2R;
145  fAmpl.fMinus3 = k1_Sqrt2 * L2R;
146  fAmpl.fPlus1 = -1. * fAmpl.fMinus1;
147  fAmpl.fPlus3 = -1. * fAmpl.fMinus3;
148  fAmpl.f0Minus = 0.;
149  fAmpl.f0Plus = 0.;
150  break;
151  }
152  case (kP13_1720) :
153  {
154  fAmpl.fMinus1 = k2_Sqrt15 * TMath::Power(fkr.Lamda, 2) * fkr.R;
155  fAmpl.fPlus1 = -1 * fAmpl.fMinus1;
156  fAmpl.fMinus3 = 0.;
157  fAmpl.fPlus3 = 0.;
158  fAmpl.f0Minus = 0.;
159  fAmpl.f0Plus = 0.;
160  break;
161  }
162  case (kF15_1680) :
163  {
164  fAmpl.fMinus1 = -kSqrt2_5 * TMath::Power(fkr.Lamda, 2) * fkr.R;
166  fAmpl.fMinus3 = 0.;
167  fAmpl.fPlus3 = 0.;
168  fAmpl.f0Minus = 0.;
169  fAmpl.f0Plus = 0.;
170  break;
171  }
172  case (kP31_1910) :
173  {
174  fAmpl.fMinus1 = -k1_Sqrt15 * TMath::Power(fkr.Lamda, 2) * fkr.R;
176  fAmpl.fMinus3 = 0.;
177  fAmpl.fPlus3 = 0.;
178  fAmpl.f0Minus = 0.;
179  fAmpl.f0Plus = 0.;
180  break;
181  }
182  case (kP33_1920) :
183  {
184  double L2R = TMath::Power(fkr.Lamda, 2) * fkr.R;
185 
186  fAmpl.fMinus1 = k1_Sqrt15 * L2R;
187  fAmpl.fMinus3 = -k1_Sqrt5 * L2R;
188  fAmpl.fPlus1 = -1.* fAmpl.fMinus1;
189  fAmpl.fPlus3 = -1.* fAmpl.fMinus3;
190  fAmpl.f0Minus = 0.;
191  fAmpl.f0Plus = 0.;
192  break;
193  }
194  case (kF35_1905) :
195  {
196  double L2R = TMath::Power(fkr.Lamda, 2) * fkr.R;
197 
198  fAmpl.fMinus1 = k1_Sqrt35 * L2R;
199  fAmpl.fMinus3 = kSqrt18_35 * L2R;
202  fAmpl.f0Minus = 0.;
203  fAmpl.f0Plus = 0.;
204  break;
205  }
206  case (kF37_1950) :
207  {
208  double L2R = TMath::Power(fkr.Lamda, 2) * fkr.R;
209 
210  fAmpl.fMinus1 = -kSqrt6_35 * L2R;
211  fAmpl.fMinus3 = -kSqrt2_7 * L2R;
212  fAmpl.fPlus1 = -1. * fAmpl.fMinus1;
213  fAmpl.fPlus3 = -1. * fAmpl.fMinus3;
214  fAmpl.f0Minus = 0.;
215  fAmpl.f0Plus = 0.;
216  break;
217  }
218  case (kP11_1710) :
219  {
220  double L2 = TMath::Power(fkr.Lamda, 2);
221 
222  fAmpl.fMinus1 = -k1_Sqrt24 * L2 * fkr.R;
223  fAmpl.f0Minus = -kSqrt3_8 * L2 * fkr.S;
226  fAmpl.fMinus3 = 0.;
227  fAmpl.fPlus3 = 0.;
228 
229  break;
230  }
231  case (kF17_1970) :
232  {
233  double L2R = TMath::Power(fkr.Lamda, 2) * fkr.R;
234 
235  fAmpl.fMinus1 = kSqrt3_35 * L2R;
236  fAmpl.fPlus1 = -1 * fAmpl.fMinus1;
237  fAmpl.fMinus3 = k1_Sqrt7 * L2R;
238  fAmpl.fPlus3 = -1 * fAmpl.fMinus3;
239  fAmpl.f0Minus = 0.;
240  fAmpl.f0Plus = 0.;
241  break;
242  }
243  default:
244  {
245  LOG("RSHAmpl", pWARN) << "*** UNRECOGNIZED RESONANCE!";
246  fAmpl.fMinus1 = 0.;
247  fAmpl.fPlus1 = 0.;
248  fAmpl.fMinus3 = 0.;
249  fAmpl.fPlus3 = 0.;
250  fAmpl.f0Minus = 0.;
251  fAmpl.f0Plus = 0.;
252  break;
253  }
254 
255  }//switch
256 
257  return fAmpl;
258 }
259 //____________________________________________________________________________
static const double kSqrt3
Definition: Constants.h:116
Basic constants.
static const double kSqrt10
Definition: Constants.h:123
static const double kSqrt2
Definition: Constants.h:115
THE MAIN GENIE PROJECT NAMESPACE
Definition: AlgCmp.h:25
static const double kSqrt6
Definition: Constants.h:119
Simple struct-like class holding the Feynmann-Kislinger-Ravndall (FKR) baryon excitation model parame...
Definition: FKR.h:31
static const double k1_Sqrt5
Definition: Constants.h:137
double Lamda
Definition: FKR.h:37
double R
Definition: FKR.h:45
static const double k1_Sqrt3
Definition: Constants.h:136
static const double k1_Sqrt6
Definition: Constants.h:138
enum genie::EResonance Resonance_t
static const double k3_Sqrt2
Definition: Constants.h:151
A class holding the Rein-Sehgal&#39;s helicity amplitudes.
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
Definition: Messenger.h:96
static Config * config
Definition: config.cpp:1054
static const double kSqrt30
Definition: Constants.h:130
double T
Definition: FKR.h:46
static const double kSqrt2_7
Definition: Constants.h:159
static const double kSqrt3_35
Definition: Constants.h:168
static const double k1_Sqrt35
Definition: Constants.h:144
static const double kSqrt3_10
Definition: Constants.h:165
const RSHelicityAmpl & Compute(Resonance_t res, const FKR &fkr) const
Pure abstract base class. Defines the RSHelicityAmplModelI interface.
static const double kSqrt3_5
Definition: Constants.h:163
static const double k1_Sqrt24
Definition: Constants.h:142
static const double kSqrt3_8
Definition: Constants.h:164
static const double kSqrt3_2
Definition: Constants.h:161
#define pWARN
Definition: Messenger.h:60
static const double k1_Sqrt15
Definition: Constants.h:141
static const double kSqrt2_5
Definition: Constants.h:157
static const double k2_Sqrt15
Definition: Constants.h:149
static const double k1_Sqrt2
Definition: Constants.h:135
double S
Definition: FKR.h:40
static const double k1_Sqrt7
Definition: Constants.h:139
static const double kSqrt6_35
Definition: Constants.h:176
static const double kSqrt18_35
Definition: Constants.h:181