Simulink 决策计数
度量 ID
slcomp.SimulinkDecisions
描述
使用此度量来计算单元或组件每一层中 Simulink® 块的 Simulink 决策数。
支持的工件
您可以针对Units和组件收集此度量。要控制仪表板将哪些对象分类为单元或组件,请参阅将模型按层级结构分类为组件或单元。
常见模块类型的决策计数
下表显示了该度量如何计算常见 Simulink 块的决策计数。
| 模块或实体 | 决策计数 | 描述 |
|---|---|---|
| Abs | 1 | 对于决策计数,Abs 模块可以视为
if (input < 0) % one decision output = -1*input; else % default path % zero decisions output = input; end
|
| Combinatorial Logic | 真值表参数中的行数减 1 | 决策次数取决于真值表中的行数。 如果真值表包含五行,则决策计数为 4。真值表中的一行包含默认输出,其余四行包含取决于所做决定的潜在输出。 注意 该度量要求您直接在 Combinatorial Logic 模块中指定真值表,并且要求您使用定义所有可能的模块输出的矩阵来指定真值表参数。如果该度量无法解析矩阵,则该度量返回决策计数为 1。 |
| Dead Zone | 2 | Dead Zone 模块的输出取决于模块输入 ( 对于决策计数,Dead Zone 模块可以视为
if ((U >= LL) & (U <= UL)) % one decision output = 0; elseif (U > UL) % one decision output = U - UL; else % default path % zero decisions output = U - LL; end
|
| Delay | 可以是 0、1 或 2 | 决策计数取决于显示使能端口参数和外部重置参数。
|
| Discrete-Time Integrator | 可以是 0、1、2 或 3 | 决策计数取决于外部重置参数和限制输出参数。
|
| Discrete Filter | 0 或 1 | 决策计数取决于外部重置参数。
|
| Discrete FIR Filter | 可以是 0、1 或 2 | 决策计数取决于显示使能端口参数和外部重置参数。
|
| 已启用和已触发的模型或子系统 | 1 | 对于决策计数,已启用并触发的模型或子系统可以视为
|
| 已启用模型或子系统 | 1 | 对于决策计数,已启用的模型或子系统可以视为
|
| For Iterator Subsystem | 1 | 对于决策计数,For Iterator Subsystem 模块可以视为
|
| If | if 和 elseif 表达式的数量 | 每个 决策计数是 例如,以下代码包含一个 if (u > 0) % one decision y = 1; elseif (u < 0) % one decision y = 2; else % default path, zero decisions y = 0; end |
| Index Vector | 1 | Index Vector 模块的决策计数为 1。 Index Vector 模块是 Multiport Switch 模块的一种特殊配置,其中您可以指定一个数据输入,并且控制输入是从零开始的。 例如,如果输入向量为 |
| MinMax | 可以是 1,也可以是输入端口数减 1。 | 决策次数取决于输入端口的数量:
|
| Multiport Switch | 数据端口数减 1 | Multiport Switch 模块的决策计数取决于输入该模块的数据端口的数量。数据端口的数量代表了可能的结果数量。 决策计数是数据端口数减 1,因为其中一个可能的结果就是默认路径。对于默认路径,尚未做出任何决定。 例如,如果数据输入数量为 3,则决策计数为 2。 如果只有一个数据端口,则 Multiport Switch 模块充当 Index Vector 模块,决策计数为 1。 |
| Rate Limiter | 2 | Rate Limiter 模块的输出是通过将 rate 与上升沿压摆率 ( 对于决策计数,Rate Limiter 模块可以视为
|
| Relay | 2 | Relay 模块的输出由关闭点和开启点参数决定。 对于决策计数,Relay 模块可以视为
|
| Saturation | 2 | Saturation 模块的输出是通过将输入与上限和下限参数进行比较来确定的。 对于决策计数,Saturation 模块可以视为
|
| Send | 0 或 1 | 决策计数取决于显示使能端口参数。
|
| Sign | 2 | Sign 模块的输出由输入决定。 对于决策计数,Sign 模块可以视为
|
| Switch | 1 | Switch 模块的决策计数为 1:
例如,以下代码显示决策计数为 1: switch (u2 > 0) case 1 % one decision y = u1; otherwise % default path, zero decisions y = u3; end |
| Switch Case | 外端口数减 1 |
决策计数为出港数量减 1。 例如,以下代码表示一个具有 3 个输出且决策计数为 2 的 Switch Case 模块: switch u1 case 1 % one decision y = port1; case 2 % one decision y = port2; otherwise % default path, zero decisions y = port3; end |
| 触发模型或子系统 | 1 | 对于决策计数,被触发的模型或子系统可以被视为
|
| Trigonometric Function | 0 或 3 | 决策计数取决于函数参数和删除防止超范围输入的代码参数。
|
| While Iterator Subsystem | 1 | 对于决策计数,While Iterator Subsystem 模块可以视为
|
计算详细信息
该度量是一种启发式方法,用于估计 Simulink 决策的数量。计算出的决策次数并不准确。
度量:
决策计数包括活动和非活动变体。
决策计数不包括带注释的模块。
无法编译模型。该度量仅考虑静态信息。
无法解析参数。例如,如果您使用变量指定模块参数,度量不会将参数解析为变量值,因为这需要度量编译模型。
该度量与Simulink Coverage™返回的决策覆盖率一致。有关信息,请参阅 接受覆盖率的模型对象 (Simulink Coverage)。
收集
要收集此度量的数据,请将 getMetrics 与度量标识符 slcomp.SimulinkDecisions 结合使用。
结果
对于此度量,metric.Result 的实例返回 Value,作为单元或组件每一层中 Simulink 块的 Simulink 决策数。
示例
要查看与不同模块类型关联的 Simulink 决策的数量,请参阅 常见模块类型的决策计数。
另请参阅
对象
函数
主题
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
