herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
MelikhovFormFactor.h
1// -*- C++ -*-
2//
3// MelikhovFormFactor.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_MelikhovFormFactor_H
10#define HERWIG_MelikhovFormFactor_H
11//
12// This is the declaration of the MelikhovFormFactor class.
13//
14
15#include "ScalarFormFactor.h"
16
17namespace Herwig {
18using namespace ThePEG;
19
29
30public:
31
36
50 virtual void ScalarScalarFormFactor(Energy2 q2,unsigned int iloc,int id0,int id1,
51 Energy m0,Energy m1,
52 Complex & f0,Complex & fp) const;
53
67 virtual void ScalarVectorFormFactor(Energy2 q2, unsigned int iloc, int id0, int id1,
68 Energy m0, Energy m1, Complex & V,
69 Complex & A0,Complex & A1,Complex & A2) const;
71
78 virtual void dataBaseOutput(ofstream & os,bool header,bool create) const;
79
80public:
81
89
95 void persistentInput(PersistentIStream & is, int version);
97
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
142
143private:
144
150 unsigned int _ifit;
151
155 double _Rplus0;
156
160 Energy _Mplus;
161
165 double _nplus;
166
170 double _RV0;
171
175 Energy _MV;
176
180 double _nV;
181
185 double _R10;
186
190 Energy _M1;
191
195 double _n1;
196
200 double _R20;
201
205 Energy _M2;
206
210 double _n2;
212};
213
214}
215
216#endif /* HERWIG_MelikhovFormFactor_H */
The MelikhovFormFactor class implements the model of Phys.
Energy _MV
The value of for the form factor.
static void Init()
The standard Init function used to initialize the interfaces.
virtual void dataBaseOutput(ofstream &os, bool header, bool create) const
Output the setup information for the particle database.
virtual void doinit()
Initialize this object after the setup phase before saving and EventGenerator to disk.
double _R20
The value of for the form factor.
virtual void ScalarScalarFormFactor(Energy2 q2, unsigned int iloc, int id0, int id1, Energy m0, Energy m1, Complex &f0, Complex &fp) const
The form factor for the weak decay of a scalar to a scalar.
MelikhovFormFactor()
The default constructor.
Energy _Mplus
The value of for the form factor.
Energy _M2
The value of for the form factor.
double _n2
The value of for the form factor.
double _RV0
The value of for the form factor.
MelikhovFormFactor & operator=(const MelikhovFormFactor &)=delete
The assignment operator is private and must never be called.
Energy _M1
The value of 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.
double _nplus
The value of for the form factor.
unsigned int _ifit
The set of fit parameters to use.
virtual void ScalarVectorFormFactor(Energy2 q2, unsigned int iloc, int id0, int id1, Energy m0, Energy m1, Complex &V, Complex &A0, Complex &A1, Complex &A2) const
The form factor for the weak decay of a scalar to a vector.
virtual IBPtr clone() const
Make a simple clone of this object.
double _nV
The value of for the form factor.
double _Rplus0
The value of for the form factor.
double _n1
The value of for the form factor.
double _R10
The value of for the form factor.
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