zplane

График нулей и полюсов для систем в дискретном времени

Описание

пример

zplane(z,p) строит графики нулей, заданных в вектор-столбец z и полюса, указанные в вектор-столбец p в текущую фигуру окне. Символ 'o' представляет нуль и символ 'x' представляет собой полюс. График включает модуль круг для ссылки.

Если z и p являются матрицами, тогда zplane строит графики полюсов и нулей в столбцах z и p в разных цветах.

пример

zplane(b,a), где b и a Векторы-строки, первое использование roots для нахождения нулей и полюсов передаточной функции, представленной коэффициентами числителя b и коэффициенты знаменателя a.

[hz,hp,ht] = zplane(___) возвращает векторы указателей на нулевые линии, hz, и линии шеста, hp. ht - вектор указателей на линию окружность и на текстовые объекты, которые присутствуют, когда существует несколько нулей или полюсов.

zplane(d) находит нули и полюса передаточной функции, представленной цифровым фильтром, d. Использовать designfilt чтобы сгенерировать d на основе спецификаций частотной характеристики. Эта диаграмма нулей и полюсов отображается в FVTool.

[vz,vp,vk] = zplane(d) возвращает нули (вектор vz), полюса (вектор vp) и коэффициент усиления (скаляр vk), соответствующий цифровому фильтру d.

Примеры

свернуть все

Для данных, дискретизированных с частотой 1000 Гц, постройте графики полюсов и нулей эллиптического lowpass цифрового фильтра 4-го порядка с частотой отсечения 200 Гц, 3 дБ пульсации в полосе пропускания и 30 дБ ослабления в полосе пропускания.

[z,p,k] = ellip(4,3,30,200/500);
zplane(z,p)
grid
title('4th-Order Elliptic Lowpass Digital Filter')

Figure contains an axes. The axes with title 4th-Order Elliptic Lowpass Digital Filter contains 3 objects of type line.

Создайте тот же фильтр с помощью designfilt. Использование zplane для построения графика полюсов и нулей. Обратите внимание, что этот синтаксис zplane вызывает fvtool.

d = designfilt('lowpassiir','FilterOrder',4,'PassbandFrequency',200, ...
               'PassbandRipple',3,'StopbandAttenuation',30, ...
               'DesignMethod','ellip','SampleRate',1000);
zplane(d)

Figure Filter Visualization Tool - Pole-Zero Plot contains an axes and other objects of type uitoolbar, uimenu. The axes with title Pole-Zero Plot contains 3 objects of type line.

Проектируйте полосно-пропускной фильтр Чебышевского типа II 8-го порядка с затуханием в полосе задерживания 20 дБ. Задайте частоты ребра полосы упора как π/8 рад/образец и 5π/8 рад/образец.

[b,a] = cheby2(8/2,20,[1 5]/8);

Использование zplane для построения графика полюсов и нулей передаточной функции.

zplane(b,a)

Figure contains an axes. The axes contains 3 objects of type line.

Визуализируйте нулевую фазовую характеристику фильтра. Наложите модуль круг, полюс и нулевые положения.

[hw,fw] = zerophase(b,a,1024,"whole");

z = roots(b);
p = roots(a);

plot3(cos(fw),sin(fw),hw)
hold on
plot3(cos(fw),sin(fw),zeros(size(fw)),'--')
plot3(real(z),imag(z),zeros(size(z)),'o')
plot3(real(p),imag(p),zeros(size(p)),'x')
hold off
xlabel("Real")
ylabel("Imaginary")
view(35,40)
grid

Figure contains an axes. The axes contains 4 objects of type line.

Входные параметры

свернуть все

Нули и полюсы, заданные как векторы-столбцы или матрицы. Если z и p являются матрицами, тогда zplane строит графики полюсов и нулей в столбцах z и p в разных цветах.

Типы данных: single | double
Поддержка комплексного числа: Да

Коэффициенты передаточной функции, заданные как векторы-строки. Передаточная функция определяется терминами z–1:

H(z)=B(z)A(z)=b(1)+b(2)z1++b(n+1)zna(1)+a(2)z1++a(m+1)zm

Пример: b = [1 3 3 1]/6 и a = [3 0 1 0]/3 задайте фильтр Баттерворта третьего порядка с нормированной частотой 3-dB 0.5, рад/выборка.

Типы данных: single | double
Поддержка комплексного числа: Да

Цифровой фильтр, заданный как digitalFilter объект. Использовать designfilt для генерации цифрового фильтра на основе спецификаций частотной характеристики.

Пример: d = designfilt('lowpassiir','FilterOrder',3,'HalfPowerFrequency',0.5) задает фильтр Баттерворта третьего порядка с нормированной частотой 3-dB 0.5, рад/выборка.

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

свернуть все

Векторы указателей на нулевые линии, hz, и линии шеста, hp, из диаграммы нулей и полюсов. ht - вектор указателей на линию окружность и на текстовые объекты, которые присутствуют, когда существует несколько нулей или полюсов. Если нет нулей или полюсов, hz или hp - пустая матрица, [].

Нули, полюсы и усиление цифрового фильтра, d, возвращается как векторы-столбцы и скаляр.

Совет

  • Вы можете переопределить автоматическое масштабирование zplane использование

    axis([xmin xmax ymin ymax])

    после вызова zplane. Это масштабирование полезно, когда один или несколько нулей или полюсов имеют настолько большую величину, что другие тесно сгруппированы вокруг источника и их трудно различить.

См. также

Приложения

Функции

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