Main Content

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

tableinfo

cvdata 对象检索查找表覆盖率信息

说明

covInfo = tableinfo(cvdo,modelObject)cvdata 对象 cvdo 返回模型组件 modelObject 的查找表覆盖率结果。

covInfo = tableinfo(cvdo,modelObject,ignoreDescendants) 根据 ignoreDescendants 的值返回 modelObject 的查找表覆盖率结果。

[covInfo,exeCounts] = tableinfo(cvdo,modelObject) 返回查找表覆盖率结果和查找表模块 modelObject 中每个插值/外推区间的执行计数。

[covInfo,exeCounts,brkEquality] = tableinfo(cvdo,modelObject) 返回查找表覆盖率结果、每个插值/外推区间的执行计数以及断点相等的执行计数。

示例

示例

全部折叠

收集 slvnvdemo_cv_small_controller 模型的查找表覆盖率,并确定增益子系统中增益表模块收集的插值/外推区间覆盖率的百分比:

mdl = 'slvnvdemo_cv_small_controller';
open_system(mdl)
%Create test spec object
testObj = cvtest(mdl)
%Enable lookup table coverage
testObj.settings.tableExec = 1;
%Simulate the model
data = cvsim(testObj)
blk_handle = get_param([mdl, '/Gain/Gain Table'], 'Handle');
%Retrieve l/u table coverage
cov = tableinfo(data, blk_handle)
%Percent MCDC outcomes covered
percent_cov = 100 * cov(1) / cov(2)

输入参数

全部折叠

覆盖率数据,指定为 cvdata 对象。

数据类型: cvdata

模型对象,指定为字符数组、字符串数组、Simulink 句柄、Stateflow ID 或元胞数组。

要指定模型对象(例如模块或 Stateflow 图),请使用以下格式之一:

对象设定描述

BlockPath

模型或模块的完整路径

BlockHandle

模型或模块

slObj

Simulink API 对象的句柄

sfID

Stateflow ID

sfObj

来自单独实例化的 Stateflow 图的 Stateflow API 对象的句柄

{BlockPath, sfID}

包含 Stateflow 图或原子子图的路径以及该图或子图中包含的对象的 ID 的元胞数组

{BlockPath, sfObj}

包含 Stateflow 图或子图的路径以及该图或子图中包含的 Stateflow 对象 API 句柄的元胞数组

{BlockHandle, sfID}

带有 Stateflow 图或原子子图句柄的元胞数组以及该图或子图中包含的对象的 ID

要指定 S-Function 模块或其内容,请使用以下格式之一:

对象设定描述

{BlockPath, fName}

包含 S-Function 模块路径和源文件名称的元胞数组

{BlockHandle, fName}

具有 S-Function 模块句柄和源文件名称的元胞数组

{BlockPath, fName, funName}

包含 S-Function 模块的路径、源文件的名称和函数名称的元胞数组

{BlockHandle, fName, funName}

带有 S-Function 模块句柄、源文件的名称和函数名称的元胞数组

要指定代码覆盖率结果,例如在软件在环(SIL) 或处理器在环(PIL) 分析期间收集的覆盖率数据,请使用以下格式之一:

对象设定描述

{fileName, funName}

包含源文件名称和函数名称的元胞数组

{Model, fileName}

具有模型名称或模型句柄和源文件名称的元胞数组

{Model, fileName, funName}

具有模型名称或模型句柄、源文件的名称和函数名称的元胞数组

数据类型: char | string | cell | Stateflow.State | Stateflow.Transition

是否忽略覆盖率结果中的后代,指定为数字或逻辑 1 (true)0 (false),其中:

  • 0 (false) 包括后代对象的覆盖率结果。

  • 1 (true) 忽略后代对象的覆盖率结果。

数据类型: single | double | logical

输出参量

全部折叠

覆盖率信息,如果 cvdo 包含查找表覆盖率数据,则返回为 [covered_intervals,total_intervals] 形式的双元素数组,如果不包含,则返回为空数组。

covered_intervals满足 modelObject 的插值/外推区间数
total_intervalsmodelObject 的插值/外推间隔总数

数据类型: double

执行计数,以双精度数组的数组返回。exeCounts 包含查找表模块中每个插值和外推区间的执行计数。exeCounts 在每个维度上比查找表模块多一个条目。

数据类型: double

断点相等标志,以元胞数组返回。每个单元包含一个向量,该向量标识仿真期间查找表模块输入相当于断点值的次数。每个向量代表沿着不同查找表维度的断点。

数据类型: cell

备选方法

使用覆盖率设置来收集模型的查找表覆盖率:

  1. 打开模型。

  2. 在模型编辑器中,选择建模选项卡上的模型设置

  3. 在配置参数对话框的覆盖率窗格中,选择启用覆盖率分析

  4. 覆盖率度量下,选择查找表

  5. 点击确定关闭配置参数对话框并保存更改。

  6. 通过点击运行按钮来仿真模型并查看结果。

版本历史记录

在 R2006b 中推出