herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
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 
12 namespace Herwig {
13 using namespace ThePEG;
14 
23 
24 public:
25 
33 
34 public:
35 
42  void persistentOutput(PersistentOStream & os) const;
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 
70 protected:
71 
78  virtual IBPtr clone() const {return new_ptr(*this);}
79 
84  virtual IBPtr fullclone() const {return new_ptr(*this);}
86 
87 protected:
88 
96  virtual void doinit();
98 
99 private:
100 
105  NMSSMGGHVertex & operator=(const NMSSMGGHVertex &) = delete;
106 
107 private:
108 
114  tcHwSMPtr _theSM;
115 
119  double _sw;
120 
124  double _cw;
125 
129  Energy _mw;
130 
134  Energy _mz;
135 
140  Energy _lambdaVEV;
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 
242  bool _recalc;
244 };
245 
246 }
247 
248 #endif /* HERWIG_NMSSMGGHVertex_H */
tcPDPtr _bt
A pointer to the bottom quark.
complex< Energy > _triBt
The bottom quark trilinear coupling.
complex< Energy > _triTp
The top quark trilinear coupling.
long _hlast
The PDG code of the Higgs particle when the vertex was last evaluated.
tcPDPtr _top
A pointer to the top quark.
Energy _v1
The value of the VEV of the higgs that couples to the up-type sector .
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
MixingMatrixPtr _mixQb
mixing matrix
tcHwSMPtr _theSM
The SM pointer.
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
double _coup
The value of the weak coupling was last evaluated.
bool _recalc
Whether the tensor coefficient need recalculating or not.
MixingMatrixPtr _mixP
CP-even Higgs mixing matrix.
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr
double _lambda
The coefficient of the trilinear term in the superpotential.
The VVSLoopVertex is designed to calculate the coefficents for the terms in the Passarino-Veltman ten...
Definition: VVSLoopVertex.h:21
double _couplast
The value of the overall normalisation when the coupling was last evaluated.
virtual IBPtr clone() const
Make a simple clone of this object.
-*- C++ -*-
Energy _v2
The value of the VEV of the higgs that couples to the down-type sector .
MixingMatrixPtr _mixQt
mixing matrix
Energy _lambdaVEV
The product .
Energy2 _q2last
The scale at which the coupling was last evaluated.
MixingMatrixPtr _mixS
CP-even Higgs mixing matrix.
This class implements the effective vertex for a higgs coupling to a pair of gluons in the NMSSM...
pair< Energy, Energy > _masslast
The top and bottom quark masses calculated at the last value of .