]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MINICERN/mathlib/gen/d/c512.F
This commit was generated by cvs2svn to compensate for changes in r2,
[u/mrichter/AliRoot.git] / MINICERN / mathlib / gen / d / c512.F
1 *
2 * $Id$
3 *
4 * $Log$
5 * Revision 1.1.1.1  1996/04/01 15:02:23  mclareni
6 * Mathlib gen
7 *
8 *
9 #include "gen/pilot.h"
10       SUBROUTINE C512(A,B)
11       REAL A(257),B(257),C(256)
12       COMMON /TAB/D(126),E(127)
13       CALL D701BD
14       S2 = A(128)+A(130)
15       DO 10 I=3,127,2
16       S2 = S2+A(I-1)+A(259-I)
17       A1 = A(I+1)-A(I-1)
18       A2 = A(259-I)-A(257-I)
19       C1R = A(I)+A(258-I)
20       C2R = A(I)-A(258-I)
21       C1I = A1-A2
22       C2I = A1+A2
23       C1 = -D(I-2)
24       C2 = D(I-1)
25       C3R = C1*C2R-C2*C2I
26       C3I = C1*C2I+C2*C2R
27       C(I) = C1R+C3R
28       C(I+1) = C1I+C3I
29       C(258-I) = C1R-C3R
30    10 C(259-I) = C3I-C1I
31       C(1) = A(1)+A(257)
32       C(2) = A(1)-A(257)
33       C(129) = 2.*A(129)
34       C(130) = 2.*(A(128)-A(130))
35       CALL D128(C,C(2),2,C,C(2),2)
36       S2 = 2.*S2
37       B(1) = C(1)+S2
38       B(257) = C(1)-S2
39       B(129) = C(129)
40       DO 20 I=2,128
41       E1 = 0.5*(C(I)+C(258-I))
42       E2 = E(I-1)*(C(I)-C(258-I))
43       B(I) = E1+E2
44    20 B(258-I) = E1-E2
45       RETURN
46       END