многофазный

Многофазное разложение многоскоростного фильтра

Синтаксис

p = polyphase(sysobj)
p = polyphase(sysobj,'Arithmetic',arithType)
polyphase(sysobj)

Описание

пример

p = polyphase(sysobj) возвращает многофазный матричный p Системы многоскоростного фильтра object™ sysobj. Каждая строка в матрице соответствует ответвлению политумана. Количество столбцов в p соответствует количеству касаний фильтра на многофазное ответвление.

p = polyphase(sysobj,'Arithmetic',arithType) возвращает многофазный матричный p в точности, установленной arithType.

пример

polyphase(sysobj) запускает Инструмент Визуализации Фильтра (fvtool) со всеми многофазными подфильтрами, чтобы позволить вам анализировать каждый подфильтр компонента индивидуально.

Примеры

свернуть все

Когда вы создаете многоскоростной фильтр, который использует многофазное разложение, многофазный позволяет вам анализировать фильтры компонента индивидуально путем возврата компонентов как строк в матрице. Во-первых, создайте фильтр interpolate-three.

hs = dsp.FIRInterpolator
hs = 
  dsp.FIRInterpolator with properties:

        NumeratorSource: 'Property'
              Numerator: [1x16 double]
    InterpolationFactor: 3

  Show all properties

В этом синтаксисе матричный p содержит все подфильтры для hm, один фильтр на строку матрицы.

p = polyphase(hs)
p = 3×6

   -0.0013   -0.0107    0.1784    0.1784   -0.0107   -0.0013
   -0.0054    0.0204    0.2406    0.0904   -0.0124         0
   -0.0124    0.0904    0.2406    0.0204   -0.0054         0

Наконец, использование polyphase без выходного аргумента открывает Инструмент Визуализации Фильтра, готовый к вам использовать аналитические возможности инструмента исследовать интерполятор hm.

polyphase(hs)

fvtool показывает коэффициенты подфильтров. Чтобы видеть ответ значения подфильтров, нажмите на кнопку Magnitude Response на fvtool панели инструментов.

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

свернуть все

Введите фильтр, заданный как как один из следующих Системных объектов фильтра:

Задайте арифметику, используемую в вычислении многофазной матрицы. Когда вы задаете 'double' или 'single', функция выполняет дважды - или анализ с одинарной точностью. Когда вы задаете 'fixed', арифметические изменения в зависимости от установки свойства CoefficientDataType и заблокирован ли Системный объект или разблокирован.

Детали для вычислений с фиксированной точкой

Состояние системного объектаСодействующий тип данныхПравило
Разблокированный'Same as input'Функция принимает, что содействующий тип данных подписывается, 16 битов, и автомасштабируется. Функция выполняет анализ фиксированной точки на основе этого предположения.
Разблокированный'Custom'Функция выполняет анализ фиксированной точки на основе установки свойства CustomCoefficientsDataType.
Заблокированный'Same as input'Когда типом входных данных является 'double' или 'fixed', функция принимает, что содействующий тип данных подписывается, 16-битный, и автомасштабируется. Функция выполняет анализ фиксированной точки на основе этого предположения.
Заблокированный'Custom'Функция выполняет анализ фиксированной точки на основе установки свойства CustomCoefficientsDataType.

Когда вы не задаете арифметику для non-CIC структур, функция использует арифметику с двойной точностью, если Системный объект фильтра находится в разблокированном состоянии. Если Системный объект заблокирован, функция выполняет анализ на основе заблокированного типа входных данных. Структуры CIC только поддерживают вычисления с фиксированной точкой.

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

свернуть все

Многофазный матричный p многоскоростного фильтра. Каждая строка в матрице соответствует ответвлению политумана. Первая строка матричного p представляет первое многофазное ответвление, вторая строка второе многофазное ответвление, и так далее к последнему многофазному ответвлению. Количество столбцов в p соответствует количеству касаний фильтра на многофазное ответвление.

Введенный в R2011a