herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
SSGNGVertex.h
1// -*- C++ -*-
2//
3// SSGNGVertex.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_SSGNGVertex_H
10#define HERWIG_SSGNGVertex_H
11//
12// This is the declaration of the SSGNGVertex class.
13//
14
15#include "ThePEG/Helicity/Vertex/Vector/GeneralFFVVertex.h"
16#include "Herwig/Models/Susy/MSSM.h"
17#include "Herwig/Models/Susy/MixingMatrix.fh"
18
19namespace Herwig {
20using namespace ThePEG;
21
32
33public:
34
39
40public:
41
49
55 void persistentInput(PersistentIStream & is, int version);
57
64 static void Init();
65
73 virtual void setCoupling(Energy2 q2, tcPDPtr part1,
74 tcPDPtr part2, tcPDPtr part3);
75
76protected:
77
84 virtual IBPtr clone() const {return new_ptr(*this);}
85
90 virtual IBPtr fullclone() const {return new_ptr(*this);}
92
93protected:
94
98 void loopIntegrals(Energy Mi, Energy Mj, Energy M, Energy m,
99 complex<InvEnergy2> & I, complex<InvEnergy2> & J,
100 complex<InvEnergy2> & K, complex<InvEnergy2> & I2);
101
102protected:
103
111 virtual void doinit();
112
117 virtual void doinitrun();
118
123 virtual void dofinish();
125
126private:
127
132 SSGNGVertex & operator=(const SSGNGVertex &) = delete;
133
134private:
135
140
145
150
154 tMixingMatrixPtr _stop;
155
159 tMixingMatrixPtr _sbot;
160
164 double _sw;
165
169 double _cw;
170
174 Energy _mw;
175
179 double _sb;
180
184 double _cb;
185
189 tMixingMatrixPtr _theN;
190
195
199 Energy2 _q2last;
200
205
209 complex<InvEnergy> _leftlast;
210
214 complex<InvEnergy> _rightlast;
215
220};
221}
222
223#endif /* HERWIG_SSGNGVertex_H */
This class implements the coupling of a gluon to a gluino and a neutralino via loop diagrams It inher...
Definition: SSGNGVertex.h:31
bool _includeOnShell
Whether of not to include on-shell intermediate states.
Definition: SSGNGVertex.h:139
static void Init()
The standard Init function used to initialize the interfaces.
virtual void setCoupling(Energy2 q2, tcPDPtr part1, tcPDPtr part2, tcPDPtr part3)
Calculate the couplings.
Energy _mw
Mass of the W.
Definition: SSGNGVertex.h:174
double _sw
The value of .
Definition: SSGNGVertex.h:164
bool _initLoops
Whether or not initialised.
Definition: SSGNGVertex.h:219
void loopIntegrals(Energy Mi, Energy Mj, Energy M, Energy m, complex< InvEnergy2 > &I, complex< InvEnergy2 > &J, complex< InvEnergy2 > &K, complex< InvEnergy2 > &I2)
Evaluate the loop integrals.
bool _realIntegral
Only include the real part of the integral.
Definition: SSGNGVertex.h:144
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Energy2 _q2last
Store the value at which the coupling when it was last evaluated.
Definition: SSGNGVertex.h:199
SSGNGVertex()
The default constructor.
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
virtual IBPtr clone() const
Make a simple clone of this object.
Definition: SSGNGVertex.h:84
virtual void dofinish()
Finalize this object.
virtual void doinit()
Initialize this object after the setup phase before saving an EventGenerator to disk.
bool _omitLightQuarkYukawas
Option to omit light quark yukawas.
Definition: SSGNGVertex.h:149
Complex _couplast
Store the value of the coupling when it was last evaluated.
Definition: SSGNGVertex.h:204
tMixingMatrixPtr _sbot
Pointer to the sbottom mixing matrix.
Definition: SSGNGVertex.h:159
tMixingMatrixPtr _stop
Pointer to the stop mixing matrix.
Definition: SSGNGVertex.h:154
double _cw
The value of .
Definition: SSGNGVertex.h:169
virtual void doinitrun()
Initialize this object.
complex< InvEnergy > _leftlast
Store the value of the left-coupling when it was last evaluated.
Definition: SSGNGVertex.h:209
complex< InvEnergy > _rightlast
Store the value of the right-coupling when it was last evaluated.
Definition: SSGNGVertex.h:214
tMixingMatrixPtr _theN
Store the neutralino mixing matrix.
Definition: SSGNGVertex.h:189
SSGNGVertex & operator=(const SSGNGVertex &)=delete
The assignment operator is private and must never be called.
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Definition: SSGNGVertex.h:90
long _idlast
Store the id of the neutralino when the coupling was last evaluated.
Definition: SSGNGVertex.h:194
-*- C++ -*-
std::complex< double > Complex
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr