~maddevelopers/mg5amcnlo/2.9.4

« back to all changes in this revision

Viewing changes to vendor/CutTools/src/qcdloop/qllnomrat4.f

pass to v2.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
      double complex function qllnomrat4(ms1,ms2,mt1,mt2)
 
2
************************************************************************
 
3
*     Author: R.K. Ellis                                               *
 
4
*     August, 2007.                                                    *
 
5
*     Lnomrat4(-s1,-s2,-t1,-t2)=                                       *
 
6
*     ln(1-((ms1-i*ep)*(ms2-i*ep))/((mt1-i*ep)/(mt2-i*ep)))            *
 
7
*     this function is hard-wired for sign of epsilon we must adjust   *
 
8
*     sign of s1,s2,t1,t2 to get the right sign for epsilon            *
 
9
************************************************************************
 
10
      implicit none
 
11
      include 'qlconstants.f'
 
12
      double precision ms1,ms2,mt1,mt2,prod,htheta
 
13
C--- define Heaviside theta function (=1 for x>0) and (0 for x < 0)
 
14
      htheta(ms1)=half+half*sign(one,ms1)
 
15
      prod=1d0-(ms1*ms2)/(mt1*mt2)
 
16
      qllnomrat4=dcmplx(dlog(abs(prod)))
 
17
     . -half*impi*dcmplx(htheta(-prod))
 
18
     . *dcmplx(htheta(-ms1)+htheta(-ms2)-htheta(-mt1)-htheta(-mt2))
 
19
 
 
20
      return
 
21
      end
 
22