herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
SSNNZVertex.h
1 // -*- C++ -*-
2 //
3 // SSNNZVertex.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_SSNNZVertex_H
10 #define HERWIG_SSNNZVertex_H
11 //
12 // This is the declaration of the SSNNZVertex class.
13 //
14 
15 #include "ThePEG/Helicity/Vertex/Vector/FFVVertex.h"
16 #include "SusyBase.h"
17 #include "MixingMatrix.fh"
18 
19 namespace Herwig {
20 using namespace ThePEG;
21 
30 class SSNNZVertex: public FFVVertex {
31 
32 public:
33 
37  SSNNZVertex();
38 
39 public:
40 
47  void persistentOutput(PersistentOStream & os) const;
48 
54  void persistentInput(PersistentIStream & is, int version);
56 
63  static void Init();
64 
72  virtual void setCoupling(Energy2 q2, tcPDPtr part1,
73  tcPDPtr part2, tcPDPtr part3);
74 
75 protected:
76 
83  virtual IBPtr clone() const {return new_ptr(*this);}
84 
89  virtual IBPtr fullclone() const {return new_ptr(*this);}
91 
92 protected:
93 
101  virtual void doinit();
103 
104 private:
105 
110  SSNNZVertex & operator=(const SSNNZVertex &) = delete;
111 
112 private:
113 
117  double _sw;
118 
122  double _cw;
123 
127  tMixingMatrixPtr _theN;
128 
132  long _id1last;
133 
137  long _id2last;
138 
142  Energy2 _q2last;
143 
148 
153 
158 };
159 }
160 
161 #endif /* HERWIG_SSNNZVertex_H */
double _cw
The value of .
Definition: SSNNZVertex.h:122
std::complex< double > Complex
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
Complex _leftlast
Store the value of the left-coupling when it was last evalutated.
Definition: SSNNZVertex.h:152
long _id1last
Store the id of the 1st neutralino when the coupling was last evaluated.
Definition: SSNNZVertex.h:132
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Definition: SSNNZVertex.h:89
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr
double _sw
The value of .
Definition: SSNNZVertex.h:117
virtual IBPtr clone() const
Make a simple clone of this object.
Definition: SSNNZVertex.h:83
This class implements the coupling of a Z-boson to a pair of neutralinos.
Definition: SSNNZVertex.h:30
Energy2 _q2last
Store the value at which the coupling when it was last evalutated.
Definition: SSNNZVertex.h:142
-*- C++ -*-
Complex _rightlast
Store the value of the right-coupling when it was last evalutated.
Definition: SSNNZVertex.h:157
long _id2last
Store the id of the 1st neutralino when the coupling was last evaluated.
Definition: SSNNZVertex.h:137
Complex _couplast
Store the value of the coupling when it was last evalutated.
Definition: SSNNZVertex.h:147
tMixingMatrixPtr _theN
Store the neutralino mixing matrix.
Definition: SSNNZVertex.h:127