getFilters

Возвращает матрицу каналообразующих конечных импульсных характеристик фильтров

Описание

пример

B = getFilters(obj) возвращает матрицу B фильтра коэффициентов, соответствующих каждому фильтру в dsp.Channelizer Система object™ банк фильтров. Каждая строка содержит коэффициенты для соответствующего полосно-пропускающего фильтра. Канализатор фактически не использует все эти фильтры в реализации. Он использует только lowpass прототипа (первую строку матрицы B) и БПФ для реализации банка фильтров. Комбинация полифазной реализации lowpass прототипа и БПФ эффективно реализует все фильтры в B, но делает это очень эффективным образом.

пример

B = getFilters(obj,ind) возвращает фильтры с индексами, соответствующими элементам вектора ind. ind - вектор-строка индексов между 1 и obj.NumFrequencyBands. По умолчанию этот вектор является [1: N], где N - количество частотных полос, заданное в obj.NumFrequencyBands свойство.

Примеры

свернуть все

Использование getFilters функция, можно получить доступ к коэффициентам lowpass прототипа фильтра и модулированных полосно-пропускающих фильтров канализатора.

channelizer = dsp.Channelizer;
B = getFilters(channelizer);

Первая строка соответствует коэффициентам фильтра прототипа. Последующие строки соответствуют коэффициентам соответствующих модулированных фильтров. Сравните первую строку с коэффициентами, возвращаемыми tf функция.

b = tf(channelizer);
isequal(b,B(1,:))
ans = logical
   1

Выходные выходы tf функцию и первую строку B матрица равна.

Визуализируйте частотную характеристику первых 4 фильтров канализатора.

fvtool(B(1,:),1, B(2,:),1, B(3,:),1, B(4,:),1);

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 4 objects of type line.

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

свернуть все

Входной фильтр, заданный как dsp.Channelizer Системный объект. getFilters функция возвращает матрицу коэффициентов фильтра, соответствующих каждому фильтру в группе фильтров канализатора.

Фильтруйте индексы, заданные как вектор-строка в области значений [1 obj.NumFrequencyBands]. Если не указано, ind is 1: N, где N - количество частотных полос, заданных через obj.NumFrequencyBands свойство.

Пример: getFilters (channelizer, [1:4]);

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

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

свернуть все

Матрица коэффициентов фильтра с конечной импульсной характеристикой (КИХ) каналообразователя, возвращенная как матрица. Каждая строка в матрице соответствует фильтру в банке фильтров. Первая строка соответствует фильтру прототипа, как возвращено b = tf(obj). Остальные строки в B заданы как:

bk=b×ejwkn/N

N - количество полос частот, а k - индекс строки - 1.

См. также

Функции

Объекты

Введенный в R2017b