herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
SSWSSVertex.h
1// -*- C++ -*-
2//
3// SSWSSVertex.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_SSWSSVertex_H
10#define HERWIG_SSWSSVertex_H
11//
12// This is the declaration of the SSWSSVertex class.
13//
14
15#include "ThePEG/Helicity/Vertex/Scalar/VSSVertex.h"
16#include "MSSM.h"
17
18namespace Herwig {
19using namespace ThePEG;
20
28class SSWSSVertex: public VSSVertex {
29
30public:
31
36
37public:
38
46
52 void persistentInput(PersistentIStream & is, int version);
54
61 static void Init();
62
70 virtual void setCoupling(Energy2 q2,tcPDPtr part1,
71 tcPDPtr part2,tcPDPtr part3);
72
73protected:
74
81 virtual IBPtr clone() const {return new_ptr(*this);}
82
87 virtual IBPtr fullclone() const {return new_ptr(*this);}
89
90protected:
91
99 virtual void doinit();
101
102private:
103
108 SSWSSVertex & operator=(const SSWSSVertex &) = delete;
109
113 double _sw;
114
118 double _cw;
119
123 Energy2 _q2last;
124
129
133 tMixingMatrixPtr _stau;
134
138 tMixingMatrixPtr _stop;
139
143 tMixingMatrixPtr _sbottom;
144
148 long _ulast;
149
153 long _dlast;
154
159
165
166};
167}
168
169#endif /* HERWIG_SSWSSVertex_H */
This is the implementation of the coupling of an SM gauge boson to a pair of sfermions.
Definition: SSWSSVertex.h:28
virtual void setCoupling(Energy2 q2, tcPDPtr part1, tcPDPtr part2, tcPDPtr part3)
Calculate the couplings.
long _ulast
The up type sfermion present when the vertex was evaluated.
Definition: SSWSSVertex.h:148
SSWSSVertex()
The default constructor.
tMixingMatrixPtr _sbottom
Sbottom mixing matrix.
Definition: SSWSSVertex.h:143
tMixingMatrixPtr _stop
Stop mixing matrix.
Definition: SSWSSVertex.h:138
SSWSSVertex & operator=(const SSWSSVertex &)=delete
The assignment operator is private and must never be called.
Energy2 _q2last
Scale at which the coupling was last evaluated.
Definition: SSWSSVertex.h:123
long _gblast
The gauge boson present when the vertex was last evaluated.
Definition: SSWSSVertex.h:158
static void Init()
The standard Init function used to initialize the interfaces.
Complex _couplast
Value of coupling when last evaluated.
Definition: SSWSSVertex.h:128
double _cw
Value of .
Definition: SSWSSVertex.h:118
tMixingMatrixPtr _stau
Stau mixing matrix.
Definition: SSWSSVertex.h:133
double _sw
Value of .
Definition: SSWSSVertex.h:113
Complex _factlast
The value of the mixing matrix dependent part when the vertex was last evaluated.
Definition: SSWSSVertex.h:164
virtual IBPtr clone() const
Make a simple clone of this object.
Definition: SSWSSVertex.h:81
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Definition: SSWSSVertex.h:87
long _dlast
The down type sfermion present when the vertex was evaluated.
Definition: SSWSSVertex.h:153
virtual void doinit()
Initialize this object after the setup phase before saving an EventGenerator to disk.
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
-*- C++ -*-
std::complex< double > Complex
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr