Rename *ll* and *ul* to ll and ul in in-interval
[maxima.git] / share / fftpack5 / fortran / sint1i.f
blobcf1585507ecf29bbd72bd57ab7b6b0d88503d992
1 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
3 C FFTPACK 5.0
5 C Authors: Paul N. Swarztrauber and Richard A. Valent
7 C $Id$
9 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
11 SUBROUTINE SINT1I (N, WSAVE, LENSAV, IER)
12 INTEGER N, LENSAV, IER
13 REAL WSAVE(LENSAV)
15 IER = 0
17 IF (LENSAV .LT. N/2 + N + INT(LOG(REAL(N))/LOG(2.)) +4) THEN
18 IER = 2
19 CALL XERFFT ('SINT1I', 3)
20 GO TO 300
21 ENDIF
23 PI = 4.*ATAN(1.)
24 IF (N .LE. 1) RETURN
25 NS2 = N/2
26 NP1 = N+1
27 DT = PI/FLOAT(NP1)
28 DO 101 K=1,NS2
29 WSAVE(K) = 2.*SIN(K*DT)
30 101 CONTINUE
31 LNSV = NP1 + INT(LOG(REAL(NP1))/LOG(2.)) +4
32 CALL RFFT1I (NP1, WSAVE(NS2+1), LNSV, IER1)
33 IF (IER1 .NE. 0) THEN
34 IER = 20
35 CALL XERFFT ('SINT1I',-5)
36 ENDIF
38 300 CONTINUE
39 RETURN
40 END