dfilt.cascadewdfallpass

Расположите каскадом allpass WDF фильтры, чтобы создать allpass WDF

Синтаксис

hd = dfilt.cascadewdfallpass(c1,c2,...)

Описание

hd = dfilt.cascadewdfallpass(c1,c2,...) создает каскад allpass цифровых фильтров волны, учитывая allpass коэффициенты в векторах c1, c2, и так далее.

Каждый вектор c содержит коэффициенты для одного раздела каскадного фильтра. векторы C должны иметь один, два, или четыре элемента (коэффициенты). Три вектора элемента не поддержаны.

Когда вектор c имеет четыре элемента, первые и третьи элементы вектора должны быть 0. Каждый раздел каскада является allpass цифровым фильтром волны, от dfilt.wdfallpass, с коэффициентами, данными соответствующим c вектором. Таким образом, первый раздел имеет коэффициенты от векторного c1, вторые коэффициенты раздела прибывают из c2, и на том, пока все векторы c не используются.

Можно смешать длины векторов c. Они не должны быть той же длиной. Например, можно расположить каскадом несколько разделов четвертого порядка (length (c) = 4) с первыми или разделами второго порядка.

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

Обычно вы не создаете эти WDF allpass каскадные фильтры непосредственно. Вместо этого они следуют из процесса проектирования для БИХ-фильтра. Пошлите к первому примеру в Примерах для больше об использовании dfilt.cascadewdfallpass разработать БИХ-фильтр.

Для получения дополнительной информации о векторах c и передаточной функции для фильтров allpass, обратитесь к dfilt.wdfallpass.

Свойства

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

PropertyName

Краткое описание

AllpassCoefficients

Содержит коэффициенты для allpass цифрового объекта фильтра волны

FilterStructure

Описывает поток сигналов для объекта фильтра, включая все активные элементы, которые выполняют операции во время фильтрации — усиления, задержки, суммы, продукты и ввод/вывод.

PersistentMemory

Задает, сбросить ли состояния фильтра и память перед каждой операцией фильтрации. Позволяет вам решить, сохраняет ли ваш фильтр состояния от предыдущих выполнений фильтрации. False является настройкой по умолчанию.

States

Это свойство содержит состояния фильтра прежде, во время, и после работы фильтра. Состояния действуют как память фильтра между фильтрацией выполнений или сеансов. Они также обеспечивают связь между разделами фильтра мультираздела, такими как каскадный фильтр. Для получения дополнительной информации обратитесь к filtstates в документации Signal Processing Toolbox™ или в Системе справочной информации.

Примеры

Чтобы продемонстрировать два подхода к использованию dfilt.cascadewdfallpass, чтобы разработать фильтр, эти примеры показывают и прямую конструкцию и конструкцию как часть другого фильтра.

Первый показанный проект создает БИХ-полуленточный фильтр, который использует волну решетки цифровые фильтры. Каждое ответвление параллельной связи в решетке является каскадной волной allpass цифровой фильтр.

tw = 100;  % Transition width of filter, 100 Hz.
ast = 80;  % Stopband attenuation of filter, 80 dB.
fs = 2000; % Sampling frequency of signal to filter.
% Store halfband specs.
d = fdesign.halfband('tw,ast',tw,ast,fs);

Теперь выполните фактический процесс проектирования полуполосы. hd содержит два фильтра dfilt.cascadewdfallpass.

hd = design(d,'ellip','filterstructure','cascadewdfallpass');
% Summary info on dfilt.cascadewdfallpass.
StageSummary = hd.stage(1).stage(2);

Этот пример демонстрирует прямую конструкцию фильтра dfilt.cascadewdfallpass с allpass коэффициентами.

section1 = 0.8;
section2 = [1.5,0.7];
section3 = [1.8,0.9];
hd = dfilt.cascadewdfallpass(section1,section2,section3);

Смотрите также

|

Введенный в R2011a