/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Generator/BesEvtGen/BesEvtGen-00-03-58/src/EvtGen/EvtGenModels/EvtPhokharaDef.hh

Go to the documentation of this file.
00001 #ifndef PHOKHARA__H
00002 #define PHOKHARA__H
00003 
00004 #include "cfortran/cfortran.h"
00005 #include <string.h>
00006 
00007 // common blocks
00008 typedef struct { double r, i; } COMPLEX16;
00009 
00010 // --- couplings, masses, momenta --
00011 extern "C" struct {
00012   double pi,gev2nbarn,gev2pbarn,alpha,me,mmu,mpi,mpi0,Sp,mp;
00013   double ebeam,ver_s,rmass[10],momenta[4][15];
00014   COMPLEX16 cvac_s;
00015   double mnt,mKp,mKn;
00016   COMPLEX16 cvac_s_pi, cvac_s_phi;
00017   double mlamb;
00018 } ctes_;
00019 
00020 
00021 // --- cuts ---
00022 extern "C" struct
00023 { 
00024   double Emin,gmin,phot1cut,phot2cut,pi1cut,pi2cut;
00025   double piphcut,accecut,q2min,w,q2_max_c,q2_min_c;
00026 } cuts_;
00027 
00028 
00029 // --- Kaons masses and gamms
00030 extern "C" struct
00031 { 
00032   double m_phi0_Kp,g_phi0_Kp,m_phi1_Kp,g_phi1_Kp;
00033   double m_om0_Kp,g_om0_Kp,m_om1_Kp,g_om1_Kp,m_om2_Kp,g_om2_Kp;
00034   double m_rho0_Kp,g_rho0_Kp,m_rho1_Kp,g_rho1_Kp,m_rho2_Kp,g_rho2_Kp;
00035 } mass_gamm_Kp_;
00036 
00037 
00038 // --- Pions pi+pi- masses and gamms
00039 extern "C"  struct
00040 { 
00041   double m_rho0_pion,g_rho0_pion,m_rho1_pion;
00042   double g_rho1_pion,m_rho2_pion,g_rho2_pion,m_rho3_pion,g_rho3_pion;
00043   double m_om0_pion,g_om0_pion;
00044 } mass_gamm_pion_;
00045 
00046 
00047 // --- Lambdas
00048 extern "C"  struct
00049 { 
00050   double alpha_lamb, ratio_lamb;
00051 } lambda_par_;
00052 
00053 
00054 // --- histograms ---  
00055 typedef struct{char val[20];} titledef;
00056 
00057 extern "C" struct 
00058 {  
00059   DOUBLE_PRECISION xlow[20], xup[20]; 
00060   int bins[20];
00061   titledef title[20]; 
00062 } histo_; 
00063 
00064 
00065 // --- Maxima ---
00066 extern "C" struct
00067 { 
00068   DOUBLE_PRECISION Mmax[2], gross[2], klein[2], tr[2], count[2];
00069   int iprint;
00070 } maxima_;
00071 
00072 
00073 // --- flags --
00074 extern "C" struct
00075 {
00076   int nlo, pion, fsr, fsrnlo, ivac, FF_pion, f0_model, FF_kaon, narr_res;
00077 } flags_;
00078 
00079 
00080 PROTOCCALLSFSUB2(RLXDINIT,rlxdinit,INT,INT)
00081 #define RLXDINIT(LUXURY,SEED) CCALLSFSUB2(RLXDINIT,rlxdinit,INT,INT,LUXURY,SEED)
00082 
00083 PROTOCCALLSFSUB1(RLXDRESETF,rlxdresetf,INTV)
00084 #define RLXDRESETF(SEED) CCALLSFSUB1(RLXDRESETF,rlxdresetf,INTV, SEED)
00085 
00086 PROTOCCALLSFSUB0(INPUT,input)
00087 #define INPUT() CCALLSFSUB0(INPUT,input)
00088 
00089 //PROTOCCALLSFSUB3(INPUT,input,PLONG,PINT,PSTRING);
00090 //#define INPUT(NGES,NM,OUTFILE) CCALLSFSUB3(INPUT,input,PLONG,PINT,PSTRING,NGES,NM,OUTFILE)
00091 
00092 //PROTOCCALLSFSUB0(INITHISTO,inithisto);
00093 //#define INITHISTO() CCALLSFSUB0(INITHISTO,inithisto)
00094 
00095 //PROTOCCALLSFSUB0(ENDHISTO,endhisto);
00096 //#define ENDHISTO() CCALLSFSUB0(ENDHISTO,endhisto)
00097 
00098 //PROTOCCALLSFSUB0(WRITEEVENT,writeevent);
00099 //#define WRITEEVENT() CCALLSFSUB0(WRITEEVENT,writeevent)
00100 
00101 PROTOCCALLSFSUB2(RANLXDF,ranlxdf,DOUBLEV,INT)
00102 #define RANLXDF(AR, VAL) CCALLSFSUB2(RANLXDF,ranlxdf,DOUBLEV, INT, AR, VAL)
00103 
00104 PROTOCCALLSFSUB7(GEN_1PH,gen_1ph,INT, PDOUBLE, PDOUBLE, PDOUBLE, PDOUBLE, PDOUBLE, PDOUBLE)
00105 #define GEN_1PH(I,QQMIN,QQMAX,COS1MIN,COS1MAX,COS3MIN,COS3MAX) CCALLSFSUB7(GEN_1PH,gen_1ph,INT, PDOUBLE, PDOUBLE, PDOUBLE, PDOUBLE, PDOUBLE, PDOUBLE,I,QQMIN,QQMAX,COS1MIN,COS1MAX,COS3MIN,COS3MAX)
00106 
00107 PROTOCCALLSFSUB8(GEN_2PH,gen_2ph,INT, PDOUBLE, PDOUBLE, PDOUBLE, PDOUBLE, PDOUBLE, PDOUBLE, PDOUBLE)
00108 #define GEN_2PH(I,QQMIN,COS1MIN,COS1MAX,COS2MIN,COS2MAX,COS3MIN,COS3MAX) CCALLSFSUB8(GEN_2PH,gen_2ph,INT, PDOUBLE, PDOUBLE, PDOUBLE, PDOUBLE, PDOUBLE, PDOUBLE, PDOUBLE,I,QQMIN,COS1MIN,COS1MAX,COS2MIN,COS2MAX,COS3MIN,COS3MAX)
00109 
00110 #endif

Generated on Tue Nov 29 23:12:21 2016 for BOSS_7.0.2 by  doxygen 1.4.7