subroutine ovswitch(p1,F0,F1,F2,F3,F4,F1a,F2a,F3a,F4a) C----from F0,F1,F2,F3,F4 calculate F1a,F2a,F3a,F4a C----which has first denominator C----shifted by p1 implicit none include 'TRydef.f' include 'TRmaxindex.f' integer n1,n2,n3,n4,ep double complex F0(-2:0),F1(y1max,-2:0),F2(y2max,-2:0), & F3(y3max,-2:0),F4(y4max,-2:0) double complex F1a(y1max,-2:0),F2a(y2max,-2:0), & F3a(y3max,-2:0),F4a(y4max,-2:0) double precision p1(4) do ep=-2,0 do n1=1,4 if (maxeindex .lt. 2) cycle F1a(n1,ep)=F1(n1,ep)-p1(n1)*F0(ep) do n2=n1,4 if (maxeindex .lt. 3) cycle F2a(y2(n1,n2),ep)=F2(y2(n1,n2),ep) & -p1(n1)*F1(n2,ep)-p1(n2)*F1(n1,ep) & +p1(n1)*p1(n2)*F0(ep) do n3=n2,4 if (maxeindex .lt. 4) cycle F3a(y3(n1,n2,n3),ep)=F3(y3(n1,n2,n3),ep) & -p1(n1)*F2(y2(n2,n3),ep) & -p1(n2)*F2(y2(n3,n1),ep) & -p1(n3)*F2(y2(n1,n2),ep) & +p1(n1)*p1(n2)*F1(n3,ep) & +p1(n2)*p1(n3)*F1(n1,ep) & +p1(n3)*p1(n1)*F1(n2,ep) & -p1(n1)*p1(n2)*p1(n3)*F0(ep) do n4=n3,4 if (maxeindex .lt. 5) cycle F4a(y4(n1,n2,n3,n4),ep)=F4(y4(n1,n2,n3,n4),ep) & -p1(n1)*F3(y3(n2,n3,n4),ep) & -p1(n2)*F3(y3(n3,n4,n1),ep) & -p1(n3)*F3(y3(n4,n1,n2),ep) & -p1(n4)*F3(y3(n1,n2,n3),ep) & +p1(n1)*p1(n2)*F2(y2(n3,n4),ep) & +p1(n1)*p1(n3)*F2(y2(n2,n4),ep) & +p1(n1)*p1(n4)*F2(y2(n2,n3),ep) & +p1(n2)*p1(n3)*F2(y2(n1,n4),ep) & +p1(n2)*p1(n4)*F2(y2(n1,n3),ep) & +p1(n3)*p1(n4)*F2(y2(n1,n2),ep) & -p1(n1)*p1(n2)*p1(n3)*F1(n4,ep) & -p1(n2)*p1(n3)*p1(n4)*F1(n1,ep) & -p1(n3)*p1(n4)*p1(n1)*F1(n2,ep) & -p1(n4)*p1(n1)*p1(n2)*F1(n3,ep) & +p1(n1)*p1(n2)*p1(n3)*p1(n4)*F0(ep) enddo enddo enddo enddo enddo return end