exponenta event banner

yulewalk

Рекурсивная конструкция цифрового фильтра

Синтаксис

Описание

пример

[b,a] = yulewalk(n,f,m) возвращает коэффициенты передаточной функции nIIR-фильтр третьего порядка, частотно-амплитудная характеристика которого приблизительно соответствует значениям, приведенным в f и m.

Примеры

свернуть все

Сконструировать фильтр нижних частот 8-го порядка с нормированной частотой отсечки 0,6. Постройте график его частотной характеристики и наложите характеристику соответствующего идеального фильтра.

f = [0 0.6 0.6 1];
m = [1 1 0 0];

[b,a] = yulewalk(8,f,m);
[h,w] = freqz(b,a,128);

plot(w/pi,mag2db(abs(h)))
yl = ylim;
hold on
plot(f(2:3),yl,'--')
xlabel('\omega/\pi')
ylabel('Magnitude')
grid

Figure contains an axes. The axes contains 2 objects of type line.

Увеличьте затухание полосы останова, задав более широкую полосу перехода.

f = [0 0.55 0.6 0.65 1];
m = [1 1 0.5 0 0];

[b,a] = yulewalk(8,f,m);
h = freqz(b,a,128);

hold on
plot(w/pi,mag2db(abs(h)))
hold off
ylim(yl)

Figure contains an axes. The axes contains 3 objects of type line.

Входные аргументы

свернуть все

Порядок фильтра, заданный как положительный целочисленный скаляр.

Типы данных: single | double

Точки частоты, заданные как вектор точек в диапазоне от 0 до 1, где 1 соответствует частоте Найквиста или половине частоты выборки. Первая точка f должно быть 0 и последней точкой 1. Все промежуточные точки должны быть в возрастающем порядке. f может иметь повторяющиеся точки частоты, соответствующие шагам в частотном отклике.

Пример: [0 0.25 0.4 0.5 0.5 0.7 1] задает диапазон Найквиста с нерегулярной выборкой.

Типы данных: single | double

Отклик величины, заданный как вектор, содержащий требуемые отклики в точках, указанных в f. m должна быть той же длины, что и f.

Пример: [0 1 1 1 0 0 0] задает характеристику величины полосы пропускания.

Типы данных: single | double

Выходные аргументы

свернуть все

Коэффициенты фильтра, возвращаемые как векторы строк. Коэффициенты выходного фильтра упорядочены в степени убывания z:

B (z) A (z) = b (1) + b (2) z−1+⋯+b (n + 1) z na (1) + a (2) z−1+⋯+a (n + 1) z − n.

Совет

При определении частотной характеристики следует избегать чрезмерно резких переходов от полосы пропускания к полосе останова. Чтобы получить наилучшую конструкцию фильтра, возможно, потребуется поэкспериментировать с наклоном переходной области.

Алгоритмы

yulewalk конструирует рекурсивные БИХ-цифровые фильтры с использованием наименьших квадратов, соответствующих заданной частотной характеристике. Функция выполняет аппроксимацию во временной области.

  • Чтобы вычислить коэффициенты знаменателя, yulewalk использует модифицированные уравнения Юле-Уокера с коэффициентами корреляции, вычисленными путем обратного преобразования Фурье заданной частотной характеристики.

  • Чтобы вычислить числитель, yulewalk выполните следующие действия:

    1. Вычислите многочлен числителя, соответствующий аддитивному разложению частотной характеристики мощности.

    2. Вычислите полную частотную характеристику, соответствующую многочленам числителя и знаменателя.

    3. Используйте метод спектральной факторизации для получения импульсной характеристики фильтра.

    4. Получите многочлен числителя с помощью наименьших квадратов, соответствующих этой импульсной характеристике.

Ссылки

[1] Фридландер, Б. и Боаз Порат. «Модифицированный метод Юле-Уокера спектральной оценки ARMA». Транзакции IEEE ® по аэрокосмическим электронным системам. т. AES-20, № 2, 1984, с. 158-173.

Расширенные возможности

.

См. также

| | | | | | |

Представлен до R2006a