phasedelay
Функция расчета фазовой задержки цифрового фильтра.
Синтаксис
phasedelay(num, respsize, resparr).
phasedelay(num, den, respsize, resparr).
Аргументы
| Имя | Тип данных | Описание |
|---|---|---|
| num | array |
Массив коэффициентов числителя фильтра |
| den | array |
Массив коэффициентов знаменателя фильтра |
| respsize | integer |
Размер массива значений фазовой задержки, задается в промежутке от 1 до 16384 |
| resparr | array |
Выходной массив значений фазовой задержки фильтра |
Описание
phasedelay(num, respsize, resparr) – функция рассчитывает значения фазовой задержки для фильтра в классе КИХ цепей на основе коэффициентов числителя;
phasedelay(num, den, respsize, resparr) – функция рассчитывает значения фазовой задержки для фильтра в классе БИХ цепей на основе коэффициентов
числителя и знаменателя;
Алгоритм расчета состоит из следующих ключевых операций:
- Расчёт передаточной характеристики фильтра;
- Расчёт фазо-частотной характеристики (ФЧХ);
- Расчёт значений частотной сетки;
- Расчёт значений фазовой задержки на основе значений ФЧХ и частотной сетки.
Подробное описание фазовой задержки представлено в [1].
Результат
| Имя | Тип данных | Описание |
|---|---|---|
| resparr | array |
Массив значений фазовой задержки фильтра |
Пример
var Order: Integer, // Порядок фильтра
Type: String, // Тип фильтра
Cutoff: Double, // Частота среза фильтра
RespSize: Double, // Размер массива фазовой задержки
Num: Array = 10#0, // Числитель
Den: Array = 10#0; // Знаменатель
output RespArr: Array = 10#0;// Результирующий массив значений фазовой задержки
Order = 9;
Cutoff = 0.3;
Type = "low";
RespSize = 10;
butter(Num, Den, Order, Cutoff, Type);
phasedelay(Num, Den, RespSize, RespArr);
В результате в массивах Num и Den будут записаны коэффициенты числителя и знаменателя цифрового НЧ-фильтра Баттерворта 9-го порядка с нормированной частотой среза 0.3, которые будет использованы для расчёта фазовой задержки, значения которой в свою очередь будут записаны в массив RespArr
Результат выполнения функции:
RespArr = [0 5.76429207639863 6.17871803046954 7.49862308627215 7.80163239976092 7.07000700967438 6.35100151232904 5.74421027215441 5.24532116494361 4.83632104054139];
Дополнительные материалы
- Сергиенко А.Б. Цифровая обработка сигналов СПб, БХВ-Петербург, 2011, 768 стр.