~maddevelopers/mg5amcnlo/3.0.2-alpha0

« back to all changes in this revision

Viewing changes to Template/Source/dgauss.f

Added Template and HELAS into bzr

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
*
 
2
* $Id: dgauss.f,v 1.2 2007/01/07 00:14:07 madgraph Exp $
 
3
*
 
4
* $Log: dgauss.f,v $
 
5
* Revision 1.2  2007/01/07 00:14:07  madgraph
 
6
* Merged version 4.1 to main branch
 
7
*
 
8
* Revision 1.1.2.1  2006/09/29 23:35:23  madgraph
 
9
* Introducing MLM matching
 
10
*
 
11
* Revision 1.1.1.1  1996/04/01 15:02:13  mclareni
 
12
* Mathlib gen
 
13
*
 
14
*
 
15
      FUNCTION DGAUSS(F,A,B,EPS)
 
16
      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
 
17
 
 
18
      CHARACTER NAME*(*)
 
19
      PARAMETER (NAME = 'DGAUSS')
 
20
 
 
21
*
 
22
* $Id: dgauss.f,v 1.2 2007/01/07 00:14:07 madgraph Exp $
 
23
*
 
24
* $Log: dgauss.f,v $
 
25
* Revision 1.2  2007/01/07 00:14:07  madgraph
 
26
* Merged version 4.1 to main branch
 
27
*
 
28
* Revision 1.1.2.1  2006/09/29 23:35:23  madgraph
 
29
* Introducing MLM matching
 
30
*
 
31
* Revision 1.1.1.1  1996/04/01 15:02:13  mclareni
 
32
* Mathlib gen
 
33
*
 
34
*
 
35
*
 
36
* gausscod.inc
 
37
*
 
38
      DIMENSION W(12),X(12)
 
39
 
 
40
      PARAMETER (Z1 = 1, HF = Z1/2, CST = 5*Z1/1000)
 
41
 
 
42
      DATA X( 1) /9.6028985649753623D-1/, W( 1) /1.0122853629037626D-1/
 
43
      DATA X( 2) /7.9666647741362674D-1/, W( 2) /2.2238103445337447D-1/
 
44
      DATA X( 3) /5.2553240991632899D-1/, W( 3) /3.1370664587788729D-1/
 
45
      DATA X( 4) /1.8343464249564980D-1/, W( 4) /3.6268378337836198D-1/
 
46
      DATA X( 5) /9.8940093499164993D-1/, W( 5) /2.7152459411754095D-2/
 
47
      DATA X( 6) /9.4457502307323258D-1/, W( 6) /6.2253523938647893D-2/
 
48
      DATA X( 7) /8.6563120238783174D-1/, W( 7) /9.5158511682492785D-2/
 
49
      DATA X( 8) /7.5540440835500303D-1/, W( 8) /1.2462897125553387D-1/
 
50
      DATA X( 9) /6.1787624440264375D-1/, W( 9) /1.4959598881657673D-1/
 
51
      DATA X(10) /4.5801677765722739D-1/, W(10) /1.6915651939500254D-1/
 
52
      DATA X(11) /2.8160355077925891D-1/, W(11) /1.8260341504492359D-1/
 
53
      DATA X(12) /9.5012509837637440D-2/, W(12) /1.8945061045506850D-1/
 
54
 
 
55
      H=0
 
56
      IF(B .EQ. A) GO TO 99
 
57
      CONST=CST/ABS(B-A)
 
58
      BB=A
 
59
    1 AA=BB
 
60
      BB=B
 
61
    2 C1=HF*(BB+AA)
 
62
      C2=HF*(BB-AA)
 
63
      S8=0
 
64
      DO 3 I = 1,4
 
65
      U=C2*X(I)
 
66
    3 S8=S8+W(I)*(F(C1+U)+F(C1-U))
 
67
      S16=0
 
68
      DO 4 I = 5,12
 
69
      U=C2*X(I)
 
70
    4 S16=S16+W(I)*(F(C1+U)+F(C1-U))
 
71
      S16=C2*S16
 
72
      IF(ABS(S16-C2*S8) .LE. EPS*(1+ABS(S16))) THEN
 
73
       H=H+S16
 
74
       IF(BB .NE. B) GO TO 1
 
75
      ELSE
 
76
       BB=C1
 
77
       IF(1+CONST*ABS(C2) .NE. 1) GO TO 2
 
78
       H=0
 
79
       WRITE(*,*) NAME,'ERROR: TOO HIGH ACCURACY REQUIRED'
 
80
       GO TO 99
 
81
      END IF
 
82
      
 
83
 
 
84
   99 DGAUSS=H
 
85
      RETURN
 
86
      END
 
87