agile is hosted by Hepforge, IPPP Durham

CascadeWrapper2.hh

Go to the documentation of this file.
00001 #ifndef AGILE_CASCADE_WRAPPER2_HH
00002 #define AGILE_CASCADE_WRAPPER2_HH
00003 
00005 // Cascade common block declarations
00006 // hschulz@physik.hu-berlin.de, February 2010
00007 // Version 2.01 December 2007
00008 // Wrapper for FORTRAN version of Cascade
00010 
00011 #include <ctype.h>
00012 #include <cstring>
00013 #include "AGILe/Cascade/CascadeWrapper.hh"
00014 
00015 
00016 extern "C" {
00018   //Beams (to access info)
00019   #define FC_CABEAM FC_FUNC(cabeam, CABEAM)
00020   extern struct {
00021     double PBEAM[2];
00022     double KBEAM[2];
00023     double PBE1,PBE2;
00024   } FC_CABEAM;
00025 
00026   // Parameters for process steering 
00027   #define FC_CAINPU FC_FUNC(cainpu, CAINPU)
00028   extern struct {
00029     // int NFRAG,ILEPTO,IHF, ? 
00030     // not used: ISEMIH
00031     double PLEPIN,PPIN; //momenta of incoming lepton, proton
00032     //int LEPI,HADI; // PDGids of incoming particles
00033     int IFPS,INTER,ILHA; // parton shower, inclusion of priordial kt for diff processes, interaction type switch
00034   } FC_CAINPU;
00035  
00036   // ???
00037   #define FC_CAHERUP FC_FUNC(caherup, CAHERUP)
00038   extern struct {
00039     int Ilha; // Ilha sets treatment of remnants
00040   } FC_CAHERUP;
00041 
00042 
00043   // Parameters for nuber of generation tries... 
00044   #define FC_CAEFFIC FC_FUNC(caeffic, CAEFFIC)
00045   extern struct {
00046     double AVGI,SD;
00047     int NIN,NOUT;
00048   } FC_CAEFFIC;
00049 
00050   // Buchmueller ???
00051   #define FC_BUCHMUE FC_FUNC(buchmue, BUCHMUE)
00052   extern struct {
00053     double C1,Cg;
00054   } FC_BUCHMUE;
00055 
00056   // My first attempt, resolved photons, see manual section 4.7
00057   #define FC_COLCON FC_FUNC(colcon, COLCON)
00058   extern struct {
00059     int ICOLORA,IRESPRO,IRPA,IRPB,IRPC,IRPD,IRPE,IRPF,IRPG;
00060   } FC_COLCON;
00061 
00062   // Parameters for diffraction
00063   #define FC_DIFFR FC_FUNC(diffr, DIFFR)
00064   extern struct {
00065     double T2MAX,XF,ALPHP,RN2,EPSP,QMI,YMI,QMA,YMA;
00066     int NG,NPOM;
00067   } FC_DIFFR;
00068 
00069   // Parameters for hard subprocess selection (DIS)
00070   #define FC_DISDIF FC_FUNC(disdif, DISDIF)
00071   extern struct {
00072     int IDIR,IDISIDF;
00073   } FC_DISDIF;
00074   
00075   // Parameters for min/max electron scattering angle (degree)
00076   #define FC_ELECT FC_FUNC(elect, ELECT)
00077   extern struct {
00078     double THEMA,THEMI;
00079   } FC_ELECT;
00080   
00081   // Parameters for electroweak stuff: sin2thetaWeinberg, M_W^2
00082   #define FC_EWEAK FC_FUNC(eweak, EWEAK)
00083   extern struct {
00084     double SIN2W,MW2;
00085   } FC_EWEAK;
00086   
00087   // Parameters for structure function F2 ???
00088   #define FC_F2INT FC_FUNC(f2int, F2INT)
00089   extern struct {
00090     // double ? F2DIS,F2DIS,F2PI;
00091   } FC_F2INT;
00092   
00093   // Parameters for bookkeeping inside event record format???
00094   #define FC_HARD FC_FUNC(hard, HARD)
00095   extern struct {
00096     int NFT; // total number of final particles in 2to2 processes
00097     int NIA1,NIR1,NIA2,NIR2,NF1,NF2;
00098   } FC_HARD;
00099   
00100   
00101   // Parameters for exponential low Q2 suppression (possible tuning parameter)
00102   #define FC_LOWQ2 FC_FUNC(lowq2, LOWQ2)
00103   extern struct {
00104     double Q2SUPP;
00105   } FC_LOWQ2;
00106 
00107   // Parameters for accessing information of ???
00108   #define FC_MEINFO FC_FUNC(meinfo, MEINFO)
00109   extern struct {
00110     double ZQGKI,XPGKI,PHIGKI;
00111   } FC_MEINFO;
00112   
00113   // Parameters for 
00114   #define FC_OALPINI FC_FUNC(oalpini, OALPINI)
00115   extern struct {
00116     int IFULL,IQCDGRID; // Switches for lowest order or quark parton model process, O(a_S) generation on a grid
00117   } FC_OALPINI;
00118   
00119   // Parameters for 
00120   #define FC_PARAE FC_FUNC(parae, PARAE)
00121   extern struct {
00122     double Q2; // actual Q2 of gammas in lepto-production
00123     double Q2Q; // Scale mu^2 of hard scattering in a_S and structure functions
00124     // PCM???
00125   } FC_PARAE;
00126   
00127   // Parameters for 
00128   #define FC_PARAM FC_FUNC(param, PARAM)
00129   extern struct {
00130     double ALPHS,ALPH; // actual a_S, a_em
00131     double PI; // well ... pi!
00132     //double ? IWEI
00133   } FC_PARAM;
00134   
00135   // Parameters for 
00136   #define FC_PARAT FC_FUNC(parat, PARAT)
00137   extern struct {
00138     double AM[18]; // vector of final state particle masse
00139     double SHAT; // s^hat in hard sub processes
00140     double YMAX,YMIN; // upper and lower boundaries for y
00141     double QMAX,QMIN; // upper and lower boundaries for Q2 of photons
00142     double XMAX,XMIN; // upper and lower boundaries for x
00143   } FC_PARAT;
00144   
00145   // Parameters for random seed 
00146   #define FC_ISEED FC_FUNC(iseed, ISEED)
00147   extern struct {
00148     int ISEED;
00149   } FC_ISEED;
00150   
00151   // Parameters for PTCUT
00152   #define FC_PTCUT FC_FUNC(ptcut, PTCUT)
00153   extern struct {
00154     double PT2CUT[100];
00155   } FC_PTCUT;
00156   
00157   // Parameters for run setup
00158   #define FC_RAPA FC_FUNC(rapa, RAPA)
00159   extern struct {
00160     int IPRO;
00161   } FC_RAPA;
00162   
00164   //#define FC_ FC_FUNC()
00165   //extern struct {
00166   //} FC_;
00167   
00169   //#define FC_ FC_FUNC()
00170   //extern struct {
00171   //} FC_;
00172   
00174   //#define FC_ FC_FUNC()
00175   //extern struct {
00176   //} FC_;
00177   
00179   //#define FC_ FC_FUNC()
00180   //extern struct {
00181   //} FC_;
00182   
00184   //#define FC_ FC_FUNC()
00185   //extern struct {
00186   //} FC_;
00187   
00189   //#define FC_ FC_FUNC()
00190   //extern struct {
00191   //} FC_;
00192   
00194   //#define FC_ FC_FUNC()
00195   //extern struct {
00196   //} FC_;
00197   
00199   //#define FC_ FC_FUNC()
00200   //extern struct {
00201   //} FC_;
00202   
00204   //#define FC_ FC_FUNC()
00205   //extern struct {
00206   //} FC_;
00207   
00209   //#define FC_ FC_FUNC()
00210   //extern struct {
00211   //} FC_;
00212   
00214   //#define FC_ FC_FUNC()
00215   //extern struct {
00216   //} FC_;
00217   
00219   //#define FC_ FC_FUNC()
00220   //extern struct {
00221   //} FC_;
00222  
00223 
00224   
00225   
00226 }
00227 
00228 #endif
Generated on Tue Mar 6 10:39:38 2012 for AGILe - A Generator Interface Library (+ executable) by  doxygen 1.6.3