dsp. AllpoleFilter

БИХ-Фильтр без нулей

Описание

Объект dsp.AllpoleFilter фильтрует каждый канал входа с помощью allpole реализации фильтра.

Отфильтровать каждый канал входа:

  1. Создайте объект dsp.AllpoleFilter и установите его свойства.

  2. Вызовите объект с аргументами, как будто это была функция.

Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты? MATLAB.

Создание

Синтаксис

allpole = dsp.AllpoleFilter
allpole = dsp.AllpoleFilter(Name,Value)

Описание

пример

allpole = dsp.AllpoleFilter возвращается allpole фильтруют Систему object™, allpole, который независимо фильтрует каждый канал входа по последовательным вызовам алгоритма. Этот Системный объект использует заданную реализацию фильтра allpole.

allpole = dsp.AllpoleFilter(Name,Value) возвращается allpole фильтруют Системный объект, allpole, с каждым набором свойств к заданному значению.

Свойства

развернуть все

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

Если свойство является настраиваемым, можно изменить его значение в любое время.

Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Используя Системные объекты (MATLAB).

Задайте структуру фильтра как один из | Direct form | Direct form transposed | Lattice AR. Методы анализа не поддержаны для обработки фиксированной точки, если структурой является Direct form или Direct form transposed. Это свойство является ненастраиваемым.

Задайте коэффициенты знаменателя как числовой вектор - строку.

Настраиваемый: да

Зависимости

Это свойство применимо, когда свойство Structure установлено в один из Direct form | Direct form transposed.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
Поддержка комплексного числа: Да

Задайте коэффициенты фильтра решетки как числовой вектор - строку.

Настраиваемый: да

Зависимости

Это свойство применимо, когда свойство Structure установлено в Lattice AR.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
Поддержка комплексного числа: Да

Задайте начальные условия состояний фильтра.

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

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

Настраиваемый: да

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
Поддержка комплексного числа: Да

Задайте содействующий тип данных с фиксированной точкой знаменателя как один из Same word length as input | Custom. Это свойство является ненастраиваемым.

Задайте отражательный содействующий тип данных с фиксированной точкой как один из Same word length as input | Custom. Это свойство является ненастраиваемым.

Свойства фиксированной точки

Задайте тип данных с фиксированной точкой продукта как один из | Full precision | Same as input | Custom |. Это свойство является ненастраиваемым.

Задайте тип данных с фиксированной точкой аккумулятора к одному из | Full precision | Same as input | Same as product | Custom |. Это свойство является ненастраиваемым.

Задайте выходной тип данных с фиксированной точкой как один из | Same as accumulator | Same as input | Custom |. Это свойство является ненастраиваемым.

Задайте тип данных с фиксированной точкой состояния как один из | Same as input | Same as accumulator | Custom. Это свойство является ненастраиваемым.

Задайте содействующую фиксированную точку знаменателя как объект numerictype автосо знаком. Это свойство является ненастраиваемым.

Зависимости

Это свойство применимо, когда свойством CoefficientsDataType является Custom.

Задайте содействующую фиксированную точку знаменателя как объект numerictype автосо знаком. Это свойство является ненастраиваемым.

Зависимости

Это свойство применимо, когда свойством ReflectionCoefficientsDataType является Custom.

Задайте фиксированную точку продукта как масштабированный объект numerictype автосо знаком. Это свойство является ненастраиваемым.

Зависимости

Это свойство применяется, когда вы устанавливаете свойство ProductDataType на Custom.

Задайте фиксированную точку аккумулятора как масштабированный объект numerictype автосо знаком. Это свойство является ненастраиваемым.

Зависимости

Это свойство применяется, когда вы устанавливаете свойство AccumulatorDataType на Custom.

Задайте фиксированную точку состояния как масштабированный объект numerictype автосо знаком. Это свойство является ненастраиваемым.

Зависимости

Это свойство применяется, когда вы устанавливаете свойство StateDataType на Custom.

Задайте выходную фиксированную точку как масштабированный объект numerictype автосо знаком. Это свойство является ненастраиваемым.

Зависимости

Это свойство применяется, когда вы устанавливаете свойство OutputDataType на Custom.

Использование

Для версий ранее, чем R2016b, используйте функцию step, чтобы запустить алгоритм Системного объекта. Аргументы к step являются объектом, который вы создали, сопровождаемый аргументами, показанными в этом разделе.

Например, y = step(obj,x) и y = obj(x) выполняют эквивалентные операции.

Синтаксис

y = allpole(x)

Описание

пример

y = allpole(x) фильтрует действительный или комплексный входной сигнал x с помощью фильтра allpole, чтобы произвести вывод y.

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

развернуть все

Ввод данных, заданный как вектор или матрица. Этот объект также принимает входные параметры переменного размера. Если объект заблокирован, можно изменить размер каждого входного канала, но вы не можете изменить количество каналов.

Когда входные данные имеют фиксированную точку, она должна быть подписана. allpole объект фильтра работает с каждым каналом входного сигнала независимо по последовательным вызовам алгоритма.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | fi
Поддержка комплексного числа: Да

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

развернуть все

Фильтрованный выходной параметр, возвращенный как вектор или матрица. Размер, тип данных и сложность соответствий выходного сигнала тот из входного сигнала.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | fi
Поддержка комплексного числа: Да

Функции объекта

Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj, используйте этот синтаксис:

release(obj)

развернуть все

freqzЧастотная характеристика фильтра
fvtoolВизуализируйте частотную характеристику фильтров DSP
impzИмпульсный ответ дискретного времени фильтрует Системный объект
infoИнформация о Системном объекте фильтра
coeffsОтфильтруйте коэффициенты
costОценка стоится за реализацию Системных объектов фильтра
grpdelayОтвет групповой задержки дискретного времени фильтрует Системный объект
phasezРазвернутый фазовый отклик для фильтра
stepЗапустите алгоритм Системного объекта
releaseВысвободите средства и позвольте изменения в значениях свойств Системного объекта и введите характеристики
resetСбросьте внутренние состояния Системного объекта

Примеры

развернуть все

Используйте фильтр Allpole, чтобы применить фильтр lowpass к форме волны с двумя синусоидальными частотами.

Примечание: Этот пример запускается только в R2016b или позже. Если вы используете более ранний релиз, заменяете каждый вызов функции с эквивалентным синтаксисом step. Например, myObject (x) становится шагом (myObject, x).

 t = (0:1000)./8e3;
 xin = sin(2*pi*1e3*t)+sin(2*pi*3e3*t);

 src = dsp.SignalSource(xin', 4);
 sink = dsp.SignalSink;
 allpole = dsp.AllpoleFilter;
 tt = (-25:25)';
 xsinc = 0.4*sinc(0.4*tt);
 asinc = lpc(xsinc,51);
 allpole.Denominator = asinc;

 sa = dsp.SpectrumAnalyzer('SampleRate',8e3,...
    'PlotAsTwoSidedSpectrum',false,...
    'OverlapPercent', 80,'PowerUnits','dBW',...
    'YLimits', [-150 50]);

while ~isDone(src)
      input = src();
      filteredOutput = allpole(input);
      sink(filteredOutput);
      sa(filteredOutput)
 end

 filteredResult = sink.Buffer;
 fvtool(allpole,'Fs',8000)

Алгоритмы

Этот объект реализует алгоритм, входные параметры и выходные параметры, описанные на странице с описанием блока Allpole Filter. Свойства объектов соответствуют параметрам блоков.

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

Представленный в R2012b