isStandardCompliant

Проверьте, что группа фильтров октавы соответствует S1.11-2004 ANSI

Описание

пример

[status,cf] = isStandardCompliant(ofb,ctype) указывает, находится ли каждый фильтр в ofb соответствует минимальным и максимальным спецификациям ослабления ctype проект, указанный в стандарте ANSI S1.11-2004. Функция также возвращает вектор центральных частот.

пример

[statusall,cfref] = isStandardCompliant(ofb,ctype,'all') возвращает скаляр, который равен true, только если все фильтры в банке фильтров совместимы.

Примеры

свернуть все

Использование octaveFilterBank для создания октавного банка фильтров. Использование isStandardCompliant чтобы проверить, соответствует ли разработанный набор октавных фильтров стандарту ANSI S1.11-2004.

Создайте octaveFilterBank объект состоит из 1-октавных фильтров 12-го порядка.

Функции isStandardCompliant, задающий тип класса податливости как 'class 0'. Отображение статуса податливости и опорной частоты для каждого фильтра.

ofb = octaveFilterBank('FilterOrder',12,'Bandwidth','1 octave');
[status,reffreq] = isStandardCompliant(ofb,'class 0')
status = 1×10 logical array

   1   1   1   1   1   1   1   1   1   1

reffreq = 1×10
104 ×

    0.0032    0.0063    0.0126    0.0251    0.0501    0.1000    0.1995    0.3981    0.7943    1.5849

Используйте 'all'опция возврата верификации соответствия полного банка фильтров. 'all'опция также возвращает опорную частоту ANSI, с которой функция проверяет маску.

ofb = octaveFilterBank('FilterOrder',12,'Bandwidth','1/3 octave');
[status,reffreq] = isStandardCompliant(ofb,'class 0','all')
status = logical
   1

reffreq = 1000

Уменьшите порядок фильтра, чтобы получить несоответствующий фильтр в банке. Проверьте, что последний фильтр в банке не совместим.

ofb = octaveFilterBank('FilterOrder',8);
status = isStandardCompliant(ofb,'class 1')
status = 1×10 logical array

   1   1   1   1   1   1   1   1   1   0

Используйте 'all'опция проверки несоответствия банка.

isStandardCompliant(ofb,'class 1','all')
ans = logical
   0

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

свернуть все

Входной набор фильтров, заданный как octaveFilterBank объект.

Тип класса податливости для проверки, заданный как 'class 0', 'class 1', или 'class 2'. Для получения дополнительной информации о совместимых S1.11-2004 ANSI классах фильтров смотрите Octave-Band и Fractional Octave-Band Filters.

Типы данных: char | string

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

свернуть все

Статус податливости, возвращенный как логический вектор. Статус податливости указывает, является ли каждый фильтр в объекте ofb соответствует стандарту ANSI S1.11-2004 для ctype.

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

Совместимые со стандартом центральные частоты, возвращенные как вектор. Центральные частоты используются, чтобы задать пределы ослабления классов.

Совокупное состояние податливости, возвращаемое как логический скаляр. statusall true, только если все фильтры в банке фильтров совместимы.

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

Стандартная опорная частота, возвращенная в виде скаляра. Опорная частота используется, чтобы задать пределы ослабления классов.

Совет

  • Чтобы соответствовать податливости, установите ссылку частоту октавной группы фильтров в одно из значений, возвращаемых getANSICenterFrequencies(octaveFilter) метод, увеличение порядка фильтра, ограничение частотной области значений или увеличение частоты дискретизации.

Введенный в R2021a