yulewalk

Рекурсивное создание цифровых фильтров

Синтаксис

Описание

пример

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

Примеры

свернуть все

Спроектируйте 8-й порядок фильтр lowpass с нормированной частотой среза 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 object. The axes object 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 object. The axes object 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

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

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

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

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

свернуть все

Отфильтруйте коэффициенты, возвращенные как векторы-строки. Выходные коэффициенты фильтра упорядочены в убывающих степенях z:

B(z)A(z)=b(1)+b(2)z1++b(n+1)zna(1)+a(2)z1++a(n+1)zn.

Советы

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

Алгоритмы

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

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

  • Вычислить числитель, yulewalk выполняет эти шаги:

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

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

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

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

Ссылки

[1] Фридлендер, B. и Боуз Порэт. "Модифицированный метод Юла-Уокера спектральной оценки ARMA". IEEE® Транзакции на Космических Электронных системах. Издание AES-20, Номер 2, 1984, стр 158–173.

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

Смотрите также

| | | | | | |

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