Signal Processing Stack Exchange is a question and answer site for practitioners of the art and science of signal, image and video processing. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

How should buffer value at N/2 get initialized prior to performing an inverse FFT on a buffer, size N, that contains a complex frequency response in only values 0 to N/2-1? It is pretty clear the buffer needs to be made symmetrical for prior to calculating the inverse FFT per table 12-1 of What is not clear is how to initialize the value at N/2. Is it related to value at 0?

share|improve this question
A couple of questions- 1) how did you get the data in the buffer that you are going to run the inverse FFT on? 2) Why do you say that it only has frequency components from 0 to N/2-1? – Jim Clay Jan 14 '13 at 19:03
The source data comes from an external graphing tool that allows the user to draw an arbitrary frequency response. That tool supplies the data on 0 to N/2-1. – SpeedCoder5 Jan 14 '13 at 20:09
Just set the value at N/2 to zero - it corresponds to Nyquist and there will typically be very little energy at that frequency (otherwise you have bigger problems to worry about). – Paul R Jan 14 '13 at 21:17
up vote 1 down vote accepted

Normally a buffer of N points of data in the frequency domain covers, much like a two's complement number, -N/2 to +N/2-1. So when you say that it doesn't cover N/2, it probably doesn't matter. If it does matter and there is a "place" for N/2, just do as Paul suggested and set it to 0.

share|improve this answer
Thank you for the answer Jim + Paul. Can't vote up yet, but hope others do. – SpeedCoder5 Jan 15 '13 at 15:00

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.