Проект Гильберт преобразовывает БИХ-фильтр
hilbiir
hilbiir(ts)
hilbiir(ts,dly)
hilbiir(ts,dly,bandwidth)
hilbiir(ts,dly,bandwidth,tol)
[num,den] = hilbiir(...)
[num,den,sv] = hilbiir(...)
[a,b,c,d] = hilbiir(...)
[a,b,c,d,sv] = hilbiir(...)
Функциональный hilbiir
разрабатывает Гильбертов фильтр преобразований. Вывод также
График импульсного ответа фильтра, или
Количественная характеристика фильтра, с помощью или модели передаточной функции или модели в пространстве состояний
Идеальный Гильбертов фильтр преобразований имеет передаточную функцию H(s) = -jsgn(s)
, где sgn(.)
является сигнум-функцией (sign
в MATLAB). Импульсный ответ Гильбертова фильтра преобразований
Поскольку Гильбертов фильтр преобразований является непричинным фильтром, функция hilbiir
вводит групповую задержку, dly
. Гильбертов фильтр преобразований с этой задержкой имеет импульсный ответ
Проект фильтра является приближением. Если вы обеспечиваете групповую задержку фильтра как входной параметр, эти два предложения могут помочь улучшить точность результатов:
Выберите шаг расчета ts
и групповая задержка фильтра dly
так, чтобы dly
был, по крайней мере, несколько раз больше, чем ts
и rem(dly,ts) = ts/2
. Например, можно установить ts
на 2*dly/N
, где N
является положительным целым числом.
В точке t = dly
, импульсный ответ Гильбертова фильтра преобразований может быть интерпретирован как 0
, -Inf
или Inf
. Если hilbiir
сталкивается с этой точкой, он устанавливает импульсный ответ там обнулять. Чтобы улучшить точность, избегайте точки t = dly
.
Каждый из этих синтаксисов производит график импульсного ответа фильтра, что hilbiir
функционирует проекты, а также импульсный ответ соответствующего идеального Гильбертова фильтра преобразований.
hilbiir
строит импульсный ответ четвертого порядка цифровой Гильбертов фильтр преобразований с одной второй групповой задержкой. Шаг расчета является 2/7 секундами. В этом конкретном проекте индекс допуска 0.05. График также отображает импульсный ответ идеального Гильбертова фильтра преобразований с одной второй групповой задержкой.
hilbiir(ts)
строит импульсный ответ четвертого порядка фильтр преобразований Гильберта с шагом расчета секунд ts
и групповой задержкой секунд ts*7/2
. Индекс допуска 0.05. График также отображает импульсный ответ идеального Гильбертова фильтра преобразований, имеющего шаг расчета секунд ts
и групповую задержку секунд ts*7/2
.
hilbiir(ts,dly)
совпадает с синтаксисом выше, за исключением того, что групповой задержкой фильтра является dly
и для идеального фильтра и для фильтра, который разрабатывает hilbiir
. Смотрите Выбор Group Delay Parameter выше для инструкций по выбору dly
.
hilbiir(ts,dly,bandwidth)
совпадает с синтаксисом выше, за исключением того, что bandwidth
задает принятую пропускную способность входного сигнала и что проект фильтра может использовать компенсатор для входного сигнала. Если bandwidth
= 0 или bandwidth
> 1 / (2*ts)
, hilbiir
не использует компенсатор.
hilbiir(ts,dly,bandwidth,tol)
совпадает с синтаксисом выше, за исключением того, что tol
является индексом допуска. Если tol
< 1, порядок фильтра определяется
Если tol
> 1, порядком фильтра является tol
.
Каждый из этих синтаксисов производит количественные данные о фильтре, который hilbiir
разрабатывает, но не производит график. Входные параметры для этих синтаксисов (если вы предоставляете кому-либо) совпадают с описанными в Синтаксисах для Графиков.
[num,den] = hilbiir(...)
выводит числитель и знаменатель БИХ-передаточной функции фильтра.
[num,den,sv] = hilbiir(...)
выводит числитель и знаменатель БИХ-передаточной функции фильтра и сингулярные значения матрицы Ганкеля, которую hilbiir
использует в вычислении.
[a,b,c,d] = hilbiir(...)
выводит модель в пространстве состояний дискретного времени разработанного Гильбертова фильтра преобразований. a
, b
, c
и d
являются матрицами.
[a,b,c,d,sv] = hilbiir(...)
выводит модель в пространстве состояний дискретного времени разработанного Гильбертова фильтра преобразований и сингулярные значения матрицы Ганкеля, которую hilbiir
использует в вычислении.
Для примера с помощью значений по умолчанию функции введите одну из следующих команд в посдказке MATLAB.
hilbiir [num,den] = hilbiir
Функция hilbiir
вычисляет импульсный ответ идеального Гильбертова ответа фильтра преобразований с групповой задержкой. Это соответствует кривой отклика с помощью метода сингулярного разложения. См. книгу Kailath [1].
[1] Kailath, Томас, линейные системы, Englewood Cliffs, NJ, Prentice Hall, 1980.