herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
SSHGGVertex.h
1 // -*- C++ -*-
2 //
3 // SSHGGVertex.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_SSHGGVertex_H
10 #define HERWIG_SSHGGVertex_H
11 //
12 // This is the declaration of the SSHGGVertex class.
13 //
14 
15 #include "Herwig/Models/General/VVSLoopVertex.h"
16 #include "MSSM.h"
17 
18 namespace Herwig {
19 
30 class SSHGGVertex: public VVSLoopVertex {
31 
32 public:
33 
37  SSHGGVertex();
38 
45  void persistentOutput(PersistentOStream & os) const;
46 
52  void persistentInput(PersistentIStream & is, int version);
54 
61  static void Init();
62 
70  virtual void setCoupling(Energy2 q2, tcPDPtr particle1, tcPDPtr particle2,
71  tcPDPtr particle3);
72 
73 protected:
74 
81  virtual IBPtr clone() const {return new_ptr(*this);}
82 
87  virtual IBPtr fullclone() const {return new_ptr(*this);}
89 
90 protected:
91 
97  virtual void doinit();
98 
99 private:
100 
105  SSHGGVertex & operator=(const SSHGGVertex &) = delete;
106 
107 private:
108 
113 
118 
122  tMSSMPtr theMSSM;
123 
127  double theSw;
128 
132  Energy theMw;
133 
137  Energy theZfact;
138 
144 
150 
156 
162 
168 
174 
180 
186 
192 
198 
204 
210 
215 
220 
224  vector<Energy> theSqmass;
225 
226 
230  double theTanB;
231 
235  double theSinA;
236 
240  double theCosA;
241 
245  double theSinB;
246 
250  double theCosB;
251 
255  double theSinApB;
256 
260  double theCosApB;
261 
266 
270  Energy2 theq2last;
271 
276 
280  long theLastID;
281 };
282 
283 }
284 
285 
286 #endif /* HERWIG_SSHGGVertex_H */
double theSinA
The value of .
Definition: SSHGGVertex.h:235
bool thePseudoScalarTreatment
Treat the pseudoscalar as scalar for comparison with ISAJET.
Definition: SSHGGVertex.h:117
Complex theQb1R
The mixing matrix factor for the .
Definition: SSHGGVertex.h:185
tMSSMPtr theMSSM
A pointer to the MSSM object.
Definition: SSHGGVertex.h:122
virtual void doinit()
Initialize this object after the setup phase before saving and EventGenerator to disk.
std::complex< double > Complex
double theCosB
The value of .
Definition: SSHGGVertex.h:250
bool theIncludeTriLinear
Switch to turn off squark trilinear couplings via A terms for testing.
Definition: SSHGGVertex.h:112
ThePEG::Ptr< ParticleData >::transient_pointer tPDPtr
vector< Energy > theSqmass
The squark masses.
Definition: SSHGGVertex.h:224
static void Init()
The standard Init function used to initialize the interfaces.
Complex theQb1L
The mixing matrix factor for the .
Definition: SSHGGVertex.h:179
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
tPDPtr thetop
A pointer to the top quark ParticleData object.
Definition: SSHGGVertex.h:214
double theCosApB
The value of .
Definition: SSHGGVertex.h:260
double theSinB
The value of .
Definition: SSHGGVertex.h:245
Complex theQb1LR
The mixing matrix factor for the .
Definition: SSHGGVertex.h:191
Complex theQb2LR
The mixing matrix factor for the .
Definition: SSHGGVertex.h:209
virtual void setCoupling(Energy2 q2, tcPDPtr particle1, tcPDPtr particle2, tcPDPtr particle3)
Calculate couplings.
Energy theMw
The mass of the boson.
Definition: SSHGGVertex.h:132
double theCosA
The value of .
Definition: SSHGGVertex.h:240
Complex theQt1LR
The mixing matrix factor for the .
Definition: SSHGGVertex.h:155
double theSw
Value of .
Definition: SSHGGVertex.h:127
long theLastID
ID of the higgs.
Definition: SSHGGVertex.h:280
SSHGGVertex()
The default constructor.
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr
Complex theQt1L
The mixing matrix factor for the .
Definition: SSHGGVertex.h:143
Complex theQt2R
The mixing matrix factor for the .
Definition: SSHGGVertex.h:167
tPDPtr thebot
A pointer to the bottom quark ParticleData object.
Definition: SSHGGVertex.h:219
The VVSLoopVertex is designed to calculate the coefficents for the terms in the Passarino-Veltman ten...
Definition: VVSLoopVertex.h:21
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Definition: SSHGGVertex.h:87
Complex theQt2LR
The mixing matrix factor for the .
Definition: SSHGGVertex.h:173
Complex theQb2R
The mixing matrix factor for the .
Definition: SSHGGVertex.h:203
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Complex theQb2L
The mixing matrix factor for the .
Definition: SSHGGVertex.h:197
virtual IBPtr clone() const
Make a simple clone of this object.
Definition: SSHGGVertex.h:81
-*- C++ -*-
This class implements the effective vertex coupling a higgs to a pair of gluons in the MSSM...
Definition: SSHGGVertex.h:30
double theSinApB
The value of .
Definition: SSHGGVertex.h:255
SSHGGVertex & operator=(const SSHGGVertex &)=delete
The assignment operator is private and must never be called.
Complex theQt2L
The mixing matrix factor for the .
Definition: SSHGGVertex.h:161
Energy theZfact
The factor .
Definition: SSHGGVertex.h:137
bool theHaveCoeff
Whether we have calculated the tensor coefficents yet.
Definition: SSHGGVertex.h:275
Complex theQt1R
The mixing matrix factor for the .
Definition: SSHGGVertex.h:149
Complex theCouplast
Last value of the coupling calculated.
Definition: SSHGGVertex.h:265
Energy2 theq2last
The scale at which coupling was last evaluated.
Definition: SSHGGVertex.h:270
double theTanB
The value of .
Definition: SSHGGVertex.h:230