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, это свойство возвращает 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_basic/More Info
  Value: 0
  AggregatedValue: 0
  Measures: 0  0
  AggregatedMeasures: 0  0
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