]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MINICERN/mathlib/gen/c/dawson64.F
This commit was generated by cvs2svn to compensate for changes in r2,
[u/mrichter/AliRoot.git] / MINICERN / mathlib / gen / c / dawson64.F
CommitLineData
fe4da5cc 1*
2* $Id$
3*
4* $Log$
5* Revision 1.1.1.1 1996/04/01 15:02:07 mclareni
6* Mathlib gen
7*
8*
9#include "gen/pilot.h"
10#if !defined(CERNLIB_DOUBLE)
11 FUNCTION RDAWSN(X)
12#endif
13#if defined(CERNLIB_DOUBLE)
14 FUNCTION DDAWSN(X)
15#include "gen/imp64.inc"
16#endif
17
18 DIMENSION P1(0:8),Q1(0:8)
19 DIMENSION A1(0:7),B1(0:6),A2(0:7),B2(0:6),A3(0:5),B3(0:4)
20
21 PARAMETER (Z1 = 1, HF = Z1/2, C1 = 2+HF, C2 = 3+HF)
22
23 DATA P1
24 1/+1.73971 38358 72305 8D+8, -2.35903 54309 49078 4D+7,
25 2 +7.94595 11256 26974 7D+6, -4.49408 95997 95344 8D+5,
26 3 +6.26435 22480 53304 3D+4, -1.64294 23044 87861 4D+3,
27 4 +1.10415 15859 64097 2D+2, -1.23806 01126 69044 4D+0,
28 5 +1.70141 56251 64813 2D-2/
29 DATA Q1
30 1/+1.73971 38358 72305 8D+8, +9.23905 68081 99581 7D+7,
31 2 +2.31472 94223 70433 8D+7, +3.59959 82595 90670 4D+6,
32 3 +3.83498 04512 71685 6D+5, +2.90022 12938 95164 3D+4,
33 4 +1.54480 44953 25198 3D+3, +5.42357 27435 06117 3D+1,
34 5 +1.00000 00000 00000 0D+0/
35 DATA A1
36 1/+5.00236 89608 86678 8D-1, -5.97678 08682 34888 6D+0,
37 2 +1.52644 09962 36985 9D+1, -8.89106 47974 78123 3D+0,
38 3 -7.57931 91808 93692 7D-2, -4.00000 89364 35497 2D+1,
39 4 +2.93365 74739 54485 3D+1, -1.50695 65118 71605 5D+0/
40 DATA A2
41 1/+4.99999 90270 50535 9D-1, -1.49838 04203 66907 2D+0,
42 2 -4.98544 80298 66076 7D+0, +5.06460 15374 22307 7D+0,
43 3 -1.50507 70349 66919 6D+1, -9.16804 87981 35517 1D+0,
44 4 -2.66167 67489 63992 8D+1, +4.76405 64527 32287 8D+0/
45 DATA A3
46 1/+5.00000 00000 87358 0D-1, -2.50000 27830 30495 0D+0,
47 2 -4.51057 82777 83269 5D+0, -7.82636 28103 36344 1D+0,
48 3 -4.05239 81738 80339 4D+1, +4.12716 33274 69802 1D+0/
49 DATA B1
50 1/+2.26064 66607 43091 6D-1, +1.15840 29255 18881 3D+2,
51 2 +7.29177 55641 55315 0D+1, +1.12461 66202 45754 3D+2,
52 3 +7.21193 21760 02290 6D+0, +1.24486 78826 22516 2D+3,
53 4 -6.73106 06974 48133 1D-1/
54 DATA B2
55 1/+2.50011 45961 18389 4D-1, -1.48715 81178 71947 5D+0,
56 2 +3.30707 72467 61143 7D+1, +1.46515 16778 31092 9D+2,
57 3 +7.51701 27774 40669 3D+1, +2.56105 72234 22263 5D+1,
58 4 +2.87776 12297 31873 6D+2/
59 DATA B3
60 1/+7.49999 99263 58122 3D-1, -2.49963 00606 78980 2D+0,
61 2 -6.58834 68001 31477 4D+0, -6.89636 11433 76130 9D-1,
62 3 +5.20416 17289 69394 6D+2/
63
64 V=ABS(X)
65 Y=V**2
66 IF(V .LT. C1) THEN
67 P=P1(8)
68 Q=Q1(8)
69 DO 1 I = 7,0,-1
70 P=Y*P+P1(I)
71 1 Q=Y*Q+Q1(I)
72 H=X*P/Q
73 ELSE IF(V .LT. C2) THEN
74 P=Y+A1(7)
75 DO 2 I = 6,1,-1
76 2 P=Y+A1(I)+B1(I)/P
77 H=(A1(0)+B1(0)/P)/X
78 ELSE IF(V .LT. 5) THEN
79 P=Y+A2(7)
80 DO 3 I = 6,1,-1
81 3 P=Y+A2(I)+B2(I)/P
82 H=(A2(0)+B2(0)/P)/X
83 ELSE
84 P=Y+A3(5)
85 DO 4 I = 4,1,-1
86 4 P=Y+A3(I)+B3(I)/P
87 H=(HF+HF*(A3(0)+B3(0)/P)/Y)/X
88 END IF
89#if !defined(CERNLIB_DOUBLE)
90 RDAWSN=H
91#endif
92#if defined(CERNLIB_DOUBLE)
93 DDAWSN=H
94#endif
95 RETURN
96 END