Метрические данные для заданной метрики модели
Система координат slmetric.metric.ResultCollection
объект содержит метрические данные для определенной метрики модели.
возвращает объекты набора результатов для всех метрик, выполненных механизмом метрики в массиве.res_collections
= getMetrics(metric_engine
)
MetricID
- Метрический идентификаторИдентификатор метрики для метрики MathWorks или пользовательской метрики, заданный как вектор символов. Вы можете получить идентификаторы метрики, позвонив slmetric.metric.getAvailableMetrics
.
Пример: 'mathworks.metrics.SimulinkBlockCount'
Status
- Состояние выполнения метрикиЭто свойство доступно только для чтения.
Код состояния выполнения метрики, возвращенный как целое число.
Целое число | Статус |
---|---|
1 | Нет результата. Метрический алгоритм не применим к анализируемой системе. Компоненты, проанализированные метрикой, не найдены, или метрика имеет требование компиляции, не может быть выполнена в библиотечной модели. |
0 | Результат собран. |
-1 | Нет результата. Ошибка выполнения метрики. |
-2 | Результаты предыдущего запуска недоступны. |
-3 | Нет результата. Ошибка компиляции. |
-4 | Пустой результат. Отсутствует необходимое условие. |
Category
- Категория метрических данных на основе критериев порогового значения'Compliant'
| 'NonCompliant'
| 'Warning'
| 'Uncategorized'
Это свойство доступно только для чтения.
Категория метрических данных, возвращенная как одна из следующих четырех категорий:
Совместимые - метрические данные, которые находятся в приемлемой области значений.
Предупреждение - Метрические данные, которые требуют проверки.
Несоответствующие - метрические данные, которые требуют от вас изменения модели.
Без категории - Метрические данные, которые не имеют пороговых значений.
Если хотя бы один компонент NonCompliant
, это свойство возвращает NonCompliant
. Если хотя бы один компонент Warning
и никакие компоненты не NonCompliant
, это свойство возвращает Warning
. Если все компоненты Compliant
, это свойство возвращает Compliant
.
Outdated
- Определите, являются ли метрические данные текущимиЭто свойство доступно только для чтения.
Являются ли метрические данные текущими, возвращается как true
или false
. Если true
метрические данные устарели, потому что изменены модель или исходные файлы.
Results
- Метрические данные, собранные для выполнения одной или нескольких метрикslmetric.metric.Result
объектыЭто свойство доступно только для чтения.
Метрические данные, собранные при вызове 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
массив. The slmetric.metric.AggregationMode
является Max
, так что AggregatedValue
является 4
, которое является количеством входов и выходов для sldemo_mdlref_counter
. The AggregatedMeasures
массив содержит максимальное количество входов и выходов для компонента или подкомпонента.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.