Merge lp:~maddevelopers/mg5amcnlo/enhance_factor_fix into lp:~maddevelopers/mg5amcnlo/3.0.2

Proposed by Rikkert Frederix
Status: Merged
Merged at revision: 972
Proposed branch: lp:~maddevelopers/mg5amcnlo/enhance_factor_fix
Merge into: lp:~maddevelopers/mg5amcnlo/3.0.2
Diff against target: 453 lines (+158/-85) (has conflicts)
3 files modified
Template/NLO/SubProcesses/driver_mintFO.f (+3/-0)
Template/NLO/SubProcesses/driver_mintMC.f (+4/-0)
Template/NLO/SubProcesses/fks_singular.f (+151/-85)
Text conflict in Template/NLO/SubProcesses/fks_singular.f
To merge this branch: bzr merge lp:~maddevelopers/mg5amcnlo/enhance_factor_fix
Reviewer Review Type Date Requested Status
marco zaro Approve
Hua-Sheng Shao Approve
Review via email: mp+371041@code.launchpad.net

Description of the change

Fix for the wrong renormalisation scale in the multi-channel enhancement factor.

To post a comment you must log in.
969. By Rikkert Frederix

small fix

Revision history for this message
Hua-Sheng Shao (erdissshaw) wrote :

The fix is good for me and the previous problematic process was tested to be correct both at LO and NLO.

review: Approve
Revision history for this message
marco zaro (marco-zaro) wrote :

The changes in the code look all fine. I have not checked the results, as it has been already done by HuaSheng

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'Template/NLO/SubProcesses/driver_mintFO.f'
--- Template/NLO/SubProcesses/driver_mintFO.f 2019-08-15 13:15:21 +0000
+++ Template/NLO/SubProcesses/driver_mintFO.f 2019-08-29 10:00:13 +0000
@@ -427,6 +427,7 @@
427 pass_cuts_check=.true.427 pass_cuts_check=.true.
428 if (ickkw.eq.3) call set_FxFx_scale(1,p1_cnt(0,1,0))428 if (ickkw.eq.3) call set_FxFx_scale(1,p1_cnt(0,1,0))
429 call set_alphaS(p1_cnt(0,1,0))429 call set_alphaS(p1_cnt(0,1,0))
430 call include_multichannel_enhance(1)
430 if (abrv(1:2).ne.'vi') then431 if (abrv(1:2).ne.'vi') then
431 call compute_born432 call compute_born
432 endif433 endif
@@ -472,6 +473,7 @@
472 call set_cms_stuff(izero)473 call set_cms_stuff(izero)
473 if (ickkw.eq.3) call set_FxFx_scale(2,p1_cnt(0,1,0))474 if (ickkw.eq.3) call set_FxFx_scale(2,p1_cnt(0,1,0))
474 call set_alphaS(p1_cnt(0,1,0))475 call set_alphaS(p1_cnt(0,1,0))
476 call include_multichannel_enhance(3)
475 call compute_soft_counter_term(0d0)477 call compute_soft_counter_term(0d0)
476 call set_cms_stuff(ione)478 call set_cms_stuff(ione)
477 call compute_collinear_counter_term(0d0)479 call compute_collinear_counter_term(0d0)
@@ -483,6 +485,7 @@
483 call set_cms_stuff(mohdr)485 call set_cms_stuff(mohdr)
484 if (ickkw.eq.3) call set_FxFx_scale(3,p)486 if (ickkw.eq.3) call set_FxFx_scale(3,p)
485 call set_alphaS(p)487 call set_alphaS(p)
488 call include_multichannel_enhance(2)
486 call compute_real_emission(p,1d0)489 call compute_real_emission(p,1d0)
487 endif490 endif
488 enddo491 enddo
489492
=== modified file 'Template/NLO/SubProcesses/driver_mintMC.f'
--- Template/NLO/SubProcesses/driver_mintMC.f 2019-08-15 13:57:46 +0000
+++ Template/NLO/SubProcesses/driver_mintMC.f 2019-08-29 10:00:13 +0000
@@ -747,6 +747,7 @@
747 pass_cuts_check=.true.747 pass_cuts_check=.true.
748 if (ickkw.eq.3) call set_FxFx_scale(1,p1_cnt(0,1,0))748 if (ickkw.eq.3) call set_FxFx_scale(1,p1_cnt(0,1,0))
749 call set_alphaS(p1_cnt(0,1,0))749 call set_alphaS(p1_cnt(0,1,0))
750 call include_multichannel_enhance(1)
750 if (abrv(1:2).ne.'vi') then751 if (abrv(1:2).ne.'vi') then
751 call compute_born752 call compute_born
752 endif753 endif
@@ -827,6 +828,7 @@
827 call set_cms_stuff(mohdr)828 call set_cms_stuff(mohdr)
828 if (ickkw.eq.3) call set_FxFx_scale(-3,p)829 if (ickkw.eq.3) call set_FxFx_scale(-3,p)
829 call set_alphaS(p)830 call set_alphaS(p)
831 call include_multichannel_enhance(4)
830 call compute_MC_subt_term(p,gfactsf,gfactcl,probne)832 call compute_MC_subt_term(p,gfactsf,gfactcl,probne)
831 else833 else
832c For UNLOPS all real-emission contributions need to be added to the834c For UNLOPS all real-emission contributions need to be added to the
@@ -841,6 +843,7 @@
841 call set_cms_stuff(izero)843 call set_cms_stuff(izero)
842 if (ickkw.eq.3) call set_FxFx_scale(-2,p1_cnt(0,1,0))844 if (ickkw.eq.3) call set_FxFx_scale(-2,p1_cnt(0,1,0))
843 call set_alphaS(p1_cnt(0,1,0))845 call set_alphaS(p1_cnt(0,1,0))
846 call include_multichannel_enhance(3)
844 replace_MC_subt=(1d0-gfactsf)*probne847 replace_MC_subt=(1d0-gfactsf)*probne
845 call compute_soft_counter_term(replace_MC_subt)848 call compute_soft_counter_term(replace_MC_subt)
846 call set_cms_stuff(ione)849 call set_cms_stuff(ione)
@@ -856,6 +859,7 @@
856 call set_cms_stuff(mohdr)859 call set_cms_stuff(mohdr)
857 if (ickkw.eq.3) call set_FxFx_scale(-3,p)860 if (ickkw.eq.3) call set_FxFx_scale(-3,p)
858 call set_alphaS(p)861 call set_alphaS(p)
862 call include_multichannel_enhance(2)
859 sudakov_damp=probne863 sudakov_damp=probne
860 call compute_real_emission(p,sudakov_damp)864 call compute_real_emission(p,sudakov_damp)
861 endif865 endif
862866
=== modified file 'Template/NLO/SubProcesses/fks_singular.f'
--- Template/NLO/SubProcesses/fks_singular.f 2019-08-28 11:29:57 +0000
+++ Template/NLO/SubProcesses/fks_singular.f 2019-08-29 10:00:13 +0000
@@ -979,18 +979,11 @@
979 include 'run.inc'979 include 'run.inc'
980 include 'genps.inc'980 include 'genps.inc'
981 include 'timing_variables.inc'981 include 'timing_variables.inc'
982 double precision pi,vegas_wgt,enhance,xnoborn_cnt,xtot982 double precision pi,vegas_wgt
983 $ ,bpower,cpower,tiny983 integer i
984 data xnoborn_cnt /0d0/
985 integer inoborn_cnt,i
986 data inoborn_cnt /0/
987 double precision wgt_c
988 logical firsttime984 logical firsttime
989 data firsttime /.true./985 data firsttime /.true./
990 parameter (pi=3.1415926535897932385d0)986 parameter (pi=3.1415926535897932385d0)
991 parameter (tiny=1d-6)
992 double precision p_born(0:3,nexternal-1)
993 common/pborn/ p_born
994 double precision p1_cnt(0:3,nexternal,-2:2),wgt_cnt(-2:2)987 double precision p1_cnt(0:3,nexternal,-2:2),wgt_cnt(-2:2)
995 $ ,pswgt_cnt(-2:2),jac_cnt(-2:2)988 $ ,pswgt_cnt(-2:2),jac_cnt(-2:2)
996 common/counterevnts/p1_cnt,wgt_cnt,pswgt_cnt,jac_cnt989 common/counterevnts/p1_cnt,wgt_cnt,pswgt_cnt,jac_cnt
@@ -1007,12 +1000,15 @@
1007 integer ngluons,nquarks(-6:6),nphotons1000 integer ngluons,nquarks(-6:6),nphotons
1008 common/numberofparticles/fkssymmetryfactor,fkssymmetryfactorBorn,1001 common/numberofparticles/fkssymmetryfactor,fkssymmetryfactorBorn,
1009 & fkssymmetryfactorDeg,ngluons,nquarks,nphotons1002 & fkssymmetryfactorDeg,ngluons,nquarks,nphotons
1003<<<<<<< TREE
1010 integer mapconfig(0:lmaxconfigs), this_config1004 integer mapconfig(0:lmaxconfigs), this_config
1011 common/to_mconfigs/mapconfig, this_config1005 common/to_mconfigs/mapconfig, this_config
1012 Double Precision amp2(ngraphs), jamp2(0:ncolor)1006 Double Precision amp2(ngraphs), jamp2(0:ncolor)
1013 common/to_amps/ amp2, jamp21007 common/to_amps/ amp2, jamp2
1014 double precision diagramsymmetryfactor1008 double precision diagramsymmetryfactor
1015 common /dsymfactor/diagramsymmetryfactor1009 common /dsymfactor/diagramsymmetryfactor
1010=======
1011>>>>>>> MERGE-SOURCE
1016 double precision f_b,f_nb1012 double precision f_b,f_nb
1017 common /factor_nbody/ f_b,f_nb1013 common /factor_nbody/ f_b,f_nb
1018 integer iappl1014 integer iappl
@@ -1039,6 +1035,7 @@
1039 if (fixed_order) call initplot1035 if (fixed_order) call initplot
1040 firsttime=.false.1036 firsttime=.false.
1041 endif1037 endif
1038<<<<<<< TREE
1042c Compute the multi-channel enhancement factor 'enhance'.1039c Compute the multi-channel enhancement factor 'enhance'.
1043 enhance=1.d01040 enhance=1.d0
1044 if (p_born(0,1).gt.0d0) then1041 if (p_born(0,1).gt.0d0) then
@@ -1072,105 +1069,72 @@
1072 enhance=0d01069 enhance=0d0
1073 endif1070 endif
1074 endif1071 endif
1072=======
1073>>>>>>> MERGE-SOURCE
1075 call set_cms_stuff(0)1074 call set_cms_stuff(0)
1076c f_* multiplication factors for Born and nbody1075c f_* multiplication factors for Born and nbody
1077 f_b=jac_cnt(0)*xinorm_ev/(min(xiimax_ev,xiBSVcut_used)*shat/(161076 f_b=jac_cnt(0)*xinorm_ev/(min(xiimax_ev,xiBSVcut_used)*shat/(16
1078 $ *pi**2))*enhance*fkssymmetryfactorBorn*vegas_wgt1077 $ *pi**2))*fkssymmetryfactorBorn*vegas_wgt
1079 f_nb=f_b1078 f_nb=f_b
1080 call cpu_time(tAfter)1079 call cpu_time(tAfter)
1081 tf_nb=tf_nb+(tAfter-tBefore)1080 tf_nb=tf_nb+(tAfter-tBefore)
1082 return1081 return
1083 end1082 end
10841083
1085 subroutine compute_prefactors_n1body(vegas_wgt,jac_ev)1084
1086c Compute all relevant prefactors for the real emission and counter1085 subroutine include_multichannel_enhance(imode)
1087c terms.
1088 implicit none1086 implicit none
1089 include 'nexternal.inc'1087 include 'nexternal.inc'
1090 include 'run.inc'1088 include 'run.inc'
1091 include 'genps.inc'1089 include 'genps.inc'
1092 include 'fks_powers.inc'
1093 include 'coupl.inc'
1094 include 'timing_variables.inc'1090 include 'timing_variables.inc'
1095 double precision vegas_wgt,enhance,xnoborn_cnt,xtot1091 double precision xnoborn_cnt,xtot,wgt_c,enhance,enhance_real
1096 & ,prefact,prefact_cnt_ssc,prefact_deg,prefact_c,prefact_coll1092 $ ,pas(0:3,nexternal)
1097 & ,jac_ev,pi,prefact_cnt_ssc_c,prefact_coll_c,prefact_deg_slxi
1098 & ,prefact_deg_sxi,zero,enhance_real
1099 parameter (pi=3.1415926535897932385d0, zero=0d0)
1100 data xnoborn_cnt /0d0/1093 data xnoborn_cnt /0d0/
1101 integer inoborn_cnt,i1094 integer inoborn_cnt,i,imode
1102 data inoborn_cnt /0/1095 data inoborn_cnt /0/
1103 double precision wgt_c
1104 double precision p_born(0:3,nexternal-1)1096 double precision p_born(0:3,nexternal-1)
1105 common/pborn/ p_born1097 common/pborn/ p_born
1106 double precision p_born_ev(0:3,nexternal-1)1098 double precision p_born_ev(0:3,nexternal-1)
1107 common/pborn_ev/p_born_ev1099 common/pborn_ev/ p_born_ev
1100 double precision p_ev(0:3,nexternal)
1101 common/pev/ p_ev
1108 double precision p1_cnt(0:3,nexternal,-2:2),wgt_cnt(-2:2)1102 double precision p1_cnt(0:3,nexternal,-2:2),wgt_cnt(-2:2)
1109 $ ,pswgt_cnt(-2:2),jac_cnt(-2:2)1103 $ ,pswgt_cnt(-2:2),jac_cnt(-2:2)
1110 common/counterevnts/p1_cnt,wgt_cnt,pswgt_cnt,jac_cnt1104 common/counterevnts/p1_cnt,wgt_cnt,pswgt_cnt,jac_cnt
1111 double precision xi_i_fks_ev,y_ij_fks_ev
1112 double precision p_i_fks_ev(0:3),p_i_fks_cnt(0:3,-2:2)
1113 common/fksvariables/xi_i_fks_ev,y_ij_fks_ev,p_i_fks_ev,p_i_fks_cnt
1114 integer i_fks,j_fks
1115 common/fks_indices/i_fks,j_fks
1116 double precision xi_i_fks_cnt(-2:2)
1117 common /cxiifkscnt/xi_i_fks_cnt
1118 double precision xinorm_ev
1119 common /cxinormev/xinorm_ev
1120 double precision xiimax_ev
1121 common /cxiimaxev/xiimax_ev
1122 double precision xiimax_cnt(-2:2)
1123 common /cxiimaxcnt/xiimax_cnt
1124 double precision xinorm_cnt(-2:2)
1125 common /cxinormcnt/xinorm_cnt
1126 double precision delta_used
1127 common /cdelta_used/delta_used
1128 double precision xicut_used
1129 common /cxicut_used/xicut_used
1130 double precision xiScut_used,xiBSVcut_used
1131 common /cxiScut_used/xiScut_used,xiBSVcut_used
1132 double precision ybst_til_tolab,ybst_til_tocm,sqrtshat,shat
1133 common/parton_cms_stuff/ybst_til_tolab,ybst_til_tocm,sqrtshat,shat
1134 double precision fkssymmetryfactor,fkssymmetryfactorBorn,
1135 & fkssymmetryfactorDeg
1136 integer ngluons,nquarks(-6:6),nphotons
1137 common/numberofparticles/fkssymmetryfactor,fkssymmetryfactorBorn,
1138 & fkssymmetryfactorDeg,ngluons,nquarks,nphotons
1139 integer mapconfig(0:lmaxconfigs), iconfig1105 integer mapconfig(0:lmaxconfigs), iconfig
1140 common/to_mconfigs/mapconfig, iconfig1106 common/to_mconfigs/mapconfig, iconfig
1141 Double Precision amp2(ngraphs), jamp2(0:ncolor)1107 Double Precision amp2(ngraphs), jamp2(0:ncolor)
1142 common/to_amps/ amp2, jamp21108 common/to_amps/ amp2, jamp2
1143 double precision diagramsymmetryfactor1109 double precision diagramsymmetryfactor
1144 common /dsymfactor/diagramsymmetryfactor1110 common /dsymfactor/diagramsymmetryfactor
1145 logical nocntevents1111 double precision f_b,f_nb
1146 common/cnocntevents/nocntevents1112 common /factor_nbody/ f_b,f_nb
1113 double precision f_r,f_s,f_c,f_dc,f_sc,f_dsc(4)
1114 common/factor_n1body/f_r,f_s,f_c,f_dc,f_sc,f_dsc
1115 double precision f_s_MC_S,f_s_MC_H,f_c_MC_S,f_c_MC_H
1116 $ ,f_sc_MC_S,f_sc_MC_H,f_MC_S,f_MC_H
1117 common/factor_n1body_NLOPS/f_s_MC_S,f_s_MC_H,f_c_MC_S,f_c_MC_H
1118 $ ,f_sc_MC_S,f_sc_MC_H,f_MC_S,f_MC_H
1119 double precision f_dis_d,f_dis_p,f_dis_l
1120 common/factor_dis/f_dis_d,f_dis_p,f_dis_l
1147 integer igranny,iaunt1121 integer igranny,iaunt
1148 logical granny_chain(-nexternal:nexternal),granny_is_res1122 logical granny_chain(-nexternal:nexternal),granny_is_res
1149 & ,granny_chain_real_final(-nexternal:nexternal)1123 & ,granny_chain_real_final(-nexternal:nexternal)
1150 common /c_granny_res/igranny,iaunt,granny_is_res,granny_chain1124 common /c_granny_res/igranny,iaunt,granny_is_res,granny_chain
1151 & ,granny_chain_real_final1125 & ,granny_chain_real_final
1152 double precision f_r,f_s,f_c,f_dc,f_sc,f_dsc(4)
1153 common/factor_n1body/f_r,f_s,f_c,f_dc,f_sc,f_dsc
1154 double precision f_s_MC_S,f_s_MC_H,f_c_MC_S,f_c_MC_H
1155 $ ,f_sc_MC_S,f_sc_MC_H,f_MC_S,f_MC_H
1156 common/factor_n1body_NLOPS/f_s_MC_S,f_s_MC_H,f_c_MC_S,f_c_MC_H
1157 $ ,f_sc_MC_S,f_sc_MC_H,f_MC_S,f_MC_H
1158 ! prefactors for the DIS scheme
1159 double precision prefact_dis_d,prefact_dis_p,prefact_dis_l
1160 double precision f_dis_d,f_dis_p,f_dis_l
1161 common/factor_dis/f_dis_d,f_dis_p,f_dis_l
1162 logical calculatedBorn1126 logical calculatedBorn
1163 common/ccalculatedBorn/calculatedBorn1127 common/ccalculatedBorn/calculatedBorn
1164 double precision pmass(nexternal)1128
1165 include 'pmass.inc'
1166 call cpu_time(tBefore)1129 call cpu_time(tBefore)
1130
1131c Compute the multi-channel enhancement factor 'enhance'.
1167 enhance=1.d01132 enhance=1.d0
1168 if (p_born(0,1).gt.0d0) then1133 if (p_born(0,1).gt.0d0) then
1169 call sborn(p_born,wgt_c)1134 call sborn(p_born,wgt_c)
1170 elseif(p_born(0,1).lt.0d0)then1135 elseif(p_born(0,1).lt.0d0)then
1171 enhance=0d01136 enhance=0d0
1172 endif1137 endif
1173c Compute the multi-channel enhancement factor 'enhance'.
1174 if (enhance.eq.0d0)then1138 if (enhance.eq.0d0)then
1175 xnoborn_cnt=xnoborn_cnt+1.d01139 xnoborn_cnt=xnoborn_cnt+1.d0
1176 if(log10(xnoborn_cnt).gt.inoborn_cnt)then1140 if(log10(xnoborn_cnt).gt.inoborn_cnt)then
@@ -1181,9 +1145,9 @@
1181 else1145 else
1182 xtot=0d01146 xtot=0d0
1183 if (mapconfig(0).eq.0) then1147 if (mapconfig(0).eq.0) then
1184 write (*,*) 'Fatal error in compute_prefactor_n1body,'/1148 write (*,*) 'Fatal error in compute_prefactor_nbody:'/
1185 & /' no Born diagrams ',mapconfig1149 & /' no Born diagrams ',mapconfig,
1186 & ,'. Check bornfromreal.inc'1150 & '. Check bornfromreal.inc'
1187 write (*,*) 'Is fks_singular compiled correctly?'1151 write (*,*) 'Is fks_singular compiled correctly?'
1188 stop 11152 stop 1
1189 endif1153 endif
@@ -1198,11 +1162,17 @@
1198 endif1162 endif
1199 endif1163 endif
12001164
1165c In the case there is the special phase-space mapping for resonances,
1166c use the Born computed with those as the mapping.
1201 enhance_real=1.d01167 enhance_real=1.d0
1202 if (granny_is_res) then1168 if (granny_is_res .and. imode.eq.2) then
1203 if (p_born_ev(0,1).gt.0d0) then1169 if (p_born_ev(0,1).gt.0d0) then
1204 calculatedBorn=.false.1170 calculatedBorn=.false.
1171 pas(0:3,nexternal)=0d0
1172 pas(0:3,1:nexternal-1)=p_born_ev(0:3,1:nexternal-1)
1173 call set_alphas(pas)
1205 call sborn(p_born_ev,wgt_c)1174 call sborn(p_born_ev,wgt_c)
1175 call set_alphas(p_ev)
1206 calculatedBorn=.false.1176 calculatedBorn=.false.
1207 elseif(p_born_ev(0,1).lt.0d0)then1177 elseif(p_born_ev(0,1).lt.0d0)then
1208 if (enhance.ne.0d0) then 1178 if (enhance.ne.0d0) then
@@ -1242,18 +1212,114 @@
1242 enhance_real=enhance1212 enhance_real=enhance
1243 endif1213 endif
12441214
1215 if (imode.eq.1) then
1216 f_b= f_b *enhance
1217 f_nb= f_nb *enhance
1218 elseif(imode.eq.2) then
1219 f_r= f_r *enhance_real
1220 elseif(imode.eq.4) then
1221 f_MC_S= f_MC_S *enhance
1222 f_MC_H= f_MC_H *enhance
1223 elseif(imode.eq.3) then
1224 f_s= f_s *enhance
1225 f_s_MC_S= f_s_MC_S *enhance
1226 f_S_MC_H= f_S_MC_H *enhance
1227 f_c= f_c *enhance
1228 f_c_MC_S= f_c_MC_S *enhance
1229 f_c_MC_H= f_c_MC_H *enhance
1230 f_dc= f_dc *enhance
1231 f_sc= f_sc *enhance
1232 f_sc_MC_S=f_sc_MC_S*enhance
1233 f_sc_MC_H=f_sc_MC_H*enhance
1234 f_dsc(1)= f_dsc(1) *enhance
1235 f_dsc(2)= f_dsc(2) *enhance
1236 f_dsc(3)= f_dsc(3) *enhance
1237 f_dsc(4)= f_dsc(4) *enhance
1238 f_dis_d= f_dis_d *enhance
1239 f_dis_p= f_dis_p *enhance
1240 f_dis_l= f_dis_l *enhance
1241 endif
1242 call cpu_time(tAfter)
1243 tf_nb=tf_nb+(tAfter-tBefore)
1244
1245 return
1246 end
1247
1248
1249 subroutine compute_prefactors_n1body(vegas_wgt,jac_ev)
1250c Compute all relevant prefactors for the real emission and counter
1251c terms.
1252 implicit none
1253 include 'nexternal.inc'
1254 include 'run.inc'
1255 include 'genps.inc'
1256 include 'fks_powers.inc'
1257 include 'coupl.inc'
1258 include 'timing_variables.inc'
1259 double precision vegas_wgt,prefact,prefact_cnt_ssc,prefact_deg
1260 $ ,prefact_c,prefact_coll,jac_ev,pi,prefact_cnt_ssc_c
1261 $ ,prefact_coll_c,prefact_deg_slxi,prefact_deg_sxi,zero
1262 integer i
1263 parameter (pi=3.1415926535897932385d0, ZERO=0d0)
1264 double precision p1_cnt(0:3,nexternal,-2:2),wgt_cnt(-2:2)
1265 $ ,pswgt_cnt(-2:2),jac_cnt(-2:2)
1266 common/counterevnts/p1_cnt,wgt_cnt,pswgt_cnt,jac_cnt
1267 double precision xi_i_fks_ev,y_ij_fks_ev
1268 double precision p_i_fks_ev(0:3),p_i_fks_cnt(0:3,-2:2)
1269 common/fksvariables/xi_i_fks_ev,y_ij_fks_ev,p_i_fks_ev,p_i_fks_cnt
1270 integer i_fks,j_fks
1271 common/fks_indices/i_fks,j_fks
1272 double precision xi_i_fks_cnt(-2:2)
1273 common /cxiifkscnt/xi_i_fks_cnt
1274 double precision xinorm_ev
1275 common /cxinormev/xinorm_ev
1276 double precision xiimax_ev
1277 common /cxiimaxev/xiimax_ev
1278 double precision xiimax_cnt(-2:2)
1279 common /cxiimaxcnt/xiimax_cnt
1280 double precision xinorm_cnt(-2:2)
1281 common /cxinormcnt/xinorm_cnt
1282 double precision delta_used
1283 common /cdelta_used/delta_used
1284 double precision xicut_used
1285 common /cxicut_used/xicut_used
1286 double precision xiScut_used,xiBSVcut_used
1287 common /cxiScut_used/xiScut_used,xiBSVcut_used
1288 double precision ybst_til_tolab,ybst_til_tocm,sqrtshat,shat
1289 common/parton_cms_stuff/ybst_til_tolab,ybst_til_tocm,sqrtshat,shat
1290 double precision fkssymmetryfactor,fkssymmetryfactorBorn,
1291 & fkssymmetryfactorDeg
1292 integer ngluons,nquarks(-6:6),nphotons
1293 common/numberofparticles/fkssymmetryfactor,fkssymmetryfactorBorn,
1294 & fkssymmetryfactorDeg,ngluons,nquarks,nphotons
1295 logical nocntevents
1296 common/cnocntevents/nocntevents
1297 double precision f_r,f_s,f_c,f_dc,f_sc,f_dsc(4)
1298 common/factor_n1body/f_r,f_s,f_c,f_dc,f_sc,f_dsc
1299 double precision f_s_MC_S,f_s_MC_H,f_c_MC_S,f_c_MC_H
1300 $ ,f_sc_MC_S,f_sc_MC_H,f_MC_S,f_MC_H
1301 common/factor_n1body_NLOPS/f_s_MC_S,f_s_MC_H,f_c_MC_S,f_c_MC_H
1302 $ ,f_sc_MC_S,f_sc_MC_H,f_MC_S,f_MC_H
1303 ! prefactors for the DIS scheme
1304 double precision prefact_dis_d,prefact_dis_p,prefact_dis_l
1305 double precision f_dis_d,f_dis_p,f_dis_l
1306 common/factor_dis/f_dis_d,f_dis_p,f_dis_l
1307 double precision pmass(nexternal)
1308 include 'pmass.inc'
1309 call cpu_time(tBefore)
1310
1245c f_* multiplication factors for real-emission, soft counter, ... etc. 1311c f_* multiplication factors for real-emission, soft counter, ... etc.
1246 prefact=xinorm_ev/xi_i_fks_ev/(1-y_ij_fks_ev)1312 prefact=xinorm_ev/xi_i_fks_ev/(1-y_ij_fks_ev)
1247 f_r=prefact*jac_ev*enhance_real*fkssymmetryfactor*vegas_wgt1313 f_r=prefact*jac_ev*fkssymmetryfactor*vegas_wgt
1248 f_MC_S=f_r1314 f_MC_S=f_r
1249 f_MC_H=f_r1315 f_MC_H=f_r
1250 if (.not.nocntevents) then1316 if (.not.nocntevents) then
1251 prefact_cnt_ssc=xinorm_ev/min(xiimax_ev,xiScut_used)*1317 prefact_cnt_ssc=xinorm_ev/min(xiimax_ev,xiScut_used)*
1252 $ log(xicut_used/min(xiimax_ev,xiScut_used))/(11318 $ log(xicut_used/min(xiimax_ev,xiScut_used))/(1
1253 $ -y_ij_fks_ev)1319 $ -y_ij_fks_ev)
1254 f_s=(prefact+prefact_cnt_ssc)*jac_cnt(0)*enhance1320 f_s=(prefact+prefact_cnt_ssc)*jac_cnt(0)
1255 $ *fkssymmetryfactor*vegas_wgt1321 $ *fkssymmetryfactor*vegas_wgt
1256 f_s_MC_S=prefact*jac_cnt(0)*enhance1322 f_s_MC_S=prefact*jac_cnt(0)
1257 $ *fkssymmetryfactor*vegas_wgt1323 $ *fkssymmetryfactor*vegas_wgt
1258 f_s_MC_H=f_s_MC_S1324 f_s_MC_H=f_s_MC_S
12591325
@@ -1264,9 +1330,9 @@
1264 prefact_coll=xinorm_cnt(1)/xi_i_fks_cnt(1)*log(delta_used1330 prefact_coll=xinorm_cnt(1)/xi_i_fks_cnt(1)*log(delta_used
1265 $ /deltaS)/deltaS1331 $ /deltaS)/deltaS
1266 f_c=(prefact_c+prefact_coll)*jac_cnt(1)1332 f_c=(prefact_c+prefact_coll)*jac_cnt(1)
1267 $ *enhance*fkssymmetryfactor*vegas_wgt1333 $ *fkssymmetryfactor*vegas_wgt
1268 f_c_MC_S=prefact_c*jac_cnt(1)1334 f_c_MC_S=prefact_c*jac_cnt(1)
1269 $ *enhance*fkssymmetryfactor*vegas_wgt1335 $ *fkssymmetryfactor*vegas_wgt
1270 f_c_MC_H=f_c_MC_S1336 f_c_MC_H=f_c_MC_S
12711337
1272 call set_cms_stuff(1)1338 call set_cms_stuff(1)
@@ -1277,13 +1343,13 @@
1277 prefact_coll_c=xinorm_cnt(1)/min(xiimax_cnt(1),xiScut_used)1343 prefact_coll_c=xinorm_cnt(1)/min(xiimax_cnt(1),xiScut_used)
1278 $ *log(xicut_used/min(xiimax_cnt(1),xiScut_used))1344 $ *log(xicut_used/min(xiimax_cnt(1),xiScut_used))
1279 $ *log(delta_used/deltaS)/deltaS1345 $ *log(delta_used/deltaS)/deltaS
1280 f_dc=jac_cnt(1)*prefact_deg/(shat/(32*pi**2))*enhance1346 f_dc=jac_cnt(1)*prefact_deg/(shat/(32*pi**2))
1281 $ *fkssymmetryfactorDeg*vegas_wgt1347 $ *fkssymmetryfactorDeg*vegas_wgt
1282 f_sc=(prefact_c+prefact_coll+prefact_cnt_ssc_c1348 f_sc=(prefact_c+prefact_coll+prefact_cnt_ssc_c
1283 & +prefact_coll_c)*jac_cnt(2)*enhance1349 & +prefact_coll_c)*jac_cnt(2)
1284 & *fkssymmetryfactorDeg*vegas_wgt1350 & *fkssymmetryfactorDeg*vegas_wgt
1285 f_sc_MC_S=prefact_c*jac_cnt(2)1351 f_sc_MC_S=prefact_c*jac_cnt(2)
1286 $ *enhance*fkssymmetryfactor*vegas_wgt1352 $ *fkssymmetryfactor*vegas_wgt
1287 f_sc_MC_H=f_sc_MC_S1353 f_sc_MC_H=f_sc_MC_S
12881354
1289 call set_cms_stuff(2)1355 call set_cms_stuff(2)
@@ -1294,24 +1360,24 @@
1294 & ,xiScut_used)*( log(xicut_used)**21360 & ,xiScut_used)*( log(xicut_used)**2
1295 & -log(min(xiimax_cnt(1),xiScut_used))**2 )*1/(2.d01361 & -log(min(xiimax_cnt(1),xiScut_used))**2 )*1/(2.d0
1296 & *deltaS)1362 & *deltaS)
1297 f_dsc(1)=prefact_deg*jac_cnt(2)/(shat/(32*pi**2))*enhance1363 f_dsc(1)=prefact_deg*jac_cnt(2)/(shat/(32*pi**2))
1298 & *fkssymmetryfactorDeg*vegas_wgt1364 & *fkssymmetryfactorDeg*vegas_wgt
1299 f_dsc(2)=prefact_deg_sxi*jac_cnt(2)/(shat/(32*pi**2))1365 f_dsc(2)=prefact_deg_sxi*jac_cnt(2)/(shat/(32*pi**2))
1300 & *enhance*fkssymmetryfactorDeg*vegas_wgt1366 & *fkssymmetryfactorDeg*vegas_wgt
1301 f_dsc(3)=prefact_deg_slxi*jac_cnt(2)/(shat/(32*pi**2))1367 f_dsc(3)=prefact_deg_slxi*jac_cnt(2)/(shat/(32*pi**2))
1302 & *enhance*fkssymmetryfactorDeg*vegas_wgt1368 & *fkssymmetryfactorDeg*vegas_wgt
1303 f_dsc(4)=( prefact_deg+prefact_deg_sxi )*jac_cnt(2)/(shat1369 f_dsc(4)=( prefact_deg+prefact_deg_sxi )*jac_cnt(2)/(shat
1304 & /(32*pi**2))*enhance*fkssymmetryfactorDeg1370 & /(32*pi**2))*fkssymmetryfactorDeg
1305 & *vegas_wgt1371 & *vegas_wgt
1306 ! prefactor for the DIS scheme1372 ! prefactor for the DIS scheme
1307 prefact_dis_d=xinorm_cnt(1)/xiScut_used/deltaS1373 prefact_dis_d=xinorm_cnt(1)/xiScut_used/deltaS
1308 f_dis_d=prefact_dis_d*jac_cnt(2)/(shat/(32*pi**2))*enhance1374 f_dis_d=prefact_dis_d*jac_cnt(2)/(shat/(32*pi**2))
1309 & *fkssymmetryfactorDeg*vegas_wgt1375 & *fkssymmetryfactorDeg*vegas_wgt
1310 prefact_dis_p=xinorm_cnt(1)*dlog(xiScut_used)/xiScut_used/deltaS1376 prefact_dis_p=xinorm_cnt(1)*dlog(xiScut_used)/xiScut_used/deltaS
1311 f_dis_p=prefact_dis_p*jac_cnt(2)/(shat/(32*pi**2))*enhance1377 f_dis_p=prefact_dis_p*jac_cnt(2)/(shat/(32*pi**2))
1312 & *fkssymmetryfactorDeg*vegas_wgt1378 & *fkssymmetryfactorDeg*vegas_wgt
1313 prefact_dis_l=xinorm_cnt(1)*dlog(xiScut_used)**2/2d0/xiScut_used/deltaS1379 prefact_dis_l=xinorm_cnt(1)*dlog(xiScut_used)**2/2d0/xiScut_used/deltaS
1314 f_dis_l=prefact_dis_l*jac_cnt(2)/(shat/(32*pi**2))*enhance1380 f_dis_l=prefact_dis_l*jac_cnt(2)/(shat/(32*pi**2))
1315 & *fkssymmetryfactorDeg*vegas_wgt1381 & *fkssymmetryfactorDeg*vegas_wgt
1316 else1382 else
1317 f_c=0d01383 f_c=0d0

Subscribers

People subscribed via source and target branches

to all changes: