herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
SSNFSVertex.h
1// -*- C++ -*-
2//
3// SSNFSVertex.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_SSNFSVertex_H
10#define HERWIG_SSNFSVertex_H
11//
12// This is the declaration of the SSNFSVertex class.
13//
14
15#include "ThePEG/Helicity/Vertex/Scalar/FFSVertex.h"
16#include "ThePEG/StandardModel/StandardModelBase.h"
17#include "MSSM.h"
18
19namespace Herwig {
20using namespace ThePEG;
21
29class SSNFSVertex: public FFSVertex {
30
31public:
32
37
38 public:
39
47
53 void persistentInput(PersistentIStream & is, int version);
55
62 static void Init();
63
71 virtual void setCoupling(Energy2 q2, tcPDPtr part1,
72 tcPDPtr part2, tcPDPtr part3);
73
74protected:
75
82 virtual IBPtr clone() const {return new_ptr(*this);}
83
88 virtual IBPtr fullclone() const {return new_ptr(*this);}
90
91protected:
92
100 virtual void doinit();
102
103private:
104
109 SSNFSVertex & operator=(const SSNFSVertex &) = delete;
110
114 tMixingMatrixPtr _stop;
115
119 tMixingMatrixPtr _sbot;
120
124 tMixingMatrixPtr _stau;
125
129 tMixingMatrixPtr _nmix;
130
134 tMSSMPtr _theSS;
135
139 double _sw;
140
144 double _cw;
145
149 Energy _mw;
150
154 double _sb;
155
159 double _cb;
160
164 Energy2 _q2last;
165
170
175
180
185
190
195
199 unsigned int yukawa_;
200};
201}
202
203#endif /* HERWIG_SSNFSVertex_H */
This is the implementation of the coupling of the neutralinos to fermion-sfermions.
Definition: SSNFSVertex.h:29
Energy _mw
Mass of the W.
Definition: SSNFSVertex.h:149
SSNFSVertex()
The default constructor.
Energy2 _q2last
The scale at which the coupling was last evaluated.
Definition: SSNFSVertex.h:164
tMSSMPtr _theSS
Pointer to the Susy Model object.
Definition: SSNFSVertex.h:134
long _id1last
Store the id of the last neutralino to be evaluate.
Definition: SSNFSVertex.h:184
long _id2last
Store the id of the last SM fermion to be evaluate.
Definition: SSNFSVertex.h:189
static void Init()
The standard Init function used to initialize the interfaces.
Complex _rightlast
Store the value of the right coupling when it was last evaluated.
Definition: SSNFSVertex.h:179
unsigned int yukawa_
Include Yukawa's ?
Definition: SSNFSVertex.h:199
tMixingMatrixPtr _nmix
Pointer to the neutralino mixing matrix.
Definition: SSNFSVertex.h:129
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Complex _couplast
The value of the normalisation when it was evaluated at _q2last.
Definition: SSNFSVertex.h:169
tMixingMatrixPtr _stau
Pointer to the stau mixing matrix.
Definition: SSNFSVertex.h:124
tMixingMatrixPtr _sbot
Pointer to the sbottom mixing matrix.
Definition: SSNFSVertex.h:119
virtual IBPtr clone() const
Make a simple clone of this object.
Definition: SSNFSVertex.h:82
SSNFSVertex & operator=(const SSNFSVertex &)=delete
The assignment operator is private and must never be called.
Complex _leftlast
Store the value of the left coupling when it was last evaluated.
Definition: SSNFSVertex.h:174
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Definition: SSNFSVertex.h:88
tMixingMatrixPtr _stop
Pointer to the stop mixing matrix.
Definition: SSNFSVertex.h:114
long _id3last
Store the id of the last scalar to be evaluate.
Definition: SSNFSVertex.h:194
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
virtual void doinit()
Initialize this object after the setup phase before saving and EventGenerator to disk.
virtual void setCoupling(Energy2 q2, tcPDPtr part1, tcPDPtr part2, tcPDPtr part3)
Calculate the couplings.
-*- C++ -*-
std::complex< double > Complex
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr