dfilt.fftfir

Дискретное время, перекрытие - добавляет, КИХ-фильтр

Синтаксис

Hd = dfilt.fftfir(b,len)
Hd = dfilt.fftfir(b)
Hd = dfilt.fftfir

Описание

Этот объект использует перекрытие - добавляет метод фильтрации блока FIR, которая очень эффективна для потоковой передачи данных.

Hd = dfilt.fftfir(b,len) возвращает дискретное время, БПФ, КИХ-фильтр, Hd, с коэффициентами числителя, b и длиной блока, len. Длина блока является количеством точек ввода, чтобы использовать для каждого перекрытия - добавляет вычисление.

Hd = dfilt.fftfir(b) возвращает дискретное время, БПФ, КИХ-фильтр, Hd, с коэффициентами числителя, b и длиной блока, len= 100.

Hd = dfilt.fftfir возвращает значение по умолчанию, дискретное время, БПФ, КИХ-фильтр, Hd, с числителем b=1 и длина блока, len= 100. Этот фильтр передает вход до неизменного вывода.

Примечание

Когда вы используете объект dfilt.fftfir отфильтровать данные, фильтр всегда управляет на сегменте сигнала, равного в длине к целочисленному кратному длиной блока объекта, len. Если длина входного сигнала не равна целочисленному кратному длина блока, длина сигнала является усеченной к самому близкому целому числу, удовлетворяющему это требование. Если свойство PersistentMemory установлено в true, в следующий раз, когда вы используете объект фильтра, остающиеся выборки сигнала предварительно ожидаются к последующему входу. Получившееся количество БПФ указывает = (длина фильтра + длина блока - 1). Фильтр является самым эффективным, если количество точек БПФ является степенью 2.

fftfir использует перекрытие - добавляет алгоритм обработки блока, который представлен можно следующим образом,

где len является длиной блока, и M является длиной числителя 1, (length(b)-1), который является также количеством состояний. Вывод каждой свертки является блоком, который более длинен, чем входной блок хвостом (length(b)-1) выборки. Эти хвосты перекрывают следующий блок и добавляются к нему. Состояния, о которых сообщает dfilt.fftfir, являются хвостами итоговой свертки.

Примеры

Создайте КИХ-фильтр дискретного времени БПФ с коэффициентами от 30-го порядка lowpass equiripple проект:

b = firpm(30,[0 .1 .2 .5]*2,[1 1 0 0]);
Hd = dfilt.fftfir(b)

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

freq_coeffs = fftcoeffs(Hd);

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

|

Представлено до R2006a