Skip to content

Commit 98bda86

Browse files
author
nason
committed
Include neutron beams, activated with ih1/ih2 = 2
git-svn-id: svn://powhegbox.mib.infn.it/trunk/POWHEG-BOX@2264 9e129b38-c2c0-4eec-9301-dc54fda404de
1 parent 39a5c75 commit 98bda86

File tree

7 files changed

+125
-12
lines changed

7 files changed

+125
-12
lines changed

Dijet/Version-pre2-1/pwhg_init.f

+18-2
Original file line numberDiff line numberDiff line change
@@ -103,8 +103,24 @@ subroutine pwhginit
103103
c proton:
104104
ebmup(1)=kn_beams(0,1)
105105
ebmup(2)=kn_beams(0,2)
106-
idbmup(1) = 2212*pdf_ih1
107-
idbmup(2) = 2212*pdf_ih2
106+
if(abs(pdf_ih1).eq.1) then
107+
c proton and antiproton
108+
idbmup(1) = 2212*pdf_ih1
109+
elseif(abs(pdf_ih1).eq.2) then
110+
c neutron and antineutron
111+
idbmup(1) = 2112*pdf_ih1/abs(pdf_ih1)
112+
else
113+
write(*,*) ' unimplemented hadron 1 ',pdf_ih1
114+
call pwhg_exit(-1)
115+
endif
116+
if(abs(pdf_ih2).eq.1) then
117+
idbmup(2) = 2212*pdf_ih2
118+
elseif(abs(pdf_ih2).eq.2) then
119+
idbmup(2) = 2112*pdf_ih2/abs(pdf_ih2)
120+
else
121+
write(*,*) ' unimplemented hadron 2 ',pdf_ih2
122+
call pwhg_exit(-1)
123+
endif
108124
c pdf group; negative to use internal herwig pdf's for showering
109125
pdfgup(1)=-1
110126
pdfgup(2)=-1

Dijet/doublefsr/pwhg_init.f

+18-2
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,24 @@ subroutine pwhginit
9393
c proton:
9494
ebmup(1)=kn_beams(0,1)
9595
ebmup(2)=kn_beams(0,2)
96-
idbmup(1) = 2212*pdf_ih1
97-
idbmup(2) = 2212*pdf_ih2
96+
if(abs(pdf_ih1).eq.1) then
97+
c proton and antiproton
98+
idbmup(1) = 2212*pdf_ih1
99+
elseif(abs(pdf_ih1).eq.2) then
100+
c neutron and antineutron
101+
idbmup(1) = 2112*pdf_ih1/abs(pdf_ih1)
102+
else
103+
write(*,*) ' unimplemented hadron 1 ',pdf_ih1
104+
call pwhg_exit(-1)
105+
endif
106+
if(abs(pdf_ih2).eq.1) then
107+
idbmup(2) = 2212*pdf_ih2
108+
elseif(abs(pdf_ih2).eq.2) then
109+
idbmup(2) = 2112*pdf_ih2/abs(pdf_ih2)
110+
else
111+
write(*,*) ' unimplemented hadron 2 ',pdf_ih2
112+
call pwhg_exit(-1)
113+
endif
98114
c pdf group; negative to use internal herwig pdf's for showering
99115
pdfgup(1)=-1
100116
pdfgup(2)=-1

ReweightingStuff/pwhg_init.f

+18-2
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,24 @@ subroutine pwhginit
9393
c proton:
9494
ebmup(1)=kn_beams(0,1)
9595
ebmup(2)=kn_beams(0,2)
96-
idbmup(1) = 2212*pdf_ih1
97-
idbmup(2) = 2212*pdf_ih2
96+
if(abs(pdf_ih1).eq.1) then
97+
c proton and antiproton
98+
idbmup(1) = 2212*pdf_ih1
99+
elseif(abs(pdf_ih1).eq.2) then
100+
c neutron and antineutron
101+
idbmup(1) = 2112*pdf_ih1/abs(pdf_ih1)
102+
else
103+
write(*,*) ' unimplemented hadron 1 ',pdf_ih1
104+
call pwhg_exit(-1)
105+
endif
106+
if(abs(pdf_ih2).eq.1) then
107+
idbmup(2) = 2212*pdf_ih2
108+
elseif(abs(pdf_ih2).eq.2) then
109+
idbmup(2) = 2112*pdf_ih2/abs(pdf_ih2)
110+
else
111+
write(*,*) ' unimplemented hadron 2 ',pdf_ih2
112+
call pwhg_exit(-1)
113+
endif
98114
c pdf group; negative to use internal herwig pdf's for showering
99115
pdfgup(1)=-1
100116
pdfgup(2)=-1

VBF_Wp_Wm/boxfiles-pre2-1/pwhg_init.f

+18-2
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,24 @@ subroutine pwhginit
9393
c proton:
9494
ebmup(1)=kn_beams(0,1)
9595
ebmup(2)=kn_beams(0,2)
96-
idbmup(1) = 2212*pdf_ih1
97-
idbmup(2) = 2212*pdf_ih2
96+
if(abs(pdf_ih1).eq.1) then
97+
c proton and antiproton
98+
idbmup(1) = 2212*pdf_ih1
99+
elseif(abs(pdf_ih1).eq.2) then
100+
c neutron and antineutron
101+
idbmup(1) = 2112*pdf_ih1/abs(pdf_ih1)
102+
else
103+
write(*,*) ' unimplemented hadron 1 ',pdf_ih1
104+
call pwhg_exit(-1)
105+
endif
106+
if(abs(pdf_ih2).eq.1) then
107+
idbmup(2) = 2212*pdf_ih2
108+
elseif(abs(pdf_ih2).eq.2) then
109+
idbmup(2) = 2112*pdf_ih2/abs(pdf_ih2)
110+
else
111+
write(*,*) ' unimplemented hadron 2 ',pdf_ih2
112+
call pwhg_exit(-1)
113+
endif
98114
c pdf group; negative to use internal herwig pdf's for showering
99115
pdfgup(1)=-1
100116
pdfgup(2)=-1

Version-pre2-1/pwhg_init.f

+18-2
Original file line numberDiff line numberDiff line change
@@ -117,8 +117,24 @@ subroutine pwhginit
117117
c proton:
118118
ebmup(1)=kn_beams(0,1)
119119
ebmup(2)=kn_beams(0,2)
120-
idbmup(1) = 2212*pdf_ih1
121-
idbmup(2) = 2212*pdf_ih2
120+
if(abs(pdf_ih1).eq.1) then
121+
c proton and antiproton
122+
idbmup(1) = 2212*pdf_ih1
123+
elseif(abs(pdf_ih1).eq.2) then
124+
c neutron and antineutron
125+
idbmup(1) = 2112*pdf_ih1/abs(pdf_ih1)
126+
else
127+
write(*,*) ' unimplemented hadron 1 ',pdf_ih1
128+
call pwhg_exit(-1)
129+
endif
130+
if(abs(pdf_ih2).eq.1) then
131+
idbmup(2) = 2212*pdf_ih2
132+
elseif(abs(pdf_ih2).eq.2) then
133+
idbmup(2) = 2112*pdf_ih2/abs(pdf_ih2)
134+
else
135+
write(*,*) ' unimplemented hadron 2 ',pdf_ih2
136+
call pwhg_exit(-1)
137+
endif
122138
c pdf group; negative to use internal herwig pdf's for showering
123139
pdfgup(1)=-1
124140
pdfgup(2)=-1

lhapdfif.f

+17
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,23 @@ subroutine genericpdf(ndns,ih,xmu2,x,fx)
143143
fx(j)=fx(-j)
144144
fx(-j)=tmp
145145
enddo
146+
c Do the neutron (Suggested by Jan Kretzschmar, 17/4/2013)
147+
elseif(abs(ih).eq.2) then
148+
c 2 is neutron: exchange u and d pdfs
149+
tmp=fx(1)
150+
fx(1)=fx(2)
151+
fx(2)=tmp
152+
tmp=fx(-1)
153+
fx(-1)=fx(-2)
154+
fx(-2)=tmp
155+
if(ih.eq.-2) then
156+
c -2 is anti-neutron: exchange quarks and anti-quarks, then u and d pdfs
157+
do j=1,6
158+
tmp=fx(j)
159+
fx(j)=fx(-j)
160+
fx(-j)=tmp
161+
enddo
162+
endif
146163
elseif(ih.eq.3) then
147164
tmp=fx(1)
148165
fx(1)=fx(-1)

pwhg_init.f

+18-2
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,24 @@ subroutine pwhginit
8888
c proton:
8989
ebmup(1)=kn_beams(0,1)
9090
ebmup(2)=kn_beams(0,2)
91-
idbmup(1) = 2212*pdf_ih1
92-
idbmup(2) = 2212*pdf_ih2
91+
if(abs(pdf_ih1).eq.1) then
92+
c proton and antiproton
93+
idbmup(1) = 2212*pdf_ih1
94+
elseif(abs(pdf_ih1).eq.2) then
95+
c neutron and antineutron
96+
idbmup(1) = 2112*pdf_ih1/abs(pdf_ih1)
97+
else
98+
write(*,*) ' unimplemented hadron 1 ',pdf_ih1
99+
call pwhg_exit(-1)
100+
endif
101+
if(abs(pdf_ih2).eq.1) then
102+
idbmup(2) = 2212*pdf_ih2
103+
elseif(abs(pdf_ih2).eq.2) then
104+
idbmup(2) = 2112*pdf_ih2/abs(pdf_ih2)
105+
else
106+
write(*,*) ' unimplemented hadron 2 ',pdf_ih2
107+
call pwhg_exit(-1)
108+
endif
93109
c pdf group; negative to use internal herwig pdf's for showering
94110
pdfgup(1)=-1
95111
pdfgup(2)=-1

0 commit comments

Comments
 (0)