How does the command: real(ifft(​fftshift(Y​))*N) operate?

2 visualizaciones (últimos 30 días)
Tarek Hajj Shehadi
Tarek Hajj Shehadi el 19 de Abr. de 2021
Comentada: Tarek Hajj Shehadi el 20 de Abr. de 2021
Hello, I am interested in knowing how this form of the inverse FFT command which is
real(ifft(fftshift(Y))*N)
works and its complexity for a vector Y of N sample points, because I have seen some basic ifft commands as seen here but this one seems to involve ifft and fft together.

Respuesta aceptada

Matt J
Matt J el 20 de Abr. de 2021
Editada: Matt J el 20 de Abr. de 2021
All of those oeprations are O(N) except for the IFFT which is O(Nlog(N)). So the chain of operations is O(Nlog(N)) overall.It would be slightly more efficient to re-implement it as,
N*real(ifft(fftshift(Y)))
since then the multiplication with N only needs to operate on real numbers.
  2 comentarios
Matt J
Matt J el 20 de Abr. de 2021
but this one seems to involve ifft and fft together.
No, it doesn't. But the FFT is also O(log(N)), so including an FFT step wouldn't increase the complexity either.
Tarek Hajj Shehadi
Tarek Hajj Shehadi el 20 de Abr. de 2021
Thank you for the clarification, all is understood.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Fourier Analysis and Filtering en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by