herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
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
19namespace Herwig {
20using namespace ThePEG;
21
30class SSNNZVertex: public FFVVertex {
31
32public:
33
38
39public:
40
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
75protected:
76
83 virtual IBPtr clone() const {return new_ptr(*this);}
84
89 virtual IBPtr fullclone() const {return new_ptr(*this);}
91
92protected:
93
101 virtual void doinit();
103
104private:
105
110 SSNNZVertex & operator=(const SSNNZVertex &) = delete;
111
112private:
113
117 double _sw;
118
122 double _cw;
123
127 tMixingMatrixPtr _theN;
128
133
138
142 Energy2 _q2last;
143
148
153
158};
159}
160
161#endif /* HERWIG_SSNNZVertex_H */
This class implements the coupling of a Z-boson to a pair of neutralinos.
Definition: SSNNZVertex.h:30
static void Init()
The standard Init function used to initialize the interfaces.
Complex _couplast
Store the value of the coupling when it was last evalutated.
Definition: SSNNZVertex.h:147
SSNNZVertex()
The default constructor.
double _cw
The value of .
Definition: SSNNZVertex.h:122
long _id1last
Store the id of the 1st neutralino when the coupling was last evaluated.
Definition: SSNNZVertex.h:132
Complex _leftlast
Store the value of the left-coupling when it was last evalutated.
Definition: SSNNZVertex.h:152
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
long _id2last
Store the id of the 1st neutralino when the coupling was last evaluated.
Definition: SSNNZVertex.h:137
virtual IBPtr clone() const
Make a simple clone of this object.
Definition: SSNNZVertex.h:83
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Definition: SSNNZVertex.h:89
SSNNZVertex & operator=(const SSNNZVertex &)=delete
The assignment operator is private and must never be called.
double _sw
The value of .
Definition: SSNNZVertex.h:117
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 an EventGenerator to disk.
virtual void setCoupling(Energy2 q2, tcPDPtr part1, tcPDPtr part2, tcPDPtr part3)
Calculate the couplings.
Complex _rightlast
Store the value of the right-coupling when it was last evalutated.
Definition: SSNNZVertex.h:157
Energy2 _q2last
Store the value at which the coupling when it was last evalutated.
Definition: SSNNZVertex.h:142
tMixingMatrixPtr _theN
Store the neutralino mixing matrix.
Definition: SSNNZVertex.h:127
-*- C++ -*-
std::complex< double > Complex
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr