scalecheck

Проверяйте масштабирование биквадратичного фильтра

Описание

пример

s = scalecheck(sysobj,pnorm) проверяет масштабирование входного фильтра System object™.

s = scalecheck(sysobj,pnorm,'Arithmetic',arithType) проверяет масштабирование объекта фильтра с помощью арифметики, заданной в arithType.

Примеры

свернуть все

В этом примере показано, как проверить масштабирование фильтра по норме Linf.

Спроектируйте эллиптический фильтр sos в структуре прямой формы II со спецификациями по умолчанию.

EllipII = design(fdesign.lowpass, 'ellip', 'FilterStructure', 'df2sos',...
    'SystemObject',true);

Проверьте масштабирование.

scalecheck(EllipII,'Linf')
ans = 2×3

    3.1678   15.0757    1.4974
    4.7360   52.6026    1.0000

Спроектируйте эллиптический фильтр sos в прямой форме I со спецификациями по умолчанию.

EllipI = design(fdesign.lowpass('N,Fp,Ap,Ast',10,0.5,0.5,20), 'ellip',...
    'FilterStructure', 'df1sos','SystemObject',true);

Проверьте масштабирование.

scalecheck(EllipI,'Linf')
ans = 1×5

    1.7078    2.0807    2.6084    7.1467    1.0000

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

свернуть все

Входной фильтр, заданный как один из следующих Системных объектов:

Норма дискретной области времени или норма частотного диапазона.

Допустимые значения норм во временной области для pnorm являются 'l1', 'l2', и 'linf'. Допустимые значения норм частотного диапазона 'L1', 'L2', и 'Linf'. The 'L2' норма равна 'l2' норма (по теореме Парсеваля), но эта эквивалентность не соответствует другим нормам - 'l1' не то же самое что и 'L1' и 'Linf' не то же самое что и 'linf'.

Арифметический тип, используемый во время анализа, задается как 'double', 'single', или 'fixed'. Функция принимает фильтр двойной точности, когда вход арифметики не задан, и Системный объект фильтра находится в разблокированном состоянии.

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

свернуть все

Масштабирование фильтра для заданной p-нормы. Оптимально масштабированный фильтр имеет частичные нормы, равные единице. В таких случаях s содержит все таковые.

Для прямой формы I (df1sos) и транспонированная прямая форма II (df2tsos) фильтрует, функция возвращает p-норму фильтра, вычисленную с входов фильтра, на выход каждой секции второго порядка. Поэтому количество элементов в s на единицу меньше, чем количество секций в фильтре. Этот расчет p-нормы не включает конечное значение шкалы фильтра, которое можно найти, введя hd.scalevalue(end) в подсказку MATLAB.

Для прямой формы II (df2sos) и прямая форма I транспонирована (df1tsos) фильтрует, функция возвращает вектор-строку, элементы которого содержат p-норму из фильтра входа в входе рекурсивной части каждой секции второго порядка. Этот расчет p-нормы соответствует входу умножителям в этих структурах фильтра. Эти входы соответствуют местам в потоке сигналов, где следует избегать переполнения.

Когда hd имеет нетривиальные значения шкалы, то есть, если какие-либо значения шкалы не равны единице, s является двухстрочной матрицей, а не вектором. Элементы первой строки s сообщите p-норму фильтра, вычисленную из входов фильтра, в выходы каждой секции второго порядка. Элементы второй строки s содержат p-норму, вычисленную из входа фильтра в вход каждой шкалы значения между секциями. Для df2sos и df1tsos структуры фильтра, последний числитель и конечное значение шкалы для фильтра не включаются, когда scalecheck проверяет масштабирование.

Типы данных: double

Введенный в R2011a