How does the command: real(ifft(fftshift(Y))*N) operate?
    2 views (last 30 days)
  
       Show older comments
    
    Tarek Hajj Shehadi
 on 19 Apr 2021
  
    
    
    
    
    Commented: Tarek Hajj Shehadi
 on 20 Apr 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.
0 Comments
Accepted Answer
  Matt J
      
      
 on 20 Apr 2021
        
      Edited: Matt J
      
      
 on 20 Apr 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 Comments
  Matt J
      
      
 on 20 Apr 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.
More Answers (0)
See Also
Categories
				Find more on Transforms in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
