slmetric.Engine class

Пакет: slmetric
Суперклассы:

Соберите метрические данные по моделям или компонентам модели

Описание

Используйте slmetric.Engine объект собрать метрические данные по моделям путем вызова execute. Используйте getMetrics получить доступ к метрическим данным и возвратить массив slmetric.metric.ResultCollection объекты. Эти метрические данные являются персистентными в папке кэша симуляции. Будущие инстанцирования slmetric.Engine объект для той же модели может получить доступ к кэшируемым метрическим данным, не регенерируя метрические данные.

Конструкция

metric_engine = slmetric.Engine() создает метрический объект механизма.

Свойства

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

Имя корневой модели или подсистемы, по которой можно собрать метрические данные, как задано slmetric.Engine.setAnalysisRoot метод. Это свойство доступно только для чтения.

Задайте, анализирует ли метрический механизм соединенные библиотекой подсистемы в корневой модели, включая библиотеки в моделях, на которые ссылаются, под корнем. Метрический анализ не включает соединенные блоки в Simulink встроенные библиотеки. Установите этот параметр на false или 0 не включать библиотеки в метрический анализ.

Типы данных: логический

Задайте, анализирует ли метрический механизм модели, на которые ссылаются, в вашей корневой модели. Выберите из этих значений:

ЗначениеОписание
NoneМетрический механизм не собирает метрические данные для моделей, на которые ссылаются.
NormalModeOnlyМетрический механизм собирает метрические данные только для моделей, на которые ссылаются, запускающихся в нормальном режиме симуляции.
AllModesМетрический механизм собирает метрические данные для моделей, на которые ссылаются, запускающихся в нормальных и ускоренных режимах симуляции.

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

Методы

выполнениеСоберите метрические данные
exportMetricsЭкспортируйте метрики модели
getAnalysisRootMetricПолучите метрические данные для одной метрики для аналитического корня только
getErrorLogПолучите журнал ошибок
getMetricDistributionПолучите метрическое распределение
getMetricMetaInformation Получите метрические метаданные
getMetricsМетрические данные о модели Access
getStatisticsПолучите статистику по метрическим данным
setAnalysisRootЗадайте модель или подсистему для метрического анализа

Примеры

свернуть все

Соберитесь и модель доступа метрические данные для модели 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 потому что существует 3 выходные параметры . Эти три выходных параметров в своей стихии Measures массив. slmetric.metric.AggregationMode Max, так AggregatedValue 4 который является количеством вводов и выводов к sldemo_mdlref_counter. AggregratedMeasures массив содержит максимальное количество вводов и выводов для компонента или субкомпонента.

Введенный в R2016a