herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
BallZwickyVectorFormFactor.h
1// -*- C++ -*-
2//
3// BallZwickyVectorFormFactor.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_BallZwickyVectorFormFactor_H
10#define HERWIG_BallZwickyVectorFormFactor_H
11//
12// This is the declaration of the BallZwickyVectorFormFactor class.
13//
14#include "ScalarFormFactor.h"
15namespace Herwig {
16using namespace ThePEG;
17
31
32public:
33
38
54 void ScalarVectorFormFactor(Energy2 q2, unsigned int iloc, int id0, int id1,
55 Energy m0, Energy m1,Complex & A0,
56 Complex & A1,Complex & A2, Complex & V) const;
57
70 void ScalarVectorSigmaFormFactor(Energy2 q2,unsigned int iloc,int id0,int id1,
71 Energy m0, Energy m1, Complex & T1,
72 Complex & T2, Complex & T3) const;
74
81 virtual void dataBaseOutput(ofstream & os,bool header,bool create) const;
82
83public:
84
92
98 void persistentInput(PersistentIStream & is, int version);
100
104 static void Init();
105
106protected:
107
114 virtual IBPtr clone() const {return new_ptr(*this);}
115
120 virtual IBPtr fullclone() const {return new_ptr(*this);}
122
123protected:
124
132 virtual void doinit();
134
135private:
136
141
142private:
143
146
150 vector<double> _Vr1;
151
155 vector<double> _Vr2;
156
160 vector<double> _A0r1;
161
165 vector<double> _A0r2;
166
170 vector<double> _A1r1;
171
175 vector<double> _A1r2;
176
180 vector<double> _A2r1;
181
185 vector<double> _A2r2;
186
190 vector<double> _T1r1;
191
195 vector<double> _T1r2;
196
200 vector<double> _T2r1;
201
205 vector<double> _T2r2;
206
210 vector<double> _T3r1;
211
215 vector<double> _T3r2;
216 // the constants for the form-factors
218
221
225 vector<Energy2> _VmR2;
226
230 vector<Energy2> _Vmfit2;
231
235 vector<Energy2> _A0mR2;
236
240 vector<Energy2> _A0mfit2;
241
245 vector<Energy2> _A1mR2;
246
250 vector<Energy2> _A1mfit2;
251
255 vector<Energy2> _A2mR2;
256
260 vector<Energy2> _A2mfit2;
261
265 vector<Energy2> _T1mR2;
266
270 vector<Energy2> _T1mfit2;
271
275 vector<Energy2> _T2mR2;
276
280 vector<Energy2> _T2mfit2;
281
285 vector<Energy2> _T3mR2;
286
290 vector<Energy2> _T3mfit2;
291 // the masses for the form-factors
293
298 Energy2 _cutoff;
299};
300
301}
302
303#endif /* HERWIG_BallZwickyVectorFormFactor_H */
The BallZwickyVectorFormFactor class implements the form-factors of hep-ph/0412079 for the B meson to...
vector< Energy2 > _A2mfit2
The mass for the form factor.
vector< double > _T1r1
The coefficient for the form factor.
vector< double > _A0r2
The coefficient for the form factor.
vector< double > _T1r2
The coefficient for the form factor.
vector< double > _A2r1
The coefficient for the form factor.
void ScalarVectorFormFactor(Energy2 q2, unsigned int iloc, int id0, int id1, Energy m0, Energy m1, Complex &A0, Complex &A1, Complex &A2, Complex &V) const
The form factor for the weak decay of a scalar to a vector.
vector< Energy2 > _VmR2
The mass for the form factor.
vector< Energy2 > _A0mR2
The mass for the form factor.
vector< double > _Vr1
The coefficient for the form factor.
vector< Energy2 > _Vmfit2
The mass for the form factor.
vector< Energy2 > _A1mR2
The mass for the form factor.
void ScalarVectorSigmaFormFactor(Energy2 q2, unsigned int iloc, int id0, int id1, Energy m0, Energy m1, Complex &T1, Complex &T2, Complex &T3) const
The form factor for the weak penguin decay of a scalar meson to a vector meson.
vector< double > _A1r1
The coefficient for the form factor.
vector< Energy2 > _A1mfit2
The mass for the form factor.
vector< Energy2 > _T2mfit2
The mass for the form factor.
Energy2 _cutoff
Cut-off parameter for the switch to a small expansion for the form factor.
vector< double > _Vr2
The coefficient for the form factor.
vector< double > _A1r2
The coefficient for the form factor.
vector< double > _A2r2
The coefficient for the form factor.
vector< double > _T2r2
The coefficient for the form factor.
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
vector< Energy2 > _T1mR2
The mass for the form factor.
vector< double > _T3r2
The coefficient for the form factor.
virtual void doinit()
Initialize this object after the setup phase before saving and EventGenerator to disk.
virtual IBPtr clone() const
Make a simple clone of this object.
vector< double > _T3r1
The coefficient for the form factor.
virtual void dataBaseOutput(ofstream &os, bool header, bool create) const
Output the setup information for the particle database.
vector< Energy2 > _A2mR2
The mass for the form factor.
vector< Energy2 > _T2mR2
The mass for the form factor.
static void Init()
Standard Init function used to initialize the interfaces.
vector< double > _A0r1
The coefficient for the form factor.
vector< Energy2 > _T1mfit2
The mass for the form factor.
vector< Energy2 > _A0mfit2
The mass for the form factor.
vector< double > _T2r1
The coefficient for the form factor.
vector< Energy2 > _T3mR2
The mass for the form factor.
BallZwickyVectorFormFactor()
Default constructor.
vector< Energy2 > _T3mfit2
The mass for the form factor.
BallZwickyVectorFormFactor & operator=(const BallZwickyVectorFormFactor &)=delete
Private and non-existent assignment operator.
The ScalarFormFactor class is the base class for the form factors for the weak decay of scalar to sca...
-*- C++ -*-
std::complex< double > Complex
ThePEG::Ptr< InterfacedBase >::pointer IBPtr