exponenta event banner

firpr2chfb

Двухканальный банк фильтров FIR для идеальной реконструкции

Синтаксис

[h0,h1,g0,g1] = firpr2chfb(n,fp)
[h0,h1,g0,g1] = firpr2chfb(n,dev,'dev')
[h0,h1,g0,g1] = firpr2chfb('minorder',fp,dev)

Описание

[h0,h1,g0,g1] = firpr2chfb(n,fp) проектирует четыре фильтра FIR для секций анализа (h0 и h1) и раздел синтеза (g0 и g1) двухканального набора идеальных восстановительных фильтров. Конструкция соответствует ортогональным блокам фильтров, также известным как силосимметричные блоки фильтров.

n - порядок всех четырех фильтров. Это должно быть нечетное целое число. fp - граница полосы пропускания для фильтров нижних частот h0 и g0. Аргумент границы полосы пропускания fp должно быть меньше 0,5. h1 и g1 являются фильтрами верхних частот с границей полосы пропускания, заданной (1-fp).

[h0,h1,g0,g1] = firpr2chfb(n,dev,'dev') проектирует четыре фильтра таким образом, что максимальная пульсация стоп-полосы h0 задается скаляром dev. Определить dev в линейных единицах, а не децибелах. Полоса останова-пульсация h1 также дается dev, в то время как максимальное значение stopband-ripple для обоих g0 и g1 является (2 *dev).

[h0,h1,g0,g1] = firpr2chfb('minorder',fp,dev) проектирует четыре фильтра таким образом, что h0 соответствует спецификации границы полосы пропускания fp и stopband-ripple dev использование фильтров минимального порядка в соответствии со спецификацией.

Примеры

свернуть все

Сконструировать набор фильтров с фильтрами порядка n, равными 99, и краями полосы пропускания 0,45 и 0,55.

n = 99;
[h0,h1,g0,g1] = firpr2chfb(n,.45);
fvtool(h0,1,h1,1,g0,1,g1,1);

Вот фильтры, ясно показывающие края полосы пропускания.

Используйте следующие графики для проверки совершенной реконструкции с помощью набора фильтров, созданного firpr2chfb.

stem(1/2*conv(g0,h0)+1/2*conv(g1,h1))
n=0:n;
stem(1/2*conv((-1).^n.*h0,g0)+1/2*conv((-1).^n.*h1,g1))
stem(1/2*conv((-1).^n.*g0,h0)+1/2*conv((-1).^n.*g1,h1))
stem(1/2*conv((-1).^n.*g0,(-1).^n.*h0)+...
1/2*conv((-1).^n.*g1,(-1).^n.*h1))
stem(conv((-1).^n.*h1,h0)-conv((-1).^n.*h0,h1))

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

.

См. также

| | |

Представлен в R2011a