impzlength

Длина импульсной характеристики

Описание

пример

len = impzlength(b,a) возвращает длину импульсной характеристики для причинного фильтра в дискретном времени с функцией рациональной системы, заданной числителем, b, и знаменатель, a, полиномы в z–1. Для стабильных БИХ, len - длина последовательности эффективных импульсных характеристик. Условия в импульсной характеристики БИХ после len-й член по существу равен нулю.

пример

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

пример

len = impzlength(d) возвращает длину импульсной характеристики для цифрового фильтра, d. Использовать designfilt чтобы сгенерировать d на основе спецификаций частотной характеристики.

len = impzlength(___,tol) задает допуск для оценки эффективной длины импульсной характеристики БИХ. По умолчанию tol является 5e-5. Увеличение значения tol оценивает более короткую эффективную длину для импульсной характеристики БИХ. Уменьшение значения tol создает большую эффективную длину для импульсной характеристики БИХ.

Примеры

свернуть все

Создайте lowpass allpole БИХ фильтр с шестом в 0,9. Вычислите эффективную длину импульсной характеристики. Получите импульсную характеристику. Постройте график результата.

b = 1;
a = [1 -0.9];
len = impzlength(b,a)
len = 93
[h,t] = impz(b,a);
stem(t,h)

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

h(len)
ans = 6.1704e-05

Спроектируйте lowpass эллиптический фильтр 4-го порядка с частотой среза 0,4, рад/образец. Укажите 1 дБ неравномерности в полосе пропускания и 60 дБ затухания в полосе задерживания. Спроектируйте фильтр в виде полюса с нулевым усилением и получите матрицу секции второго порядка с помощью zp2sos. Определите эффективную длину последовательности импульсной характеристики из матрицы секции второго порядка.

[z,p,k] = ellip(4,1,60,.4);
[sos,g] = zp2sos(z,p,k);
len = impzlength(sos)
len = 80

Использование designfilt для разработки lowpass эллиптического фильтра 4-го порядка с нормализованной частотой полосы пропускания 0.4, рад/выборка. Укажите 1 дБ неравномерности в полосе пропускания и 60 дБ затухания в полосе задерживания. Определите длину последовательности эффективных импульсных характеристик и визуализируйте ее.

d = designfilt('lowpassiir','FilterOrder',4,'PassbandFrequency',0.4, ...
               'PassbandRipple',1,'StopbandAttenuation',60, ...
               'DesignMethod','ellip');
len = impzlength(d)
len = 80
impz(d)

Figure Filter Visualization Tool - Impulse Response contains an axes and other objects of type uitoolbar, uimenu. The axes with title Impulse Response contains an object of type stem.

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

свернуть все

Коэффициенты числителя, заданные как скаляр (allpole filter) или вектор.

Пример: b = fir1(20,0.25)

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

Коэффициенты знаменателя, заданные как скаляр (конечная импульсная характеристика фильтр) или вектор.

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

Матрица сечений второго порядка, заданная как матрица K -на-6. Системная функция K-го биквадного фильтра имеет рациональное Z-преобразование

Hk(z)=Bk(1)+Bk(2)z1+Bk(3)z2Ak(1)+Ak(2)z1+Ak(3)z2.

Коэффициенты в K-й строке матрицы, sos, упорядочиваются следующим образом.

[Bk(1)Bk(2)Bk(3)Ak(1)Ak(2)Ak(3)]

Частотная характеристика фильтра - это системная функция, вычисленная на модуль круге с

z=ej2πf.

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

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

Допуск для эффективной длины импульсной характеристики БИХ, заданный как положительное число. Допуск определяет член в абсолютно суммируемой последовательности, после чего последующие члены считаются 0. Допуск по умолчанию 5e-5. Увеличение допуска возвращает более короткую длину последовательности эффективных импульсных характеристик. Уменьшение допуска возвращает большую длину последовательности эффективных импульсных характеристик.

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

свернуть все

Длина импульсной характеристики, заданная как положительное целое число. Для стабильных БИХ с абсолютно суммируемыми импульсными характеристиками, impzlength возвращает эффективную длину для импульсной характеристики, после которой коэффициенты по существу равны нулю. Вы можете управлять этой точкой отсечения, задав необязательное tol входной параметр.

Алгоритмы

Чтобы вычислить импульсную характеристику для конечная импульсная характеристика, impzlength использует длину b. Для БИХ функция сначала находит полюсы передаточной функции, используя roots.

Если фильтр нестабильен, длина простирается до точки, в которой термин от самого большого полюса достигает 106 умножает его исходное значение.

Если фильтр стабилен, длина простирается до точки, в которой член от наибольшего амплитудного полюса tol умножает его исходную амплитуду.

Если фильтр является колебательным, только с полюсами на модуль круге, то impzlength вычисляет пять периодов самого медленного колебания.

Если фильтр имеет как колебательные, так и демпфированные условия, длина простирается до большего из следующих значений:

  • Пять периодов самого медленного колебания.

  • Точка, в которой термин из-за самого большого полюса tol умножает его исходную амплитуду.

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

.

См. также

| | |

Введенный в R2013a