]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MINICERN/mathlib/gen/b/asinh64.F
Bugfix in AliPoints2Memory
[u/mrichter/AliRoot.git] / MINICERN / mathlib / gen / b / asinh64.F
CommitLineData
fe4da5cc 1*
2* $Id$
3*
4* $Log$
5* Revision 1.1.1.1 1996/04/01 15:01:50 mclareni
6* Mathlib gen
7*
8*
9#include "gen/pilot.h"
10#if defined(CERNLIB_DOUBLE)
11 FUNCTION DASINH(X)
12C
13#include "gen/imp64.inc"
14C
15 CHARACTER*(*) NAME
16 PARAMETER(NAME='DASINH')
17#endif
18#if !defined(CERNLIB_DOUBLE)
19 FUNCTION ASINH(X)
20C
21 CHARACTER*(*) NAME
22 PARAMETER(NAME='ASINH')
23#endif
24 DIMENSION C(0:19)
25
26 DATA C( 0) / 0.90649 39198 46333 18D0/
27 DATA C( 1) /-0.02704 21478 78869 64D0/
28 DATA C( 2) / 0.00211 68145 57973 56D0/
29 DATA C( 3) /-0.00021 76650 54603 40D0/
30 DATA C( 4) / 0.00002 55196 04364 81D0/
31 DATA C( 5) /-0.00000 32329 14485 29D0/
32 DATA C( 6) / 0.00000 04310 66959 88D0/
33 DATA C( 7) /-0.00000 00596 06134 55D0/
34 DATA C( 8) / 0.00000 00084 69211 32D0/
35 DATA C( 9) /-0.00000 00012 29008 59D0/
36 DATA C(10) / 0.00000 00001 81376 79D0/
37 DATA C(11) /-0.00000 00000 27138 46D0/
38 DATA C(12) / 0.00000 00000 04107 37D0/
39 DATA C(13) /-0.00000 00000 00627 70D0/
40 DATA C(14) / 0.00000 00000 00096 72D0/
41 DATA C(15) /-0.00000 00000 00015 01D0/
42 DATA C(16) / 0.00000 00000 00002 34D0/
43 DATA C(17) /-0.00000 00000 00000 37D0/
44 DATA C(18) / 0.00000 00000 00000 06D0/
45 DATA C(19) /-0.00000 00000 00000 01D0/
46
47 V=ABS(X)
48 IF(V .LE. 1) THEN
49 H=2*V**2-1
50 ALFA=H+H
51 B1=0
52 B2=0
53 DO 1 I = 19,0,-1
54 B0=C(I)+ALFA*B1-B2
55 B2=B1
56 1 B1=B0
57 R=SIGN(V*(B0-B2),X)
58 ELSE
59 R=LOG(X+SQRT(1+X**2))
60 ENDIF
61#if defined(CERNLIB_DOUBLE)
62 DASINH=R
63#endif
64#if !defined(CERNLIB_DOUBLE)
65 ASINH=R
66#endif
67 RETURN
68 END