herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
Models
General
WeakCurrentDecayConstructor.h
1
// -*- C++ -*-
2
//
3
// WeakCurrentDecayConstructor.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_WeakCurrentDecayConstructor_H
10
#define HERWIG_WeakCurrentDecayConstructor_H
11
//
12
// This is the declaration of the WeakCurrentDecayConstructor class.
13
//
14
15
#include "NBodyDecayConstructorBase.h"
16
#include "ThePEG/Helicity/Vertex/VertexBase.h"
17
#include "Herwig/Decay/DecayIntegrator.h"
18
#include "Herwig/Decay/DecayPhaseSpaceMode.h"
19
#include "Herwig/Decay/General/GeneralCurrentDecayer.fh"
20
#include "Herwig/Models/StandardModel/StandardModel.h"
21
#include "Herwig/Decay/WeakCurrents/WeakDecayCurrent.h"
22
#include "Herwig/Decay/General/GeneralCurrentDecayer.h"
23
#include "TwoBodyDecay.h"
24
25
namespace
Herwig
{
26
27
using namespace
ThePEG
;
28
35
class
WeakCurrentDecayConstructor
:
public
NBodyDecayConstructorBase
{
36
37
public
:
38
42
WeakCurrentDecayConstructor
() : _masscut(5.*GeV) {}
43
49
virtual
void
DecayList(
const
set<PDPtr> & part);
50
54
virtual
unsigned
int
numBodies
()
const
{
return
1000; }
55
59
Energy
massCut
()
const
{
return
_masscut;}
60
61
public
:
62
69
void
persistentOutput(
PersistentOStream
& os)
const
;
70
76
void
persistentInput(
PersistentIStream
& is,
int
version);
78
85
static
void
Init();
86
87
protected
:
88
95
virtual
IBPtr
clone()
const
;
96
101
virtual
IBPtr
fullclone()
const
;
103
104
protected
:
105
113
virtual
void
doinit();
115
116
private
:
117
128
vector<TwoBodyDecay>
129
createModes(
const
PDPtr
inpart,
const
VertexBasePtr vert,
130
unsigned
int
ilist);
131
139
GeneralCurrentDecayerPtr createDecayer(
PDPtr
in,
PDPtr
out1,
140
vector<tPDPtr> outCurrent,
141
VertexBasePtr vertex,
142
WeakDecayCurrentPtr current);
143
150
void
createDecayMode(vector<TwoBodyDecay> & decays);
152
153
private
:
154
159
WeakCurrentDecayConstructor
& operator=(
const
WeakCurrentDecayConstructor
&) =
delete
;
160
161
private
:
162
166
Ptr<Herwig::StandardModel>::pointer
_theModel
;
167
171
Energy
_masscut
;
172
176
vector<string>
decayTags_
;
177
181
vector<vector<tPDPtr> >
particles_
;
182
186
vector<double>
_norm
;
187
191
vector<WeakDecayCurrentPtr>
_current
;
192
};
193
194
}
195
196
#endif
/* HERWIG_WeakCurrentDecayConstructor_H */
Herwig::WeakCurrentDecayConstructor
Here is the documentation of the WeakCurrentDecayConstructor class.
Definition:
WeakCurrentDecayConstructor.h:35
ThePEG::PersistentIStream
Herwig::WeakCurrentDecayConstructor::_masscut
Energy _masscut
Cut-off on the mass difference.
Definition:
WeakCurrentDecayConstructor.h:171
Herwig::WeakCurrentDecayConstructor::massCut
Energy massCut() const
Cut off.
Definition:
WeakCurrentDecayConstructor.h:59
Herwig::WeakCurrentDecayConstructor::_norm
vector< double > _norm
Normalisation.
Definition:
WeakCurrentDecayConstructor.h:186
ThePEG::PersistentOStream
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
Herwig::WeakCurrentDecayConstructor::decayTags_
vector< string > decayTags_
Tags for the modes.
Definition:
WeakCurrentDecayConstructor.h:176
Herwig::WeakCurrentDecayConstructor::_current
vector< WeakDecayCurrentPtr > _current
The current for the mode.
Definition:
WeakCurrentDecayConstructor.h:191
ThePEG
Herwig::NBodyDecayConstructorBase
This is the base class for NBodyDecayConstructors.
Definition:
NBodyDecayConstructorBase.h:34
Herwig::WeakCurrentDecayConstructor::particles_
vector< vector< tPDPtr > > particles_
Particles for the mode.
Definition:
WeakCurrentDecayConstructor.h:181
ThePEG::PDPtr
ThePEG::Ptr< ParticleData >::pointer PDPtr
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::WeakCurrentDecayConstructor::WeakCurrentDecayConstructor
WeakCurrentDecayConstructor()
The default constructor.
Definition:
WeakCurrentDecayConstructor.h:42
Herwig::WeakCurrentDecayConstructor::_theModel
Ptr< Herwig::StandardModel >::pointer _theModel
Model Pointer.
Definition:
WeakCurrentDecayConstructor.h:166
Herwig::WeakCurrentDecayConstructor::numBodies
virtual unsigned int numBodies() const
Number of outgoing lines.
Definition:
WeakCurrentDecayConstructor.h:54
Generated on Sat Apr 11 2020 14:50:32 for Herwig by
1.8.13