MATLAB: How to compute inverse Fourier Transform WITHOUT USING IFFT??? Given the
ID: 1717089 • Letter: M
Question
MATLAB: How to compute inverse Fourier Transform WITHOUT USING IFFT???
Given the following code
DFT = [0, 0, 1, 0, 0, 3, 0, 0, 0, 0, 0, 4, 0];
k = 0:1:12;
result1 = ifft(DFT);
result2 = (1./13).*((DFT).*(exp(i.*2.*pi.*k./10)));
IT IS NOT ALLOWED TO USE "ifft" command or "loops" (result1 was just stated to test if my direct implementation of result2 is correct)
Apparently, result1 and result2 don't agree with each other for some reason.
(I am trying to take inverse discrete fourier transform by NOT using ifft)
HOW DO YOU OBTAIN TIME DOMAIN SIGNAL HERE WITHOUT USING ifft?????
Explanation / Answer
DFT = [0, 0, 1, 0, 0, 3, 0, 0, 0, 0, 0, 4, 0];
N= length(DFT);
result1 = ifft(DFT,N);
for n=0:1:N-1
Result2(n)=0;
for k=0:1:N-1
Result2(n)=Result2(n)+DFT(k)*exp(i*2*pi*k*n/N)/N;
end
end
Result2
result2 = (1./13).*((DFT).*(exp(i.*2.*pi.*k./10)));
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.