WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Filterberechnung im Frequenzbereich mit anschliessender ifft

 

jimmydietulpe
Forum-Anfänger

Forum-Anfänger


Beiträge: 10
Anmeldedatum: 09.09.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.09.2008, 15:57     Titel: Filterberechnung im Frequenzbereich mit anschliessender ifft
  Antworten mit Zitat      
Hi Leute,

ich arbeite zurzeit an einem dynamischen Filter, der Senderschwankungen eines Radars ausgleichen soll. Dabei geht zum einen das reale Sendesignal und zum anderen das optimale Sendesignal als Referenz in die Berechnung mit ein:

Code:

matched=fft(conj(flipud(TXopt))); %matched filter des optimalen Signals TXopt
TXspec=fft(TX) %Spektrum des realen Sendesignals
TXoptspec=fft(TXopt) %Spektrum des optimalen Signals
 

Die Übertragungsfunktion des Filters erhalte ich dann nach der Theorie über folgende Formel:
Code:

H=matched.*(TXoptspec./TXspec)
 

Wenn ich diesen Filter nun per ifft in den Zeitbereich transformiere und dann ein Empfangsignal RX damit falte, erhalte ich ein anderes Ergebnis, als wenn ich eine schnelle Faltung im Frequenzbereich durchführe:
Code:

Output1=conv(RX,ifft(H));
Output2=ifft(fft(RX).*H);
 

Die Abweichung der beiden Ergebnisvektoren ist hauptsächlich im Imaginärteil sichtbar. Output2 scheint mir in diesem Falle richtig, jedoch brauche ich den Filter im Zeitbereich. Ich kann mir das nicht erklären, denn eigentlich sollte doch die schnelle Faltung bis auf eine kleine Ungenauigkeit der normalen Faltung im Zeitbereich entsprechen. Es wäre nett, wenn mir jemand einen Tip geben könnte, wo hier der Wurm drinsteckt.

Vielen Dank
Private Nachricht senden Benutzer-Profile anzeigen


jimmydietulpe
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 10
Anmeldedatum: 09.09.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.09.2008, 20:49     Titel:
  Antworten mit Zitat      
Hi,

ich konnte das Problem mittlerweile etwas einkreisen. Das Problem scheint die Divsion TXoptspec./TXspec im Frequenzbereich (Deconvolution) zu sein. Wenn ich diese weglasse, so erhalte ich bei beiden Verfahren ungefähr das gleiche Ergebnis. Ich weiss, dass es bei der schnellen Faltung ohne Zeropadding zu einem Überlappungsfehler kommt. Ich weiss jedoch nicht, wie sich dieser Effekt bei einer Deconvolution, also dem inversen der Faltung auswirkt. Ich hoffe mir kann jemand helfen.

mfg
Carsten
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.