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

Один проект полосы (значение по умолчанию). КИХ и БИХ (n является порядком и для числителя и для знаменателя).

n,b,f,h

Многополосный проект КИХ, где b задает количество полос.

nb,na,f,h

БИХ один проект полосы.

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

Аргумент

Описание

b

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

f

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

h

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

n

Отфильтруйте порядок для КИХ-фильтров и числителя и порядки знаменателя для БИХ-фильтров (если не заданный 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]

Эти спецификации connectf и 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... spec n.

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);

Для более комплексного примера разработайте полосовой фильтр с низкой групповой задержкой путем определения желаемой задержки и использования 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');

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

| | |

Введенный в R2011a

Для просмотра документации необходимо авторизоваться на сайте