Hallo, ich habe folgende Frage. Ich bin dabei, für ein Projekt in C# ein digitales Butterwoth-Filter zu implementiert. Ich hab die Berechnung für die Koeffizienten der Polynome, die bilineare Z-Transformation sowie die Anwendung der einzelnen Biquads auf die Daten implementiert. Eins ist mir noch unklar. Ich habe gelesen, dass es Einfluss auf die Rundungseffekte hat, in welcher Reihenfolge man die einzelnen Biquads auf die Daten anwendet. Leider habe ich nichts dazu gefunden, wie man die günstigste Reihenfolge bestimmt. Weiß da jemand was, bzw. ist das auf einem PC überhaupt erforderlich. Ich arbeite nur mit Datentyp double. Danke und Grüße, Alex
Moin, Alexander H. schrieb: > Ich arbeite nur mit Datentyp > double. Dann wirst du wohl auch eher keine Rundungsprobleme haben. Sprich: Wird eh wurscht sein. Wenn doch: Stimmt irgendwas grob nicht. Allgemein wuerd' ich so ausm Bauch raus sagen: Zuerst das Signal in die (Teil)Filter, wo die Pole am gutmuetigsten sind (also am weitesten weg vom Einheitskreis, bzw. moeglichst nahe an (0,0) in der z-Ebene. Ist aber nur mein Bauchgefuehl. Gruss WK
Biquads sind immer nur zweiter Ordnung, was für Rundungsprobleme schonmal sehr gut ist. Ich hatte mal Probleme mit single floating point Filtern sehr nahe am Einheitskreis, aber das scheint ja hier auch kein Problem zu sein. Ich würde mir bei double + biquad keinerlei Gedanken machen ehrlich gesagt.
Alexander H. schrieb: > dass es Einfluss auf die > Rundungseffekte hat, in welcher Reihenfolge man die einzelnen Biquads > auf die Daten anwendet. Das kann nur damit zu tun haben, wie groß die Werte bei der jeweiligen Rechnung werden und wie danach gerundet oder abgeschnitten wird.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.