EngeeDSP.VariableBandwidthIIRFilter
БИХ-фильтр с переменной полосой пропускания.
| Библиотека |
|
Описание
Чтобы реализовать БИХ-фильтр с переменной полосой пропускания, который выполняет фильтрацию каждого канала входного сигнала, выполните следующие действия:
-
Создайте объект EngeeDSP.VariableBandwidthIIRFilter и установите его свойства.
-
Вызовите объект с аргументами, как если бы это была функция.
Чтобы узнать подробнее о том, как работать с системными объектами, см. Системные объекты Engee.
Синтаксис
Создание
-
vbwIIR = EngeeDSP.VariableBandwidthIIRFilter()— возвращает объект БИХ-фильтраvbwIIRс переменной полосой пропускания, который независимо фильтрует каждый канал (столбец) входного сигнала при последовательных вызовах алгоритма. Этот системный объект использует заданную реализацию БИХ-фильтра. Частоту полосы пропускания фильтра можно настроить во время операции фильтрации. БИХ-фильтр с переменной полосой пропускания формируется с использованием эллиптического метода. Фильтр настраивается с помощью спектральных преобразований БИХ на основе фильтров с полным пропусканием. -
vbwIIR = EngeeDSP.VariableBandwidthIIRFilter(Name=Value)— возвращает объект БИХ-фильтраvbwIIRс заданными свойствами в виде парыName=Value, гдеName— имя свойства, аValue— соответствующее значение. Можно указать несколько пар «имя-значение», порядок пар не имеет значения. Неуказанные свойства сохраняют свои значения по умолчанию.
Аргументы
Входные аргументы
x —
входной сигнал
скаляр | вектор | матрица
Details
Входной сигнал, заданный как скаляр, вектор или матрица. Этот системный объект поддерживает входные данные переменного размера. После блокировки объекта вы можете изменить размер каждого входного канала, но не можете изменить количество каналов.
| Типы данных |
|
| Поддержка комплексных чисел |
Да |
Выходные аргументы
y —
отфильтрованный выходной сигнал
скаляр | вектор | матрица
Details
Отфильтрованный выходной сигнал, возвращаемый в виде скаляра, вектора или матрицы. Размер, тип данных и комплексность выходного сигнала такие же, как у входного сигнала.
| Типы данных |
|
| Поддержка комплексных чисел |
Да |
Свойства
#
FilterType —
тип характеристики фильтра
"Lowpass" (по умолчанию) | "Highpass" | "Bandpass" | "Bandstop"
Details
Тип характеристики фильтра, заданный как "Lowpass", "Highpass", "Bandpass" или "Bandstop".
#
FilterOrder —
порядок БИХ-фильтра
8 (по умолчанию) | скаляр
Details
Порядок БИХ-фильтра, заданный как положительный целочисленный скаляр.
| Типы данных |
|
#
PassbandFrequency —
частота полосы пропускания фильтра
512 (по умолчанию) | скаляр
Details
Частота полосы пропускания фильтра в Гц или в нормализованных единицах частоты, заданная как положительный скаляр.
Если для свойства NormalizedFrequency установлено значение:
-
false— значение частоты полосы пропускания указывается в Гц. Значение должно быть меньше половины значения свойства SampleRate. -
true— значение частоты полосы пропускания указывается в нормализованных единицах частоты. Значение должно быть положительным скаляром меньше1.0.
Зависимости
Чтобы использовать это свойство, установите для свойства FilterType значение Lowpass или Highpass.
| Типы данных |
|
#
CenterFrequency —
центральная частота фильтра
11025 (по умолчанию) | скаляр
Details
Центральная частота фильтра в Гц или в нормализованных единицах частоты, заданная как положительный скаляр.
Если для свойства NormalizedFrequency установлено значение:
-
false— значение центральной частоты указывается в Гц. Значение должно быть меньше половины значения свойства SampleRate. -
true— значение центральной частоты указывается в нормализованных единицах частоты. Значение должно быть положительным скаляром меньше1.0.
Зависимости
Чтобы использовать это свойство, установите для свойства FilterType значение Bandpass или Bandstop.
| Типы данных |
|
#
Bandwidth —
полоса пропускания фильтра
7680 (по умолчанию) | скаляр
Details
Полоса пропускания фильтра в Гц или в нормализованных единицах частоты, заданная как положительный скаляр.
Если для свойства NormalizedFrequency установлено значение:
-
false— значение полосы пропускания указывается в Гц. Значение должно быть меньше половины значения свойства SampleRate. -
true— значение полосы пропускания указывается в нормализованных единицах частоты. Значение должно быть положительным скаляром меньше1.0.
Зависимости
Чтобы использовать это свойство, установите для свойства FilterType значение Bandpass или Bandstop.
| Типы данных |
|
#
PassbandRipple —
неравномерность полосы пропускания фильтра
1 (по умолчанию) | скаляр
Details
Неравномерность полосы пропускания фильтра в дБ, заданная как положительный скаляр.
| Типы данных |
|
#
StopbandAttenuation —
ослабление полосы задерживания фильтра
60 (по умолчанию) | скаляр
Details
Ослабление полосы задерживания фильтра в дБ, заданное как положительный скаляр.
| Типы данных |
|
#
NormalizedFrequency —
указание частот в нормализованных единицах
false (по умолчанию) | true
Details
Если вы установите для этого свойства значение:
-
true— частота полосы пропускания фильтра, центральная частота и ширина полосы пропускания фильтра должны быть заданы в нормализованных единицах частоты, а их значения должны быть меньше1.0. -
false— частота полосы пропускания фильтра, центральная частота и ширина полосы пропускания фильтра должны быть заданы в Гц. Вы можете указать частоту дискретизации входного сигнала с помощью свойства SampleRate.
| Типы данных |
|
#
SampleRate —
частота дискретизации входного сигнала
44100 (по умолчанию) | скаляр
Details
Частота дискретизации входного сигнала в Гц, заданная как положительный скаляр.
Зависимости
Чтобы использовать это свойство, установите для свойства NormalizedFrequency значение false.
| Типы данных |
|
Алгоритмы
Этот фильтр обеспечивает преобразование частоты. Алгоритм рассчитывает прототип низкочастотного БИХ-фильтра с помощью эллиптического метода по заданным значениям порядка, частоты полосы пропускания, неравномерности в полосе пропускания и затухания в полосе задерживания. Неравномерность в полосе пропускания и затухание в полосе задерживания равны значениям свойств PassbandRipple и StopbandAttenuation. Алгоритм устанавливает частоту полосы пропускания прототипа фильтра равной 0.5. Если свойство FilterType имеет значение "Lowpass" или "Highpass", порядок фильтра равен значению FilterOrder. Если свойство FilterType имеет значение "Bandpass" или "Bandstop", порядок фильтра равен FilterOrder / 2. Прототип представляет собой каскад секций второго порядка с транспонированной прямой формой II (биквадратный фильтр). Прототип фильтра преобразуется в требуемый фильтр с использованием алгоритмов цифрового преобразования частот. Каждая секция второго порядка прототипа преобразуется отдельно. Если FilterType имеет значение "Lowpass" или "Highpass", то результирующий фильтр представляет собой каскад секций второго порядка с транспонированной прямой формой II. Если FilterType имеет значение "Bandpass" или "Bandstop", то результирующий фильтр представляет собой каскад секций четвертого порядка с транспонированной прямой формой II.