isstable

Проверьте, что Системный объект фильтра в дискретном времени является стабильным

Описание

пример

flag = isstable(sysobj) возвращает true если Filter System object™ является стабильным. Функция возвращается false если системный объект не является стабильным.

flag = isstable(sysobj,'Arithmetic',arithType) анализирует Системный объект фильтра на основе арифметики, указанной в arithType вход.

Для получения дополнительных опций входа см. isstable в Signal Processing Toolbox™.

Примеры

свернуть все

Спроектируйте фильтр БИХ типа I Чебышева и определите, имеет ли фильтр минимальную фазу и является ли он стабильным.

Использование fdesign.lowpass и design функции, проектирование БИХ-фильтра типа I Чебышева с неравномерностью в полосе пропускания 0,5 дБ и частотой отсечения 3 дБ при 9600 Гц.

Fs = 48000; % Sampling frequency of input signal
d  = fdesign.lowpass('N,F3dB,Ap', 10, 9600, .5, Fs);
filt = design(d,'cheby1','Systemobject',true)
filt = 
  dsp.BiquadFilter with properties:

                   Structure: 'Direct form II'
             SOSMatrixSource: 'Property'
                   SOSMatrix: [5x6 double]
                 ScaleValues: [6x1 double]
           InitialConditions: 0
    OptimizeUnityScaleValues: true

  Show all properties

Использование isminphase function, определить, имеет ли фильтр минимальную фазу.

isminphase(filt)
ans = logical
   1

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

zplane(filt)

Figure Filter Visualization Tool - Pole-Zero Plot contains an axes and other objects of type uitoolbar, uimenu. The axes with title Pole-Zero Plot contains 4 objects of type line, text.

Все минимальные фильтры фазы стабильны. Чтобы проверить, является ли разработанный фильтр стабильным, используйте isstable функция.

isstable(filt)
ans = logical
   1

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

свернуть все

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

The 'Fixed' значение применяется к фильтрации системных объектов только со свойствами с фиксированной точкой.

Когда 'Arithmetic' входной параметр задается как 'Fixed' и объект фильтра имеет тип данных коэффициентов, установленный на 'Same word length as input'арифметический анализ зависит от того, разблокирован или заблокирован системный объект.

  • unlocked -- Функция объекта анализа не может определить тип данных коэффициентов. Функция принимает, что тип данных коэффициентов подписан, имеет 16-битный размер слова и автоматически масштабируется. Функция выполняет анализ с фиксированной точкой на основе этого предположения.

  • locked -- Когда тип входных данных 'double' или 'single'функция объекта анализа не может определить тип данных коэффициентов. Функция принимает, что тип данных коэффициентов подписан, имеет 16-битный размер слова и автоматически масштабируется. Функция выполняет анализ с фиксированной точкой на основе этого предположения.

Чтобы проверить, заблокирован ли или разблокирован системный объект, используйте isLocked функция.

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

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

свернуть все

Флаг для определения, является ли фильтр стабильным, возвращается как логический:

  • 1 - Фильтр стабильен.

  • 0 - Фильтр не является стабильным.

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

См. также

Введенный в R2013a