phasedelay

Фазовая задержка цифрового фильтра

Синтаксис

[phi,w] = phasedelay(b,a,n)
[phi,w] = phasedelay(sos,n)
[phi,w] = phasedelay(d,n)
[phi,w] = phasedelay(...,n,'whole')
phi = phasedelay(...,w)
[phi,f] = phasedelay(...,n,fs)
[phi,f] = phasedelay(...,n,'whole',fs)
phi = phasedelay(...,f,fs)
[phi,w,s] = phasedelay(...)
[phi,f,s] = phasedelay(...)
phasedelay(...)

Описание

[phi,w] = phasedelay(b,a,n) возвращает n- точка фазы вектор отклика задержки, phi, и n- вектор частоты точек в радианах/выборке, w, фильтра, заданного коэффициентами числителя, b, и коэффициенты знаменателя, a. Реакция фазы задержки оценивается на n равномерно разнесенные точки вокруг верхней половины модуля круга. Если n опущен, значение по умолчанию - 512. Для достижения наилучших результатов задайте n к значению, большему, чем порядок фильтра.

[phi,w] = phasedelay(sos,n) возвращает n- точка фазы задержку для матрицы секций второго порядка, sos. sos является матрицей K -by-6, где количество сечений, K, должно быть больше или равно 2. Если количество разделов меньше 2 ,phasedelay рассматривает вход как вектор, b. Каждая строка sos соответствует коэффициентам фильтра второго порядка (biquad). i строка sos матрица соответствует [bi(1) bi(2) bi(3) ai(1) ai(2) ai(3)].

[phi,w] = phasedelay(d,n) возвращает n- точка фазы задержку цифрового фильтра, d. Использовать designfilt чтобы сгенерировать d на основе спецификаций частотной характеристики.

[phi,w] = phasedelay(...,n,'whole') использует n равномерно разнесенные точки вокруг всей единичной окружности.

phi = phasedelay(...,w) возвращает фазу ответ задержки на частотах, заданных в радианах/выборке, в векторных w. Частоты обычно находятся между 0 и π. w должен содержать не менее двух элементов.

[phi,f] = phasedelay(...,n,fs) и [phi,f] = phasedelay(...,n,'whole',fs) возвращает фазу вектор задержки f (в Гц), используя частоту дискретизации fs (в Гц). f должен содержать не менее двух элементов.

phi = phasedelay(...,f,fs) возвращает фазу ответ задержки на частотах, заданных в векторе f (в Гц), используя частоту дискретизации fs (в Гц).

[phi,w,s] = phasedelay(...) и [phi,f,s] = phasedelay(...) возвращает информацию о графическом изображении, где s - структура с полями, которые можно изменить для отображения различных графиков частотной характеристики.

phasedelay(...) без выходных аргументов строит график фазы отклика задержки от частоты.

Примечание

Если вход в phasedelay является одинарной точностью, фаза задержка вычисляется с помощью арифметики с одной точностью. Выход, phi, является одинарной точностью.

Примеры

свернуть все

Используйте методы наименьших квадратов с ограничениями для разработки lowpass конечной импульсной характеристики порядка 54 и нормализованной частоты среза 0,3. Задайте неравномерность в полосе пропускания и затухание в полосе задерживания 0,02 и 0,08, соответственно, выраженные линейными модулями. Вычислите и постройте график отклика фазовой задержки фильтра.

Ap = 0.02;
As = 0.008;

b = fircls1(54,0.3,Ap,As);
phasedelay(b)

Figure contains an axes. The axes contains an object of type line.

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

Apd = 40*log10((1+Ap)/(1-Ap));
Asd = -20*log10(As);

d = designfilt('lowpassfir','FilterOrder',54,'CutoffFrequency',0.3, ...
               'PassbandRipple',Apd,'StopbandAttenuation',Asd);
phasedelay(d)

Figure Filter Visualization Tool - Phase Delay contains an axes and other objects of type uitoolbar, uimenu. The axes with title Phase Delay contains an object of type line.

Проектируйте эллиптический фильтр порядка 10 и нормализованной полосы пропускания 0,4. Задайте неравномерность в полосе пропускания 0,5 дБ и затухание в полосе задерживания 20 дБ. Отобразите фазу ответ задержки фильтра по полному кругу модуля.

[b,a] = ellip(10,0.5,20,0.4); 
phasedelay(b,a,512,'whole')

Figure contains an axes. The axes contains an object of type line.

Повторите пример, используя designfilt.

d = designfilt('lowpassiir','DesignMethod','ellip','FilterOrder',10, ...
               'PassbandFrequency',0.4, ...
               'PassbandRipple',0.5,'StopbandAttenuation',20);
phasedelay(d,512,'whole')

Figure Filter Visualization Tool - Phase Delay contains an axes and other objects of type uitoolbar, uimenu. The axes with title Phase Delay contains an object of type line.

Представлено до R2006a
Для просмотра документации необходимо авторизоваться на сайте