"Rajan" <
[email protected]> wrote in
news:
[email protected] :
>
> Hi all!
> I am a newbie to DSP. I have some basic questions. I will really
> appreciate if someone answers them.
>
> 1. Is it logical to perform 1024 point FFT on a vector of size less than
> 1024 (say 150) in MATLAB ?
Depends upon your definition of "logical". There can be good reasons for
doing this. For example, there may be a speed advantage by using a size
that is a power of two. However, Matlab is pretty clever about dealing
with Fourier transforms of data sets whose size is not a power of two.
Matlab should recognize that 150 = 2 x 3 x 5 x 5 and apply some
optimizations. See the Matlab documentation for "Fourier transforms
(Matlab)" | functions | fft .
Another example would be to perform interpolation.
> 2. If yes, then -does MATLAB perform zero padding automatically in above
> case or do we need to do it manually ?
Yes -- as extracted from the help for version 7 (R14):
Y = fft(X,n) returns the n-point DFT. If the length of X is less than n, X
is padded with trailing zeros to length n.
> 3. what kind of output will it give ?
See
http://zone.ni.com/devzone/conceptd....C1A86256CA8005
3F322
(If this URL gets split into two lines, be sure to paste both parts into
your browser).
You get an increase in "resolution" in your spectrum - sort of. YOu get
more bins with a closer frequency spacing, thus providing an interpolation
of the original spectrum. However, the increased "resolution" doesn't
provide you any more information than you had before.
Suggestion: Get into Matlab, read the help, try some examples.
Good luck!
--
Ian Shef 805/F6 * These are my personal opinions
Raytheon Company * and not those of my employer.
PO Box 11337 *
Tucson, AZ 85734-1337 *