Rename *ll* and *ul* to ll and ul in in-interval
[maxima.git] / share / fftpack5 / fortran / sintmi.f
blob715eda05529f0b4e57d776272873e03c5b841b80
1 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
3 C FFTPACK 5.0
5 C Authors: Paul N. Swarztrauber and Richard A. Valent
7 C $Id$
9 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
11 SUBROUTINE SINTMI (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 ('SINTMI', 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 RFFTMI (NP1, WSAVE(NS2+1), LNSV, IER1)
33 IF (IER1 .NE. 0) THEN
34 IER = 20
35 CALL XERFFT ('SINTMI',-5)
36 ENDIF
38 300 CONTINUE
39 RETURN
40 END