]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TEvtGen/EvtGenModels/EvtLi2Spence.F
added a histogram
[u/mrichter/AliRoot.git] / TEvtGen / EvtGenModels / EvtLi2Spence.F
CommitLineData
da0e9ce3 1C--------------------------------------------------------------------------
2C
3C Environment:
4C This software is part of the EvtGen package developed jointly
5C for the BaBar and CLEO collaborations. If you use all or part
6C of it, please give an appropriate acknowledgement.
7C
8C Copyright Information: See EvtGen/COPYRIGHT
9C Copyright (C) 1998 Caltech, UCSB
10C
11C Module: EvtLi2Spence.F
12C
13C Description:
14C
15C Modification history:
16C
17C DJL/RYD August 11, 1998 Module created
18C
19C------------------------------------------------------------------------
20C -----------------------------------------------------------------
21 DOUBLE PRECISION FUNCTION LI2SPENCE(X)
22C *************************************************************
23C REAL SPENCE FUNCTION OBTAINED FROM J. VAN DER BIJ
24C *************************************************************
25 IMPLICIT REAL*8 (A-Z)
26 COMPLEX*16 Y,Z,Z2,SP
27 REAL*8 XR,XI,R2
28 REAL*8 A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,ZETA2
29 DATA A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,ZETA2/
30 1 -0.250000000000000D0,
31 2 -0.111111111111111D0,
32 3 -0.010000000000000D0,
33 4 -0.017006802721088D0,
34 5 -0.019444444444444D0,
35 6 -0.020661157024793D0,
36 7 -0.021417300648069D0,
37 8 -0.021948866377231D0,
38 9 -0.022349233811171D0,
39 1 -0.022663689135191D0,
40 2 1.644934066848226D0/
41
42 LI2SPENCE=0
43 XR=X
44 XI=0.0D0
45 R2=XR*XR+XI*XI
46 IF(R2.GT.1.D0.AND.(XR/R2).GT.0.5D0)THEN
47 Y=(X-1.D0)/X
48 Z=-LOG(1.D0-Y)
49 Z2=Z*Z
50 SP=Z*(1.D0+A1*Z*(1.D0+A2*Z*(1.D0+A3*Z2*(1.D0+A4*Z2*
51 1 (1.D0+A5*Z2*(1.D0+A6*Z2*(1.D0+A7*Z2*(1.D0+A8*Z2*(1.D0+A9*Z2*
52 2 (1.D0+A10*Z2))))))))))
53 3 +ZETA2-LOG(X)*LOG(1.D0-X)+0.5D0*LOG(X)**2
54 LI=DREAL(SP)
55 RETURN
56 ELSEIF(R2.GT.1.D0.AND.(XR/R2).LE.0.5D0)THEN
57 Y=1.D0/X
58 Z=-LOG(1.D0-Y)
59 Z2=Z*Z
60 SP=-Z*(1.D0+A1*Z*(1.D0+A2*Z*(1.D0+A3*Z2*(1.D0+A4*Z2*
61 1 (1.D0+A5*Z2*(1.D0+A6*Z2*(1.D0+A7*Z2*(1.D0+A8*Z2*(1.D0+A9*Z2*
62 2 (1.D0+A10*Z2))))))))))
63 3 -ZETA2-0.5D0*LOG(-X)**2
64 LI=DREAL(SP)
65 RETURN
66 ELSEIF(R2.EQ.1.D0.AND.XI.EQ.0.D0)THEN
67 SP=ZETA2
68 LI=DREAL(SP)
69 RETURN
70 ELSEIF(R2.LE.1.D0.AND.XR.GT.0.5D0)THEN
71 Y=1.D0-X
72 Z=-LOG(1.D0-Y)
73 Z2=Z*Z
74 SP=-Z*(1.D0+A1*Z*(1.D0+A2*Z*(1.D0+A3*Z2*(1.D0+A4*Z2*
75 1 (1.D0+A5*Z2*(1.D0+A6*Z2*(1.D0+A7*Z2*(1.D0+A8*Z2*(1.D0+A9*Z2*
76 2 (1.D0+A10*Z2))))))))))
77 3 +ZETA2-LOG(X)*LOG(1.D0-X)
78 LI=DREAL(SP)
79 RETURN
80 ELSEIF(R2.LE.1.D0.AND.XR.LE.0.5D0)THEN
81 Y=X
82 Z=-LOG(1.D0-Y)
83 Z2=Z*Z
84 SP=Z*(1.D0+A1*Z*(1.D0+A2*Z*(1.D0+A3*Z2*(1.D0+A4*Z2*
85 1 (1.D0+A5*Z2*(1.D0+A6*Z2*(1.D0+A7*Z2*(1.D0+A8*Z2*(1.D0+A9*Z2*
86 2 (1.D0+A10*Z2))))))))))
87 LI2SPENCE=DREAL(SP)
88 RETURN
89 ENDIF
90 END
91C ----------------------------------------------------------------------
92