# IFFT Synthesis from an empty spectrum

I'm trying to generate a sawtooth wave using the IFFT. I can do this successfully by first performing an FFT and then putting that analysed spectrum into the IFFT, however I would really like to be able to write a UI that enables me to draw the bin magnitudes and generate a full spectrum ready for IFFT from that. I have been partially successful, however the waveforms don't look/sound quite right even though the spectrum input is per the formula for synthesising a sawtooth wave.

My question is how do I generate a spectrum array of complex values for an IFFT when all I have are the magnitude values?

I know that bin 0 and 1 are zero valued. I've been trying to render the wave by only calculating the magnitudes and phases for the significant bins (bins with magnitude > 0). Am I able to put white noise in the remaining magnitude bins and then calculate the accompanying phases at the centre frequency or alternatively calculate these non significant bins as random phase? my start phase is -90, bin size 1024, complex fft. Thanks in advance for your contribution.

• Why you want to do this? You know what you want in the frequency domain OR the time domain and you only rely on one of these.
– Moti
Jun 27, 2015 at 1:12
• Hi moti. I'm not just Jun 29, 2015 at 19:56
• I'm trying to calculate the phases based one the note frequency. I've coded this and my Ifft works but only if my note frequency is a bin Center frequency multiple. As soon as the frequency varies off the Center frequency my waveform starts to break up Jun 29, 2015 at 19:59
• When you have a "non centered" frequency, the FFT includes many frequencies, each with a different phase. You can not do IFFT of the power spectrum - you must maintain the phase.
– Moti
Jul 1, 2015 at 1:34
• Hi Moti. Thank you for your response. are you able to explain this further? What your saying is matching what I am seeing. I am calculating the new phases based on the delta of my frequency for each bin to the frequency of the harmonic but my waveform seems to break down the more I'm moving away from the centre frequency. If I generate at the centre frequency it is absolutely perfect. I guess I don't understand why my synthesis method works perfectly at a 'centered' frequency but not for an off centre frequency. Jul 2, 2015 at 4:25