herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
NMSSMGGHVertex.h
1// -*- C++ -*-
2#ifndef HERWIG_NMSSMGGHVertex_H
3#define HERWIG_NMSSMGGHVertex_H
4//
5// This is the declaration of the NMSSMGGHVertex class.
6//
7
8#include "Herwig/Models/General/VVSLoopVertex.h"
9#include "Herwig/Models/StandardModel/StandardModel.fh"
10#include "Herwig/Models/Susy/MixingMatrix.h"
11
12namespace Herwig {
13using namespace ThePEG;
14
23
24public:
25
33
34public:
35
43
49 void persistentInput(PersistentIStream & is, int version);
51
58 static void Init();
59
67 virtual void setCoupling(Energy2 q2, tcPDPtr p1, tcPDPtr p2,
68 tcPDPtr p3);
69
70protected:
71
78 virtual IBPtr clone() const {return new_ptr(*this);}
79
84 virtual IBPtr fullclone() const {return new_ptr(*this);}
86
87protected:
88
96 virtual void doinit();
98
99private:
100
106
107private:
108
114 tcHwSMPtr _theSM;
115
119 double _sw;
120
124 double _cw;
125
129 Energy _mw;
130
134 Energy _mz;
135
141
146 double _lambda;
147
153 Energy _v1;
154
159 Energy _v2;
160
164 complex<Energy> _triTp;
165
169 complex<Energy> _triBt;
170
175
180
184 MixingMatrixPtr _mixS;
185
189 MixingMatrixPtr _mixP;
190
194 MixingMatrixPtr _mixQt;
195
199 MixingMatrixPtr _mixQb;
200
204 double _sb;
205
209 double _cb;
210
215 pair<Energy, Energy> _masslast;
216
220 Energy2 _q2last;
221
226 double _couplast;
227
232 double _coup;
233
237 long _hlast;
238
244};
245
246}
247
248#endif /* HERWIG_NMSSMGGHVertex_H */
This class implements the effective vertex for a higgs coupling to a pair of gluons in the NMSSM.
static void Init()
The standard Init function used to initialize the interfaces.
double _lambda
The coefficient of the trilinear term in the superpotential.
Energy2 _q2last
The scale at which the coupling was last evaluated.
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
pair< Energy, Energy > _masslast
The top and bottom quark masses calculated at the last value of .
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Energy _v1
The value of the VEV of the higgs that couples to the up-type sector .
NMSSMGGHVertex()
The default constructor.
MixingMatrixPtr _mixP
CP-even Higgs mixing matrix.
NMSSMGGHVertex & operator=(const NMSSMGGHVertex &)=delete
The assignment operator is private and must never be called.
virtual IBPtr clone() const
Make a simple clone of this object.
MixingMatrixPtr _mixS
CP-even Higgs mixing matrix.
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
tcHwSMPtr _theSM
The SM pointer.
bool _recalc
Whether the tensor coefficient need recalculating or not.
tcPDPtr _bt
A pointer to the bottom quark.
MixingMatrixPtr _mixQb
mixing matrix
Energy _lambdaVEV
The product .
tcPDPtr _top
A pointer to the top quark.
Energy _v2
The value of the VEV of the higgs that couples to the down-type sector .
MixingMatrixPtr _mixQt
mixing matrix
complex< Energy > _triTp
The top quark trilinear coupling.
double _couplast
The value of the overall normalisation when the coupling was last evaluated.
virtual void doinit()
Initialize this object after the setup phase before saving an EventGenerator to disk.
double _coup
The value of the weak coupling was last evaluated.
long _hlast
The PDG code of the Higgs particle when the vertex was last evaluated.
virtual void setCoupling(Energy2 q2, tcPDPtr p1, tcPDPtr p2, tcPDPtr p3)
Calculate couplings.
complex< Energy > _triBt
The bottom quark trilinear coupling.
The VVSLoopVertex is designed to calculate the coefficents for the terms in the Passarino-Veltman ten...
Definition: VVSLoopVertex.h:21
-*- C++ -*-
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr