| 1 | C FFTC.FT FFT-V4A 4/22/76\r |
| 2 | \r |
| 3 | SUBROUTINE FFTC (A,N,M,SGNEX)\r |
| 4 | \r |
| 5 | C-------FFT VON N=2**M KOMPLEXEN DATEN\r |
| 6 | C A = IN- UND OUTPUTARRAY, LAENGE N=2**M, KOMPLEX\r |
| 7 | C-------SGNEXP = VORZEICHEN DES EXPONENTEN DER E-FUNKTIONEN\r |
| 8 | \r |
| 9 | DIMENSION A(2,513)\r |
| 10 | DIMENSION U(2),W(2),T(2),V(2)\r |
| 11 | NV2=N/2\r |
| 12 | NM1=N-1\r |
| 13 | J=1\r |
| 14 | DO 7 I=1,NM1\r |
| 15 | IF (I.GE.J) GOTO 5\r |
| 16 | T(1)=A(1,J)\r |
| 17 | T(2)=A(2,J)\r |
| 18 | A(1,J)=A(1,I)\r |
| 19 | A(2,J)=A(2,I)\r |
| 20 | A(1,I)=T(1)\r |
| 21 | A(2,I)=T(2)\r |
| 22 | 5 K=NV2\r |
| 23 | 6 IF (K.GE.J) GOTO 7\r |
| 24 | J=J-K\r |
| 25 | K=K/2\r |
| 26 | GO TO 6\r |
| 27 | 7 J=J+K\r |
| 28 | PI=3.141592653*SGNEX\r |
| 29 | LE1=1\r |
| 30 | S=0.\r |
| 31 | DO 30 L=1,M\r |
| 32 | LE=2*LE1\r |
| 33 | U(1)=1.\r |
| 34 | U(2)=0.\r |
| 35 | SN=SIN(PI/FLOAT(LE))\r |
| 36 | W(1)=-2.*SN*SN\r |
| 37 | W(2)=S\r |
| 38 | S=SN\r |
| 39 | DO 20 J=1,LE1\r |
| 40 | DO 10 I=J,N,LE\r |
| 41 | IP=I+LE1\r |
| 42 | T(1)=A(1,IP)*U(1)-A(2,IP)*U(2)\r |
| 43 | T(2)=A(1,IP)*U(2)+A(2,IP)*U(1)\r |
| 44 | A(1,IP)=A(1,I)-T(1)\r |
| 45 | A(2,IP)=A(2,I)-T(2)\r |
| 46 | A(1,I)=A(1,I)+T(1)\r |
| 47 | A(2,I)=A(2,I)+T(2)\r |
| 48 | 10 CONTINUE\r |
| 49 | V(1)=U(1)+U(1)*W(1)-U(2)*W(2)\r |
| 50 | V(2)=U(2)+U(1)*W(2)+U(2)*W(1)\r |
| 51 | U(1)=V(1)\r |
| 52 | U(2)=V(2)\r |
| 53 | COR=.5-.5*(U(1)*U(1)+U(2)*U(2))\r |
| 54 | U(1)=COR*U(1)+U(1)\r |
| 55 | 20 U(2)=COR*U(2)+U(2)\r |
| 56 | 30 LE1=LE\r |
| 57 | RETURN\r |
| 58 | END\r |
| 59 | \f\1a\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 |