Phasenspektrum in Matlab < Matlab < Mathe-Software < Mathe < Vorhilfe
|
Ich wollte ein Matlab Programm zur Demonstration der Fourier-Transformation schreiben. Es soll ein Rechteckimpuls transformiert werden und anschließen Amplituden- und Phasenspektrum angezeigt werden.
Das Amplitudenspektrum funktioniert wunderbar - nur mit der Phase gibts so einige Probleme. Zum einen springt die Phase andauernd zwischen zwei Werten und zweitens ist sie linear steigend, was bei einem Rechteck,das symmetrisch um 0 ist nicht passieren sollte (oder liegt das daran,dass der Zeitwert 0 nicht bei dem Index 0 des Arrays ist?). Hauptsächlich geht es mir jedoch um die Phasensprünge, bei denen ich nicht weiß, wie ich sie korrigieren soll bzw. wo sie herkommen. Hier der relevante Code:
x=rectpuls(t,1);
x=double(x);
xf=fft(x);
xphi=angle(fftshift(xf));
Habe es auch schon mit unwrap probiert,aber leider ohne Erfolg.
Danke im Vorraus,
Rebell der Sonne
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 22:33 Mi 09.05.2007 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|