FIRFilterWindow (FPScript)
Berechnet die Impulsantwort eines FIR-Filters mithilfe einer Fensterung.
Syntax
FIRFilterWindow(Window, Type, [ FilterLength ], Fc1, [ Fc2 ], [ Attenuation ], [ Transition ], [ Alpha = 0.54 ] [ , SamplingRate ])
Die Syntax der FIRFilterWindow-Funktion besteht aus folgenden Teilen:
Teil |
Beschreibung |
||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Window |
Gibt die Art des Fensters an. Das Argument Window kann folgende Werte haben:
Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt. |
||||||||||||||||||
Type |
Gibt den Filtertyp an. Das Argument Type kann folgende Werte haben:
Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt. |
||||||||||||||||||
FilterLength |
Gibt die Filterlänge an. Dieses Argument ist für Kaiser- oder Dolph-Tschebyscheff-Filter optional. Aus Dämpfung und Übergang kann die Filterlänge berechnet werden. Erlaubte Datenstrukturen sind Einzelwert. Es sind alle ganzzahligen Datentypen erlaubt. Der Wert muss größer gleich 5 und kleiner gleich 999 sein. Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt. |
||||||||||||||||||
Fc1 |
Gibt die untere Eckfrequenz des Filters an. Die Eckfrequenz muss zwischen 0 und 0,5, der halben normierten Abtastfrequenz, bzw. zwischen 0 und der halben Abtastrate liegen. Erlaubte Datenstrukturen sind Einzelwert. Es sind alle reellen Datentypen erlaubt außer Kalenderzeit und Zeitspanne. Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt. |
||||||||||||||||||
Fc2 |
Gibt die obere Eckfrequenz des Filters an. Die Eckfrequenz muss zwischen 0 und 0,5, der halben normierten Abtastfrequenz, bzw. zwischen 0 und der halben Abtastrate liegen. Dieses Argument muss für einen Tiefpass oder Hochpassfilter nicht angegeben werden. Erlaubte Datenstrukturen sind Einzelwert. Es sind alle reellen Datentypen erlaubt außer Kalenderzeit und Zeitspanne. Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt. |
||||||||||||||||||
Attenuation |
Gibt die Dämpfung des Dolph-Tschebyscheff- bzw. des Kaiser-Filters im Sperrbereich an. Aus Filterlänge und Übergang kann die Dämpfung berechnet werden. Erlaubte Datenstrukturen sind Einzelwert. Es sind alle reellen Datentypen erlaubt außer Kalenderzeit und Zeitspanne. Das Argument wird auf die Einheit dB transformiert. Der Wert muss größer 0 dB sein. Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt. |
||||||||||||||||||
Transition |
Gibt den Abstand (Übergang) zwischen Sperr- und Bandbereich für den Dolph-Tschebyscheff- bzw. den Kaiser-Filter an. Aus Filterlänge und Dämpfung kann der Übergang berechnet werden. Erlaubte Datenstrukturen sind Einzelwert. Es sind alle reellen Datentypen erlaubt außer Kalenderzeit und Zeitspanne. Der Wert muss größer 0 sein. Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt. |
||||||||||||||||||
Alpha |
Beeinflusst das Dämpfungsverhalten des Verallgemeinerten Hamming-Fensters (Fenster-Methode). Alpha muss zwischen 0 und 1 liegen. Erlaubte Datenstrukturen sind Einzelwert. Es sind alle reellen Datentypen erlaubt außer Kalenderzeit und Zeitspanne. Der Wert muss größer gleich 0 und kleiner gleich 1 sein. Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt. Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert 0,54 gesetzt. |
||||||||||||||||||
SamplingRate |
Gibt die Abtastrate an. Das Argument ist optional. Wenn eine Abtastrate angegeben wird, so werden für die Grenzfrequenzen statt der normierten Frequenzen die absoluten Grenzfrequenzen angegeben. Erlaubte Datenstrukturen sind Einzelwert. Es sind alle reellen Datentypen erlaubt außer Kalenderzeit und Zeitspanne. Der Wert muss größer 0 sein. Ist das Argument eine Liste, dann wird die Funktion für jedes Element der Liste ausgeführt und das Ergebnis ist ebenfalls eine Liste. |
Anmerkungen
Das Argument FilterLength muss für das Kaiser- und das Dolph-Tschebyscheff-Filter nicht angegeben werden. Es kann aus der Dämpfung und dem Übergang berechnet werden. Für die beiden Filter müssen also zwei der drei Argumente FilterLength, Attenuation und Transition angegeben werden. Allerdings lassen sich nur Dämpfungen größer als 21 dB aus der Filterlänge und dem Übergang berechnen. Werden alle drei Argumente angegeben, so wird der Übergang nochmals berechnet und gegebenenfalls korrigiert.
Die Dämpfung wird in Dezibel angegeben (20 log delta).
Verfügbarkeit
Option Digitale Filter
Beispiele
Filter(Signal, FIRFilterWindow(FILTER_DOLPHCHEBYSHEV, FILTER_LOWPASS, , 250 Hz, , 30 dB, 10 Hz, , SamplingRate(Signal)), , TRUE)
Filtert ein Signal mit Phasenkorrektur mittels eines Tiefpassfilters mit Hamming Fenster. Die Filterlänge wird aus der Dämpfung und dem Übergang ermittelt. Bitte beachten Sie auch, dass das dritte Argument der Funktion Filter leer gelassen wird.