Reply by Rune Allnor March 28, 20082008-03-28
On 28 Mar, 17:18, "Ron N." <rhnlo...@yahoo.com> wrote:
> &#4294967295;But the problem here may be more semantic than > technical, in that the information which the OP is attempting > to find when using the term "accurate spectrum result" may not > be just this DFT representation in the new basis. &#4294967295;It may, in > fact, require pre/post processing (as found in some measurement > instruments), or some type of model based inference beyond > just the basis transform. > > So you may be absolutely accurately describing two different > views of an elephant.
I don't know about you, but the very first statement by the OP, "I am new to signal processing, so please don't laugh if my questions appear silly to you." is a pretty strong indicator to me that the OP needs gudiance on the very basics and might not be phrasing his question in as exact terms as possible. Rune
Reply by Ron N. March 28, 20082008-03-28
On Mar 28, 4:33 am, Rune Allnor <all...@tele.ntnu.no> wrote:
> On 26 Mar, 18:14, dbd <d...@ieee.org> wrote: ... > > On Mar 26, 4:27 am, RuneAllnor<all...@tele.ntnu.no> wrote: > > > ... > > > Well, the DFT is a *representation* of the data which is very > > > robust, and gives useful results for statonary (not necessarily > > > periodic) data. The key is to remember that the DFT gives the > > > 'big picture' for these general types of data, but you can't > > > trust the details. The details match to prefection only with > > > very special classes of periodic data, where the signal is > > > sampled over an integer multiple of periods etc. > > > > Rune > > > David > > > The above has a very 'formalist derived' slant. I would put it > > differently, and perhaps no more usefully as: > > Dale, what you wrote was not at all useful to me, that's > for sure. > > David, > > What I tried to say (and as Dale kindly hinted could e expressed > a bit more clearly) the DFT is very easily described as a basis > transform in terms of linear algebra like > > X = Wx > > where x is the N-length input (time domain) data, X is the > N-length transformed data (spectrum), and W is a NxN unitary > matrix. Since W is unitary, it follows that there exists an > inverse W' such that W'W = I. The matrix W' describes the IDFT > similarly as > > x = W'X > > As with all linear algebra transforms, the propertes of the > transform matrices W and W' do *not* depend on the transformed > vectors x or X. However, some vectors show special properties > under the transforms, e.g. > > Wy =ky > > You probaly know these vectors from linear algebra as > 'eigenvectors' and the constants k as 'eigenvalues'. > > The key point is that the same concepts and terminology > applies with the DFT as in linear algebra: > > - The properties of the transform are independent of > the signals or vectors to be tranformed > - All signals or vectors of proper dimension can be > transformed > - Some signals or vectors are affected by the transform > in 'special' ways, ref. eigenvectors in basic linear > algebra. > > As always, once one sees the big picture it is nice and > tidy, while the technical details may be a bit awkward.
I absolutely agree with you about the DFT/FFT being a basis transform. But the problem here may be more semantic than technical, in that the information which the OP is attempting to find when using the term "accurate spectrum result" may not be just this DFT representation in the new basis. It may, in fact, require pre/post processing (as found in some measurement instruments), or some type of model based inference beyond just the basis transform. So you may be absolutely accurately describing two different views of an elephant. IMHO. YMMV. -- rhn A.T nicholson d.0.t C-o-M
Reply by dbd March 28, 20082008-03-28
On Mar 28, 5:56 am, Andor <andor.bari...@gmail.com> wrote:

> Dale wrote: >... > > > 2) resample the time domain data to a new sampling frequency that > > provides an integer number of cycles... > > Isn't that part of order tracking?
Yes, it is sometimes. The problem with the term 'order tracking' is that it describes the goal not the method. Orders can be 'tracked' in a variety of ways (not even including the algorithms Fedex and UPS use :). That's why I didn't use it. See: http://www.sandvmag.com/downloads/0306qian.pdf
>...
> Synchronous measurements of periodic systems are also achieved with > lock-in amplifiers (digital or analog).
"achieved with" is an amazingly vague term. May I suggest: Measurements of periodic systems can be made by preprocessing using lock-in amplifiers to provide a 'synchronous' gain to improve the SINR of selected tones. The subsequent measurement may be synchronous as in 2) but may not need to be. The lock-in amplifier function doesn't make a measurement. (That doesn't mean a vendor hasn't included a measurement function with the lock-in amplifier function in a box labeled "Lock-in Amplifier".)
> > Regards, > Andor
Dale B. Dalrymple
Reply by Andor March 28, 20082008-03-28
Dale wrote:
> On Mar 25, 10:07 pm, engp0...@gmail.com wrote: > > > > > > > Hi, > > > I am new to signal processing, so please don't laugh if my questions > > appear silly to you. > > > In my knowledge, to get accurate spectrum result using FFT, the > > sampling period should be close to the integal times of the whole > > cycles of input signal period and the sampling points should be 2^n. > > For example, 1KHz square wave, the sampling time should be integal > > times of 1ms, i.e., 10ms. However, I am using a system from a company > > that analyzes signal spectrum using FFT. The spectrum lines is only > > selectable among 1600, 3200, 6400, 12800, and the sampling period is > > not integral times of signal period. The spectrum result, amazingly, > > is very close to the one we obtained with standard radix-2 FFT > > algorithm sampling for integral signal period. > > > My question is, is there some specical FFT algorithm that sample for a > > fixed time (i.e., probably fractional signal period) but can realize > > similiar spectrum result as that obtained by standard FFT algorithm > > with integral signal period? > > > Hopefully I made myself understood. > > > Any contribution to this question is appreciated. > > David > > David > > Another general reference is at: > > http://cp.literature.agilent.com/litweb/pdf/5988-6774EN.pdf > > To deal with the case of signals not having an integer number of > cycles in the DFT window and transform size there are at least 5 > common responses: > > 1) generate the sampling frequency to enforce integer number of > cycles... > Fred has already mention the use of tachs for this. Some references: > > http://www.home.agilent.com/upload/cmc_upload/All/6C06DATAACQ_ORDER.pdf > http://www.ni.com/pdf/labview/us/order_analysis_toolkit.pdf > http://pcfarina.eng.unipr.it/Public/Kalman/SAE_972006.pdf
You forgot your favourite reference: http://www.bksv.com/pdf/bv0047.pdf and http://www.bksv.com/pdf/bv0052.pdf
> > 2) resample the time domain data to a new sampling frequency that > provides an integer number of cycles...
Isn't that part of order tracking?
> 3) resample the complex frequency domain coefficients at the desired > frequencies. In some circles such as IEEE Trans. on Instrumentation > and Measurement this is refered to as the 'interpolated FFT' > > 4) interpolate the peaks of the magnitude response in the frequency > domain, such as is included in the good discussion in: > > http://www.ericjacobsen.org/FTinterp.pdf > > 5) pick the nearest bin and accept the error or complain about the > inaccuracy of the FFT (It ain't like my actual Fourier transform.) > > I hope these references may be of some use to you. > > Nevermind while the rest of us sit back in our armchairs, wave our > hands and philosophize here at length.
Synchronous measurements of periodic systems are also achieved with lock-in amplifiers (digital or analog). Regards, Andor
Reply by Rune Allnor March 28, 20082008-03-28
On 26 Mar, 18:14, dbd <d...@ieee.org> wrote:
> On Mar 26, 4:27 am, RuneAllnor<all...@tele.ntnu.no> wrote: > > > ... > > Well, the DFT is a *representation* of the data which is very > > robust, and gives useful results for statonary (not necessarily > > periodic) data. The key is to remember that the DFT gives the > > 'big picture' for these general types of data, but you can't > > trust the details. The details match to prefection only with > > very special classes of periodic data, where the signal is > > sampled over an integer multiple of periods etc. > > > Rune > > David > > The above has a very 'formalist derived' slant. I would put it > differently, and perhaps no more usefully as:
Dale, what you wrote was not at all useful to me, that's for sure. David, What I tried to say (and as Dale kindly hinted could e expressed a bit more clearly) the DFT is very easily described as a basis transform in terms of linear algebra like X = Wx where x is the N-length input (time domain) data, X is the N-length transformed data (spectrum), and W is a NxN unitary matrix. Since W is unitary, it follows that there exists an inverse W' such that W'W = I. The matrix W' describes the IDFT similarly as x = W'X As with all linear algebra transforms, the propertes of the transform matrices W and W' do *not* depend on the transformed vectors x or X. However, some vectors show special properties under the transforms, e.g. Wy =ky You probaly know these vectors from linear algebra as 'eigenvectors' and the constants k as 'eigenvalues'. The key point is that the same concepts and terminology applies with the DFT as in linear algebra: - The properties of the transform are independent of the signals or vectors to be tranformed - All signals or vectors of proper dimension can be transformed - Some signals or vectors are affected by the transform in 'special' ways, ref. eigenvectors in basic linear algebra. As always, once one sees the big picture it is nice and tidy, while the technical details may be a bit awkward. Rune
Reply by March 26, 20082008-03-26
Hi, all,

I know this group is popular but I didn't expect so many replies in
one day, and I have to say, the info is overwhelming to me, as I said,
I am new to signal processing. I have printed all the materials given
and I have to read through all of them before I could come up with
more to discuss, probably in another new post.

Thank you all and I do appreciate your kind help.

David
Reply by stevepierson March 26, 20082008-03-26
On Mar 26, 7:27&#4294967295;pm, stevepierson <gkicomput...@yahoo.com> wrote:
> On Mar 26, 1:07&#4294967295;am, engp0...@gmail.com wrote: > > > > > > > Hi, > > > I am new to signal processing, so please don't laugh if my questions > > appear silly to you. > > > In my knowledge, to get accurate spectrum result using FFT, the > > sampling period should be close to the integal times of the whole > > cycles of input signal period and the sampling points should be 2^n. > > For example, 1KHz square wave, the sampling time should be integal > > times of 1ms, i.e., 10ms. However, I am using a system from a company > > that analyzes signal spectrum using FFT. The spectrum lines is only > > selectable among 1600, 3200, 6400, 12800, and the sampling period is > > not integral times of signal period. The spectrum result, amazingly, > > is very close to the one we obtained with standard radix-2 FFT > > algorithm sampling for integral signal period. > > > My question is, is there some specical FFT algorithm that sample for a > > fixed time (i.e., probably fractional signal period) but can realize > > similiar spectrum result as that obtained by standard FFT algorithm > > with integral signal period? > > > Hopefully I made myself understood. > > > Any contribution to this question is appreciated. > > David > > Yes, use a flattop window to preprocess your data before performing > your standard FFT. This elimates the leakage you are seeing (max .01 > dB vs 3.9 db worse case for no windows), you will get the correct > amplitude with non integer sample periods of the signal period, at the > expense of a loss of resolution (about 3 to 4 times). > > see > > http://www.lds-group.com/docs/site_documents/AN014%20Understanding%20...- Hide quoted text - > > - Show quoted text -
well I should of said elimates the amplitude errors, not leakage
Reply by stevepierson March 26, 20082008-03-26
On Mar 26, 1:07&#4294967295;am, engp0...@gmail.com wrote:
> Hi, > > I am new to signal processing, so please don't laugh if my questions > appear silly to you. > > In my knowledge, to get accurate spectrum result using FFT, the > sampling period should be close to the integal times of the whole > cycles of input signal period and the sampling points should be 2^n. > For example, 1KHz square wave, the sampling time should be integal > times of 1ms, i.e., 10ms. However, I am using a system from a company > that analyzes signal spectrum using FFT. The spectrum lines is only > selectable among 1600, 3200, 6400, 12800, and the sampling period is > not integral times of signal period. The spectrum result, amazingly, > is very close to the one we obtained with standard radix-2 FFT > algorithm sampling for integral signal period. > > My question is, is there some specical FFT algorithm that sample for a > fixed time (i.e., probably fractional signal period) but can realize > similiar spectrum result as that obtained by standard FFT algorithm > with integral signal period? > > Hopefully I made myself understood. > > Any contribution to this question is appreciated. > David
Yes, use a flattop window to preprocess your data before performing your standard FFT. This elimates the leakage you are seeing (max .01 dB vs 3.9 db worse case for no windows), you will get the correct amplitude with non integer sample periods of the signal period, at the expense of a loss of resolution (about 3 to 4 times). see http://www.lds-group.com/docs/site_documents/AN014%20Understanding%20FFT%20Windows.pdf
Reply by Ron N. March 26, 20082008-03-26
On Mar 26, 1:19 pm, Rick Lyons <R.Lyons@_BOGUS_ieee.org> wrote:
> On Tue, 25 Mar 2008 22:07:23 -0700 (PDT), engp0...@gmail.com wrote:
...
> >In my knowledge, to get accurate spectrum result using FFT, the > >sampling period should be close to the integal times of the whole > >cycles of input signal period and the sampling points should be 2^n. > > If by "accurate" you mean FFT results that show very > little "leakage", then I believe your statement is > essentially correct. However, real-world (information carrying) > signals are not periodic.
Not always true. A few "real world" signals are no less periodic than the sample time base. Synthetic and synchronous samples can also be periodic, or fairly close.
> So the idea of having the > time-duration of the FFT's input sequence being > an integer multiple of some signal's period goes > "out the window".
You can always resample the sequence and/or change the length of the FFT (with or without zero-padding) to fit an integer period multiple, if there is one. IMHO. YMMV. -- rhn A.T nicholson d.0.t C-o-M
Reply by Ron N. March 26, 20082008-03-26
On Mar 26, 10:58 am, dbd <d...@ieee.org> wrote:
> On Mar 25, 10:07 pm, engp0...@gmail.com wrote: > > I am new to signal processing, so please don't laugh if my questions > > appear silly to you. > > > In my knowledge, to get accurate spectrum result using FFT, the > > sampling period should be close to the integal times of the whole > > cycles of input signal period and the sampling points should be 2^n. > > For example, 1KHz square wave, the sampling time should be integal > > times of 1ms, i.e., 10ms. However, I am using a system from a company > > that analyzes signal spectrum using FFT. The spectrum lines is only > > selectable among 1600, 3200, 6400, 12800, and the sampling period is > > not integral times of signal period. The spectrum result, amazingly, > > is very close to the one we obtained with standard radix-2 FFT > > algorithm sampling for integral signal period. > > > My question is, is there some specical FFT algorithm that sample for a > > fixed time (i.e., probably fractional signal period) but can realize > > similiar spectrum result as that obtained by standard FFT algorithm > > with integral signal period? > > > Hopefully I made myself understood. > > > Any contribution to this question is appreciated. > > David > > David > > Another general reference is at: > > http://cp.literature.agilent.com/litweb/pdf/5988-6774EN.pdf > > To deal with the case of signals not having an integer number of > cycles in the DFT window and transform size there are at least 5 > common responses: > > 1) generate the sampling frequency to enforce integer number of > cycles... > Fred has already mention the use of tachs for this. Some references: > > http://www.home.agilent.com/upload/cmc_upload/All/6C06DATAACQ_ORDER.pdfhttp://www.ni.com/pdf/labview/us/order_analysis_toolkit.pdfhttp://pcfarina.eng.unipr.it/Public/Kalman/SAE_972006.pdf > > 2) resample the time domain data to a new sampling frequency that > provides an integer number of cycles... > > 3) resample the complex frequency domain coefficients at the desired > frequencies. In some circles such as IEEE Trans. on Instrumentation > and Measurement this is refered to as the 'interpolated FFT'
3b) zero-padding and using a longer FFT is one method of computing interpolated or resampled frequency domain coefficients, and may be more computationally efficient than other methods of resampling.
> 4) interpolate the peaks of the magnitude response in the frequency > domain, such as is included in the good discussion in: > > http://www.ericjacobsen.org/FTinterp.pdf
4b) if by "accurate" you mean accurate magnitude, then you could use a "flat-top" window before the FFT, which then trivializes magnitude "interpolation" in the frequency domain.
> 5) pick the nearest bin and accept the error or complain about the > inaccuracy of the FFT (It ain't like my actual Fourier transform.)
This seems to be the most common response from non-DSP students attempting to use an FFT.
> I hope these references may be of some use to you. > > Nevermind while the rest of us sit back in our armchairs, wave our > hands and philosophize here at length.
I have more "hand waving" references regarding various random attempts at frequency estimation on my DSP web page: http://www.nicholson.com/rhn/dsp.html IMHO. YMMV. -- rhn A.T nicholson d.0.t C-o-M