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.
42 lines
1.2 KiB
42 lines
1.2 KiB
subroutine runY_0(i,j,f,Xtwiddle,Gtwiddle,Gtt,Shat1,Czero0,N0)
|
|
implicit none
|
|
C--- Expression for Eq. 5.55
|
|
C--- Calculates D0, requires D00
|
|
C--- Small terms of order Xtwiddle(0,j)*Di
|
|
C--- Denominator Xtwiddle(i,j)
|
|
include 'lib/TensorReduction/Include/types.f'
|
|
include 'lib/TensorReduction/Include/TRconstants.f'
|
|
include 'lib/TensorReduction/Include/pvDnames.f'
|
|
include 'lib/TensorReduction/Include/pvDv.f'
|
|
include 'lib/TensorReduction/recur/Include/Darraydef.f'
|
|
include 'lib/TensorReduction/recur/Include/Darrays.f'
|
|
integer ep,N0,i,j,n,m,np
|
|
parameter(np=3)
|
|
real(dp):: Xtwiddle(0:np,0:np),Gtwiddle(np,np),f(np),
|
|
. Gtt(np,np,np,np)
|
|
complex(dp):: Shat1(np,-2:0),Czero0(-2:0),bit,pole
|
|
|
|
do ep=-2,0
|
|
bit=czip
|
|
do n=1,np
|
|
do m=1,np
|
|
bit=bit+Gtt(i,n,j,m)*f(n)*Shat1(m,ep)
|
|
enddo
|
|
enddo
|
|
|
|
pole=czip
|
|
if (ep .gt. -2) pole=-4*Dv(dd00+N0,ep-1)
|
|
Dv(dd0+N0,ep)=
|
|
. (Gtwiddle(i,j)*(2d0*Dv(dd00+N0,ep)+pole-Czero0(ep))
|
|
. +bit+Xtwiddle(0,j)*Dv(di(i)+N0,ep))/Xtwiddle(i,j)
|
|
enddo
|
|
|
|
c write(6,*) 'Dv(dd0)',Dv(dd0+N0,-2),Dv(dd0+N0,-1),Dv(dd0+N0,0)
|
|
c write(6,*) 'bit',Dv(dd0+N0,-2),Dv(dd0+N0,-1),Dv(dd0+N0,0)
|
|
|
|
return
|
|
end
|
|
|
|
|
|
|
|
|