phasez

Фазовый отклик цифрового фильтра

Синтаксис

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

Описание

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

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

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

[phi,w] = phasez(...,n,'whole') возвращает частоту и развернутые векторы фазового отклика, оцененные в n равномерно распределенные точки вокруг модульного круга от 0 до 2π радианы/выборка.

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

[phi,f] = phasez(...,n,fs) возвратите развернутый вектор фазы phi в радианах и векторе частоты в герц. Вектор частоты лежит в диапазоне от 0 до частоты Найквиста, fs/2. Если 'whole' опция используется, диапазоны вектора частоты от 0 до частоты дискретизации.

phi = phasez(...f,fs) возвратите фазовый отклик в радианах на частотах, заданных в векторном f (в герц) использование частоты дискретизации fs (в герц). Векторный f должен иметь по крайней мере два элемента.

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

phasez(...) без выходных аргументов строит фазовый отклик фильтра. Если вы вводите коэффициенты фильтра или матрицу разделов второго порядка, окно текущей фигуры используется. Если вы вводите digitalFilter, переходной процесс отображен в FVTool.

Примечание

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

Примеры

свернуть все

Используйте designfilt спроектировать КИХ-фильтр порядка 54, нормированной частоты среза 0.3π rad/s, неравномерность в полосе пропускания 0,7 дБ и затухание в полосе задерживания 42 дБ. Используйте метод метода наименьших квадратов с ограничениями. Отобразите фазовый отклик фильтра.

Nf = 54;
Fc = 0.3;
Ap = 0.7;
As = 42;

d = designfilt('lowpassfir','CutoffFrequency',Fc,'FilterOrder',Nf, ...
               'PassbandRipple',Ap,'StopbandAttenuation',As, ...
               'DesignMethod','cls');
phasez(d)

Спроектируйте тот же фильтр с помощью fircls1. Следует иметь в виду тот fircls1 использует линейные модули, чтобы измерить пульсацию и затухание.

pAp = 10^(Ap/40);
Apl = (pAp-1)/(pAp+1);

pAs = 10^(As/20);
Asl = 1/pAs;

b = fircls1(Nf,Fc,Apl,Asl);
phasez(b)

Спроектируйте lowpass equiripple фильтр с нормированной частотой полосы пропускания 0.45π rad/s, нормированная частота полосы задерживания 0.55π rad/s, неравномерность в полосе пропускания 1 дБ и затухание в полосе задерживания 60 дБ. Отобразите фазовый отклик фильтра.

d = designfilt('lowpassfir', ...
               'PassbandFrequency',0.45,'StopbandFrequency',0.55, ...
               'PassbandRipple',1,'StopbandAttenuation',60, ...
               'DesignMethod','equiripple');
phasez(d)

Спроектируйте эллиптический БИХ-фильтр lowpass с нормированной частотой полосы пропускания 0.4π rad/s, нормированная частота полосы задерживания 0.5π rad/s, неравномерность в полосе пропускания 1 дБ и затухание в полосе задерживания 60 дБ. Отобразите фазовый отклик фильтра.

d = designfilt('lowpassiir', ...
               'PassbandFrequency',0.4,'StopbandFrequency',0.5, ...
               'PassbandRipple',1,'StopbandAttenuation',60, ...
               'DesignMethod','ellip');
phasez(d)

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

| | | | |

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