herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
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 
19 namespace Herwig {
20 using namespace ThePEG;
21 
29 class SSNFSVertex: public FFSVertex {
30 
31 public:
32 
36  SSNFSVertex();
37 
38  public:
39 
46  void persistentOutput(PersistentOStream & os) const;
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 
74 protected:
75 
82  virtual IBPtr clone() const {return new_ptr(*this);}
83 
88  virtual IBPtr fullclone() const {return new_ptr(*this);}
90 
91 protected:
92 
100  virtual void doinit();
102 
103 private:
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 
184  long _id1last;
185 
189  long _id2last;
190 
194  long _id3last;
195 
199  unsigned int yukawa_;
200 };
201 }
202 
203 #endif /* HERWIG_SSNFSVertex_H */
long _id1last
Store the id of the last neutralino to be evaluate.
Definition: SSNFSVertex.h:184
Complex _leftlast
Store the value of the left coupling when it was last evaluated.
Definition: SSNFSVertex.h:174
tMixingMatrixPtr _nmix
Pointer to the neutralino mixing matrix.
Definition: SSNFSVertex.h:129
std::complex< double > Complex
tMixingMatrixPtr _sbot
Pointer to the sbottom mixing matrix.
Definition: SSNFSVertex.h:119
Complex _rightlast
Store the value of the right coupling when it was last evaluated.
Definition: SSNFSVertex.h:179
This is the implementation of the coupling of the neutralinos to fermion-sfermions.
Definition: SSNFSVertex.h:29
Complex _couplast
The value of the normalisation when it was evaluated at _q2last.
Definition: SSNFSVertex.h:169
virtual IBPtr clone() const
Make a simple clone of this object.
Definition: SSNFSVertex.h:82
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
tMixingMatrixPtr _stop
Pointer to the stop mixing matrix.
Definition: SSNFSVertex.h:114
Energy _mw
Mass of the W.
Definition: SSNFSVertex.h:149
unsigned int yukawa_
Include Yukawa&#39;s ?
Definition: SSNFSVertex.h:199
tMSSMPtr _theSS
Pointer to the Susy Model object.
Definition: SSNFSVertex.h:134
long _id2last
Store the id of the last SM fermion to be evaluate.
Definition: SSNFSVertex.h:189
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Definition: SSNFSVertex.h:88
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr
tMixingMatrixPtr _stau
Pointer to the stau mixing matrix.
Definition: SSNFSVertex.h:124
Energy2 _q2last
The scale at which the coupling was last evaluated.
Definition: SSNFSVertex.h:164
long _id3last
Store the id of the last scalar to be evaluate.
Definition: SSNFSVertex.h:194
-*- C++ -*-