Функции > Обработка сигналов > Цифровая фильтрация > Пример. Нуль-фазовая фильтрация
  
Пример. Нуль-фазовая фильтрация
Используйте функцию filtfilt для вычисления отклика фильтра при нулевой фазе с применением реверсивной модели фильтрации.
1. Используйте функцию butter, чтобы получить коэффициенты аналогового фильтра Butterworth порядка 2.
Нажать для копирования этого выражения
Нажать для копирования этого выражения
2. Используйте функцию iirlow, чтобы получить коэффициенты для БИХ-фильтра нижних частот с частотой среза 0.25.
Нажать для копирования этого выражения
Нажать для копирования этого выражения
3. Используйте функции gain и arg, чтобы определить величину и фазовый отклик фильтра.
Нажать для копирования этого выражения
Нажать для копирования этого выражения
4. Определите повторно величину и фазовый отклик фильтра для всех значений f, но в термах p.
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
5. Постройте график величины отклика, а затем с помощью маркеров покажите его значение для частоты среза.
Нажать для копирования этого выражения
6. Постройте график фазового отклика, а затем с помощью маркеров покажите его значение для частоты среза.
Нажать для копирования этого выражения
7. Определите и постройте график образца импульсного сигнала.
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Входные данные состоят из импульса в средней точке сигнала.
8. Используйте функцию filtfilt, чтобы рассчитать нуль-фазовый выход.
Нажать для копирования этого выражения
9. С помощью функции dft можно увидеть воздействие фильтра на сигнал путем вычисления преобразований Фурье для обоих сигналов и нанесения на график величины и фазы Y.
Нажать для копирования этого выражения
Нажать для копирования этого выражения
10. Используйте mag функцию, чтобы показать, что функция передачи, задаваемая отношением величин X и Y, имеет ожидаемую форму обрезания Butterworth.
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
11. Постройте график отклика величины вместе с функцией передачи.
Нажать для копирования этого выражения
12. Используйте функцию arg, чтобы определить разность фаз между главными аргументами X и Y.
Нажать для копирования этого выражения
13. Постройте график отклика величины и разности фаз между X и Y.
Нажать для копирования этого выражения
Эффект функции filtfilt проявляется в двойной фильтрации величины сигнала, как это показано на графике, но сдвиг фазы нулевой, в отличие от нелинейной фазы исходного фильтра.
Интерпретируя график фазы, помните, что фазы -2π и 0 эквивалентны. Если величина Y очень мала, как в случае частот намного выше уровня обрезания, расчет фазы может оказаться невозможен, так как ее значение становится сопоставимым с точностью вычислений.