herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
MelikhovStechFormFactor.h
1 // -*- C++ -*-
2 //
3 // MelikhovStechFormFactor.h is a part of Herwig - A multi-purpose Monte Carlo event generator
4 // Copyright (C) 2002-2019 The Herwig Collaboration
5 //
6 // Herwig is licenced under version 3 of the GPL, see COPYING for details.
7 // Please respect the MCnet academic guidelines, see GUIDELINES for details.
8 //
9 #ifndef HERWIG_MelikhovStechFormFactor_H
10 #define HERWIG_MelikhovStechFormFactor_H
11 //
12 // This is the declaration of the MelikhovStechFormFactor class.
13 //
14 
15 #include "ScalarFormFactor.h"
16 
17 namespace Herwig {
18 using namespace ThePEG;
19 
28 
29 public:
30 
35 
49  virtual void ScalarScalarFormFactor(Energy2 q2,unsigned int iloc,int id0,int id1,
50  Energy m0,Energy m1,
51  Complex & f0,Complex & fp) const;
52 
66  virtual void ScalarVectorFormFactor(Energy2 q2, unsigned int iloc, int id0, int id1,
67  Energy m0, Energy m1, Complex & V,
68  Complex & A0,Complex & A1,Complex & A2) const;
69 
83  virtual void ScalarScalarSigmaFormFactor(Energy2 q2,unsigned int iloc,int id0,int id1,
84  Energy m0, Energy m1,Complex & fT) const;
85 
101  virtual void ScalarVectorSigmaFormFactor(Energy2 q2,unsigned int iloc,int id0,int id1,
102  Energy m0, Energy m1, Complex & T1,
103  Complex & T2, Complex & T3) const;
105 
112  virtual void dataBaseOutput(ofstream & os,bool header,bool create) const;
113 
114 public:
115 
122  void persistentOutput(PersistentOStream & os) const;
123 
129  void persistentInput(PersistentIStream & is, int version);
131 
138  static void Init();
139 
140 protected:
141 
148  virtual IBPtr clone() const {return new_ptr(*this);}
149 
154  virtual IBPtr fullclone() const {return new_ptr(*this);}
156 
157 protected:
158 
166  virtual void doinit();
168 
169 private:
170 
175  MelikhovStechFormFactor & operator=(const MelikhovStechFormFactor &) = delete;
176 
177 private:
178 
179 
182 
186  vector<double> _fplus0;
187 
191  vector<double> _sigma1fp;
192 
196  vector<double> _sigma2fp;
197 
201  vector<double> _f00;
202 
206  vector<double> _sigma1f0;
207 
211  vector<double> _sigma2f0;
212 
216  vector<double> _fT0;
217 
221  vector<double> _sigma1fT;
222 
226  vector<double> _sigma2fT;
227 
229 
235  vector<double> _V0;
236 
240  vector<double> _sigma1V0;
241 
245  vector<double> _sigma2V0;
246 
250  vector<double> _A00;
251 
255  vector<double> _sigma1A0;
256 
260  vector<double> _sigma2A0;
261 
265  vector<double> _A10;
266 
270  vector<double> _sigma1A1;
271 
275  vector<double> _sigma2A1;
276 
280  vector<double> _A20;
281 
285  vector<double> _sigma1A2;
286 
290  vector<double> _sigma2A2;
291 
295  vector<double> _T10;
296 
300  vector<double> _sigma1T1;
301 
305  vector<double> _sigma2T1;
306 
310  vector<double> _T20;
311 
315  vector<double> _sigma1T2;
316 
320  vector<double> _sigma2T2;
321 
325  vector<double> _T30;
326 
330  vector<double> _sigma1T3;
331 
335  vector<double> _sigma2T3;
337 
341  vector<Energy> _massP;
342 
346  vector<Energy> _massV;
347 
351  double _thetaeta;
352 };
353 
354 }
355 
356 #endif /* HERWIG_MelikhovStechFormFactor_H */
vector< double > _sigma1T1
The parameter for the form factor.
The ScalarFormFactor class is the base class for the form factors for the weak decay of scalar to sca...
vector< double > _sigma1fp
The parameter for the form factor.
vector< double > _sigma2fp
The parameter for the form factor.
vector< double > _f00
The value of for the form factors.
std::complex< double > Complex
vector< double > _sigma1A1
The parameter for the form factor.
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
vector< double > _V0
The value of for the form factors.
virtual IBPtr clone() const
Make a simple clone of this object.
vector< double > _A00
The value of for the form factors.
vector< double > _sigma1T3
The parameter for the form factor.
vector< double > _sigma1A2
The parameter for the form factor.
vector< double > _sigma1V0
The parameter for the form factor.
vector< double > _sigma2A2
The parameter for the form factor.
vector< double > _fT0
The value of for the form factors.
The MelikhovStechFormFactor class is the implementation of the form factors from Phys.
vector< double > _sigma2T3
The parameter for the form factor.
vector< double > _sigma1T2
The parameter for the form factor.
vector< double > _T10
The value of for the form factors.
vector< double > _T30
The value of for the form factors.
vector< double > _sigma1A0
The parameter for the form factor.
vector< double > _sigma2T2
The parameter for the form factor.
vector< double > _sigma2f0
The parameter for the form factor.
vector< Energy > _massV
The vector mass for the dependence of the form factor.
vector< double > _A10
The value of for the form factors.
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
vector< double > _sigma2A1
The parameter for the form factor.
vector< double > _sigma2V0
The parameter for the form factor.
vector< Energy > _massP
The scalar mass for the dependence of the form factor.
vector< double > _sigma1fT
The parameter for the form factor.
vector< double > _A20
The value of for the form factors.
-*- C++ -*-
vector< double > _fplus0
The value of for the form factors.
vector< double > _T20
The value of for the form factors.
vector< double > _sigma2A0
The parameter for the form factor.
vector< double > _sigma1f0
The parameter for the form factor.
vector< double > _sigma2T1
The parameter for the form factor.
vector< double > _sigma2fT
The parameter for the form factor.