exponenta event banner

prony

Метод Prony для проектирования фильтра

Описание

пример

[b,a] = prony(h,bord,aord) возвращает числитель и коэффициенты знаменателя для причинно-рациональной передаточной функции с импульсной характеристикой h, порядок числителя bord, и порядок знаменателя aord.

Примеры

свернуть все

Подгонка БИХ-модели 4-го порядка под импульсную характеристику фильтра нижних частот. Постройте график исходных и разработанных Прони импульсных откликов.

d = designfilt('lowpassiir','NumeratorOrder',4,'DenominatorOrder',4, ...
    'HalfPowerFrequency',0.2,'DesignMethod','butter');

h = filter(d,[1 zeros(1,31)]);
bord = 4;
aord = 4;
[b,a] = prony(h,bord,aord);

subplot(2,1,1) 
stem(impz(b,a,length(h)))
title 'Impulse Response with Prony Design'

subplot(2,1,2)
stem(h)
title 'Input Impulse Response'

Figure contains 2 axes. Axes 1 with title Impulse Response with Prony Design contains an object of type stem. Axes 2 with title Input Impulse Response contains an object of type stem.

Подгоните модель FIR 10-го порядка к импульсной характеристике фильтра верхних частот. Постройте график исходных и разработанных Прони частотных откликов. Ответы соответствуют высокой точности.

d = designfilt('highpassfir','FilterOrder',10,'CutoffFrequency',0.8);

h = filter(d,[1 zeros(1,31)]);
bord = 10;
aord = 0;
[b,a] = prony(h,bord,aord);

fvt = fvtool(b,a,d);
legend(fvt,'Prony','Original')

Figure Filter Visualization Tool - Magnitude Response (dB) contains an axes and other objects of type uitoolbar, uimenu. The axes with title Magnitude Response (dB) contains 2 objects of type line. These objects represent Prony, Original.

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

свернуть все

Импульсная характеристика, заданная как вектор.

Пример: impz(fir1(20,0.5)) задает импульсную характеристику КИХ-фильтра 20-го порядка с нормализованной частотой отсечек δ/2 рад/выборка.

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

Порядки числителя и знаменателя, заданные как положительные целочисленные скаляры. Если длина h меньше макс. (bord,aord), функция накладывает импульсную характеристику с нулями.

  • Если требуется использовать функцию передачи всех полюсов, укажите bord как 0.

  • Если требуется использовать функцию переноса всех нулей, укажите aord как 0.

Типы данных: single | double

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

свернуть все

Коэффициенты передаточной функции, возвращаемые в виде векторов. b имеет длину bord + 1 и a имеет длину aord + 1.

Подробнее

свернуть все

Передаточная функция

Передаточная функция представляет собой Z-преобразование импульсной характеристики h [n]:

H (z) =∑n=−∞∞h (n) z − n.

Рациональная передаточная функция - отношение многочленов в z-1. Это уравнение описывает причинно-рациональную передаточную функцию порядка числителя q и порядка знаменателя p:

H (z) = B (z) A (z) =∑k=0qb (k) z−k1+∑l=1pa (l) z − l,

где a [0] = 1.

Ссылки

[1] Парки, Томас В. и К. Сидни Беррус. Проектирование цифрового фильтра. Нью-Йорк, Нью-Йорк, США: Wiley-межнаука, 1987.

Расширенные возможности

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

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