exponenta event banner

slmetric.metric. Результат

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

Описание

Один slmetric.metric.Result объект содержит данные метрики для указанного компонента модели и алгоритма метрики.

Создание

Описание

пример

metric_result = slmetric.metric.Result создает маркер перемещения к объекту результатов метрики.

Либо при сборе результатов в slmetric.metric.ResultCollection объект, Results свойство объекта коллекции возвращает собранный slmetric.metric.Result объектов в массиве.

Свойства

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

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

Уникальный числовой идентификатор объекта результата метрики, возвращаемый как целое число.

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

Уникальный идентификатор объекта-компонента, для которого вычисляется метрика, указанный как символьный вектор. Использовать ComponentID для трассировки сгенерированного объекта результата к анализируемому компоненту. Установите ComponentID или ComponentPath с помощью algorithm способ.

Пример: 'sldemo_mdlref_basic'

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

Путь компонента, для которого вычисляется метрика, заданный как символьный вектор. Использовать ComponentPath в качестве альтернативы установке ComponentID собственность. Метрический механизм преобразует ComponentPath в ComponentID. Установите ComponentID или ComponentPath с помощью algorithm способ.

Пример: 'vdp/More Info/Model Info/EmptySubsystem'

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

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

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

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

Скалярное значение метрики, генерируемое алгоритмом для метрики, указанной MetricID и компонент, указанный ComponentID, указано как двойное значение.

Если алгоритм не задает скалярное значение метрики, значение Value является NaN. Например, предположим, что вы собираете метрические данные для модели, которая содержит диаграмму Stateflow. Для StateflowChartObjectCount метрика, Value свойство модели slmetric.metric.Result объект - NaN потому что сама модель не может иметь объекты Stateflow. AggregatedValue свойство модели slmetric.metric.Result содержит общее количество объектов Stateflow в диаграмме.

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

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

Значение метрики, агрегированное по иерархии модели, возвращается как двойное. Механизм метрики неявно агрегирует значения метрики на основе AggregationMode. Если Value свойство - NaN для всех компонентов, AggregatedValue равно нулю.

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

Метрические измерения, определяемые алгоритмом метрики, задаются как двойной массив. Метрические измерения содержат подробную информацию о метрическом значении. Например, для метрики, которая подсчитывает количество блоков на подсистему, можно указать измерения, которые содержат количество виртуальных и невиртуальных блоков. Метрическое значение - это сумма количества виртуальных и невиртуальных блоков.

Задайте это свойство с помощью slmetric.metric.Metric.algorithm способ.

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

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

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

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

Подробности о том, что метрический механизм считает для Value свойство, указанное как массив slmetric.metric.ResultDetail объекты.

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

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

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

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

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

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

Категория метрических данных и диапазоны, соответствующие каждой категории, указанные как slmetric.config.ResultClassification объект. Это свойство пусто, если пороговые значения не установлены.

Пользовательские данные, дополнительно предоставляемые алгоритмом метрики, заданным как символьный вектор.

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

Примеры

свернуть все

В этом примере показано, как собирать метрические данные для модели и получать к ним доступ. 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