exponenta event banner

fdesign.arbmagnphase

Объект спецификации произвольной величины отклика и фильтра фаз

Синтаксис

d = fdesign.arbmagnphase
d = fdesign.arbmagnphase(specification)
d = fdesign.arbmagnphase(specification,specvalue1,specvalue2,...)
d = fdesign.arbmagnphase(specvalue1,specvalue2,specvalue3)
d = fdesign.arbmagnphase(...,fs)

Описание

d = fdesign.arbmagnphase создает объект спецификации фильтра произвольной величины d.

d = fdesign.arbmagnphase(specification) инициализирует Specification свойство для объекта спецификации d кому specification. Входной аргумент specification должен быть одним из вариантов, показанных в следующей таблице. Параметры спецификации не чувствительны к регистру.

Спецификация

Описание результирующего фильтра

n,f,h

Однополосный дизайн (по умолчанию). FIR и IIR (n - порядок как для числителя, так и для знаменателя).

n,b,f,h

Многополосная конструкция FIR, где b определяет количество областей данных.

nb,na,f,h

Однополосная конструкция БИХ.

В следующей таблице описаны аргументы спецификации.

Аргумент

Описание

b

Количество полос в многополосном фильтре.

f

Частотный вектор. Значения частоты, указанные в f укажите местоположения, в которых предоставляются определенные амплитуды отклика фильтра. Когда вы предоставите f вы также должны предоставить h который содержит значения ответа.

h

Комплексные значения частотной характеристики.

n

Порядок фильтрации для фильтров FIR и порядки числителей и знаменателей для фильтров IIR (если не указано nb и na).

nb

Порядок числителей для фильтров БИХ.

na

Порядок знаменателей для конструкций фильтров БИХ.

По умолчанию этот метод предполагает, что все спецификации частоты предоставляются с нормированной частотой.

Указание f и h

f и h - входные аргументы, используемые для определения требуемого отклика фильтра. Каждое значение частоты, указанное в f должно иметь соответствующее значение ответа в h. В этом примере создается фильтр с двумя полосами пропускания (b = 4) и показывает, как f и h связаны между собой. Этот пример приведен только для иллюстрации. Он не является фактическим фильтром.

Определение частотного вектора f как [0 0.1 0.2 0.4 0.5 0.6 0.9 1.0]

Определение вектора отклика h как [0 0.5 0.5 0.1 0.1 0.8 0.8 0]

Эти спецификации подключаютсяf и h как показано в следующей таблице.

f (Нормализованная частота)

h (Требуемый ответ при f)

0

0

0.1

0.5

0.2

0.5

0.4

0.1

0.5

0.1

0.6

0.8

0.9

0.8

1.0

0.0

Ответ с двумя полосами пропускания - один примерно между 0,1 и 0,2 и второй между 0,6 и 0,9 - является результатом отображения междуf и h. Нанесение f и h дает следующий рисунок, который напоминает фильтр с двумя полосами пропускания.

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

Различные типы спецификаций часто имеют различные методы проектирования. Использовать designmethods(d) для получения списка методов конструирования, доступных для данной опции спецификации и объекта спецификации.

d = fdesign.arbmagnphase(specification,specvalue1,specvalue2,...) инициализирует объект спецификации фильтра с помощью specvalue1, specvalue2и так далее. Использовать get(d,'description') для описания различных спецификаций specvalue1, specvalue2, ...specn.

d = fdesign.arbmagnphase(specvalue1,specvalue2,specvalue3) использует опцию спецификации по умолчанию n,f,h, установка порядка фильтрации, частотного вектора фильтрации и вектора комплексной частотной характеристики в значения specvalue1, specvalue2, и specvalue3.

d = fdesign.arbmagnphase(...,fs) определяет частоту дискретизации в Гц. Все остальные частотные характеристики также предполагаются в Гц при указании fs.

Примеры

свернуть все

Использовать fdesign.arbmagnphase для моделирования сложного аналогового фильтра.

d = fdesign.arbmagnphase('n,f,h',100); % N=100, f and h set to defaults.
design(d,'freqsamp','SystemObject',true);

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 и h для определения полос фильтра.

n = 50;     % Group delay of a linear phase filter would be 25.
gd = 12;    % Set the desired group delay for the filter.
f1=linspace(0,.25,30); % Define the first stopband frequencies.
f2=linspace(.3,.56,40);% Define the passband frequencies.
f3=linspace(.62,1,30); % Define the second stopband frequencies.
h1 = zeros(size(f1));  % Specify the filter response at the freqs in f1.
h2 = exp(-1j*pi*gd*f2); % Specify the filter response at the freqs in f2.
h3 = zeros(size(f3));  % Specify the response at the freqs in f3.
d=fdesign.arbmagnphase('n,b,f,h',50,3,f1,h1,f2,h2,f3,h3);
D = design(d,'equiripple','SystemObject',true);
fvtool(D,'Analysis','freq');

Figure Filter Visualization Tool - Magnitude Response (dB) and Phase Response contains an axes and other objects of type uitoolbar, uimenu. The axes with title Magnitude Response (dB) and Phase Response contains an object of type line.

См. также

| | |

Представлен в R2011a