42 SUBROUTINE spfft(IMAX,INCW,INCG,KMAX,W,G,IDIR)
45 INTEGER,
INTENT(IN):: IMAX,INCW,INCG,KMAX,IDIR
46 COMPLEX,
INTENT(INOUT):: W(INCW,KMAX)
47 REAL,
INTENT(INOUT):: G(INCG,KMAX)
48 INTEGER,
SAVE:: NAUX1=0
49 REAL,
SAVE,
ALLOCATABLE:: AUX1CR(:),AUX1RC(:)
51 REAL:: AUX2(20000+INT(0.57*IMAX))
53 naux2=20000+int(0.57*imax)
59 IF(naux1.GT.0)
DEALLOCATE(aux1cr,aux1rc)
60 naux1=25000+int(0.82*imax)
61 ALLOCATE(aux1cr(naux1),aux1rc(naux1))
62 CALL scrft(1,w,incw,g,incg,imax,kmax,-1,1.,
63 & aux1cr,naux1,aux2,naux2,0.,0)
64 CALL srcft(1,g,incg,w,incw,imax,kmax,+1,1./imax,
65 & aux1rc,naux1,aux2,naux2,0.,0)
69 CALL scrft(0,w,incw,g,incg,imax,kmax,-1,1.,
70 & aux1cr,naux1,aux2,naux2,0.,0)
74 CALL srcft(0,g,incg,w,incw,imax,kmax,+1,1./imax,
75 & aux1rc,naux1,aux2,naux2,0.,0)