Ist ein IIR-Digitalfilter mit a0=1 effektiv ein FIR-Digitalfilter?

Ich habe kürzlich für meine Diplomarbeit mit mehreren digitalen Filtern experimentiert, und während ich etwas über die FIR- und IIR- Art lerne, scheinen sie ähnliche Ausgabeausdrücke zu haben.

Bei der Verwendung einer Java-Klasse, die ich online gefunden habe , um die Koeffizienten eines Butterworth-IIR-Filters zu entwerfen, stellte ich fest, dass der Wert von „a0“ 1 ist und folglich der resultierende Ausdruck wie ein FIR-Filter aussieht.

Ist dies der Fall? Oder reicht die Tatsache, dass die 'y[ni]'-Terme in der endgültigen Implementierung vorhanden sind, aus, um zu garantieren, dass es sich nicht um FIR und definitiv um IIR handelt?

Es gibt keine Möglichkeit, dies ohne die genauen Gleichungen für Ihren speziellen IIR-Filter zu beantworten. Denken Sie darüber nach. Woher sollen wir wissen, was "a0" in Ihrem Algorithmus ist?
Wahrscheinlich eine einfache Verwirrung hier. Wenn Sie die Koeffizienten aller y-Terme anstelle von x auf Null setzen würden, gäbe es eine Ähnlichkeit, wenn auch in den meisten Fällen mit einer uneffektiv kurzen.
Das wollte ich bestätigen: IIR impliziert eine Ausgangsrückmeldung, egal welchen Wert 'a0' enthält.

Antworten (3)

Es ist unwahrscheinlich, dass es stimmt. IIR-Filter verwenden Rückkopplungspfade und rezirkulieren einen Bruchteil der Ausgabe (hoffentlich immer kleiner werdend). Daher haben sie den Namen Infinite Impulse Response, was bedeutet, dass ein Impuls am Eingang einen Ausgang verursachen würde, der bis ins Unendliche abfällt.

FIR-Filter haben keine Rückkopplungspfade und daher der Name Finite Impulse Response, da sich der Ausgang nach einem eingegebenen Impuls ändert und nach einer endlichen Zeitdauer wieder auf "Normalität" zurückkehrt.

Der resultierende Ausdruck kann wie ein IIR-Ausdruck aussehen, aber wenn er y[ni] enthält, kann es nicht FIR sein

Also so wie ich es mir vorgestellt habe. Es sei denn, der Rest der 'ai'-Koeffizienten ergibt 0 und IIR-Filter ist ein IIR-Filter. Nur aus Neugier habe ich das gefragt, denn wenn es sich herausstellen würde, hätte mein IIR-Filter einen Verzögerungsausdruck, der dem eines FIR-Filters entspricht.
Der Rückkopplungspfad eines IIR könnte selbst ein FIR sein, aber da es sich eher um eine Rückkopplung als um eine Vorwärtskopplung handelt, macht es den Gesamtfilter IIR.

Wenn man eine "quadratische" Gleichung der Form Ax²+Bx+C hat und der A-Term Null ist, sieht die resultierende Kurve wie eine gerade Linie aus - weil es eine gerade Linie sein wird. Andererseits werden Gleichungen dieser Form, bei denen A Null ist, allgemein als "lineare Gleichungen" bezeichnet, wobei der A-Term weggelassen wird.

Ebenso ist es möglich, eine allgemeine Form eines linearen Filters auszudrücken, das ein IIR-Filter ist, wenn einer der Koeffizienten, die die exponentiell abfallenden Teile der Antwort beschreiben, nicht Null ist, oder ein FIR-Filter, wenn alle diese Koeffizienten Null sind.

Ein zusätzlicher kleiner Schönheitsfehler besteht darin, dass es selbst mit einem IIR-Filter möglich ist, dass eine präzise Folge von Impulsreizen dazu führt, dass der Ausgang schnell auf genau Null geht und dort bleibt, obwohl ein einzelner Impulsreiz dazu führen würde, dass der Ausgang für immer ungleich Null ist.

Wenn es y[ni] Begriffe gibt, ist es ein IIR. Das liegt daran, dass sich der Ausgang asymptotisch Null nähert, daher "Infinite Impulse Response".