DSPRelated.com
Forums

Questions about IFFT!

Started by zjq201 March 7, 2005
Hi, I am a newbie in DSP. I am trying to get the impulse response of a
Channel model, the channel model is in frequency domain(please see below)

k_z(m)=(m-1/2)*pi/D;% k sub z 
k_r(m)=sqrt((2*pi*F(f)/c)^2-(k_z(m))^2);
H=besselj(0,k_r(m)*r)+j*bessely(0,k_r(m)*r);
Channel(f)=Channel(f)+(i/(2*D))*sin(k_z(m)*z_s)*sin(k_z(m)*z)*H;

My question is when I did ifft to this channel model, the imagine parts of
ifft(Channel) are not zero, but they should be zero. So the results are not
correct. I heard that I should pad some datas to the channel before I do
ifft, is that true? If so, what data should I pad? Thanks!  



		
This message was sent using the Comp.DSP web interface on
www.DSPRelated.com
zjq201 wrote:

> Hi, I am a newbie in DSP. I am trying to get the impulse response of a > Channel model, the channel model is in frequency domain(please see below) > > k_z(m)=(m-1/2)*pi/D;% k sub z > k_r(m)=sqrt((2*pi*F(f)/c)^2-(k_z(m))^2); > H=besselj(0,k_r(m)*r)+j*bessely(0,k_r(m)*r); > Channel(f)=Channel(f)+(i/(2*D))*sin(k_z(m)*z_s)*sin(k_z(m)*z)*H; > > My question is when I did ifft to this channel model, the imagine parts of > ifft(Channel) are not zero, but they should be zero. So the results are not > correct.
Do you KNOW this or are you assuming that your channel response should be real? Typically, real-world channels have complex responses - you'll see amplitude as well as phase distortion. I heard that I should pad some datas to the channel before I do
> ifft, is that true? If so, what data should I pad? Thanks! > > > > > This message was sent using the Comp.DSP web interface on > www.DSPRelated.com
zjq201 wrote:
> Hi, I am a newbie in DSP. I am trying to get the impulse response of
a
> Channel model, the channel model is in frequency domain(please see
below)
> > k_z(m)=(m-1/2)*pi/D;% k sub z > k_r(m)=sqrt((2*pi*F(f)/c)^2-(k_z(m))^2); > H=besselj(0,k_r(m)*r)+j*bessely(0,k_r(m)*r); > Channel(f)=Channel(f)+(i/(2*D))*sin(k_z(m)*z_s)*sin(k_z(m)*z)*H; > > My question is when I did ifft to this channel model, the imagine
parts of
> ifft(Channel) are not zero, but they should be zero. So the results
are not
> correct. I heard that I should pad some datas to the channel before I
do
> ifft, is that true? If so, what data should I pad? Thanks! > > > > > This message was sent using the Comp.DSP web interface on > www.DSPRelated.com
The FFT of a real sequence of length N contains symmetric negative and positive halves corresponding to negative and positive frequencies from -Fs/2 to Fs/2. To get a real result from your IFFT, you might need to arrange your frequency vector accordingly. John