Reply by January 24, 20192019-01-24


เมื่อ วันพุธที่ 23 มกราคม ค.ศ. 2019 20 นาฬิกา 01 นาที 23 วินาที UTC+7, Greg Berchin เขียนว่า:
> On Tuesday, January 22, 2019 at 11:28:16 PM UTC-6, won...@gmail.com wrote: > > > Could u explain why u add 0 and 4 to the complex hermitian conjugate when a number is even. > > The reason to put *values* at DC and Fs/2 is because the DFT of a real sequence with an even number of elements is conjugate-symmetric about DC and Fs/2 -- they serve as "pivot points" for the symmetry. The reason that the values at DC and Fs/2 are *real* is that the only way a number can be its own complex conjugate is if it's real. The reason that the values are "0" and "4" has been lost to history -- this is, after all, an eleven year old thread. > > - Greg
Thanks Greg for your explanation.
Reply by January 23, 20192019-01-23
On Wednesday, January 23, 2019 at 8:01:23 AM UTC-5, Greg Berchin wrote:
> On Tuesday, January 22, 2019 at 11:28:16 PM UTC-6, won...@gmail.com wrote: > > > Could u explain why u add 0 and 4 to the complex hermitian conjugate when a number is even. > > The reason to put *values* at DC and Fs/2 is because the DFT of a real sequence with an even number of elements is conjugate-symmetric about DC and Fs/2 -- they serve as "pivot points" for the symmetry. The reason that the values at DC and Fs/2 are *real* is that the only way a number can be its own complex conjugate is if it's real. The reason that the values are "0" and "4" has been lost to history -- this is, after all, an eleven year old thread. > > - Greg
wow an 11 year gap and the conversation picks right up where it left off :-) mark
Reply by Greg Berchin January 23, 20192019-01-23
On Tuesday, January 22, 2019 at 11:28:16 PM UTC-6, won...@gmail.com wrote:

> Could u explain why u add 0 and 4 to the complex hermitian conjugate when a number is even.
The reason to put *values* at DC and Fs/2 is because the DFT of a real sequence with an even number of elements is conjugate-symmetric about DC and Fs/2 -- they serve as "pivot points" for the symmetry. The reason that the values at DC and Fs/2 are *real* is that the only way a number can be its own complex conjugate is if it's real. The reason that the values are "0" and "4" has been lost to history -- this is, after all, an eleven year old thread. - Greg
Reply by January 23, 20192019-01-23
Hi Greg,

Could u explain why u add 0 and 4 to the complex hermitian conjugate when a number is even.
THanks.
Reply by January 23, 20192019-01-23

เมื่อ วันจันทร์ที่ 14 มกราคม ค.ศ. 2008 19 นาฬิกา 46 นาที 55 วินาที UTC+7, Greg Berchin เขียนว่า:
> On Jan 13, 5:52&nbsp;am, "antenna404" <wanfa...@163.com> wrote: > > > &nbsp;I am sure that I have made my data Hermitian symmetric. > > just like this: > > 1-j*1,2-j*2,3-j*3,0,3+j*3,2+j*2,1+j*1. > > but after doing IFFT,the output is still a complex sequence. > > Just as an experiment, try structuring your data set like > > "0, 3+j*3, 2+j*2, 1+j*1, 1-j*1, 2-j*2, 3-j*3", > > if your FFT size is odd, or > > "0, 3+j*3, 2+j*2, 1+j*1, 4, 1-j*1, 2-j*2, 3-j*3", > > if it is even, and run that through Matlab's IFFT. > > Greg
Reply by vizziee January 15, 20082008-01-15
On Jan 13, 3:52 am, "antenna404" <wanfa...@163.com> wrote:
> hi Kumar Vijay Mishra > I am sure that I have made my data Hermitian symmetric. > just like this: > 1-j*1,2-j*2,3-j*3,0,3+j*3,2+j*2,1+j*1. > but after doing IFFT,the output is still a complex sequence.
But your data is, in fact, not complex conjugate symmetric! The correct sequence will be: [0, 1-1i, 2-2i, 3-3i, 3+3i, 2+2i, 1+1i]. This is because the dc component is NOT included while considering the above-said symmetry of the sequence. Kumar Vijay Mishra.
Reply by Fajia Wang January 15, 20082008-01-15
>On Sun, 13 Jan 2008 05:35:01 -0600, "antenna404" <wanfajia@163.com>
wrote:
> >> In fact,I am dealing with a transmit-receiveing UWB antenna system >>operating between 3.1GHz and 10.6GHz. >> The frequency response is obtained from a VNA measurement,it appears
as
>>mag/phase pairs.I want to get the impulse response of the system. > >Wow. Deja vu all over again. That's exactly the problem I faced in my >thesis research. In 1985. > >> I have zero padding the missing measurement betweeen 0Hz and 2GHz. > >That results in a convolution of your derived time domain waveform with
a
>sinc function. That method really doesn't work well, even with >non-rectangular windows. > >>Then >>conjugate-transformation is done to form Hermitian symmetric about 0Hz >>before IFFT in matlab. > >I'm not certain whether Matlab needs [-Fs/2 ... Fs/2) or [0 ... Fs)
data.
>However, even if you got that wrong it still wouldn't explain the
imaginary
>parts in your IFFT outputs. It would just modulate by exp(jPI)
(alternate
>multiplying the time waveform by +1, -1. > >Are the imaginary parts in the IFFT waveform of roughly the same
amplitude as
>the real parts, or are they like "1.000432e-015" (which you should
interpret
>as zero)? > >>No action is taken between 12GHz and Fs/2.The >>sampling frequency ,Fs,is 1/0.06GHz. > >I'm hoping that "1/0.06GHz" is greater than 2*12GHz. > >>should the missing measurement between >>12GHz and Fs/2 be fill in to get the impulse response? > >Again, though this does not explain your complex time domain results, I
found
>it better to have as much of the spectrum as possible. > >Oh ... how did I solve the problem? Frequency Domain Least Squares, of >course. Once I had the discrete transfer function, I could derive the
causal
>difference equation and use it to compute the impulse response. Matlab
code
>for FDLS is available at >"http://apollo.ee.columbia.edu/spm/external/tipsandtricks/files/TandT_Jan2007.zip". >Explanation of the technique is in IEEE Signal Processing Magazine, "Tips
and
>Tricks" article, Jan 2007 issue. If you don't have access to that, I can
get
>a copy to you. > >Greg >
Hi,Greg.Thanks a lot for your help. I am trying to use FDLS.But I know nothing about it yet.Please give one copy of the magazine article in IEEE Signal Processing Magazine,Jan 2007 issue.It is not available to me on line. My email:antenna404@163.com Thanks again. Fajia Wang
Reply by Greg Berchin January 14, 20082008-01-14
On Jan 13, 5:52&#4294967295;am, "antenna404" <wanfa...@163.com> wrote:

> &#4294967295;I am sure that I have made my data Hermitian symmetric. > just like this: > 1-j*1,2-j*2,3-j*3,0,3+j*3,2+j*2,1+j*1. > but after doing IFFT,the output is still a complex sequence.
Just as an experiment, try structuring your data set like "0, 3+j*3, 2+j*2, 1+j*1, 1-j*1, 2-j*2, 3-j*3", if your FFT size is odd, or "0, 3+j*3, 2+j*2, 1+j*1, 4, 1-j*1, 2-j*2, 3-j*3", if it is even, and run that through Matlab's IFFT. Greg
Reply by Greg Berchin January 13, 20082008-01-13
On Sun, 13 Jan 2008 05:35:01 -0600, "antenna404" <wanfajia@163.com> wrote:

> In fact,I am dealing with a transmit-receiveing UWB antenna system >operating between 3.1GHz and 10.6GHz. > The frequency response is obtained from a VNA measurement,it appears as >mag/phase pairs.I want to get the impulse response of the system.
Wow. Deja vu all over again. That's exactly the problem I faced in my thesis research. In 1985.
> I have zero padding the missing measurement betweeen 0Hz and 2GHz.
That results in a convolution of your derived time domain waveform with a sinc function. That method really doesn't work well, even with non-rectangular windows.
>Then >conjugate-transformation is done to form Hermitian symmetric about 0Hz >before IFFT in matlab.
I'm not certain whether Matlab needs [-Fs/2 ... Fs/2) or [0 ... Fs) data. However, even if you got that wrong it still wouldn't explain the imaginary parts in your IFFT outputs. It would just modulate by exp(jPI) (alternate multiplying the time waveform by +1, -1. Are the imaginary parts in the IFFT waveform of roughly the same amplitude as the real parts, or are they like "1.000432e-015" (which you should interpret as zero)?
>No action is taken between 12GHz and Fs/2.The >sampling frequency ,Fs,is 1/0.06GHz.
I'm hoping that "1/0.06GHz" is greater than 2*12GHz.
>should the missing measurement between >12GHz and Fs/2 be fill in to get the impulse response?
Again, though this does not explain your complex time domain results, I found it better to have as much of the spectrum as possible. Oh ... how did I solve the problem? Frequency Domain Least Squares, of course. Once I had the discrete transfer function, I could derive the causal difference equation and use it to compute the impulse response. Matlab code for FDLS is available at "http://apollo.ee.columbia.edu/spm/external/tipsandtricks/files/TandT_Jan2007.zip". Explanation of the technique is in IEEE Signal Processing Magazine, "Tips and Tricks" article, Jan 2007 issue. If you don't have access to that, I can get a copy to you. Greg
Reply by antenna404 January 13, 20082008-01-13
>You need to modify your frequency response to include "negative >frequencies" before taking the IFFT. Here is how its done: > >http://www.dspguide.com/ch12/1.htm >
Thanks a lot,Steven W. Smith.The book is very helpful! Fajia