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.
 
 
 
 
 
 

178 lines
5.4 KiB

subroutine f_main
! ********************************************************************
! ********************************************************************
use qdmodule
use avh_olo
implicit none
integer :: nn
character(4) :: next
real(kind(1d0)) :: mu
!
! call olo_onshell( 1d-6 )
! call olo_unit( 6 ,'printall' )
!
next = 'next'
do while (next.eq.'next')
read(5,*) nn ,mu
call olo_scale( mu )
if (nn.eq.2) then
call test_2
elseif (nn.eq.3) then
call test_3
else!if(nn.eq.4) then
call test_4
endif
read(5,*) next
enddo
end subroutine
subroutine test_4
! ********************************************************************
! ********************************************************************
use qdmodule
use avh_olo
implicit none
complex(kind(1d0)) :: p1,p2,p3,p4,p12,p23,m1,m2,m3,m4,zdp(0:2)
type(qd_complex) :: p1_qd,p2_qd,p3_qd,p4_qd,p12_qd,p23_qd
type(qd_complex) :: m1_qd,m2_qd,m3_qd,m4_qd,zqd(0:2)
!
read(5,*) p1
read(5,*) p2
read(5,*) p3
read(5,*) p4
read(5,*) p12
read(5,*) p23
read(5,*) m1
read(5,*) m2
read(5,*) m3
read(5,*) m4
write(6,101) 'p1 : (',real(p1),',',aimag(p1),')'
write(6,101) 'p2 : (',real(p2),',',aimag(p2),')'
write(6,101) 'p3 : (',real(p3),',',aimag(p3),')'
write(6,101) 'p4 : (',real(p4),',',aimag(p4),')'
write(6,101) 'p12: (',real(p12),',',aimag(p12),')'
write(6,101) 'p23: (',real(p23),',',aimag(p23),')'
write(6,101) 'm1 : (',real(m1),',',aimag(m1),')'
write(6,101) 'm2 : (',real(m2),',',aimag(m2),')'
write(6,101) 'm3 : (',real(m3),',',aimag(m3),')'
write(6,101) 'm4 : (',real(m4),',',aimag(m4),')'
101 format(a6,d31.24,a1,d31.24,a1)
!
p1_qd =p1
p2_qd =p2
p3_qd =p3
p4_qd =p4
p12_qd=p12
p23_qd=p23
m1_qd =m1
m2_qd =m2
m3_qd =m3
m4_qd =m4
call olo( zdp ,p1,p2,p3,p4,p12,p23 ,m1,m2,m3,m4 )
call olo( zqd ,p1_qd,p2_qd,p3_qd,p4_qd,p12_qd,p23_qd &
,m1_qd,m2_qd,m3_qd,m4_qd )
!
write(6,'(a10)') ' eps^( 0):'
write(6,'(a8,2d24.16)') ' olo:',zdp(0)
call qdwrite(6,qdreal(zqd(0)))
call qdwrite(6,aimag(zqd(0)))
write(6,'(a10)') ' eps^(-1):'
write(6,'(a8,2d24.16)') ' olo:',zdp(1)
call qdwrite(6,qdreal(zqd(1)))
call qdwrite(6,aimag(zqd(1)))
write(6,'(a10)') ' eps^(-2):'
write(6,'(a8,2d24.16)') ' olo:',zdp(2)
call qdwrite(6,qdreal(zqd(2)))
call qdwrite(6,aimag(zqd(2)))
write(6,*)
!
end subroutine
subroutine test_3
! ********************************************************************
! ********************************************************************
use qdmodule
use avh_olo
implicit none
complex(kind(1d0)) :: p1,p2,p3,m1,m2,m3,zdp(0:2)
type(qd_complex) :: p1_qd,p2_qd,p3_qd
type(qd_complex) :: m1_qd,m2_qd,m3_qd,zqd(0:2)
!
read(5,*) p1
read(5,*) p2
read(5,*) p3
read(5,*) m1
read(5,*) m2
read(5,*) m3
write(6,101) 'p1 : (',real(p1),',',aimag(p1),')'
write(6,101) 'p2 : (',real(p2),',',aimag(p2),')'
write(6,101) 'p3 : (',real(p3),',',aimag(p3),')'
write(6,101) 'm1 : (',real(m1),',',aimag(m1),')'
write(6,101) 'm2 : (',real(m2),',',aimag(m2),')'
write(6,101) 'm3 : (',real(m3),',',aimag(m3),')'
101 format(a6,d31.24,a1,d31.24,a1)
!
p1_qd=p1
p2_qd=p2
p3_qd=p3
m1_qd=m1
m2_qd=m2
m3_qd=m3
call olo( zdp ,p1,p2,p3 ,m1,m2,m3 )
call olo( zqd ,p1_qd,p2_qd,p3_qd ,m1_qd,m2_qd,m3_qd )
!
write(6,'(a10)') ' eps^( 0):'
write(6,'(a8,2d24.16)') ' olo:',zdp(0)
call qdwrite(6,qdreal(zqd(0)))
call qdwrite(6,aimag(zqd(0)))
write(6,'(a10)') ' eps^(-1):'
write(6,'(a8,2d24.16)') ' olo:',zdp(1)
call qdwrite(6,qdreal(zqd(1)))
call qdwrite(6,aimag(zqd(1)))
write(6,'(a10)') ' eps^(-2):'
write(6,'(a8,2d24.16)') ' olo:',zdp(2)
call qdwrite(6,qdreal(zqd(2)))
call qdwrite(6,aimag(zqd(2)))
write(6,*)
!
end subroutine
subroutine test_2
! ********************************************************************
! ********************************************************************
use qdmodule
use avh_olo
implicit none
complex(kind(1d0)) :: p1,m1,m2,zdp(0:2)
type(qd_complex) :: m1_qd,m2_qd,p1_qd,zqd(0:2)
!
read(5,*) p1
read(5,*) m1
read(5,*) m2
write(6,101) 'p1 : (',real(p1),',',aimag(p1),')'
write(6,101) 'm1 : (',real(m1),',',aimag(m1),')'
write(6,101) 'm2 : (',real(m2),',',aimag(m2),')'
101 format(a6,d31.24,a1,d31.24,a1)
!
p1_qd = p1
m1_qd = m1
m2_qd = m2
call olo( zdp ,p1 ,m1,m2 )
call olo( zqd ,p1_qd ,m1_qd,m2_qd )
!
write(6,'(a10)') ' eps^( 0):'
write(6,'(a8,2d24.16)') ' olo:',zdp(0)
call qdwrite(6,qdreal(zqd(0)))
call qdwrite(6,aimag(zqd(0)))
write(6,'(a10)') ' eps^(-1):'
write(6,'(a8,2d24.16)') ' olo:',zdp(1)
call qdwrite(6,qdreal(zqd(1)))
call qdwrite(6,aimag(zqd(1)))
write(6,'(a10)') ' eps^(-2):'
write(6,'(a8,2d24.16)') ' olo:',zdp(2)
call qdwrite(6,qdreal(zqd(2)))
call qdwrite(6,aimag(zqd(2)))
write(6,*)
!
end subroutine