The C++ interface class to Pythia6.
More...
#include <Doxymodules_eventgenerator.h>
|
| Pythia6 () |
|
virtual | ~Pythia6 () |
|
int | Pycomp (int kf) |
|
void | Py1ent (int line, int kf, double pe, double theta, double phi) |
|
ParticleVector * | ImportParticles () |
|
int | ImportParticles (ParticleVector *particles, const char *option="") |
|
void | SetMSTJ (int i, int m) |
|
int | GetMDCY (int i, int j) |
|
int | GetKFDP (int i, int j) |
|
void | SetMDCY (int i, int j, int m) |
|
void | SetMDME (int i, int j, int m) |
|
The C++ interface class to Pythia6.
According to TPythia6 class from Root: (The TPythia6 class is an interface class to F77 routines in Pythia6 // CERNLIB event generators, written by T.Sjostrand.)
http://root.cern.ch/ see http://root.cern.ch/root/License.html
The complete Pythia6 documentation can be found at: http://home.thep.lu.se/~torbjorn/pythiaaux/recent.html
Definition at line 117 of file Doxymodules_eventgenerator.h.
◆ Pythia6()
Pythia6 constructor: creates a vector of Pythia6Particle in which it will store all particles. Note that there may be only one functional Pythia6 object at a time, so it's not use to create more than one instance of it.
Definition at line 135 of file Pythia6.cc.
140{
141
142
143
144
145
146
148 std::cerr << "There's already an instance of Pythia6" << std::endl;
149 exit (1);
150 }
151
153
154
158
159
160
161
162
163
164}
void * pythia6_common_address(const char *)
std::vector< Pythia6Particle * > ParticleVector
ParticleVector * fParticles
static Pythia6 * fgInstance
◆ ~Pythia6()
Destroy the object, delete and dispose all Pythia6Particles currently on list.
Definition at line 168 of file Pythia6.cc.
169{
170
171
172
174 ParticleVector::const_iterator it;
176 delete *it;
178 }
179}
◆ Instance()
◆ Pycomp()
int Pythia6::Pycomp |
( |
int |
kf | ) |
|
Interface with fortran routine pycomp
Definition at line 183 of file Pythia6.cc.
◆ Py1ent()
void Pythia6::Py1ent |
( |
int |
line, |
|
|
int |
kf, |
|
|
double |
pe, |
|
|
double |
theta, |
|
|
double |
phi |
|
) |
| |
Add one entry to the event record, i.e. either a parton or a particle.
IP: normally line number for the parton/particle. There are two exceptions:
If IP = 0: line number 1 is used and PYEXEC is called. If IP < 0: line -IP is used, with status code K(-IP,2)=2 rather than 1; thus a parton system may be built up by filling all but the last parton of the system with IP < 0.
KF: parton/particle flavour code (PDG code) PE: parton/particle energy. If PE is smaller than the mass, the parton/particle is taken to be at rest.
THETA: PHI: polar and azimuthal angle for the momentum vector of the parton/particle.
Definition at line 192 of file Pythia6.cc.
193{
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212 py1ent(ip, kf, pe, theta, phi);
213}
◆ ImportParticles() [1/2]
◆ ImportParticles() [2/2]
int Pythia6::ImportParticles |
( |
ParticleVector * |
particles, |
|
|
const char * |
option = "" |
|
) |
| |
Default primary creation method. It reads the /HEPEVT/ common block which has been filled by the GenerateEvent method. If the event generator does not use the HEPEVT common block, This routine has to be overloaded by the subclasses. The function loops on the generated particles and store them in the TClonesArray pointed by the argument particles. The default action is to store only the stable particles (ISTHEP = 1) This can be demanded explicitly by setting the option = "Final" If the option = "All", all the particles are stored.
Definition at line 217 of file Pythia6.cc.
218{
219
220
221
222
223
224
225
226
227
228
229 if ( particles == 0 ) return 0;
230
231 ParticleVector::const_iterator it;
232 for ( it = particles->begin(); it != particles->end(); it++ )
233 delete *it;
234 particles->clear();
235
237 int nparts=0;
238 if (!strcmp(option,"") || !strcmp(option,"Final")) {
239 for (int i = 0; i<numpart; i++) {
240
242
243
244
245 particles->push_back(
262
263
264 nparts++;
265 }
266 }
267 }
268 else if (!strcmp(option,"All")) {
269 for (int i = 0; i<numpart; i++) {
270 particles->push_back(
287 }
288 nparts=numpart;
289 }
290
291 return nparts;
292}
Structure for Pythia6 particle properties.
◆ SetMSTJ()
void Pythia6::SetMSTJ |
( |
int |
i, |
|
|
int |
m |
|
) |
| |
|
inline |
◆ GetMDCY()
int Pythia6::GetMDCY |
( |
int |
i, |
|
|
int |
j |
|
) |
| |
|
inline |
◆ GetKFDP()
int Pythia6::GetKFDP |
( |
int |
i, |
|
|
int |
j |
|
) |
| |
|
inline |
◆ SetMDCY()
void Pythia6::SetMDCY |
( |
int |
i, |
|
|
int |
j, |
|
|
int |
m |
|
) |
| |
|
inline |
◆ SetMDME()
void Pythia6::SetMDME |
( |
int |
i, |
|
|
int |
j, |
|
|
int |
m |
|
) |
| |
|
inline |
◆ fgInstance
◆ fParticles
◆ fPyjets
◆ fPydat1
◆ fPydat3
The documentation for this class was generated from the following files: