Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
pythia_commons.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file pythia_commons.h
1 #ifndef _PYTHIAERHIC_PYTHIA_COMMONS_H_
2 #define _PYTHIAERHIC_PYTHIA_COMMONS_H_
3 
16 extern "C" {
17  // COMMON/PYJETS/N,NPAD,K(4000,5),P(4000,5),V(4000,5)
18  extern struct {
19  int n;
20  int npad;
21  int k[5][4000];
22  double p[5][4000];
23  double v[5][4000];
24  } pyjets_;
25 
26  // COMMON/PYPARS/MSTP(200),PARP(200),MSTI(200),PARI(200)
27  extern struct {
28  int mstp[200];
29  double parp[200];
30  int msti[200];
31  double pari[200];
32  } pypars_;
33 
34  // COMMON/PYINT1/MINT(400),VINT(400)
35  extern struct {
36  int mint[400];
37  double vint[400];
38  } pyint1_;
39 
40  // COMMON/PYINT5/NGENPD,NGEN(0:500,3),XSEC(0:500,3)
41  extern struct {
42  int ngenpd;
43  int ngen[3][501];
44  double xsec[3][501];
45  } pyint5_;
46 } // extern "C"
47 
48 // =====================================================================
49 // Wrapper functions around PYTHIA common block variables.
50 // Takes care of different Fortran and C array indexing
51 // so they can be called with the PYTHIA syntax e.g. k(1, 2).
52 // =====================================================================
53 
54 int msti(int);
55 
56 double pari(int);
57 
58 double vint(int);
59 
60 int k(int, int);
61 
62 double p(int, int);
63 
64 double v(int, int);
65 
66 int ngen(int, int);
67 
68 #endif // _PYTHIAERHIC_PYTHIA_COMMONS_H_