Метрические данные для заданной метрики модели
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
, это свойство возвращает 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_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
массив содержит максимальное количество вводов и выводов для компонента или субкомпонента.
slmetric.Engine
| slmetric.metric.getAvailableMetrics
| slmetric.metric.Result
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.