File: EX1F4F.FT of Tape: Various/ETH/eth11-3
(Source file text) 

	DIMENSION IR(32),IM(32)
	DATA PI/3.141593/,IM/32*0/
	DELX=2.*PI/32.
	X=0.

	DO 1 I=1,32
	IR(I)=SIN(X)*1000.
    1	X=X+DELX

	TYPE 900
	TYPE 1001,IR
	TYPE 1002,IM

	CALL FFT(IE,32,IR,IM,0,ISF)

	IF(IE) 99,2,99
    2	IF(ISF.NE.0) TYPE 999,ISF

	TYPE 1000
	TYPE 1001,IR
	TYPE 1002,IM

	CALL FFT(IE,32,IR,IM,1,ISI)

	IF(IE) 99,3,99
    3	IF(ISI.NE.0) TYPE 999,ISI

	TYPE 2000
	TYPE 1001,IR
	TYPE 1002,IM

	SCAL=2.**(ISF+ISI)

	DO 4 I=1,32
	IR(I)=SCAL*(IR(I)/32)
    4	IM(I)=SCAL*(IM(I)/32)

	TYPE 3000
	TYPE 1001,IR
	TYPE 1002,IM

	STOP

   99	TYPE 998,IE

	STOP

  900	FORMAT(1H1,' DATA TO BE TRANSFORMED - SINE WAVE SCALED BY 1000.')
  998	FORMAT(//' THE ERROR CODE RETURNED = ',I4)
  999	FORMAT(//' THE SCALE FACTOR RETURNED = ',I4)
 1000	FORMAT(//,' RESULTS FROM THE FORWARD FOURIER TRANSFORM OF 32', 
     1	' POINTS OF A SINE WAVE')
 1001	FORMAT(/' - REAL PART -'/,(8I8))
 1002	FORMAT(/' - IMAGINARY PART -'/,(8I8))
 2000	FORMAT(//,' RESULTS FROM THE INVERSE FOURIER TRANSFORM ', 
     1	//,32X,'- BEFORE SCALING
     2	 -')
 3000	FORMAT(//,32X,'- AFTER SCALING -')
	END