ATLAS Offline Software
herwig7_interface.h
Go to the documentation of this file.
1 #define max_num_weights 50
2 
3 
4 extern "C" {
5  void herwig7_init_(int & maxev, const char* name, long int len);
7  double powheginput_(const char* , long int);
8 
9  //Declaration of fortran common blocks
10 
11  struct heprup {
12  int idbmup[2];
13  double ebmup[2];
14  int pdfgup[2], pdfsup[2], idwtup, nprup;
15  double xsecup[100], xerrup[100], xmaxup[100];
16  int lprup[100];
17  };
18  extern heprup heprup_;
19 
20  struct hepeup {
21  int nup, idprup;
23  // nb. Fortran 2d arrays need to be declared as 1d C arrays
24  // in order to avoid -Wlto-type-mismatch warnings when compiling with LTO.
25  int idup[500], istup[500], mothup[500*2], icolup[500*2];
26  double pup[500*5], vtimup[500],spinup[500];
27  int& getMother (unsigned ipart, unsigned imother) { return mothup[ipart*2+imother]; }
28  int& getColor (unsigned ipart, unsigned icolor) { return icolup[ipart*2+icolor]; }
29  double& getP (unsigned ipart, unsigned icomp) { return pup[ipart*5+icomp]; }
30  };
31  extern hepeup hepeup_;
32 
33  struct nevcounter {
34  int nev;
35  };
36  extern nevcounter nevcounter_;
37 
38  struct weights {
41  int radtype;
42  };
43  extern weights weights_;
44  // the scales of the emissions from the resonances generated by POWHEG
45  struct resonancevetos {
47  };
49 
50  struct c_innlodec {
51  int innlodec;
52  };
53  extern c_innlodec c_innlodec_;
54 
55  extern struct{
58 
59 }
60 
c_innlodec
Definition: herwig7_interface.h:50
hepeup::idup
int idup[500]
Definition: herwig7_interface.h:25
hepeup::pup
double pup[500 *5]
Definition: herwig7_interface.h:26
remncorr
double remncorr
Definition: herwig7_interface.h:56
heprup::lprup
int lprup[100]
Definition: herwig7_interface.h:16
heprup::ebmup
double ebmup[2]
Definition: herwig7_interface.h:13
resonancevetos::vetoscaletp
double vetoscaletp
Definition: herwig7_interface.h:46
corrfactors_
struct @60 corrfactors_
hepeup::vtimup
double vtimup[500]
Definition: herwig7_interface.h:26
hepeup::getMother
int & getMother(unsigned ipart, unsigned imother)
Definition: herwig7_interface.h:27
heprup::nprup
int nprup
Definition: herwig7_interface.h:14
resonancevetos
Definition: herwig7_interface.h:45
weights::radtype
int radtype
Definition: herwig7_interface.h:41
maxev
int maxev
Definition: PowhegLesHouchesFileReader.cxx:37
heprup
Definition: herwig7_interface.h:11
nevcounter::nev
int nev
Definition: herwig7_interface.h:34
hepeup
Definition: herwig7_interface.h:20
heprup::xmaxup
double xmaxup[100]
Definition: herwig7_interface.h:15
heprup_
heprup heprup_
heprup::xerrup
double xerrup[100]
Definition: herwig7_interface.h:15
nevcounter_
nevcounter nevcounter_
c_innlodec::innlodec
int innlodec
Definition: herwig7_interface.h:51
hepeup::idprup
int idprup
Definition: herwig7_interface.h:21
hepeup::aqedup
double aqedup
Definition: herwig7_interface.h:22
heprup::xsecup
double xsecup[100]
Definition: herwig7_interface.h:15
hepeup::istup
int istup[500]
Definition: herwig7_interface.h:25
heprup::idbmup
int idbmup[2]
Definition: herwig7_interface.h:12
resonancevetos::vetoscalewm
double vetoscalewm
Definition: herwig7_interface.h:46
hepeup::aqcdup
double aqcdup
Definition: herwig7_interface.h:22
heprup::pdfsup
int pdfsup[2]
Definition: herwig7_interface.h:14
hepeup::icolup
int icolup[500 *2]
Definition: herwig7_interface.h:25
btildecorr
double btildecorr
Definition: herwig7_interface.h:56
resonancevetos::vetoscaletm
double vetoscaletm
Definition: herwig7_interface.h:46
nevcounter
Definition: herwig7_interface.h:33
hepeup_
hepeup hepeup_
hepeup::spinup
double spinup[500]
Definition: herwig7_interface.h:26
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
powheginput_
double powheginput_(const char *, long int)
resonancevetos_
resonancevetos resonancevetos_
weights
Definition: herwig7_interface.h:38
hepeup::scalup
double scalup
Definition: herwig7_interface.h:22
hepeup::getColor
int & getColor(unsigned ipart, unsigned icolor)
Definition: herwig7_interface.h:28
weights_
weights weights_
hepeup::mothup
int mothup[500 *2]
Definition: herwig7_interface.h:25
hepeup::xwgtup
double xwgtup
Definition: herwig7_interface.h:22
herwig7_init_
void herwig7_init_(int &maxev, const char *name, long int len)
max_num_weights
#define max_num_weights
Definition: herwig7_interface.h:1
hepeup::nup
int nup
Definition: herwig7_interface.h:21
heprup::pdfgup
int pdfgup[2]
Definition: herwig7_interface.h:14
heprup::idwtup
int idwtup
Definition: herwig7_interface.h:14
herwig7_calculatescales_
void herwig7_calculatescales_()
c_innlodec_
c_innlodec c_innlodec_
weights::weight
double weight[max_num_weights]
Definition: herwig7_interface.h:39
resonancevetos::vetoscalewp
double vetoscalewp
Definition: herwig7_interface.h:46
hepeup::getP
double & getP(unsigned ipart, unsigned icomp)
Definition: herwig7_interface.h:29
weights::numweights
int numweights
Definition: herwig7_interface.h:40