firls
Страница в процессе разработки. |
Расчет коэффициентов КИХ-фильтра с линейной фазовой характеристикой методом наименьших квадратов.
Библиотека |
|
Аргументы
Входные аргументы
#
n —
порядок фильтра
вещественный положительный скаляр
Details
Порядок фильтра, заданный как вещественное положительное число.
#
f —
нормализованные значения частот
вещественнозначный вектор
Details
Нормализованные значения частот, заданные как вектор вещественных чисел. Аргумент должен находиться в диапазоне [0,1]
, где 1
соответствует частоте Найквиста. Количество элементов вектора всегда кратно 2
. Частоты должны быть расположены в порядке неубывания.
#
a —
требуемая амплитуда
вектор
Details
Требуемые амплитуды в точках, указанных в f
, заданы в виде вектора. Длина f
и a
должна быть одинаковой. Длина должна быть четным числом.
-
Требуемая амплитуда на частотах между парами точек при нечетном — это отрезок прямой, соединяющий точки и .
-
Требуемая амплитуда на частотах между парами точек при четном не определена. Области между такими точками являются переходными областями или областями, не имеющими значения для конкретного применения.
#
ftype —
тип фильтра
"hilbert"
| "differentiator"
Details
Тип фильтра для фильтров с линейной фазовой характеристикой с нечетной симметрией (тип III и тип IV), заданный как "hilbert"
или "differentiator"
:
-
"hilbert"
— выходные коэффициенты вb
подчиняются соотношению , . К этому классу фильтров относится преобразователь Гильберта, у которого заданная амплитуда равна1
во всей полосе пропускания. -
"differentiator"
— для полос с ненулевой амплитудой фильтр взвешивает ошибку с коэффициентом , так что ошибка на низких частотах значительно меньше, чем на высоких. Для КИХ-дифференциаторов, амплитудная характеристика которых пропорциональна частоте, эти фильтры минимизируют максимальную относительную ошибку (максимальное значение отношения ошибки к заданной амплитуде).
Алгоритмы
Функция firls
проектирует КИХ-фильтр с линейной фазовой характеристикой, который минимизирует взвешенную интегральную квадратичную ошибку между идеальной кусочно-линейной функцией и амплитудно-частотной характеристикой фильтра в заданном диапазоне частот.
В книге [2] описан теоретический подход, лежащий в основе функции firls
. Функция решает систему линейных уравнений с помощью оператора \ в Engee. Для фильтра порядка решение системы уравнений включает квадратную матрицу скалярного произведения размера , где , когда нечетное, и , когда четное.
Входные аргументы и задают частотно-амплитудные характеристики фильтра:
-
— вектор пар значений частот, заданных в диапазоне от
0
до1
, где1
соответствует частоте Найквиста. Частоты должны быть расположены в порядке возрастания. Можно указать повторяющиеся значения частот. -
— вектор, содержащий требуемые амплитуды в точках, заданных в векторе .
Требуемая амплитудная функция на частотах между парами точек при нечетном — это отрезок прямой, соединяющий точки и .
Требуемая амплитудная функция на частотах между парами точек при четном не определена. Это переходные («неважные») области.
-
и имеют одинаковую длину. Эта длина должна быть четным числом.
Функция firls
проектирует фильтры с линейной фазовой характеристикой типа I, II, III и IV. Фильтры типа I и II используются по умолчанию при четном и нечетном соответственно, в то время как флаги "hilbert"
и "differentiator"
создают фильтры типа III ( четный) и IV ( нечетный). Различные типы фильтров имеют различную симметрию и ограничения на частотные характеристики (подробнее см. [1]).
Тип фильтра с линейной фазовой характеристикой | Порядок фильтра | Симметрия коэффициентов | Отклик H(f), f = 0 | Отклик H(f), f = 1 (Найквист) |
---|---|---|---|---|
Тип I |
Четный |
|
Нет ограничений |
Нет ограничений |
Тип II |
Нечетный |
|
Нет ограничений |
|
Тип III |
Четный |
|
|
|
Тип IV |
Нечетный |
|
|
Нет ограничений |