[b,a] = prony(h,bord,aord) возвращает числитель и коэффициенты знаменателя для причинной рациональной передаточной функции с импульсной характеристикой h, порядок числителя bord, и знаменатель заказывает aord.
Подбирайте 4-й порядок модель IIR к импульсной характеристике фильтра lowpass. Постройте исходные и Prony-спроектированные импульсные характеристики.
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'
Подбирайте 10-й порядок модель FIR к импульсной характеристике фильтра highpass. Постройте исходные и Prony-спроектированные частотные характеристики. Ответы соответствуют к высокой точности.
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')
Пример: impz(fir1(20,0.5)) задает импульсную характеристику КИХ-фильтра 20-го порядка с нормированной частотой среза π/2 рад/отсчет.
Типы данных: single | double Поддержка комплексного числа: Да
bord, aord — Числитель и порядки знаменателя положительные целочисленные скаляры
Числитель и знаменатель заказывают в виде положительных целочисленных скаляров. Если длина h меньше макс. (bord, aord), функция заполняет импульсную характеристику нулями.
Если вы хотите передаточную функцию все-полюса, задаете bord как 0.
Если вы хотите все-нулевую передаточную функцию, задаете aord как 0.
transfer function является Z-преобразование импульсной характеристики h [n]:
rational transfer function является отношением полиномов в z–1. Это уравнение описывает причинную рациональную передаточную функцию порядка числителя, который q и знаменатель заказывают p:
где a [0] = 1.
Ссылки
[1] Парки, Томас В. и К. Сидни Беррус. Создание цифровых фильтров. Нью-Йорк, Нью-Йорк, США: Wiley-межнаука, 1987.
Расширенные возможности
Генерация кода C/C++ Генерация кода C и C++ с помощью MATLAB® Coder™.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.