1
subroutine ftoxkk(fo,tc,g,fmass,fwidth , fto)
3
c This subroutine computes an off-shell fermion wavefunction from a
4
c flowing-OUT external fermion and a KK tensor boson.
7
c complex fo(6) : flow-out fermion <fo|
8
c complex tc(6,4) : input tensor t
9
c real g : coupling constant gtf
10
c real fmass : mass of OUTPUT fermion f'
11
c real fwidth : width of OUTPUT fermion f'
14
c complex fvo(6) : off-shell fermion <fo,t,f'|
17
double complex fo(6), tc(6,4), fto(6), d
18
double complex k14p, k14m, k23, k23s, p14p, p14m
19
double complex D1, D2, D3, D4, Tii, mTii
20
double complex T11, T22, T33, T44, T12, T13, T14, T23, T24, T34
21
double precision g, fmass, fwidth, pf(4), k(4), pf2, m2
24
double precision rZero, rTwo
25
parameter( rZero = 0.0d0, rTwo = 2.0d0 )
27
parameter( ci = ( 0.0d0, 1.0d0 ) )
31
fto(5) = fo(5) + tc(5,1)
32
fto(6) = fo(6) + tc(6,1)
38
pf2 = pf(1)**2 - pf(2)**2 - pf(3)**2 - pf(4)**2
40
k(1) = dreal(fo(5)) + pf(1)
41
k(2) = dreal(fo(6)) + pf(2)
42
k(3) = dimag(fo(6)) + pf(3)
43
k(4) = dimag(fo(5)) + pf(4)
45
k14p = dcmplx( k(1)+k(4), rZero )
46
k14m = dcmplx( k(1)-k(4), rZero )
47
k23 = dcmplx( k(2), k(3) )
49
p14p = dcmplx( pf(1)+pf(4), rZero )
50
p14m = dcmplx( pf(1)-pf(4), rZero )
56
T12 = tc(1,2) + tc(2,1)
57
T13 = tc(1,3) + tc(3,1)
58
T14 = tc(1,4) + tc(4,1)
59
T23 = tc(2,3) + tc(3,2)
60
T24 = tc(2,4) + tc(4,2)
61
T34 = tc(3,4) + tc(4,3)
63
D1 = k(1)*(T11-T14) + k(2)*(T24-T12)
64
& + k(3)*(T34-T13) + k(4)*(T44-T14)
66
D2 = k(1)*(ci*T13-T12) + k(2)*(T22-ci*T23)
67
& + k(3)*(T23-ci*T33) + k(4)*(T24-ci*T34)
69
D3 = - k(1)*(T12+ci*T13) + k(2)*(T22+ci*T23)
70
& + k(3)*(T23+ci*T33) + k(4)*(T24+ci*T34)
72
D4 = k(1)*(T11+T14) - k(2)*(T12+T24)
73
& - k(3)*(T13+T34) - k(4)*(T14+T44)
75
Tii = 16.d0*(T11 - T22 - T33 - T44)
78
if ( fmass.gt.rZero ) then
79
d = - g/dcmplx( pf2-fmass**2, fmass*fwidth )
81
d = - g/dcmplx( pf2, rZero )
84
fto(1) = fo(1)*(p14p*D1 + fto(6)*D2)
85
& + fo(2)*(p14p*D3 + fto(6)*D4)
86
& + Tii*(- fo(1)*(p14p*k14m - fto(6)*k23s)
87
& + fo(2)*(p14p*k23 - fto(6)*k14p) )
89
fto(2) = fo(1)*(dconjg(fto(6))*D1 + p14m*D2)
90
& + fo(2)*(dconjg(fto(6))*D3 + p14m*D4)
91
& + Tii*( fo(1)*(p14m*k23s - dconjg(fto(6))*k14m)
92
& - fo(2)*(p14m*k14p - dconjg(fto(6))*k23 ) )
94
fto(3) = fo(3)*(p14m*D4 + fto(6)*D2)
95
& + fo(4)*(p14m*D3 - fto(6)*D1)
96
& + Tii*( fo(3)*(fto(6)*k23s - p14m*k14p)
97
& + fo(4)*(fto(6)*k14m - p14m*k23 ) )
99
fto(4) = - fo(3)*(dconjg(fto(6))*D4 + p14p*D2)
100
& + fo(4)*(dconjg(fto(6))*D3 - p14p*D1)
101
& + Tii*( fo(3)*(dconjg(fto(6))*k14p - p14p*k23s)
102
& + fo(4)*(dconjg(fto(6))*k23 - p14p*k14m) )
104
if ( fmass.gt.rZero ) then
105
fto(1) = fto(1) + fmass*( D4*fo(3) - D3*fo(4) )
106
fto(2) = fto(2) + fmass*(-D2*fo(3) + D1*fo(4) )
107
fto(3) = fto(3) + fmass*( D1*fo(1) + D3*fo(2) )
108
fto(4) = fto(4) + fmass*( D2*fo(1) + D4*fo(2) )
110
fto(i) = fto(i) + mTii*m2*fo(i)
112
fto(1) = fto(1) + mTii*( fo(3)*(rTwo*p14p - k14p)
113
& + fo(4)*(rTwo*fto(6) - k23) )
114
fto(2) = fto(2) + mTii*( fo(3)*(rTwo*dconjg(fto(6)) - k23s)
115
& + fo(4)*(rTwo*p14m - k14m) )
116
fto(3) = fto(3) + mTii*( fo(1)*(rTwo*p14m - k14m)
117
& + fo(2)*(k23 - rTwo*fto(6)) )
118
fto(4) = fto(4) + mTii*( fo(1)*(k23s - rTwo*dconjg(fto(6)))
119
& + fo(2)*(rTwo*p14p - k14p) )