~maddevelopers/mg5amcnlo/3.0.1

« back to all changes in this revision

Viewing changes to vendor/IREGI/src/oneloop/example_arprec/f_test.f

  • Committer: Marco Zaro
  • Date: 2014-01-27 16:54:10 UTC
  • mfrom: (78.124.55 MG5_aMC_2.1)
  • Revision ID: marco.zaro@gmail.com-20140127165410-5lma8c2hzbzm426j
merged with lp:~maddevelopers/madgraph5/MG5_aMC_2.1 r 267

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
      subroutine f_main
 
2
!  ********************************************************************
 
3
!  ********************************************************************
 
4
      use mpmodule
 
5
      use avh_olo
 
6
      implicit none
 
7
      integer :: nn
 
8
      character(4) :: next
 
9
      real(kind(1d0)) :: mu
 
10
!
 
11
!      call olo_onshell( 1d-6 )
 
12
!      call olo_unit( 6 ,'printall' )
 
13
      call mpinit(34)
 
14
      call olo_precision(34)
 
15
      call olo_setting
 
16
!
 
17
      next = 'next'
 
18
      do while (next.eq.'next')
 
19
        read(5,*) nn ,mu
 
20
        call olo_scale( mu )
 
21
        if     (nn.eq.2) then
 
22
          call test_2
 
23
        elseif (nn.eq.3) then
 
24
          call test_3
 
25
        else!if(nn.eq.4) then
 
26
          call test_4
 
27
        endif
 
28
        read(5,*) next
 
29
      enddo
 
30
      end subroutine
 
31
 
 
32
 
 
33
      subroutine test_4
 
34
!  ********************************************************************
 
35
!  ********************************************************************
 
36
      use mpmodule
 
37
      use avh_olo
 
38
      implicit none
 
39
      complex(kind(1d0)) :: p1,p2,p3,p4,p12,p23,m1,m2,m3,m4,zdp(0:2)
 
40
      type(mp_complex) :: p1_mp,p2_mp,p3_mp,p4_mp,p12_mp,p23_mp
 
41
      type(mp_complex) :: m1_mp,m2_mp,m3_mp,m4_mp,zmp(0:2)
 
42
!
 
43
      read(5,*) p1
 
44
      read(5,*) p2
 
45
      read(5,*) p3
 
46
      read(5,*) p4
 
47
      read(5,*) p12
 
48
      read(5,*) p23
 
49
      read(5,*) m1
 
50
      read(5,*) m2
 
51
      read(5,*) m3
 
52
      read(5,*) m4
 
53
      write(6,101) 'p1 : (',real(p1),',',aimag(p1),')'
 
54
      write(6,101) 'p2 : (',real(p2),',',aimag(p2),')'
 
55
      write(6,101) 'p3 : (',real(p3),',',aimag(p3),')'
 
56
      write(6,101) 'p4 : (',real(p4),',',aimag(p4),')'
 
57
      write(6,101) 'p12: (',real(p12),',',aimag(p12),')'
 
58
      write(6,101) 'p23: (',real(p23),',',aimag(p23),')'
 
59
      write(6,101) 'm1 : (',real(m1),',',aimag(m1),')'
 
60
      write(6,101) 'm2 : (',real(m2),',',aimag(m2),')'
 
61
      write(6,101) 'm3 : (',real(m3),',',aimag(m3),')'
 
62
      write(6,101) 'm4 : (',real(m4),',',aimag(m4),')'
 
63
  101 format(a6,d31.24,a1,d31.24,a1)
 
64
!
 
65
      p1_mp =p1
 
66
      p2_mp =p2
 
67
      p3_mp =p3
 
68
      p4_mp =p4
 
69
      p12_mp=p12
 
70
      p23_mp=p23
 
71
      m1_mp =m1
 
72
      m2_mp =m2
 
73
      m3_mp =m3
 
74
      m4_mp =m4
 
75
      call olo( zdp ,p1,p2,p3,p4,p12,p23  ,m1,m2,m3,m4 )
 
76
      call olo( zmp ,p1_mp,p2_mp,p3_mp,p4_mp,p12_mp,p23_mp &
 
77
                    ,m1_mp,m2_mp,m3_mp,m4_mp )
 
78
!
 
79
      write(6,'(a10)') ' eps^( 0):'
 
80
      write(6,'(a8,2d24.16)') '    olo:',zdp(0)
 
81
      call mpwrite(6,zmp(0))
 
82
      write(6,'(a10)') ' eps^(-1):'
 
83
      write(6,'(a8,2d24.16)') '    olo:',zdp(1)
 
84
      call mpwrite(6,zmp(1))
 
85
      write(6,'(a10)') ' eps^(-2):'
 
86
      write(6,'(a8,2d24.16)') '    olo:',zdp(2)
 
87
      call mpwrite(6,zmp(2))
 
88
      write(6,*)
 
89
!
 
90
      end subroutine
 
91
   
 
92
      subroutine test_3
 
93
!  ********************************************************************
 
94
!  ********************************************************************
 
95
      use mpmodule
 
96
      use avh_olo
 
97
      implicit none
 
98
      complex(kind(1d0)) :: p1,p2,p3,m1,m2,m3,zdp(0:2)
 
99
      type(mp_complex) :: p1_mp,p2_mp,p3_mp
 
100
      type(mp_complex) :: m1_mp,m2_mp,m3_mp,zmp(0:2)
 
101
!
 
102
      read(5,*) p1
 
103
      read(5,*) p2
 
104
      read(5,*) p3
 
105
      read(5,*) m1
 
106
      read(5,*) m2
 
107
      read(5,*) m3
 
108
      write(6,101) 'p1 : (',real(p1),',',aimag(p1),')'
 
109
      write(6,101) 'p2 : (',real(p2),',',aimag(p2),')'
 
110
      write(6,101) 'p3 : (',real(p3),',',aimag(p3),')'
 
111
      write(6,101) 'm1 : (',real(m1),',',aimag(m1),')'
 
112
      write(6,101) 'm2 : (',real(m2),',',aimag(m2),')'
 
113
      write(6,101) 'm3 : (',real(m3),',',aimag(m3),')'
 
114
  101 format(a6,d31.24,a1,d31.24,a1)
 
115
!
 
116
      p1_mp=p1
 
117
      p2_mp=p2
 
118
      p3_mp=p3
 
119
      m1_mp=m1
 
120
      m2_mp=m2
 
121
      m3_mp=m3
 
122
      call olo( zdp ,p1,p2,p3 ,m1,m2,m3 )
 
123
      call olo( zmp ,p1_mp,p2_mp,p3_mp ,m1_mp,m2_mp,m3_mp )
 
124
!
 
125
      write(6,'(a10)') ' eps^( 0):'
 
126
      write(6,'(a8,2d24.16)') '    olo:',zdp(0)
 
127
      call mpwrite(6,zmp(0))
 
128
      write(6,'(a10)') ' eps^(-1):'
 
129
      write(6,'(a8,2d24.16)') '    olo:',zdp(1)
 
130
      call mpwrite(6,zmp(1))
 
131
      write(6,'(a10)') ' eps^(-2):'
 
132
      write(6,'(a8,2d24.16)') '    olo:',zdp(2)
 
133
      call mpwrite(6,zmp(2))
 
134
      write(6,*)
 
135
!
 
136
      end subroutine
 
137
 
 
138
      subroutine test_2
 
139
!  ********************************************************************
 
140
!  ********************************************************************
 
141
      use mpmodule
 
142
      use avh_olo
 
143
      implicit none
 
144
      complex(kind(1d0)) :: p1,m1,m2,zdp(0:2)
 
145
      type(mp_complex) :: m1_mp,m2_mp,p1_mp,zmp(0:2)
 
146
!
 
147
      read(5,*) p1
 
148
      read(5,*) m1
 
149
      read(5,*) m2
 
150
      write(6,101) 'p1 : (',real(p1),',',aimag(p1),')'
 
151
      write(6,101) 'm1 : (',real(m1),',',aimag(m1),')'
 
152
      write(6,101) 'm2 : (',real(m2),',',aimag(m2),')'
 
153
  101 format(a6,d31.24,a1,d31.24,a1)
 
154
!
 
155
      p1_mp = p1
 
156
      m1_mp = m1
 
157
      m2_mp = m2
 
158
      call olo( zdp ,p1 ,m1,m2 )
 
159
      call olo( zmp ,p1_mp ,m1_mp,m2_mp )
 
160
!
 
161
      write(6,'(a10)') ' eps^( 0):'
 
162
      write(6,'(a8,2d24.16)') '    olo:',zdp(0)
 
163
      call mpwrite(6,zmp(0))
 
164
      write(6,'(a10)') ' eps^(-1):'
 
165
      write(6,'(a8,2d24.16)') '    olo:',zdp(1)
 
166
      call mpwrite(6,zmp(1))
 
167
      write(6,'(a10)') ' eps^(-2):'
 
168
      write(6,'(a8,2d24.16)') '    olo:',zdp(2)
 
169
      call mpwrite(6,zmp(2))
 
170
      write(6,*)
 
171
!
 
172
      end subroutine