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
Questions about IFFT!
Started by ●March 7, 2005
Reply by ●March 7, 20052005-03-07
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
Reply by ●March 7, 20052005-03-07
zjq201 wrote:> Hi, I am a newbie in DSP. I am trying to get the impulse response ofa> Channel model, the channel model is in frequency domain(please seebelow)> > 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 imagineparts of> ifft(Channel) are not zero, but they should be zero. So the resultsare not> correct. I heard that I should pad some datas to the channel before Ido> 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.comThe 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