freqsamp

Действительный или комплексный частотно-дискретизированный конечной импульсной характеристикой фильтр из объекта спецификации

Синтаксис

hd = design(d,'freqsamp','SystemObject',true)
hd = design(...,'filterstructure',structure,'SystemObject',true)
hd = design(...,'window',window,'SystemObject',true)

Описание

hd = design(d,'freqsamp','SystemObject',true) проектирует фильтр методом частотной выборки, заданный объектом спецификаций фильтра d.

hd = design(...,'filterstructure',structure,'SystemObject',true) возвращает фильтр со структурой фильтра, заданной structure входной параметр. structure является dffir по умолчанию и может быть любой из следующих структур фильтра.

Структура

Описание получившейся структуры фильтра

dffir

Фильтр конечной импульсной характеристики прямой формы

dffirt

Транспонированный конечная импульсная характеристика прямой формы

dfsymfir

Симметричный конечная импульсная характеристика прямой формы

dfasymfir

Асимметричный конечная импульсная характеристика прямой формы

hd = design(...,'window',window,'SystemObject',true) проектирует фильтры, используя окно, заданное как window. Предоставьте входной параметр window как

  • Вектор символов для типа окна. Для примера используйте 'bartlett', или 'hamming'. Посмотрите window полный список доступных окон.

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

  • Сам вектор окна.

Примеры

свернуть все

Эти примеры проектируют конечную импульсную характеристику фильтры, которые имеют произвольные величины ответы. В первом фильтре реакция имеет три различные секции, и полученный фильтр действителен.

Второй пример создает комплексный фильтр.

b1 = 0:0.01:0.18;
b2 = [.2 .38 .4 .55 .562 .585 .6 .78];
b3 = 0.79:0.01:1;
a1 = .5+sin(2*pi*7.5*b1)/4;    % Sinusoidal response section.
a2 = [.5 2.3 1 1 -.2 -.2 1 1]; % Piecewise linear response section.
a3 = .2+18*(1-b3).^2;          % Quadratic response section.
f = [b1 b2 b3];
a = [a1 a2 a3];
n = 300;
d = fdesign.arbmag('n,f,a',n,f,a); % First specifications object.
hd = design(d,'freqsamp','window',{@kaiser,.5},...
    'SystemObject',true); % Filter.
fvtool(hd)

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

Теперь разработайте комплексный конечная импульсная характеристика произвольной величины. Напомним, что вектор f содержит местоположения частот, а вектор a содержит желаемые значения отклика фильтра в местоположениях, заданных в f.

f = [-1 -.93443 -.86885 -.80328 -.7377 -.67213 -.60656 -.54098 ...
-.47541,-.40984 -.34426 -.27869 -.21311 -.14754 -.081967 ...
-.016393 .04918 .11475,.18033 .2459 .31148 .37705 .44262 ...
 .5082 .57377 .63934 .70492 .77049,.83607 .90164 1];
a = [.0095848 .021972 .047249 .099869 .23119 .57569 .94032 ...
.98084 .99707,.99565 .9958 .99899 .99402 .99978 .99995 .99733 ...
.99731 .96979 .94936,.8196 .28502 .065469 .0044517 .018164 ...
.023305 .02397 .023141 .021341,.019364 .017379 .016061];
n = 48;
d = fdesign.arbmag('n,f,a',n,f,a); % Second spec. object.
hdc = design(d,'freqsamp','window','rectwin','SystemObject',true); % Filter.
fvtool(hdc)

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

fvtool показывает вам ответ для hdc от-1 до 1 в нормированной частоте. проект (d,...) возвращает комплексный фильтр для hdc, поскольку вектор частоты включает отрицательные значения частоты.

Введенный в R2011a