1
Double complex function qlI4array(xpi,musq,ep)
3
include 'qlconstants.f'
5
double precision xpi(13),xpio(13),musq,musqo
6
integer ep,j,massive,ier,Npt
7
double complex Ival(-2:0)
12
C--If we have already calculated this qlI4, use the saved value
13
C--else setup the arrays
14
if ((xpi(1) .eq. xpio(1))
15
. .and. (xpi(2) .eq. xpio(2))
16
. .and. (xpi(3) .eq. xpio(3))
17
. .and. (xpi(4) .eq. xpio(4))
18
. .and. (xpi(5) .eq. xpio(5))
19
. .and. (xpi(6) .eq. xpio(6))
20
. .and. (xpi(7) .eq. xpio(7))
21
. .and. (xpi(8) .eq. xpio(8))
22
. .and. (xpi(9) .eq. xpio(9))
23
. .and. (xpi(10) .eq. xpio(10))
24
. .and. (musq .eq. musqo)) then
28
C-- save new array as old
34
C--- count number of internal masses
37
if (qlnonzero(xpi(j))) massive=massive+1
40
if (massive .eq. 0) then
41
call qlI4sub0m(xpi,musq,Ival)
42
elseif (massive .eq. 1) then
43
call qlI4sub1m(xpi,musq,Ival)
44
elseif (massive .eq. 2) then
45
call qlI4sub2m(xpi,musq,Ival)
46
elseif (massive .eq. 3) then
47
call qlI4sub3m(xpi,musq,Ival)
48
elseif (massive .eq. 4) then
49
xpi(11) = +xpi(5)+xpi(6)+xpi(7)+xpi(8)-xpi(9)-xpi(10)
50
xpi(12) = -xpi(5)+xpi(6)-xpi(7)+xpi(8)+xpi(9)+xpi(10)
51
xpi(13) = +xpi(5)-xpi(6)+xpi(7)-xpi(8)+xpi(9)+xpi(10)
55
call qlI4fin(Ival(0),xpi,ier)