主要内容

本页采用了机器翻译。点击此处可查看英文原文。

检查 MATLAB 函数度量

检查 IDmathworks.maab.himl_0003

规范

描述

此检查提供 MATLAB® 函数的复杂性和代码度量。该检查还会报告度量违规情况。

结果表提供了指向违反复杂度输入参数的 MATLAB 函数的链接。

此检查需要 Simulink® Check™ 许可证。

检查参数化

此模型顾问检查不适用于 JMAAB 建模规范。

此检查不包括子检查

作为参考,NA-MAAB 和 JMAAB 建模标准组织建议使用的 MAB 规范子 ID 为:

  • NA-MAAB - a

  • JMAAB - 不支持

要指定复杂度阈值,请使用模型顾问配置编辑器

  1. 打开模型配置编辑器并搜索检查 ID himl_0003

  2. 输入参数下,选择检查模型中引用的 .m 文件以将扩展名为 .m 的文件包含在分析中。

  3. 定义以下复杂度度量:

    • 每个函数的最大有效代码行数 - 为每个函数提供最大有效代码行数。有效行不包括空行、注释行或带有函数 end 关键字的行。

    • 最小注释密度 - 提供最低限度的评论密度。密度是指注释行数与代码总行数的比率。

    • 每个函数的最大圈复杂度 - 提供每个函数的最大圈复杂度。圈复杂度是指源代码中线性无关路径的数量。

  4. 点击应用并保存配置。

结果和建议的操作

条件建议的操作
MATLAB 函数违反了复杂度输入参数。

对于 MATLAB 函数:

  • 如果有效代码行数过多,则进一步拆分 MATLAB 函数。

  • 如果注释密度太低,请添加注释行。

  • 如果每个函数的圈复杂度度过高,则进一步拆分 MATLAB 函数。

功能和限制

  • 对库模型运行。

  • 无法分析库链接模块的内容。

  • 分析所有封装子系统中的内容。

  • 允许排除模块和图。