For simplicity we consider a signal that is only four points long:
(10) |
(11) |
# Fourier transform by polynomial evaluation. subroutine polyft( nt,tt, nw,cww ) integer nt # number of points in the time domain integer nw # number of points in the fourier transform real tt(nt) # sampled function of time complex cww(nw) # sampled fourier transform integer it, iw real omega complex cz, cw do iw= 1, nw { omega = 3.14159265 * (iw-1.) / ( nw-1.) cz = cexp( cmplx( 0., omega ) ) cw = tt(nt) do it= nt-1, 1, -1 # loop runs backwards cw = cw * cz + tt(it) cww(iw) = cw } return; end