validate

Проверьте пороги метрической области значений

Синтаксис

Описание

пример

validate(threshold) проверяет каждое slmetric.config.Classification объект в пороговом объекте, чтобы проверить, что значения, заданные для Category и Range свойства действительны. Области значений каждой категории не должны перекрываться, и области значений вместе должны покрывать -inf на inf. Если значения недопустимы, функция возвращает ошибку, сообщающую вам о том, что исправить.

Примеры

свернуть все

Добавьте пороговую информацию к инструментальной панели Metrics при помощи slmetric.config.Threshold и slmetric.config.Configuration объекты. Можно добавить пороги, которые определяют области значений метрических данных для этих трех категорий:

  • Совместимые - метрические данные, которые являются приемлемой областью значений

  • Предупреждение - Метрические данные, которые требуют проверки

  • Несоответствующие - Метрические данные, которые требуют, чтобы вы модифицировали свою модель

Создайте slmetric.config.Configuration объект.

CONF = slmetric.config.Configuration.new('name', 'Config');

Получите значение по умолчанию slmetric.config.ThresholdConfiguration объект в CONF.

TC = getThresholdConfigurations(CONF);

Создайте slmetric.config.Threshold объект и добавить его в slmetric.config.ThresholdConfiguration объект. Этот порог предназначен для mathworks.metrics.SimulinkBlockCount метрика и Value свойство slmetric.metric.Results объект.

T = addThreshold(TC, 'mathworks.metrics.SimulinkBlockCount', 'Value');

По умолчанию в slmetric.config.Threshold объект содержит slmetric.config.Classification объект, который определяет метрические области значений в соответствующей категории. Получите объект классификации с помощью функции getClassifications о пороговом объекте T.

C = getClassifications(T);

The Range свойство объекта классификации является slmetric.metric.MetricRange объект. Задайте метрические значения для совместимой категории при помощи slmetric.metric.MetricRange функций в области значений объекта классификации.

C.Range.Start = 5;
C.Range.IncludeStart = 0;
C.Range.End = 100;
C.Range.IncludeEnd = 0;

Эти значения определяют, что совместимая область значений является счетчиком блоков от 5 на 100. Эта область значений не включает значения 5 и 100.

Задайте значения для области значений предупреждающей метрики.

C = addClassification(T,'Warning');
C.Range.Start = -inf;
C.Range.IncludeStart = 0;
C.Range.End = 5;
C.Range.IncludeEnd = 1;

Эти значения определяют, что предупреждение является счетчиком блоков между -inf и 5. Эта область значений не включает -inf. Он включает в себя 5.

Задайте значения для несоответствующей метрической области значений.

C = addClassification(T,'NonCompliant');
C.Range.Start = 100;
C.Range.IncludeStart = 1;
C.Range.End = inf;
C.Range.IncludeEnd = 0;

Эти значения определяют, что количество блоков, больше 100, не совместимо. Эта область значений включает 100. Он не включает inf.

Используйте validate метод для проверки метрических областей значений, соответствующих порогам в slmetric.config.ThresholdConfiguration объект.

validate(T)

Если области значений недопустимы, появляется сообщение об ошибке. В этом примере области значений действительны, поэтому функция ничего не возвращает.

Сохраните изменения в файле строения. Используйте slmetric.config.setActiveConfiguration функция, чтобы активировать это строение для используемого механизма метрики.

configName = 'Config.xml';
save(CONF,'FileName', configName);
slmetric.config.setActiveConfiguration(fullfile(pwd, configName));

Теперь можно запустить инструментальную панель Metrics с этим пользовательским строением на модели.

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

свернуть все

Порог объекта для проверки, заданная как slmetric.config.Threshold объект.

Введенный в R2018b