* * $Id: rft.F,v 1.1.1.1 1996/04/01 15:02:22 mclareni Exp $ * * $Log: rft.F,v $ * Revision 1.1.1.1 1996/04/01 15:02:22 mclareni * Mathlib gen * * #include "gen/pilot.h" SUBROUTINE RFT (MM, X, IX, Y, IY, MODE) C EXECUTE REAL FAST FOURIER TRANSFORM. C C INPUT ... (X(I*IX+1), I = 0, N) C OUTPUT ... (Y(I*IY+1), I = 0, N) C MM ... INTEGER, SUCH THAT N = 2 ** MM. C MODE = 1 ... ANALYSIS OF A REAL PERIODIC FUNCTION. C MODE = 2 ... ANALYSIS OF A REAL EVEN FUNCTION. C MODE = 3 ... ANALYSIS OF A REAL ODD FUNCTION. C MODE = 4 ... SYNTHESIS OF A REAL PERIODIC FUNCTION. C MODE = 5 ... SYNTHESIS OF A REAL EVEN FUNCTION. C MODE = 6 ... SYNTHESIS OF A REAL ODD FUNCTION. C REAL X(128), Y(128) COMMON /D700DT/ N, N2, N4, M, F, RTTWO COMMON /FWORK/ W(321) C GO TO (10, 20, 30, 40, 20, 30), MODE C C ANALYSIS OF A REAL PERIODIC FUNCTION. 10 CALL RPA (MM, X, IX, Y, IY) RETURN C C ANALYSIS OR SYNTHESIS OF A REAL EVEN FUNCTION. 20 CALL RCA (MM, X, IX, Y, IY) RETURN C C ANALYSIS OR SYNTHESIS OF A REAL ODD FUNCTION. 30 CALL RSA (MM, X, IX, Y, IY) RETURN C C SYNTHESIS OF A REAL PERIODIC FUNCTION. 40 CALL RPS (MM, X, IX, Y, IY) RETURN END