herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
Shower
QTilde
ShowerConfig.h
1
// -*- C++ -*-
2
//
3
// ShowerConfig.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_ShowerConfig_H
10
#define HERWIG_ShowerConfig_H
11
//
12
// This is the declaration of the ShowerConfig class.
13
14
#include "
ThePEG/Config/ThePEG.h
"
15
#include "ThePEG/PDT/ParticleData.h"
16
#include "Herwig/Shower/QTilde/Base/ShowerParticle.fh"
17
#include "Herwig/Shower/QTilde/SplittingFunctions/SudakovFormFactor.fh"
18
#include "ThePEG/Persistency/PersistentOStream.h"
19
#include "ThePEG/Persistency/PersistentIStream.h"
20
#include "Herwig/Shower/ShowerInteraction.h"
21
22
namespace
Herwig
{
23
using namespace
ThePEG
;
24
34
typedef
Ptr<ThePEG::ColourLine>::pointer
ColinePtr
;
35
39
typedef
Ptr<ThePEG::ColourLine>::transient_pointer
tColinePtr
;
40
44
typedef
pair<ColinePtr,ColinePtr>
ColinePair
;
45
49
typedef
pair<tColinePtr,tColinePtr>
tColinePair
;
50
54
typedef
vector<ShowerParticlePtr>
ShowerParticleVector
;
55
59
typedef
vector<tShowerParticlePtr>
tShowerParticleVector
;
60
64
typedef
vector<tcPDPtr>
IdList
;
65
66
inline
ShowerInteraction
convertInteraction(
ShowerPartnerType
partner) {
67
if
(partner==ShowerPartnerType::QCDColourLine ||
68
partner==ShowerPartnerType::QCDAntiColourLine)
69
return
ShowerInteraction::QCD;
70
else
if
(partner==ShowerPartnerType::QED)
71
return
ShowerInteraction::QED;
72
else
if
(partner==ShowerPartnerType::EW)
73
return
ShowerInteraction::EW;
74
else
75
return
ShowerInteraction::UNDEFINED;
76
}
77
81
struct
BranchingElement
{
82
86
BranchingElement
();
87
91
BranchingElement
(SudakovPtr sud,
IdList
part);
92
96
~BranchingElement
();
97
101
SudakovPtr
sudakov
;
102
106
IdList
particles
;
107
111
IdList
conjugateParticles
;
112
116
bool
operator ==
(
const
BranchingElement
& x)
const
{
117
return
118
sudakov
== x.
sudakov
&&
119
particles
== x.
particles
&&
120
conjugateParticles
== x.
conjugateParticles
;
121
}
122
};
123
127
typedef
multimap<long,BranchingElement>
BranchingList
;
128
132
typedef
pair<long, BranchingElement>
BranchingInsert
;
133
134
}
135
136
namespace
ThePEG
{
137
141
PersistentOStream
&
operator <<
(
PersistentOStream
& os,
142
const
Herwig::BranchingElement
& x);
143
147
PersistentIStream
&
operator >>
(
PersistentIStream
& is,
148
Herwig::BranchingElement
& x);
149
150
}
151
152
#endif
// HERWIG_ShowerConfig_H
153
ThePEG.h
ThePEG::PersistentIStream
ThePEG::PersistentOStream
Herwig::ShowerInteraction
ShowerInteraction
Handy header file to be included in all Shower classes.
Definition:
ShowerInteraction.h:23
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::ShowerPartnerType
ShowerPartnerType
Enum for the type of shower partner.
Definition:
ShowerInteraction.h:35
Herwig::IdList
vector< tcPDPtr > IdList
Definition of the IdList for branchings.
Definition:
ShowerConfig.h:64
Herwig::ShowerParticleVector
vector< ShowerParticlePtr > ShowerParticleVector
A Vector of ShowerParticle pointers.
Definition:
ShowerConfig.h:54
Herwig::tShowerParticleVector
vector< tShowerParticlePtr > tShowerParticleVector
A Vector of transient ShowerParticle pointers.
Definition:
ShowerConfig.h:59
Herwig::BranchingInsert
pair< long, BranchingElement > BranchingInsert
typedef to create a structure which can be inserted into a BranchingList
Definition:
ShowerConfig.h:132
Herwig::ColinePair
pair< ColinePtr, ColinePtr > ColinePair
A pair of ColourLine pointers.
Definition:
ShowerConfig.h:44
Herwig::BranchingList
multimap< long, BranchingElement > BranchingList
typedef to pair the PDG code of the particle and the BranchingElement
Definition:
ShowerConfig.h:127
ThePEG
ThePEG::operator>>
PersistentIStream & operator>>(PersistentIStream &is, HandlerGroup< HDLR > &hg)
ThePEG::ColinePtr
ThePEG::Ptr< ColourLine >::pointer ColinePtr
ThePEG::tColinePair
pair< tColinePtr, tColinePtr > tColinePair
ThePEG::operator<<
ostream & operator<<(ostream &, const Collision &)
ThePEG::tColinePtr
ThePEG::Ptr< ColourLine >::transient_pointer tColinePtr
Herwig::BranchingElement
typedef to pair the SudakovFormFactor and the particles in a branching
Definition:
ShowerConfig.h:81
Herwig::BranchingElement::BranchingElement
BranchingElement(SudakovPtr sud, IdList part)
Constructor.
Herwig::BranchingElement::sudakov
SudakovPtr sudakov
Access to the Sudakov.
Definition:
ShowerConfig.h:101
Herwig::BranchingElement::~BranchingElement
~BranchingElement()
Destructor.
Herwig::BranchingElement::BranchingElement
BranchingElement()
Constructor.
Herwig::BranchingElement::particles
IdList particles
Access to the particles.
Definition:
ShowerConfig.h:106
Herwig::BranchingElement::operator==
bool operator==(const BranchingElement &x) const
Compare two BranchingElements.
Definition:
ShowerConfig.h:116
Herwig::BranchingElement::conjugateParticles
IdList conjugateParticles
Access to the charge conjugate particles.
Definition:
ShowerConfig.h:111
Generated on Thu Jun 20 2024 17:50:53 for Herwig by
1.9.6