thepeg is hosted by Hepforge, IPPP Durham
ThePEG 2.3.0
LesHouches.h
1// -*- C++ -*-
2//
3// LesHouches.h is a part of ThePEG - Toolkit for HEP Event Generation
4// Copyright (C) 1999-2019 Leif Lonnblad
5//
6// ThePEG 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 THEPEG_LesHouches_H
10#define THEPEG_LesHouches_H
11//
12// This is the declaration of the LesHouches class.
13//
14
16
17namespace ThePEG {
18
26class HEPRUP {
27
28public:
29
35 HEPRUP() : IDWTUP(0), NPRUP(0) {}
37
38public:
39
45 void resize(int nrup) {
46 NPRUP = nrup;
47 resize();
48 }
49
55 void resize() {
56 XSECUP.resize(NPRUP);
57 XERRUP.resize(NPRUP);
58 XMAXUP.resize(NPRUP);
59 LPRUP.resize(NPRUP);
60 }
61
65 pair<long,long> IDBMUP;
66
70 pair<double,double> EBMUP;
71
76 pair<int,int> PDFGUP;
77
82 pair<int,int> PDFSUP;
83
89 int IDWTUP;
90
95 int NPRUP;
96
100 vector<double> XSECUP;
101
106 vector<double> XERRUP;
107
111 vector<double> XMAXUP;
112
116 vector<int> LPRUP;
117
118};
119
120
128class HEPEUP {
129
130public:
131
138 : NUP(0), IDPRUP(0), XWGTUP(0.0), XPDWUP(0.0, 0.0),
139 SCALUP(0.0), AQEDUP(0.0), AQCDUP(0.0) {}
141
142public:
143
149 void resize(int nup) {
150 NUP = nup;
151 resize();
152 }
153
159 void resize() {
160 IDUP.resize(NUP);
161 ISTUP.resize(NUP);
162 MOTHUP.resize(NUP);
163 ICOLUP.resize(NUP);
164 PUP.resize(NUP);
165 VTIMUP.resize(NUP);
166 SPINUP.resize(NUP);
167 }
168
172 int NUP;
173
178
182 double XWGTUP;
183
190 pair<double,double> XPDWUP;
191
196 double SCALUP;
197
201 double AQEDUP;
202
206 double AQCDUP;
207
211 vector<long> IDUP;
212
216 vector<int> ISTUP;
217
222 vector< pair<int,int> > MOTHUP;
223
228 vector< pair<int,int> > ICOLUP;
229
234 vector< array<double,5> > PUP;
235
240 vector<double> VTIMUP;
241
247 vector<double> SPINUP;
248
249};
250
251}
252
253#endif /* THEPEG_LesHouches_H */
This is the main config header file for ThePEG.
The HEPEUP class is a simple container corresponding to the Les Houches accord (hep-ph/0109068) commo...
Definition: LesHouches.h:128
vector< int > ISTUP
The status codes for the particle entries in this event.
Definition: LesHouches.h:216
vector< double > SPINUP
Spin info for the particle entries in this event given as the cosine of the angle between the spin ve...
Definition: LesHouches.h:247
vector< array< double, 5 > > PUP
Lab frame momentum (Px, Py, Pz, E and M in GeV) for the particle entries in this event.
Definition: LesHouches.h:234
double AQEDUP
The value of the QED coupling used in this event.
Definition: LesHouches.h:201
double SCALUP
The scale in GeV used in the calculation of the PDF's in this event.
Definition: LesHouches.h:196
vector< pair< int, int > > MOTHUP
Indices for the first and last mother for the particle entries in this event.
Definition: LesHouches.h:222
int IDPRUP
The subprocess code for this event (as given in LPRUP).
Definition: LesHouches.h:177
void resize()
Assuming the NUP variable, corresponding to the number of particles in the current event,...
Definition: LesHouches.h:159
HEPEUP()
Default constructor.
Definition: LesHouches.h:137
int NUP
The number of particle entries in the current event.
Definition: LesHouches.h:172
vector< double > VTIMUP
Invariant lifetime (c*tau, distance from production to decay im mm) for the particle entries in this ...
Definition: LesHouches.h:240
double XWGTUP
The weight for this event.
Definition: LesHouches.h:182
void resize(int nup)
Set the NUP variable, corresponding to the number of particles in the current event,...
Definition: LesHouches.h:149
vector< long > IDUP
The PDG id's for the particle entries in this event.
Definition: LesHouches.h:211
pair< double, double > XPDWUP
The PDF weights for the two incoming partons.
Definition: LesHouches.h:190
double AQCDUP
The value of the QCD coupling used in this event.
Definition: LesHouches.h:206
vector< pair< int, int > > ICOLUP
The colour-line indices (first(second) is (anti)colour) for the particle entries in this event.
Definition: LesHouches.h:228
The HEPRUP class is a simple container corresponding to the Les Houches accord (hep-ph/0109068) commo...
Definition: LesHouches.h:26
pair< long, long > IDBMUP
PDG id's of beam particles.
Definition: LesHouches.h:65
int NPRUP
The number of different subprocesses in this file (should typically be just one)
Definition: LesHouches.h:95
vector< double > XERRUP
The statistical error in the cross sections for the different subprocesses in pb.
Definition: LesHouches.h:106
int IDWTUP
Master switch indicating how the ME generator envisages the events weights should be interpreted acco...
Definition: LesHouches.h:89
vector< double > XMAXUP
The maximum event weights (in XWGTUP) for different subprocesses.
Definition: LesHouches.h:111
vector< double > XSECUP
The cross sections for the different subprocesses in pb.
Definition: LesHouches.h:100
HEPRUP()
Default constructor.
Definition: LesHouches.h:35
pair< int, int > PDFSUP
The id number the PDF used for the beams according to the PDFLib specification.
Definition: LesHouches.h:82
pair< int, int > PDFGUP
The author group for the PDF used for the beams according to the PDFLib specification.
Definition: LesHouches.h:76
pair< double, double > EBMUP
Energy of beam particles given in GeV.
Definition: LesHouches.h:70
void resize(int nrup)
Set the NPRUP variable, corresponding to the number of sub-processes, to nrup, and resize all relevan...
Definition: LesHouches.h:45
void resize()
Assuming the NPRUP variable, corresponding to the number of sub-processes, is correctly set,...
Definition: LesHouches.h:55
vector< int > LPRUP
The subprocess code for the different subprocesses.
Definition: LesHouches.h:116
This is the main namespace within which all identifiers in ThePEG are declared.
Definition: FactoryBase.h:28