Ältere Kommentare anzeigen
hi, i'm trying to figure out exactly how matlab dose fft. i understand the basic idie but i saw somwere the command y=fft(x,'symetric') if x is a vector of size 10 the resuly y is a vector of size 115. what dose the aargument 'symetric' do? any word i put insted changes the length of y vector? what is the meaning of this?
thank you,
1 Kommentar
a
am 29 Mär. 2012
Akzeptierte Antwort
Weitere Antworten (2)
Jan
am 29 Mär. 2012
1 Stimme
When I read http://www.mathworks.com/help/techdoc/ref/fft.html I do not find a 'symmetric' flag (double 'm'?).
Wayne King
am 29 Mär. 2012
I think the OP is really thinking of the 'symmetric' flag in ifft(), not in fft().
The purpose of that flag is that often people are trying to take the inverse Fourier transform of complex-valued data (the DFT of something) that should exhibit conjugate symmetry.
The DFT of real-valued signals is conjugate symmetric.
However, because of small numerical errors just using ifft() on this data may result in a complex-valued (time domain) signal (usually the imaginary parts are close to zero, but non-zero).
The 'symmetric' flag is a simple way of saying: "I know what I'm applying the inverse Fourier transform to should be conjugate symmetric, so give me a real-valued output."
xdft = fft(randn(1e3,1));
xrec = ifft(xdft,'symmetric');
Kategorien
Mehr zu Bartlett finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!