You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
79 lines
3.2 KiB
79 lines
3.2 KiB
!
|
|
! SPDX-License-Identifier: GPL-3.0-or-later
|
|
! Copyright (C) 2019-2022, respective authors of MCFM.
|
|
!
|
|
subroutine gs_wc_dg(p,ig,is,ie,in,jn,je,jb,ja,jt,amp)
|
|
implicit none
|
|
include 'types.f'
|
|
c g(ig)+s(is)-->W^-{e^-(ie)+nbar(in)}+t{W^+[n(jn)+e^+(je)]+b(jb)}+a(ja)
|
|
c---- helicities: gs(ht,ha)
|
|
c--- labels on amplitudes represent helicities for the heavy quark
|
|
c--- and the gluon (ja) respectively
|
|
c--- 1 = negative helicity, 2 = positive helicity
|
|
c--- heavy quark momentum is made massless (ic) with the gluon momentum ig
|
|
|
|
include 'constants.f'
|
|
include 'mxpart.f'
|
|
include 'masses.f'
|
|
include 'sprods_com.f'
|
|
include 'zprods_com.f'
|
|
integer:: is,ig,ie,in,ja,je,jn,jb,jt,i,j
|
|
real(dp):: p(mxpart,4)
|
|
real(dp):: dot,mtsq,tDa,tDg,bDa,tsq,propd,propt
|
|
complex(dp):: amp(2,2)
|
|
|
|
propd=sqrt((s(je,jn)-wmass**2)**2+(wmass*wwidth)**2)
|
|
tsq =s(je,jn)+s(je,jb)+s(je,ja)+s(jn,jb)+s(jn,ja)+s(jb,ja)
|
|
propt=sqrt((tsq-mt**2)**2+(mt*twidth)**2)
|
|
|
|
mtsq=mt**2
|
|
bDa=+dot(p,jb,ja)
|
|
tDa=+dot(p,je,ja)+dot(p,jn,ja)+dot(p,jb,ja)
|
|
tDg=-dot(p,is,ig)-dot(p,ie,ig)-dot(p,in,ig)
|
|
|
|
amp(1,1)= + mtsq*tDg**(-1)*tDa**(-1) * ( one/four*za(jb,jn)*za(
|
|
& ig,ja)*zb(ig,je)*zb(is,jt)/zb(is,ja) )
|
|
amp(1,1) = amp(1,1) + mtsq*tDa**(-1) * ( half*za(jb,jn)*za(
|
|
& ig,ja)*zb(is,je)/za(ig,jt)/zb(is,ja) )
|
|
amp(1,1) = amp(1,1) + tDa**(-1) * ( half*za(jb,jn)*za(ja,jt)
|
|
& *zb(is,jt)*zb(je,jt)/zb(is,ja) )
|
|
amp(1,1) = amp(1,1) + bDa**(-1) * ( half*za(jb,ja)*za(ja,jn)
|
|
& *zb(je,jt) + half*za(jb,ja)*za(jb,jn)*zb(is,jb)*zb(je,jt
|
|
& )/zb(is,ja) )
|
|
|
|
amp(1,2)= + mtsq*tDg**(-1)*tDa**(-1) * ( - one/four*za(jb,jn)*
|
|
& za(ig,is)*zb(ig,je)*zb(ja,jt)/za(is,ja) )
|
|
amp(1,2) = amp(1,2) + mtsq*tDa**(-1) * ( - half*za(jb,jn)*
|
|
& za(ig,is)*zb(ja,je)/za(ig,jt)/za(is,ja) )
|
|
amp(1,2) = amp(1,2) + tDa**(-1) * ( - half*za(jb,jn)*za(is,
|
|
& jt)*zb(ja,jt)*zb(je,jt)/za(is,ja) - half*za(jb,jn)*zb(
|
|
& ja,jt)*zb(ja,je) )
|
|
amp(1,2) = amp(1,2) + bDa**(-1) * ( - half*za(jb,jn)*za(is,
|
|
& jb)*zb(jb,ja)*zb(je,jt)/za(is,ja) )
|
|
|
|
amp(2,1)= + mt*mtsq*tDg**(-1)*tDa**(-1) * ( one/four*za(jb,jn)*
|
|
& za(ig,ja)*zb(ig,is)*zb(ig,je)/zb(ig,jt)/zb(is,ja) )
|
|
amp(2,1) = amp(2,1) + mt*tDa**(-1) * ( half*za(jb,jn)*za(ja,
|
|
& jt)*zb(ig,is)*zb(je,jt)/zb(ig,jt)/zb(is,ja) + half*za(
|
|
& jb,jn)*za(ja,jt)*zb(is,je)/zb(is,ja) )
|
|
amp(2,1) = amp(2,1) + mt*bDa**(-1) * ( half*za(jb,ja)*za(ja,
|
|
& jn)*zb(ig,je)/zb(ig,jt) + half*za(jb,ja)*za(jb,jn)*zb(
|
|
& ig,je)*zb(is,jb)/zb(ig,jt)/zb(is,ja) )
|
|
|
|
amp(2,2)= + mt*mtsq*tDg**(-1)*tDa**(-1) * ( - one/four*za(jb,
|
|
& jn)*za(ig,is)*zb(ig,ja)*zb(ig,je)/za(is,ja)/zb(ig,jt) )
|
|
amp(2,2) = amp(2,2) + mt*tDa**(-1) * ( - half*za(jb,jn)*za(
|
|
& is,jt)*zb(ig,ja)*zb(je,jt)/za(is,ja)/zb(ig,jt) - half*
|
|
& za(jb,jn)*za(is,jt)*zb(ja,je)/za(is,ja) - half*za(jb,jn
|
|
& )*zb(ig,ja)*zb(ja,je)/zb(ig,jt) )
|
|
amp(2,2) = amp(2,2) + mt*bDa**(-1) * ( - half*za(jb,jn)*za(
|
|
& is,jb)*zb(jb,ja)*zb(ig,je)/za(is,ja)/zb(ig,jt) )
|
|
|
|
do i=1,2
|
|
do j=1,2
|
|
amp(i,j)=amp(i,j)/propd/propt
|
|
enddo
|
|
enddo
|
|
|
|
return
|
|
end
|