herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
HeavyMesonWidthGenerator.h
1// -*- C++ -*-
2#ifndef Herwig_HeavyMesonWidthGenerator_H
3#define Herwig_HeavyMesonWidthGenerator_H
4//
5// This is the declaration of the HeavyMesonWidthGenerator class.
6//
7
8#include "GenericWidthGenerator.h"
9#include "Herwig/Decay/HeavyMeson/HQETStrongDecayer.h"
10#include "Herwig/Decay/HeavyMeson/HQETRadiativeDecayer.h"
11
12namespace Herwig {
13
14using namespace ThePEG;
15
24
25public:
26
31
32public:
33
41
47 void persistentInput(PersistentIStream & is, int version);
49
56 static void Init();
57
58public:
59
65 virtual void dataBaseOutput(ofstream & output,bool header=true);
66
67
76 virtual Energy partial2BodyWidth(int iloc,Energy m0,Energy m1,Energy m2) const;
77
78protected:
79
86 virtual void setupMode(tcDMPtr mode, tDecayIntegratorPtr decayer, unsigned int imode);
87
88protected:
89
96 virtual IBPtr clone() const;
97
102 virtual IBPtr fullclone() const;
104
105private:
106
112
113private:
114
122 Energy fPi_;
123
127 double g_;
128
132 double gp_;
133
137 double h_;
138
142 double hp_;
143
147 double k_;
148
152 double kp_;
153
157 double gtilde_;
158
162 double psiL_;
163
167 double psiS_;
169
174 Energy Lambda_;
176
181};
182
183}
184
185#endif /* Herwig_HeavyMesonWidthGenerator_H */
The GenericWidthGenerator class is designed to automatically calculate the running width for a given ...
bool output() const
Output option for use by the inheriting classes.
The HeavyMesonWidthGenerator class calculates the running width for heavy mesons.
HeavyMesonWidthGenerator()
The default constructor.
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
double g_
Coupling for decays within the multiplet.
double h_
Coupling for decays from the multiplet.
bool couplingsSet_
Check if couplings set.
double psiS_
D_1 mixing angle (strange)
virtual void dataBaseOutput(ofstream &output, bool header=true)
Output the initialisation info for the database.
virtual IBPtr clone() const
Make a simple clone of this object.
Energy Lambda_
A momentum scale characterising the convergence of the derivative expansion.
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
double gtilde_
Coupling for decays from the 2S multiplet.
double kp_
Coupling for decays from the multiplet.
virtual Energy partial2BodyWidth(int iloc, Energy m0, Energy m1, Energy m2) const
The width for outgoing particles which can be off-shell.
double psiL_
D_1 mixing angle (up and down)
virtual void setupMode(tcDMPtr mode, tDecayIntegratorPtr decayer, unsigned int imode)
Perform the set up for a mode, this is called by the base class.
double hp_
Coupling for decays from the multiplet.
double gp_
Coupling for decays within the multiplet.
HeavyMesonWidthGenerator & operator=(const HeavyMesonWidthGenerator &)=delete
The assignment operator is private and must never be called.
double k_
Coupling for decays from the multiplet.
static void Init()
The standard Init function used to initialize the interfaces.
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Energy fPi_
Coupings for the decays.
-*- C++ -*-
ThePEG::Ptr< DecayMode >::transient_const_pointer tcDMPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr