exponenta event banner

slmetric.metric. ResultCollection

Метрические данные для указанной метрики модели

Описание

Один slmetric.metric.ResultCollection объект содержит данные метрики для определенной метрики модели.

Создание

Описание

пример

res_collections = getMetrics(metric_engine) возвращает объекты коллекции результатов для всех метрик, которые обработчик метрик выполнил в массиве.

Свойства

развернуть все

Идентификатор метрики для метрики MathWorks или пользовательской метрики, заданной как символьный вектор. Вы можете получить метрические идентификаторы, позвонив slmetric.metric.getAvailableMetrics.

Пример: 'mathworks.metrics.SimulinkBlockCount'

Это свойство доступно только для чтения.

Код состояния выполнения метрики, возвращаемый как целое число.

Целое числоСтатус
1

Нет результата. Алгоритм метрики неприменим к анализируемой системе. Компоненты, проанализированные метрикой, не найдены, или метрика требует компиляции и не может быть выполнена в библиотечной модели.

0

Результат собран.

-1

Нет результата. Ошибка при выполнении метрики.

-2

Результат предыдущего прогона недоступен.

-3

Нет результата. Ошибка компиляции.

-4

Пустой результат. Отсутствует необходимое условие.

Это свойство доступно только для чтения.

Метрическая категория данных, возвращенная как одна из следующих четырех категорий:

  • Соответствует - метрические данные находятся в допустимом диапазоне.

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

  • Несоответствующие - метрические данные, требующие изменения модели.

  • Без категории - метрические данные, не имеющие пороговых значений.

Если хотя бы один компонент NonCompliant, это свойство возвращает NonCompliant. Если хотя бы один компонент Warning и никакие компоненты не являются NonCompliant, это свойство возвращает Warning. Если все компоненты Compliant, это свойство возвращает Compliant.

Это свойство доступно только для чтения.

Являются ли данные метрики текущими, возвращаются как true или false. Если trueданные метрики устарели, поскольку модель или исходные файлы изменились.

Это свойство доступно только для чтения.

Метрические данные, собранные при вызове execute метод для одной или нескольких метрик, возвращаемый как массив slmetric.metric.Result объекты.

Примеры

свернуть все

В этом примере показано, как собирать метрические данные для модели и получать к ним доступ. sldemo_mdlref_basic.

Создание slmetric.Engine и задайте корень в модели для анализа.

metric_engine = slmetric.Engine();

% Include referenced models and libraries in the analysis,
%   these properties are on by default
metric_engine.ModelReferencesSimulationMode = 'AllModes';
metric_engine.AnalyzeLibraries = 1;

setAnalysisRoot(metric_engine, 'Root', 'sldemo_mdlref_basic')

Сбор данных метрики модели.

execute(metric_engine, 'mathworks.metrics.ExplicitIOCount');

Возврат данных метрики модели в виде массива slmetric.metric.ResultCollection объекты и назначить их res_col.

res_col = getMetrics(metric_engine, 'mathworks.metrics.ExplicitIOCount');

Отображение результатов для mathworks.metrics.ExplicitIOCount метрика.

for n=1:length(res_col)
    if res_col(n).Status == 0
        result = res_col(n).Results;
        
        for m=1:length(result)
            disp(['MetricID: ',result(m).MetricID]);
            disp(['  ComponentPath: ',result(m).ComponentPath]);
            disp(['  Value: ', num2str(result(m).Value)]);
            disp(['  AggregatedValue: ', num2str(result(m).AggregatedValue)]);
            disp(['  Measures: ', num2str(result(m).Measures)]);
            disp(['  AggregatedMeasures: ', num2str(result(m).AggregatedMeasures)]);
        end
    else
        disp(['No results for:', result(n).MetricID]);
    end
    disp(' ');
end
MetricID: mathworks.metrics.ExplicitIOCount
  ComponentPath: sldemo_mdlref_basic
  Value: 3
  AggregatedValue: 4
  Measures: 0  3
  AggregatedMeasures: 3  3
MetricID: mathworks.metrics.ExplicitIOCount
  ComponentPath: sldemo_mdlref_counter
  Value: 4
  AggregatedValue: 4
  Measures: 3  1
  AggregatedMeasures: 3  1
 

Для ComponentPath: sldemo_mdlref_basic, значение равно 3 потому что есть три выхода. Три выхода находятся во втором элементе Measures массив. slmetric.metric.AggregationMode является Max, так что AggregatedValue является 4, которое является количеством входов и выходов для sldemo_mdlref_counter. AggregatedMeasures массив содержит максимальное количество входов и выходов для компонента или подкомпонента.

Представлен в R2016a